98, 1/5 회원가입  로그인  
   turttle2s
   angr에서 스택 주소 구하기

http://www.hackerschool.org/HS_Boards/zboard.php?id=QNA_Reversing&no=129 [복사]


angr에서 스택으로 리턴하는 스크립트를 만들려고합니다.
(aslr은 꺼져있습니다.)
그런데 기본적으로 angr에서 sp랑 gdb로 확인했을 때 sp랑 차이가 납니다.

[ === angr 코드 === ]
# base.py
import angr, claripy
import code
import sys
from angr import sim_options as so

def main():
    proj = angr.Project("./t2",load_options={"auto_load_libs":False})
    extras = {so.REVERSE_MEMORY_NAME_MAP, so.UNICORN_TRACK_STACK_POINTERS}
    main_addr = proj.loader.find_symbol("main").rebased_addr
    st = proj.factory.call_state(main_addr, add_options=extras)
    print(st.regs.pc)
    print(st.regs.sp)
    #sm = proj.factory.simulation_manager(st)

#    code.interact(local=locals())

if __name__ == "__main__":
    main()

[ === angr결과 === ]
$python base.py
<BV32 0x8049162>
<BV32 0x7ffefffc>


[ == gdb == ]
gdb-peda$ b *main
Breakpoint 1 at 0x8049162
gdb-peda$ r
gdb-peda$ p/x $eip
$2 = 0x8049162
gdb-peda$ p/x $esp
$3 = 0xffffd51c
gdb-peda$



angr에서는 0x7f로 시작하지만, gdb에서 확인해보면 0xff로 시작합니다.
angr에서는 바이너리를 cle가 따로 로드하기 때문에 실제 스택 주소랑 다를 것이라고 예상은 하지만, 문제는 이겁니다.
angr에서 취약한 상태를 찾고 스택으로 리턴하는 익스플로잇을 생성하려면 주소를 알아야하는데, angr만으로는 불가능한건가요?

  Hit : 293     Date : 2021/05/24 12:35
[불법/스팸글로 신고하기]



    
turttle2s 스택은 변동이 커서 angr에서는 다루지 않는다네요 2021/05/26  
군인 해결완료 2021/05/31  
  angr에서 스택 주소 구하기[2]     turttle2s
05/24 292
97   아스키 범위 밖 페이로드 전송 시, 0xc2가 붙는 현상[7]     turttle2s
05/11 377
96   angr 질문[2]     turttle2s
04/24 308
95   리버싱 핵심원리를 공부하다가 막혔습니다.     aaasss445
06/12 907
94   quickbms 의 원리가 궁금합니다.     sa0814
05/10 645
93   콜스택에 아무것도 없을 경우에는 어떻게 해야하나요..[2]     mij9929
01/14 719
92   ollydbg 64bit 실행 불가 왜 이런거죠? ㅠ[4]     4ru4ka
04/24 1853
91   변수 선언시 스택에서의 위치[4]     turttle2s
11/13 1071
90   코드엔진 Basic 02에서     healer
04/08 1082
89   win32 api 및 진로..?[2]     user0
02/26 2158
88   메모리 주소 변경 되는 문제에 관해 질문합니다.[2]     jjunici
12/17 2146
87   ida에서 분석할 때,,,[3]     vngkv123
11/30 1222
86   리버싱-디스어셈블리-디버거에 문의좀..     leonardo6
10/13 1488
85   dumpcode 헤더파일 말인데요..[1]     ys200209
07/20 1366
84   리버싱 __security_cookie[3]     healer
07/17 2049
83   단순 리버싱 관련 질문[8]     ewqqw
06/11 1842
82   elf 바이너리 패치 질문...[2]     vngkv123
06/07 2019
81   IDA hexray로 보았을 때...[2]     vngkv123
05/29 1682
80   디스어셈블된 코드들 중에서..[2]     vngkv123
05/14 1678
79   게임 보안 (싸인코드, X-Trap, 게임가드) 분석 법률 궁금합니다![4]     셜록38
03/17 2769
1 [2][3][4][5]

Copyright 1999-2021 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org & Wowhacker.com