PEDA - Introduction && Installation
Introduction
PEDA는 Python Exploit Development Assistance for GDB 의 줄임말로 말 그대로 리눅스에서 디버깅할 때 흔히 사용하는 gdb에 exploit을 할때 도움이 되는 다양한 기능을 추가시켜주는 gdb python script 입니다.
밋밋한 gdb 만 쓰다 PEDA를 적용하여 사용해보시면 색도 알록달록하고 강력한 기능에 신세계를 경험하실 수 있을겁니다!
PEDA에 대한 자세한 내용은 아래의 URL에서 확인하실 수 있습니다.
Installation
설치 방법 및 적용 방법은 매우 간단합니다. (사실 ubuntu 최신 버전과 같이 gdb의 python 버전이 3.x 인 경우에는 쬐에에끔… 복잡할 수 있습니다.)
그래서 우선! 현재 설치하려고 하는 환경의 gdb가 어떤 버전의 python을 사용하고 있는지 확인해 보도록 하겠습니다.
gdb를 키고 python print(sys.version) 를 입력하여 python 버전을 확인합니다.
1 | $ gdb -q |
여기서 결과가 2.7.3 이런식으로 2 버전대로 나온다면 ,
PEDA파일을 받아오고 .gdbinit에 PEDA파일을 불러오는 내용만 추가해 주시면 됩니다.
1 | $ git clone https://github.com/longld/peda.git ~/peda |
저 두줄만 입력하여 주시면 PEDA 설치와 설정이 끝나게 됩니다.
하지만… 결과가 3.4.0 이런식으로 3 버전대로 나온다면, 위 두줄의 명령어를 실행하여 PEDA를 설치한 다음 gdb를 2버전대의 python으로 새로 컴파일 해주어야 합니다. 그 과정은 아래와 같습니다.
- 현재 설치되어 있는 gdb를 지워줍니다.
1
$ sudo apt-get remove gdb
- gdb 소스를 받아옵니다.
http://ftp.gnu.org/gnu/gdb/ 여기로 들어가셔서 gdb-7.8.2.tar.gz 를 받아주시면 됩니다.
( 2015년 2월 25일 현재 7.9버전까지 있으나 7.9버전에는 오류가 발생하여 잘 안되는것 같습니다. ) - 다운로드 받은 gdb-7.8.2.tar.gz 의 압축을 풀어줍니다.
1
$ tar -xvf "다운로드 받은 경로"/gdb-7.8.2.tar.gz
- python 2.7-dev 패키지 다운로드
1
$ sudo apt-get install python2.7-dev
- libncurses5-dev 패키지 다운로드
1
$ sudo apt-get install libncurses5-dev
- 압축해제한 gdb소스가 있는 경로로 이동하여 아래의 내용을 입력합니다.
1
2
3$ ./configure --with-python=python2
$ make
$ sudo make install
여기까지 따라오시느라 수고 많으셨습니다!
제대로 설치가 되었다면 아래와 같은 화면을 볼 수 있습니다.
작성자: l34p