97, 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 : 1433     Date : 2021/05/24 12:35



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

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