[英]easy way to get opcodes
我知道如何從可執行文件中獲取操作碼和相應的匯編語法; 但是有一種簡單的方法可以單獨獲取特定匯編指令的操作碼,而無需使用相同的程序編寫程序,然后手動鏈接並加載它並對可執行文件執行objdump?
有沒有一種簡單的方法來查找特定指令的相應操作碼?
您可以使用gdb(GNU Debugger)的x / bx命令。
我在這里做了一個教程:
我前一段時間問了一個類似的問題( DOS調試就像32位x86程序集的程序 )。
有人很友好地為我提供了一個自動化腳本來完成這項工作。 您可以點擊提問鏈接,或參考他們在下面提供給我的腳本......
opcode() {
echo $* > tmp.S && nasm tmp.S -o tmp.o && od -x tmp.o
rm -f tmp.o tmp.S
}
希望這可以幫助。
X86操作碼和指令參考包含32位和64位x86處理器上的一組指令參考表及其相應的操作碼。
我不確定你為什么要操作碼。 但是如果它用於漏洞利用開發,你可能已經有了metasploit,它帶有一個非常有用的ruby腳本,名為nasm_shell.rb(在tools目錄中)。
您鍵入的每一行都以正確操作碼的ascii十六進制表示形式出現。
如果它出於某種其他目的或者您不希望某些重量級工具包(如metasploit)因任何原因而閑置,您可以拔出腳本並安裝其依賴項。 它使用Rex並假設安裝了nasm。
如果你想調整它,你需要的實際代碼只是函數shell.run中的幾行
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.