[angr] CSCI-4968-MBE crackme0x01
2019. 3. 11. 15:25ㆍreversing/angr
[CSCI-4968-MBE] crackme0x01
바이너리를 실행해보면 비밀번호를 입력하라고 한다.
이번에도 알맞은 비밀번호를 알아내야 하는 것 같다.
ida로 바이너리를 열어보면
cmp를 기준으로 분기를 볼 수 있다.
cmp [ebp+var_4], (비교 문자) 로,
알맞은 비밀번호를 입력하면 "Password OK :)"를 출력한다.
찾아야할 주소와 피해야할 주소는 각각
0x8048449 ("Password OK :)" 출력)
0x804843B ("Invalid Password!" 출력) 이다.
[code]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | import angr find_addr = 0x8048449 avoid_addr = 0x804843B p = angr.Project('./crackme0x01', auto_load_libs = False) state = p.factory.entry_state() s = p.factory.simulation_manager(state) s.explore(find = find_addr, avoid = avoid_addr) print('[*] find flag: ') print(s.one_found.posix.dumps(0)[6:10]) | cs |
[flag]
'reversing > angr' 카테고리의 다른 글
[angr] CSCI-4968-MBE crackme0x03 (0) | 2019.03.11 |
---|---|
[angr] CSCI-4968-MBE crackme0x02 (0) | 2019.03.11 |
[angr] CSCI-4968-MBE crackme0x00a (1) | 2019.03.10 |
[angr] ais3_crackme (0) | 2019.03.06 |
[angr] baby-re (0) | 2019.03.04 |