본문 바로가기
포너블(pwn)

rp++ 사용법(x86-x64)

by lolchangilsang 2022. 2. 17.

일단 다들 rp++에 대해 알고 왔을 수도 있지만 모르는 사람을 위해 설명을 하도록 하겠다

 

rp++은 포너블에서 code gadget의 주소를 알아내기 위해 많이 사용하는 툴이다.

 

더 알고 싶으면 다른 블로그를 찾아보도록 해라

 

 

 

그 다음 사용법을 설명하기 전에 

https://github.com/0vercl0k/rp/releases

 

Releases · 0vercl0k/rp

rp++ is a fast C++ ROP gadget finder for PE/ELF/Mach-O x86/x64/ARM binaries. - 0vercl0k/rp

github.com

 로 가서 x64버전은 최신 릴리스에서 다운받고 x86은 32bit가 안나오기 시작한지 오래되서 가장 옛날 버전에만 있는듯하니 가서 다운받으면 된다

 

리눅스에서 다운받으려면

 

wget https://github.com/0vercl0k/rp/releases/download/v1/rp-lin-x86
wget https://github.com/0vercl0k/rp/releases/download/v2.0.2/rp-lin-x64

 

를 터미널에 입력하면 된다

 

그 후 

이렇게 다운 받은 파일들을 /usr/local/bin으로 이동/복사해준다(이유는 명령어처럼 사용하기 위함이다, 모르면 구글링)

 

그런 다음, 

 

/usr/local/bin으로 이동시킨 후

 

chmod u+x rp-lin-x64
chmod u+x rp-lin-x86

터미널에 입력해 권한을 주어 실행 가능하게 만들어줘야 한다

 

이제 사용법을 설명하자면 자세하게 알 필요는 없고(짜피 다들 code gadget 찾으로 온거잖아요)

 

rp-lin-x64 -f ./(filename) -r 4 | grep "pop"
rp-lin-x86 -f ./(filename) -r 4 | grep "pop"

이런식으로 입력하면 아주 편하고 쿨하고 섹시하게 code gadget의 주소를 얻을 수 있다.

'포너블(pwn)' 카테고리의 다른 글

rtl x86, rop x86  (0) 2022.02.25
서버의 라이브러리 버전 알아내는 법  (0) 2022.02.25
리눅스) 라이브러리 검색  (0) 2022.02.23
RTL ret가젯은 언제 넣어줘야하나?  (0) 2022.02.19
python2&3 pwntools설치  (0) 2022.02.17