level 6
2020. 9. 5. 11:53
이번에는 argv[1]의 길이도 제한되니 RET주소 이후로는 작성을 못하겠네요.
그러면 아예 처음부터 쉘코드를 담아서 argv[1]의 주소를 이용해보죠.
먼저 파일을 복사하고 컴파일해 gdb를 통해 disas해보겠습니다.
거리는 48이네요.
argv[1]는 0xbffffc2c에 담겨져있네요.
payload를 작성해보겠습니다.
"\x90"*19 + "~~"(ShellCode) + "\x2c\xfc\xff\xbf"
성공!