1. 程式人生 > >elf逆向入門

elf逆向入門

文件名 http als bvs 學習 round gpo 符號 pro

一:

在linux下進行調試時容易出現權限不夠的情況;此時解決辦法就是chmod 777+文件名提升權限,以實驗吧debug為例,給出了簡單的32elf文件,我在查看一些資料以後發現,我需要在main函數處進行設置斷點,於是使用 break __libc_start_main設置斷點,然後在將文件跑起來 r,接下來在push處進行設置set $eip = 0x804849b,最後給出continue,打印出flag

二:

關於逆向elf文件符號執行的學習,下面是效果

.技術分享圖片

技術分享圖片

下面是處理的框架:

import angr

import claripy

proj = angr.Project(‘./ais3_crackme‘,auto_load_libs=False)

argv1 = claripy.BVS(‘argv1‘,50*8)

state =proj.factory.entry_state(args=[‘./ais3_crackme‘,argv1])

simgr = proj.factory.simgr(state)

simgr.explore(find=0x400602,avoid=0x40060E)

Out[26]: <SimulationManager with 3 active, 1 found, 46 avoid>

print simgr.found[0].solver.eval(argv1)

982585559591575985374705575567592960052976734226750479530958626821257185859104971082646494321404975234050832525462339584

print simgr.found[0].solver.eval(argv1,cast_to=str)

elf逆向入門