挖掘二進位漏洞具體指的是什麼?

挖二進位漏洞具體指的是什麼?

它的意義體現在哪裡?

需要什麼樣的知識儲備才能入門?


謝邀

現今,瀏覽器是用戶接入互聯網的門戶.瀏覽器從誕生之初主要提供簡單的文檔閱讀功能.很少構成網路安全威脅,但隨著互聯網的高速發展,越來越多的功能集被加入到瀏覽器中。瀏覽器不僅需要像操作 系統那樣,為閱讀文檔、觀看電影、欣賞音樂等傳統計算機應用提供基礎,也需要為社交網路、網路購物等新興互聯網應用提供支持。瀏覽器在增加功能集的同時, 也就帶來了更多的安全問題。同時又由於IE是 windows的默認瀏覽器, 所以hacker 們對 IE 的漏洞十分感興趣. 關注的人多了,IE瀏覽器相關的漏洞利用技術也就發展的很快.

早期hacker 們挖掘 IE瀏覽器漏洞,挖到的絕大部分是一些緩衝區溢出 或者是 ActiveX控制項漏洞,這些漏洞中有很多是棧溢出類型的漏洞這類漏洞,利用起來非常的方便,直接使用過長字元串覆蓋函數返回地址,我們就可以控制程序的執行流程. 此時的漏洞利用和其他軟體的漏洞利用技術差不多,即先通過輸入數據布置好棧上的數據,然後將返回地址覆蓋為 jmp esp 之類的指令的地址,這樣一來在函數返回時我們就能控制程序執行到我們輸入的數據中,這樣我們就能 干我們想乾的事情了. 瀏覽器畢竟和其他類型軟體不一樣,瀏覽器實現了許多的功能, 其中很大一部分都是基於的堆實現的,所以很多時候 hacker 會發現 :挖到了一個漏洞 ,也劫持了 eip 控制了程序流程,但是不能控制棧上的內容,或者能控制的內容的長度非常小,以至於連一個彈框的 shellcode 都不能布置上去.難道 hacker 們就這樣放棄了嗎? 當然沒有 , 有了問題咱就解決問題.來看看我們現在擁有的條件. 1. eip 可控 2.不能在棧上布置 shellcode . 既然棧上不行 , 那咱就可以將我們的 shellcode布置到堆上 , 之後我們在將 eip 指向 堆中的shellcode 即可.這樣又來了一個難題,我們知道 堆的分配是動態的,即分配的堆塊的地址是不固定的,會變化的.為了解決這一困難 , hackers 發明了一種技術 → Heap Spraying 即 堆噴射技術 , 該技術在 瀏覽器中的大致原理是 ,通過使用瀏覽器的支持的一些腳本語言, 如 javascript ,vbscript , actionscript ….. , 申請大量的內存,這樣我們就有可能使內存中的某個地址恰好指向我們的數據.通過這樣一種技術, 我們現在的擁有的條件是: 1.EIP可控 2. 我們輸入數據的地址可知. 不考慮一些漏洞利用緩解措施, 如 DEP , 棧cookies 等, 我們就能實現代碼執行. 扯了這麼久來實踐一把吧.

這裡用的漏洞是 阿里旺旺2010 的 ActiveX控制項的一個棧溢出漏洞, 測試環境為 xp sp3 IE6,可以通過在控制面板中卸載 ie8 得到 ie6漏洞的原理是 其控制項的 imageMan.dll 中的AutoPic 函數由於未對參數的長度進行有效的檢測 ,導致存在棧溢出漏洞.先用一段小html代碼驗證下漏洞是否是這樣

POC代碼如下:

&
&
&&
&
var buffer = "";
while (buffer.length &< 1111) buffer+="A"; target.AutoPic(buffer,"defaultV"); &

&
&

其大致流程為, 獲取 ActiveX控制項 對象, 之後調用 對象的 AutoPic 方法,並向它傳入 很長的一段 A ,來觸發漏洞.打開瀏覽器, 用調試器附加上去, 打開 poc 頁面, 出發異常 , 查看 SEH 鏈 ,可以看到 SEH 鏈的被覆蓋

我們就能利用 SEH 來實現任意代碼執行.同時可以看到,此時的棧並沒有我們的輸入數據,故我們應該使用 堆噴射技術 將咱們的 shellcode 噴射到可預測的地址來完成最後的漏洞利用.這裡給出一個可以在 IE 6, 7上穩定噴射內存到 0x0c0c0c0c 地址處的堆噴射腳本, 以後要噴射內存時,直接貼到 exp 前面使用即可.

&
&

&
&

OK,這裡就不更新了。排版麻煩,明天發到公眾號和我的專欄,歡迎指教。

註:二進位漏洞挖掘會繼續更新很多很多字.....


謝邀....

不論二進位漏洞,還是web應用漏洞本質都是對程序的攻擊,執行自己的程序段。

叫二進位漏洞,就是因為腳本語言和編譯語言之前的差異。編譯後無法獲得源碼只能通過反編譯讀彙編。


幾乎所有漏洞利用的目標,都是要改變程序原有正常的行為,而去運行本不該運行的代碼。


推薦閱讀:

想出一個防盜版和防破解的好招?
立志在網路安全領域發展,應該如何系統學習安全知識?
《360黑匣子之謎——奇虎360「癌」性基因大揭秘》有哪些報道是客觀的?有哪些是失實的?
6 月 18 日蘋果系統曝出嚴重漏洞會對用戶造成什麼影響?
學校的監控可以被黑掉嗎?

TAG:網路安全 | 二進位 | 烏雲WooYun | 白帽黑客WhiteHat | 漏洞挖掘 |