일단 다들 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 |