일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Seccomp bypass
- 실시간로깅
- tool
- 공유 라이브러리는 왜 항상 같은 순서로 맵핑 될까?
- vhdx 파일 복구
- std::cerr
- pip 에러 해결
- GDB
- pwn
- 지훈현서
- pwntools
- GEF
- 리커버릿
- vmware 반응 속도
- Recoverit
- python
- z3 signed 이슈
- Python.h: No such file or directory
- Python3
- VSCode C++ 표준 버전 수정
- DYNAMIC Section
- OpenAI 개발
- python3.11 pip
- c++
- docker
- 개발
- Windows 부팅 오류
- python3.11 설치
- wsl2 복구
- 임베디드 시스템 해킹
- Today
- Total
OZ1NG의 뽀나블(Pwnable)
[Tools] libc-database 본문
libc-database는 이름 그대로 libc를 함수 실제 주소의 하위 3니블을 가지고 libc를 찾아주는 툴이다.
보통이라면 https://libc.blukat.me/?q=puts%3A7e0&l=libc6-i386_2.15-0ubuntu20_amd64에서 찾을 수 있지만,
지금은 502에러가 떠서 이 곳을 이용할 수 없다. 그래서 이 툴을 사용한다.
[다운로드]
git clone https://github.com/niklasb/libc-database
[사용법]
1. ./find [함수명] [하위 3니블]
ex) ./find __libc_start_main 740
libc-database 디렉토리 안에 있는 find 바이너리를 이용해서 libc를 찾는다.
db 디렉토리에 있는 libc들에서 찾아주는 것 같다.
2. ./get
처음 깔면 db 디렉토리에 아무것도 없어서 ./find를 사용해도 아무것도 찾을 수가 없다.
처음 깐 후 ./get을 실행하면 알아서 ubuntu 홈페이지에서 libc파일들을 버전별로 알아서 다 다운받아 와준다. (개꿀;)
거기다 개쩌는게 중간에 실수로 꺼져버리면 안깔린 것만 다시 깔아준다.
[http://security.ubuntu.com/ubuntu/pool/main/g/glibc/] <-- 이런곳 등등에서 하나씩 다운받아와 db에 저장해준다.
[http://old-releases.ubuntu.com/ubuntu/pool/main/e/eglibc/]
3. ./add [libc 파일]
libc파일을 db에 저장 할 수 있다.
위 3개면 사용하는데 딱히 더 필요한건 없을 것 같다.
[libc base addr 구하는 법]
[PWN] libc버전을 모르는 경우 libc버전 찾는 법
'Tips' 카테고리의 다른 글
[비공개] gdb에서 파이썬 스크립트 입력하는 방법 (0) | 2019.11.22 |
---|---|
[CTF][Python][C언어] 문제 만들때 입력시간 제한 거는 법 (0) | 2019.07.28 |
[Tools] One_gadget (0) | 2019.07.28 |
[Tips] 어셈블리어 코딩, div 명령어 오류 (0) | 2019.05.16 |
[PWN] libc버전을 모르는 경우 libc버전 찾는 법 (0) | 2019.01.09 |