0 前言
从镜像网站下载了纯净的ubuntu20.04版本的系统,从零开始配置一台Pwn环境机器。静待安装的结束后,接下来是配置过程:
1 pip的安装
进入清华镜像网站,选择自己所要的的ubuntu版本复制粘贴
https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/
此时注意,将其中的https改为http,由于证书还未更新,所以先用http访问更新证书后改回 接下来安装证书
sudo apt update
sudo apt install ca-certificates
更新完后改回 /etc/apt/sources.list 中的https 再执行一下:
sudo apt update
此时已经可以安装pip,在终端输入pip,系统提示没有pip也会给出这条安装命令
sudo apt install python3-pip
2 安装gadget插件
sudo apt -y install ruby
sudo gem install one_gadget
- ROPgadget
安装命令如下: 最简单的方法是从 PyPi 安装 ROPgadget:
sudo -H python3 -m pip install ROPgadget
ROPgadget --help
cd ~/
git clone https://github.com/scwuaptx/Pwngdb.git
cp ~/Pwngdb/.gdbinit ~/
- Pwngdb中有里面有fmtarg工具,十分好用,可以直接算出offset。pwndbg配合Pwngdb使用效果更佳
pwndbg的命令如下:
git clone https://github.com/pwndbg/pwndbg
cd pwndbg
./setup.sh
- Pwngdb 与pwndbg联合使用:
修改配置文件即可
sudo vim ~/.gdbinit
输入该指令后,要将界面修改成如下:
source ~/pwndbg/gdbinit.py
3 安装glibc相关工具
- patchelf
github地址:https://github.com/NixOS/patchelf 下载下来后
./bootstrap.sh
如果报错,则:
sudo apt-get install autoconf automake libtool
继续执行
./bootstrap.sh
./configure
make
sudo make install
make check
git clone https://github.com/matrix1001/glibc-all-in-one
克隆下来后,可以下载想要的glibc:
python3 update_list
cat list
./download 2.33-0ubuntu5_amd64
生成符号链接:
cd /lib64
sudo su
ln -s /home/keppfor/glibc-all-in-one/libs/2.33-0ubuntu5_amd64/ld-2.33.so ./33_5-linux.so.2
ls -l
更改elf文件的ld和libc
patchelf --set-interpreter /lib64/33_5-linux.so.2 ./chunk_extend_2
patchelf --replace-needed libc.so.6 /home/keppfor/glibc-all-in-one/libs/2.33-0ubuntu5_amd64/ld-2.33.so ./chunk_extend_2
ldd ./bin
- glibc查询网址 https://libc.blukat.me
4 结尾
到此基本结束,可以开始愉快的玩耍啦
|