PyAna是一款功能強大的Shellcode轉(zhuǎn)換生成工具,它可以輕松實現(xiàn)shellcode的分析、轉(zhuǎn)換、生成各工作。PyAna使用Unicorn框架來模擬CPU,并創(chuàng)建一個虛擬的Windows進程,shellcode就是注入到該進程中來分析的
Shellcode是什么?
Shellcode實際是一段代碼(也可以是填充數(shù)據(jù)),是用來發(fā)送到服務器利用特定漏洞的代碼,一般可以獲取權(quán)限。另外,Shellcode一般是作為數(shù)據(jù)發(fā)送給受攻擊服務器的。 Shellcode是溢出程序和蠕蟲病毒的核心,提到它自然就會和漏洞聯(lián)想在一起,畢竟Shellcode只對沒有打補丁的主機有用武之地。網(wǎng)絡上數(shù)以萬計帶著漏洞頑強運行著的服務器給hacker和Vxer豐盛的晚餐。漏洞利用中最關(guān)鍵的是Shellcode的編寫。由于漏洞發(fā)現(xiàn)者在漏洞發(fā)現(xiàn)之初并不會給出完整Shellcode,因此掌握Shellcode編寫技術(shù)就顯得尤為重要。
PyAna功能特點:
1、使用Unicorn綁定并以Python語言實現(xiàn)
2、模擬一個簡單的shellcode:calc、UrlDownloadToFile
3、Windows系統(tǒng)結(jié)構(gòu)模擬器目前還不完整
4、一些Win32 API hook
5、僅僅支持32位
shellcode生成器怎么用:
命令行類型:PyAna.py [shellcode]
例如:PyAna.py Samples/UrlDownloadToFile.sc
顯示結(jié)果報告:
Shellcode轉(zhuǎn)換生成工具
依賴環(huán)境:
PyAna依賴于以下環(huán)境:
1、Nguyen Anh Quynh開發(fā)的Unicorn框架和Capstone
2、Ero Carrera開發(fā)的pefile