-
[LOB] Troll -> Vampire Write-up표튜터와 함께하는 Pwnable/The Lord Of the BOF Write-up 2019. 2. 26. 18:19
혹시나 이상하거나 잘못된 것이 있다면 댓글 부탁드립니다.
이번 문제를 보면 지금까지 있었던 제약들이 달라졌습니다.
여러 제약이 사라지고 주소값이 0xbf로 시작하고 그 다음이 "ff"가 아니여야하는 제약이 생겼습니다.
즉 최소한 0xbffeffff 부터 무언가 쉘코드를 넣어야한다는 것을 알 수 있었다.
하지만 스택이란 무엇인지 잘 고민해보면 이 문제는 굉장히 쉽게 풀 수 있다.
스택은 커질 수록 낮은 주소를 사용해야한다는 점, 즉 스택이 거꾸로 자란다는 성질을 이용하면된다.
0xbffeffff 영역에서부터 코드가 실행되게 하려면 nop sled를 사용하면 되고
그 nop의 양을 크게 키우면 이 문제는 간단하게 풀 수 있게 된다.
0xbffeffff에서부터 0xbfffffff까지의 차이는 0x10000이므로
65536개의 크기만큼 nop을 넣어주도록 하겠다.
아주 손쉽게 쉘을 따내는 모습을 볼 수 있었다.
반응형'표튜터와 함께하는 Pwnable > The Lord Of the BOF Write-up' 카테고리의 다른 글
[LOB] Skeleton -> Golem Write-up (0) 2019.02.27 [LOB] Vampire -> Skeleton Write-up (0) 2019.02.27 [LOB] Orge -> Troll Write-up (0) 2019.02.10 [LOB] Darkelf -> Orge Write-up (0) 2019.02.10 [LOB] Wolfman -> Darkelf Write-up (0) 2019.02.09 댓글