重慶分公司,新征程啟航
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊(cè)、服務(wù)器等服務(wù)
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊(cè)、服務(wù)器等服務(wù)
這篇文章主要為大家分析了iOS第三方解壓縮庫 0-Day預(yù)警的示例分析的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì)易懂,操作細(xì)節(jié)合理,具有一定參考價(jià)值。如果感興趣的話,不妨跟著跟隨小編一起來看看,下面跟著小編一起深入學(xué)習(xí)“iOS第三方解壓縮庫 0-Day預(yù)警的示例分析”的知識(shí)吧。
為雁峰等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及雁峰網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)、雁峰網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
2018年5 月 15 日傍晚盤古團(tuán)隊(duì)披露了 ZipperDown 漏洞[1],其中涉及到的主要的第三方解壓縮庫為 ZipArchive[2]。我們團(tuán)隊(duì)主要負(fù)責(zé)公司內(nèi) iOS App 的安全,因此為了更快的推進(jìn)漏洞修復(fù),我們連夜為這個(gè)漏洞編寫了補(bǔ)丁,并在 16 日上午向官方的代碼庫提交了 Pull Request[3]。這個(gè)補(bǔ)丁主要處理了 Zip 包中的相對(duì)路徑及軟鏈接問題。由于時(shí)間緊,該補(bǔ)丁并沒有考慮接口兼容性問題,但是作為修復(fù)漏洞的參考,已經(jīng)包含了足夠的信息。
收到了 Pull Request 關(guān)閉的郵件通知[4]:
其中一條描述大意為:沒有什么證據(jù)說明 Zip 中的符號(hào)鏈接會(huì)引起安全問題。于是我們構(gòu)造了新的 PoC[5] 來說明:存在于 ZipArchive 庫中的,由于沒有安全的處理軟鏈接而造成的路徑穿越漏洞。
ZipArchive 庫沒有安全的處理 Zip 包中的軟鏈接,存在路徑穿越漏洞。
Zip 包的構(gòu)造方法:
首先,向 Zip 文件中添加一個(gè)軟鏈接 PDIR,指向 ../。
然后,向 Zip 中添加文件,文件名為:PDIR/XXX。
這樣在解壓縮時(shí) XXX 文件會(huì)被解壓到 PDIR 指向的目錄,通過組合 PDIR 可以實(shí)現(xiàn)任意級(jí)別的穿越。
PoC 地址: https://github.com/Proteas/ZipArchive-Dir-Traversal-PoC
運(yùn)行 PoC 后的效果如下:
像 ZipperDown 一樣,路徑穿越本身只會(huì)造成文件覆蓋,但是結(jié)合 App 中的其他缺陷可能造成遠(yuǎn)程任意代碼執(zhí)行。
關(guān)于“iOS第三方解壓縮庫 0-Day預(yù)警的示例分析”就介紹到這了,更多相關(guān)內(nèi)容可以搜索創(chuàng)新互聯(lián)以前的文章,希望能夠幫助大家答疑解惑,請(qǐng)多多支持創(chuàng)新互聯(lián)網(wǎng)站!