溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的

發(fā)布時(shí)間:2021-12-24 10:42:05 來(lái)源:億速云 閱讀:134 作者:柒染 欄目:網(wǎng)絡(luò)管理

這篇文章給大家介紹IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

背景

本地文件包含(LFI)漏洞是一種危害性較大的漏洞類型。一旦出現(xiàn)攻擊者將可能利用其,讀取文件源碼或敏感信息,包含惡意文件,執(zhí)行任意代碼,甚至控制服務(wù)器等。大多數(shù)LFI攻擊都是由動(dòng)態(tài)加載圖像或其他文件的代碼引起的。如果請(qǐng)求的文件名或路徑未做正確驗(yàn)證,就會(huì)造成該漏洞的發(fā)生。

IKEA.com

宜家是世界上最強(qiáng)大的品牌之一;在福布斯排行榜中為前50名。毫不夸張的說(shuō),每個(gè)人家里都至少有一件產(chǎn)品來(lái)自宜家;我愛(ài)IKEA!你呢?可以在評(píng)論中告訴我你最喜歡的宜家產(chǎn)品。

除了宜家的產(chǎn)品外,另一個(gè)值得我稱贊的地方就是,他們擁有大量且設(shè)計(jì)合理的網(wǎng)站和應(yīng)用程序。為了更好的用戶體驗(yàn),他們還為此開(kāi)設(shè)了一個(gè)bug賞金計(jì)劃,允許我們安全的滲透測(cè)試他們的平臺(tái)并發(fā)布,只要我們遵守漏洞披露規(guī)則。下面,就讓我們?cè)囈辉嚢桑?/p>

尋找目標(biāo)

大多數(shù)時(shí)候我都是從枚舉子域開(kāi)始的,Aquatone是我最常用的一款枚舉工具。該工具會(huì)在不同的公共域數(shù)據(jù)庫(kù)中查找域,并返回活動(dòng)子域列表,包括屏幕截圖等。了解有關(guān)Aquatone的更多信息,請(qǐng)查看Apple.com報(bào)告中的Unrestricted File Upload(無(wú)限制文件上傳漏洞)。

IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的

Bathroom planner

經(jīng)過(guò)一番查找,其中一個(gè)Bathroomplanner.IKEA.com的子域引起了我的注意。這是宜家提供的一個(gè)在線規(guī)劃工具,主要是為客戶體提供靈感和現(xiàn)成的浴室解決方案。通過(guò)它客戶可以查找產(chǎn)品,并將其添加到自己的浴室產(chǎn)品列表中。除此之外,還可以通過(guò)電子郵件發(fā)送產(chǎn)品列表,或以PDF格式下載至本地保存。生成的PDF文件包含一些文本和產(chǎn)品圖片信息。如下:

IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的

到這里我有個(gè)疑問(wèn),這個(gè)PDF是如何生成的呢?

讓我們打開(kāi)burp通過(guò)攔截瀏覽器和宜家服務(wù)器之間的流量來(lái)一探究竟。我們打開(kāi)首頁(yè),并嘗試將產(chǎn)品添加到我們的列表中。

IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的

可以看到這里有幾個(gè)非常有意思的字段:

data:包含產(chǎn)品和圖片代碼的JSON blob,沒(méi)有文件路徑

shopping:包含我們產(chǎn)品列表的JSON blob,沒(méi)有文件路徑

pdf:一長(zhǎng)串字符,內(nèi)容不明

images:一些base64編碼后的圖片

base64解碼

當(dāng)你看到一長(zhǎng)串字符時(shí),請(qǐng)務(wù)必檢查其是否為Base64編碼的字符串。Base64編碼常用于文件的數(shù)據(jù)傳輸。這里推薦大家一個(gè)在線的base64字符串編碼解碼網(wǎng)站:http://decodebase64.com/

IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的

如果我們將該字符串直接粘貼到解碼器中,你會(huì)發(fā)現(xiàn)解碼出錯(cuò);這是因?yàn)樵撟址邪校ブ惖臒o(wú)效字符。這也說(shuō)明該字符串可能也經(jīng)過(guò)了URL編碼,所以在Base64解碼之前,我們先進(jìn)行URL解碼。同樣,推薦大家一個(gè)在線的URL解碼和編碼網(wǎng)站:https://meyerweb.com/eric/tools/dencoder/

IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的

進(jìn)行URL解碼后,再Base64解碼我們將得到以下字符串:

IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的

這看起來(lái)有點(diǎn)意思。當(dāng)我們將產(chǎn)品添加到列表中,它會(huì)為宜家Web服務(wù)器提供一些用于生成PDF購(gòu)物清單的模板。

如果我們能夠?qū)⒈镜胤?wù)器文件包含到此PDF中,會(huì)發(fā)生什么? 例如圖片?試試看,我將<img src=”/etc/passwd”>添加到了該模板,并進(jìn)行了Base64和URL編碼,替換Burp Suite中的pdf參數(shù)并Forward。

長(zhǎng)話短說(shuō),這并不起作用。PDF生成器無(wú)法將該文件識(shí)別為圖片,并且不會(huì)在輸出中解析它...

B計(jì)劃:識(shí)別PDF庫(kù),搜索庫(kù)中的缺陷

也許我們可以找到另一種在PDF中包含文件的方法?首先,我們要弄清楚的是生成PDF的工具是什么?我們可以通過(guò)Google搜索模板中的一些獨(dú)特字符串來(lái)得到答案。

IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的

搜索結(jié)果為我們提供了兩個(gè)選擇,node-html-pdf庫(kù)或mPDF庫(kù)。在快速瀏覽了它們的文檔后,最終我確定在該項(xiàng)目中使用的為mPDF庫(kù)。

識(shí)別mPDF中的安全問(wèn)題

我們立刻制作了一個(gè)mPDF的本地副本,以便檢查它是否存在安全漏洞。最好的起點(diǎn)是CHANGELOG,開(kāi)發(fā)人員通常使用該文件來(lái)跟蹤版本之間的變化。

IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的

可以看到在2017年10月19日,mPDF改變了他們處理注釋標(biāo)簽的方式。因此,讓我們仔細(xì)查看文檔中的該標(biāo)簽。

IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的

這里并沒(méi)有提及任何文件包含的相關(guān)內(nèi)容。讓我們?cè)俅蜧oogle搜索,看看是否有其他人發(fā)現(xiàn)過(guò)這類問(wèn)題。

IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的

在閱讀了h0ng10的漏洞報(bào)告后我們得知,在舊版本的mPDF存在嚴(yán)重的安全問(wèn)題,攻擊者能夠通過(guò)注釋標(biāo)記包含文件。

仔細(xì)查看該項(xiàng)目的Github提交后,我發(fā)現(xiàn)其中展示的一段易受攻擊的mPDF代碼。

因此,我們可以更改PDF的模板嘗試包含該標(biāo)簽并利用。讓我們看看IKEA是否忘記將庫(kù)更新到最新版本。

利用

我們將以下標(biāo)記添加到模板中:

<annotation file=\”/etc/passwd\” content=\”/etc/passwd\” icon=\”Graph\” title=\”Attached File: /etc/passwd\” pos-x=\”195\” />

使用Burp Suite Repeater發(fā)送新模板并下載PDF文件。然后用Foxit Reader打開(kāi)文件,并尋找黃顏色的注釋標(biāo)記。

IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的

雙擊該標(biāo)記,我們就能打開(kāi)并查看服務(wù)器上的文件啦!

IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的

IKEA.com允許用戶在購(gòu)物清單導(dǎo)出過(guò)程中操縱PDF模板。而其使用的PDF庫(kù)包含了一個(gè)隱藏功能,即允許通過(guò)在模板中添加特定標(biāo)記將文件嵌入到PDF中。該功能已在其最新版本中禁用,而IKEA卻未進(jìn)行及時(shí)的更新,因此才導(dǎo)致了安全問(wèn)題的發(fā)生。

修復(fù)建議

絕不要允許用戶操縱PDF模板

在客戶端渲染包含購(gòu)物清單的PDF,例如使用jsPDF

更新到最新版本的mPDF庫(kù),禁用注釋代碼

關(guān)于IKEA.com本地文件包含漏洞以及PDF解析的巧妙利用是怎樣的就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

pdf
AI