[LOB] gaint->assassin
2019. 3. 31. 01:45
LOB
[the Lord Of Buffer overflow]
#15 :giant->assassin
이번 소스 코드이다. RET으로 0x40~이 들어갈 수 없으니, 공유 라이브러리 영역이 들어갈 수 없어서 RTL을 할 수 없었다.
...더보기
그래서 RET SLED 기법을 적용하기로 했다.
RET에 못 넣으면 RET-4에 쉘코드를 넣어서 그냥 BOF를 적용하기로 했다.
(RET에는 가젯주소를 넣으면 esp가 다시 +4될테니까)
버퍼는 40바이트이고, 가젯주소는 0x804851e이다.
가젯을 RET에 넣고, 그 다음에 쉘코드의 주소를 넣고, 다음에 쉘보드를 넣어야하는데, 쉘코드의 주소를 모르니 gdb로 아무거나 넣고 run 해보았다.
esp 근처 메모리를 보니, 0x90909090이 시작하는 곳인 0xbffffa05를 쉘코드의 주소로 잡아야겠다.
성공
참고 :
'Wargame > LOB(Redhat)' 카테고리의 다른 글
[LOB] zombie_assassin->succubus (0) | 2019.07.01 |
---|---|
[LOB] assassin->zombie_assassin (0) | 2019.04.01 |
[LOB] bugbear->giant (0) | 2019.03.29 |
[LOB] darkknight->bugbear (0) | 2019.03.28 |
[LOB] darkelf->orge (0) | 2019.03.28 |