시스템 해킹

 1576, 1/79 회원가입  로그인  
   choboKing
   라이브러리 함수의 주소가 이상해요[codegate2014 nuclear]

http://www.hackerschool.org/HS_Boards/zboard.php?id=QNA_system&no=1826 [복사]


http://shell-storm.org/repo/CTF/CodeGate-2014-Juinor-Quals/nuclear/

시스템 해킹 관련 문제를 풀던 중 뭔가 이상해서 질문드립니다.
일단 문제는 codegate2014에 출제되었던 nuclear이고요
쓰레드를 해서 지역변수에 데이터를 받아오는 부분에서 bof취약점이 터지는거 같더군요.
실전같이 연습하기 위해 라이브러리 함수의 주소를 알아와 라이브러리 버전을 알아내는것부터 시도했습니다.
send, recv의 got을 읽어와서 알아내려고 했으나 어째서인지 실행중에 rop해서 읽어오거나 gdb로 확인한 주소와 ida,objdump로 알아낸 오프셋의 차이가 다르더군요
왜 이런걸까요......
(참고로 실행시킨 환경은 64비트 우분투입니다.)



  Hit : 4317     Date : 2016/12/17 09:05



    
phills0915 nuclear가 제가 알기로 32비트 바이너리인데 혹시 ida, objdump로 보신 라이브러리가 64비트용 라이브러리 아닌가요?
ldd ./nuclear를 해서 나오는 32비트 라이브러리를 보셔야 합니다
2016/12/17  
choboKing 조언 감사드립니다.
다시 확인해봤으나, ldd ./nuclear를 해서 나오는 32비트용 라이브러리가 맞더군요....
혹시나 하는 마음에 gdb로 info sharedlibrary를 해서 라이브러리의 주소를 확인 한 후에 got에 들어가 있는 주소들을 확인 해보니까 libc가 아니라 libpthread영역의 주소가 들어가 있더군요....
쓰레드 관련 함수들이 libpthread에 있는것은 이해가 되는데 send,recv같은 함수조차 libpthread에 있는것이 이해가 안되어 관련 정보들을 검색해 보는 중입니다....
2016/12/18  
jinmo123 ELF같은 경우에는 어떤 심볼을 불러와야 할 때 어떤 라이브러리에서 불러오는지는 따지지 않고 그 이름과 심볼의 버전(지정된 경우에만)으로만 찾아서 불러오기때문에 여러 라이브러리에서 같은 이름의 심볼을 정의한다면 그 라이브러리들 중 먼저 찾아지는 심볼을 불러옵니다. libpthread는 그걸 이용해서 send, recv 함수를 덮어쓴게 아닐까요? 2017/01/07  
choboKing 궁금하던 점이 해결되었습니다.
감사합니다.
2017/01/09  
1576   버그바운티를 할 정도의 수준이면 어떻게 로드맵을 잡아야 하나요?     해킹잘하고싶다
05/03 1672
1575   LOB 문제 익스플로잇을 C로 작성하면서 푸는데요.[2]     해킹잘하고싶다
09/18 1887
1574   pwnable.kr echo1 질문2 (스포 주의)[2]     turttle2s
10/05 2979
1573   LOB GATE문제 풀면서 궁금한점[3]     hackxx123
08/24 2585
1572   libc관련 - 2[5]     lMaxl04
08/24 2568
1571   ASLR이 걸려있을때 ret에 ROP으로 jmp %esp을 사용한 경우.[3]     lMaxl04
06/29 2762
1570   리모트 환경에서의 스택 주소 확인 방법이 궁금합니다.[2]     lMaxl04
06/16 2303
1569   해킹 프리서버 없어졌나요?[1]     terfkim
04/15 3229
1568   스택에 데이터 넣을 때 SIGSEGV[4]     turttle2s
02/04 2956
1567   pwnable.kr echo1 질문[2]     turttle2s
06/17 3190
1566   ROP strcpy 관련 질문입니다.[3]     heeyoung0511
06/16 2844
1565   Level2 -> Level3 에서 vi와 /usr/bin/Editor의 차이[2]     hyemin1826
07/18 3245
1564   Trainer3 ftz.hackerschool.org 호스트 접속 불가[1]     hyemin1826
07/18 5125
1563   dll인젝션 실험중 질문 드립니다.[1]     kkk477
05/31 3215
1562   패킷 복호화를 마스터 하려면 어떤 과정이 있어야하나요?     sa0814
04/01 2769
1561   사기[2]     jas08
03/31 3141
1560   시스템 콜이 가능한 메모리 영역과 불가능한 메모리 영역이 존재하나요?     ocal
03/30 2778
1559   pwntools 사용시와 기본 socket 모듈 이용시 차이?[4]     ocal
01/09 3790
1558   lob level19(nightmare) 관련질문[1]     dnjsdnwja
12/18 2739
1557   ftz level2 질문있습니다[1]     kihyun1998
12/13 2947
1 [2][3][4][5][6][7][8][9][10]..[79]

Copyright 1999-2026 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org