Pwn环境配置(三)——ubuntu环境搭建(新)
前言
当初不知道怎么搭建好的ubuntu16.04的环境这次搭建有点问题,搭建了大半天pwntools还是不行。准备出一个新搭建教程。
本教程是针对ubuntu20.04的版本,下载链接ubuntu20.04官方链接放心使用。不过不知道后面官方链接这个是否会更新。更新了就自己找找吧。
开始搭建
0x1 安装gcc
sudo apt install gcc
0x2 安装pip
这里安装的是python3的pip,毕竟python2早就已经停产了。
sudo apt install python3-pip
0x3 安装pwntools
这个肯定是必备的,不然你打什么pwn呀,没有这个还能打pwn的绝对是大佬中的大佬
pip install pwntools
如果嫌弃慢可以pip换源一下
pip install pwntools -i https://pypi.tuna.tsinghua.edu.cn/simple/
0x4 安装vim编辑器
我也不知道安装这个干嘛,或许有时候就想用这个写exploit了呢。hhhh
sudo apt install vim
0x5 安装git
这个必须安装,安装过后就可以从github上面下载东西了。
sudo apt install git
0x6 安装checksec
一个辅助工具,可以用来检测二进制文件格式和安全防护情况
sudo apt install checksec
0x7 安装pwndbg
这个也是需要的,毕竟gdb在没有插件的时候对用户实在是不怎么友好。当然你喜欢gef,或者peda也随意。反正我只用过这个
git clone https://github.com/pwndbg/pwndbg
cd pwndbg
./setup.sh
pead的
git clone https://github.com/longld/peda.git ~/peda
echo "source ~/peda/peda.py" >> ~/.gdbinit
0x8 安装ipython
这个不是必须的,但是还是挺好用的。你用过就知道了,相当于python的输出加强版
pip install ipython
0x9 安装LibcSearcher
LibcSearcher是针对pwn做的python库,在做pwn题时寻找一些libc版本非常好用,不过好像现在有点疲软了。毕竟这个是对于python2写的,而且好久不维护了。开始的时候用着还可以,现在不大行了。想用还是可以用一下的。
git clone https://github.com/lieanu/LibcSearcher.git
cd LibcSearcher
python setup.py develop
0xA 安装ROPgadget
便于你构造rop链的工具,不过好像安装pwntools之后会自动安装这个玩意。要是没有你就自己安装吧。输入Ropgadget验证一下就好
sudo pip install capstone
pip install ropgadget
ROPgadget
0xB 安装one_gadget
也是构造rop链用的
sudo apt install ruby
sudo gem install one_gadget
0xC 安装seccomp-tools
这是一个沙盒,后面学的深得话会用到
sudo gem install seccomp-tools
0xD安装libc-database
一个非常好用查找libc版本的git项目, 其实就是https://libc.blukat.me/
这个网站里面的数据
#下载项目
git clone https://github.com/niklasb/libc-database.git
# 建立一个libc偏移量数据库
./get # List categories
./get ubuntu debian # Download Ubuntu's and Debian's libc, old default behavior
./get all # Download all categories. Can take a while!
0xE 安装main_arene_offset
据说做堆题的话,比较好用,还没用过呢。菜鸡一个没怎么写过堆。感觉有一丢丢难
git clone https://github.com/bash-c/main_arena_offset.git