1. 程式人生 > >Linux下 視覺化 反彙編工具 EDB 基本操作知識

Linux下 視覺化 反彙編工具 EDB 基本操作知識

     自己在上網搜edb的操作姿勢的時候發現這方面的資料有點少,下面總結一下自己摸索出來的edb操作姿勢:

  1. EDB操作基礎知識:首先點選執行,這時程式會執行前面的初始化函式到main,此時可以開始單步除錯。
    1. step into:執行程式碼,如果是函式則進入。
    2. step over:執行程式碼,如果是函式會執行然後跳過
    3. step out:如果沒有斷點會直接跳到函式的ret指令處。
    4. F2呼叫右鍵的Toggle BreakPoint設定斷點, 當然右鍵也有Conditionnal BreakPoint 條件斷點的選擇,對應Shift+F2。
    5. Rigisters和Stack視窗可以分別檢視執行處暫存器和棧的值。Data Dump可以檢視記憶體區域的值,這一塊記憶體區域應該是伴隨程式分配的記憶體區域。三個視窗呈現的形式都是左邊是二進位制,右邊是字串,如果真的儲存的是字串型別,那麼我們可以通過右邊直接看到,比較方便。
    6. 如果想要檢視程式不同段的記憶體,可以通過View->Memory Regions檢視。
    7. 無論是Registers還是Stack都可以右鍵直接設定二進位制的值,這個特性可以用來進行程式的除錯工作。
    8. Ctrl+F呼叫Plugin中的BinarySearcher可以直接搜尋記憶體區域中的字串。
    9. 選定一行,Ctrl+*呼叫郵件的set EIP to this instruction,跳過前面的程式碼直接執行到當前行。

瞭解以上知識之後,簡單使用edb執行程式應該不成問題。