PNG圖像元數據中iFrame注入攻擊及防護多圖

本文我們來講講另外一種網站注入攻擊方式,PNG圖像元數據中iFrame注入攻擊,這個也是本人最近接觸,以前沒有注意過,或許也有很多站長不清楚,現在分享出來。

我們一直在努力保持領先的最新趨勢,今天我們發現了一個非常有趣的事,這或者是我們之前沒有發現,或者是剛發生的。 我們只能說這是新發現的。

我們都了解的iFrame注入攻擊,對吧?

了解一個iFrame注入

今天的iFrame 是非常標准的HTML標記,它是在自己網頁中嵌入其他網站內容的簡單方式。 被幾乎所有的浏覽器支持和百萬計的網站使用,使用AdSense嗎? 那麽你的網站中就有一個iFrame。

我知道這東西很好,然而總是福禍相惜。

今天的攻擊,特別是當我們談論路過式下載,首選是利用IFRAME標記。 它簡單方便,只需簡單的屬性修改,攻擊者可以穩妥的從另一個站點嵌入代碼,並通過客戶的浏覽器不知不覺的載入。

像這樣:

PNG圖像元數據中iFrame注入攻擊及防護多圖

攻擊者通常從其他網站嵌入的惡意文件,通常是一個PHP文件或類似的形式。 當然,這並不是唯一的方法,但是是最普遍的。 從檢測和修複的角度來看,這往往很容易修複。

新的iFrame注入法

然而今天,我們發現一個有趣的iFrame注入類型。

它的特殊之處不是在iframe標簽中嵌入的內容,而是它分發惡意軟件的方式。 你會看到,攻擊者將威脅隱藏在PNG文件中。

我幾乎可以聽到很多你的竊笑,PFF .. 這不是新的…. 但問題是在細節上我的朋友。

如下,iFrame載入了一個有效的文件,沒有什麽惡意,一個叫jquery.js的JavaScript文件。這一切看上去都很好。你要細細的找:

PNG圖像元數據中iFrame注入攻擊及防護多圖

起初,很多人會說我們傻。 這些代碼很好,沒看見什麽問題,對不對? 然後,我們注意到了這個小函數,loadFile()。 函數本身並不奇怪,但事實上,它是裝載一個PNG-var strFile = ‘./dron.png。 你會被它驚訝良久,它才是一個真正的黑手。

自然,下一步就是好奇的打開dron.png文件。 會有什麽可怕的事情發生嗎?

噢,什麽都沒有,太無聊了,這純粹是浪費時間。

PNG圖像元數據中iFrame注入攻擊及防護多圖

但是,請等一下,我發現這裏有個有趣的小循環。

PNG圖像元數據中iFrame注入攻擊及防護多圖

嗯,這是確實挺奇怪的,這是一個解碼循環。 爲什麽要一個循環的解碼PNG文件呢?

作爲一個優秀的研究人員,采取最簡單的方式,我可以將它載入到簡單的測試頁上 並提取圖像內容。搞定!

測試頁上載入它之後這,我們獲得了strData變量:

PNG圖像元數據中iFrame注入攻擊及防護多圖

看到它在幹嘛了嗎?

它做了個iFrame注入,並把它嵌入到PNG的元數據中,像一個新的分配機制。

有兩點需要特別注意了,它使用createElement做了一個iFrame標簽,然後設置elm.style.position.left 和 elm.style.position.top 屬性的值爲-1000px,把iframe放到可視區域之外。這些值都是負值,在浏覽器中根本看不到。但是你知道誰能看到嗎?只有浏覽器和Google能看到。這就是下載驅動和搜索引擎感染(SEP)攻擊的小伎倆。

最後我們在elm.src元素中發現了真正的威脅。

做的這麽獨特到底有什麽用呢?

它盡力隱藏真正的威脅的水平是獨特的。現在的殺毒軟件不會解碼圖像元數據,直到JavaScript文件載入完畢就停止掃描。不會追蹤cookie文件,對于攻擊者來說,這太好了,使它們很難被發現。

記住一點,盡管我們這裏談論的是PNG文件,這些方法和概念也可以應用到其他類型圖像中。重要的一點是:留意你的web 服務狀態,了解哪些修改和未修改的文件並確保漏洞未被利用。

通常情況下,一些新的偵查和排障需要一定的時間。 現在我們的 網站惡意軟件掃描器能發現它嗎 ? 絕對可以!

更多相關文章
一周排行