日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
逆向工程工具之Reverse

Reverse是一個用來解析二進制文件的逆向工程工具,而且它可以生成更具可讀性的代碼(類C語言)并帶有彩色標識的語法,便于研究人員進行閱讀代碼。目前,其交互模式仍在做進一步開發(fā)。

支撐架構

架構:x86, ARM, MIPS
文件格式:ELF, PE, RAW
在GitHub中,也提供了一個Makefile作為測試之用,詳細請點擊鏈接:Makefile。

使用環(huán)境要求

1、python 版本需要在 3.4及以上版本;
2、具備capstone反匯編框架,其能提供豐富的反匯編指令;
3、具備python-pyelftools模塊,用于解析ELF文件(ELF文件除了機器碼外,還包含其它額外的信息,如段的加載地址,運行地址,重定位表,符號表等)以及DWARF調(diào)試信息,詳細請點擊鏈接:pyelftools;
4、具備python-pefile模塊,以用于解析PE文件(如exe、dll、vxd、sys和vdm等),詳細請點擊鏈接:PEfile;
5、具備python-msgpack模塊,用于序列化運算,詳細請點擊鏈接:msgpack;
6、具備256色終端;

你可以通過運行requirements.sh檢測是否符合所有的要求,requirements.sh。

類反編譯功能

因為二進制文件中包含了符號型的main,所以其中的-x main是可選的。具體使用如下,

$ ./reverse.py tests/server.bin

交互模式

在此模式下有更多的命令可以使用(da,db等),當然我們也可以通過help查看更多的命令。

TODO列表

1、添加命令:setbe/setle rawbase(用于原文件格式);
2、如果從shell獲取的文件為raw文件,則進行加載。

視覺模式

在交互模式中,我們可以通過使用命令 v 來切換到視覺模式。但該模式需要ncurses動態(tài)庫的支持。

其中支持,

1、代碼/功能的定義
2、內(nèi)聯(lián)注釋
3、外部參照

TODO列表

1、當分析器修改代碼時,自動進行重載;
2、多行注釋;
3、創(chuàng)建數(shù)據(jù)/數(shù)組;
4、符號重命名;
5、堆棧變量;
6、結構、枚舉;
7、提高分析器的性能。

Swich-跳轉(zhuǎn)表舉例

Switch語句的使用需要跳轉(zhuǎn)表,但其不能自動檢測。所以我們需要告訴它使用哪一個跳轉(zhuǎn)表。具體操作如下,

$ ./reverse.py -i tests/others/switch.bin >> x ...>> jmptable 0x400526 0x400620 11 8  # A jump-table at 0x400620 is set with 11 entries, an address is on 8 bytes.>> x # Decompilation with switch

分析shellcode

其中對于每一個Int 0×80,該工具都會嘗試通過參數(shù)檢測syscall函數(shù)

$ ./reverse.py --raw x86 tests/shellcode.bin

function 0x0 {     0x0: eax = 0 # xor eax, eax     0x2: al = '\x0b' # mov al, 0xb     0x4: cdq     0x5: push edx     0x6: push 1752379246 "n/sh"     0xb: push 1768042287 "http://bi"     0x10: ebx = esp # mov ebx, esp     0x12: push edx     0x13: push ebx     0x14: ecx = esp # mov ecx, esp     0x16: int 128 ; execve(ebx, ecx, edx) # int 0x80}

使用VIM進行編輯

***再通過使用VIM進行編輯,具體參考如下,

$ ./reverse tests/dowhile1.bin --vim Run : vim dowhile1.bin.rev -S dowhile1.bin.vim

GitHub 下載鏈接:GitHub。


網(wǎng)站名稱:逆向工程工具之Reverse
分享URL:http://www.dlmjj.cn/article/cdshedp.html