argv[1][47]=\xbf이면 안된다.
argv[1][47]=\x40이면 안된다.
strncpy를 써서 argv[1]의 48자만 buffer에 넣어요!
FAKE EBP를 쓰자!
ebp부분에 buffer-4 ret부분에 lev-ret 가젯을 넣는다.
그러면 argv[2]을 통해 쉘코드를 넣을 건데,,
argv[2]=AAAA+쉘 주소+NOP+쉘코드
ebp에 들어가는 buffer-4가 AAAA이 부분이 되는 것이다.
2번째 방법
system 함수 이용
system함수주소+AAAA+/bin/sh/주소 +A*28+"buffer-4byte주소"+"lev-ret gadget부분
하지만, 주소가 정확히 맞지 않는다.
'시스템 해킹 > LOB' 카테고리의 다른 글
succubus (0) | 2016.10.31 |
---|---|
zombie_assassin (0) | 2016.10.31 |
bugbear (0) | 2016.10.30 |
darkknight (0) | 2016.10.30 |
golem (0) | 2016.10.30 |