-
|Lord Of Bufferoverflow| #9 troll - vampireWargame Site/BOF 2019. 5. 20. 16:20
RET 조작을 힘들게 하기 위한 방법인 듯 하다. 사실 이전 문제들에서 \x90 ( NOP ) 이라는 값을 넣게되면 쉽게 해결을 할 수 있었다. 하지만, 정확한 이해를 위해 이 방법을 최대한 지양했었는데, 이번에는 이 기능을 쓸수 밖에 없을 거 같다. ( 정확히하려면 또 안써도 되지만 )
/x90 은 NOP 이라는 아무런 동작이 없는 assembly 언어이다. 어셈블리어 계의 주석이라고 봐도 무관할 듯 싶다. 따라서 buffer + SFP + RET + \x90 * 1000000 + shellcode 의 구조를 가지고 있을 때, \x90 바이트가 있는 아무 곳이나 RET 로 설정했을 때 정상적으로 Shellcode 가 실행된다는 것이다. 그렇다면 이문제의 경우에 인자값을 완전 크게 만들어 주면 ff 를 벗어나지 않을까 하는 궁금증이 생긴다.
NOP 을 100,000 으로 주어보았다 ㅎㅎ
자, 이제 ff 에서 벗어나 fe 지역으로 들어온 것을 알 수 있다.
'\x90' 아무 곳이나 돌려주면, 밑~~~~~~에 있는 Shell code 가 실행되는 것을 알 수 있다.
다음과 같이 Bash shell 이 열린 것을 알 수 있다.
이제 vampira 를 vampire 로 바꿔주기만 하면 vampire 권한의 shell 을 획득할 수 있다.
'Wargame Site > BOF' 카테고리의 다른 글
|Lord Of Bufferoverflow| #10 vampire - skeleton (0) 2019.06.10 /bin/sh 을 실행하는 Shellcode 를 만들어보자 (0) 2019.06.07 |Lord Of Bufferoverflow| #8 orge - troll (0) 2019.05.20 |Lord Of Bufferoverflow| #7 darkelf - orge (0) 2019.05.20 |Lord Of Bufferoverflow| #6 wolfman - darkelf (0) 2019.05.20 댓글