IT 그리고 정보보안/환경설정 및 기타

gdb-peda 설치

plummmm 2021. 4. 17. 09:46
반응형

gdb peda라고 아주 유용한 파이썬 플러그인이 있다.

최신 gdb들이 3버전 대로 만들어서 peda를 설치하는데 상당히 곤욕을 치뤘다.

peda는 2버전대로 만들었다.

 

먼저 peda 소스코드를 받는다.

$ git clone https://github.com/longld/peda.git ~/peda

 

 

 

소스코드를 받고 나서

 

$echo "source ~/peda/peda.py" >> ~/.gdbinit

을 입력한다.

 

gdb설정파일에 peda 경로를 설정해주는 것 같다.

 

그다음 2.7버전으로 gdb를 컴파일 하기 위해 python2.7-dev를 받는다.

$apt-get install python2.7-dev

 

그리고 term cap library found error를 방지하기 위해 (뭔 에런진 모르겠다.)

$apt-get install libncurses5-dev

 

요파일도 받는다. 그라고 나면 이제 gdb 소스를 받아야 할텐데.

http://ftp.gnu.org/gnu/gdb

 

에 접속을 하면

 

 

요래 나오는데.. 지금 2015년 1월 16일 기준으로 어제 나온 7.8.2가 최신버전이다.

(지금 내가 다시 수정하는 날짜가 5월 27일.. 최신버전 7.9.1 인데 이걸로 하면 peda 설치안된다. 참고하셈)

소스코드를 받는다..

 

이제 파이썬 2.7로 컴파일해야 된다.

gdb 소스코드 압출을 풀고 압축을 푼 최상위 디렉토리에 가서 configure -> make -> make install 을 한다.

 

$./configure --with-python=python2

$make

$make install

 

오류가 많이 났었는데 기억이 안난다.. 만약 하다 오류가나면 개인적으로 쪽지를 주시던지..물어보세요

참고로 기존에 설치된 gdb를 삭제하고 다시 깔아야 한다고 하는데.. 나는 그냥 설치했는데 정상적으로 동작하더라.

 

다 깔면 요런 이쁜 peda가 실행된다.

 

** 추가 내용 **

위와 같이 하면 오류가 너무 많이나서 좀더 쉽게 설치하는 방법도 있음

 

일단 설치 명령은 동일하다. (위에꺼 치기전에 $sudo apt-get install git 는 필수)

 

저번에도 말했듯이 우분투14.04를 설치하면 gdb 버전이 7.7인데, 이게 파이썬 3버전 대로 컴파일 된 것이라

파이썬 2버전대로 작성된 peda와 호환이 안된다고 했다.

 

그럼 접때 말한 것처럼 gdb 버전을 그대로 두고 3버전대로 컴파일하느냐,

아니면 다운그레이드를 하느냐 둘 중 하나다.

 

전자는 오류가 너무 많이 나서 후자에 대해 말해보려고 한다.

 

일단 synaptic 이라는 패키지 관리자를 설치해야 한다.

$sudo apt-get install synaptic 으로 설치하고 실행한다.

 

 시냅틱을 켜고 setting > repositories > other software > add 해서

deb http://kr.archive.ubuntu.com/ubuntu/ precise main 을 추가한다. 이게 우분투 12.04의 패키지들을 가져오는 것이다.

여기에 gdb 7.4 버전이 존재한다.

 

닫고나면 자동으로 새로고침이 된다.

 

그리고 나서 gdb 를 검색하여 package > force version > gdb 7.4 선택 > 다운그레이드 순으로 진행하여

7.4버전으로 다운그레이드를 하고 위에 installaion에 있는 명령을 쳐주면 peda 설정이 완료된다.

 

자료 출처 : http://shayete.tistory.com/30

반응형