CafeM0ca

level7 orge 본문

Hacking/LOB(Red Hat)

level7 orge

M0ca 2017. 9. 14. 01:13
반응형


입장 ID:orge

입장 PW:timewalker



레벨이 올라갈때 마다 무언가 하나씩 추가되고 있다.

인자는 2개이어야하며 환경변수 사용불가,argv[1][47]은 \xbf, argv[1]의 길이는 48이하, 버퍼 0으로 초기화, argv[1]초기화 된다.


인자가 2개이고 argv[1]과 버퍼가 초기화 되므로 argv[0]을 사용하자.


복사본을 만들고 심볼릭 링크를 걸어주자. 

main+317부분에 브레이크 포인트를 잡자.

스택 구조는 아래와 같다.

i 4 | buffer 40 | SFP 4 | RET 4


argv[0]의 주소를 0xbffff944에서 한번 더 들어가서 x/s 0xbffffa3f로 보면 argv[0]의 주소가 나온다. 



주소를 구했으니  페이로드를 작성하자.

복사본의 심볼릭링킹된 파일을 삭제하고 원본파일에 심볼릭을 걸어준 후

nop이 있는 곳을 리턴주소로 작성하자.

paylaod

./심볼릭파일 `python -c 'print "A"*44+"&(argv[0] nop)"'`


다음 ID:troll

다음 PW:aspirin

반응형

'Hacking > LOB(Red Hat)' 카테고리의 다른 글

level9 vampire  (0) 2017.09.14
level8 troll  (0) 2017.09.14
level6 darkelf  (0) 2017.09.14
level5 wolfman  (0) 2017.09.14
level4 orc  (0) 2017.09.14
Comments