정보보안

[정보보안] Pwn 관련 툴 추천 / 설치 스크립트

SweetDev 2021. 2. 8. 12:47

1. checksec.sh

실행 파일에서 제공하는 보안 매커니즘을 읽기 쉬운 형태로 표시해주는 쉘 스크립트

예비 조사 단계에서 수행하는 RELRO, SSP, NX bit을 확인하는데 사용한다. 

2. peda

gdb의 기능을 강화하는 확장 스크립트

디버그 정보 표시 강화, 간이 ROP 가젯 검색, 메모리 검색 강화 등

longld/peda는 파이썬 3 지원안해서 zachriggle/peda 사용..ㅠ

 

[peda의 편리한 명령들]

pdissassemble(pdisass) 구문 강조된 역어셈블 결과 출력
ropgadget ROP 수행할 때 편리한 가젯 표시
pattern 버퍼 오버플로우시 어느 부분이 레지스터에 대입되어 있는지 등 조사
vmmap 실행중인 응용프로그램이 메모리 영역 어떻게 확보하고 있는지 표시

3. rp++

실행 파일 안에 존재하는 ROP 가젯을 표시해준다. 

역어셈블 결과를 보고 찾는것과 다르게 명령의 일부를 자른 가젯도 표시해준다. 

4. socat

소켓통신 환경 구축 쉽게 해줌

socat을 사용해서 4000번 포트에 연결했을 때 바이너리 파일을 실행하려면\

socat TCP-LISTEN:4000 EXEC:"./binary"

소켓 재사용, 다중연결 허용하려면 reuseaddr, fork 옵션 붙이기

socat TCP-LISTEN:4000,reuseaddr,fork EXEC:"./binary"

5. pwntools

원격 서버 연결, ROP 구축 등 기능 많음

 

 

스크립트

Ubuntu 14.04 LTS x86_64

sudo apt-get install build-essential gcci-multilib git gdb
git clone https://github.com/zachriggle/peda.git ~/peda
echo “source ~peda/peda.py” >> ~/.gdbinit
export PATH=$HOME/bin:$PATH
mkdir $HOME/bin
wget https://github.com/downloads/0vercl0k/rp/rp-lin-x64 -0 $HOME/bin/rp
wget https://github.com/slimm609/checksec.sh/archive/1.6.tar.gz
tar zxvf 1.6.tar.gz
cp checksec.sh-1.6/checksec $HOME/bin/cehcksec.sh

 

 

[출처]: CTF 정보보안 콘테스트 챌린지북