系统: Ubuntu 14.04.5 LTS
我先后分别有在Kali(Debian),CentOS上测试,最后还是觉得Ubuntu最好用了,我这里用ubuntu-14.04.4-desktop-amd64
Ubuntu系统安装过程网上超多,我不赘述了,装好后进到系统,首先先初始化root密码
sudo passwd root
你当前用户的密码
root密码
之后我们su进到root
,开始一系列配置
apt-get update
apt-get upgrade
apt-get install vim
apt-get install openssh-server
apt-get install git wget zsh
sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
apt-get install build-essential module-assistant
apt-get install gcc-multilib g++-multilib
apt-get install python-dev libssl-dev libffi-dev
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
rm -f get-pip.py
wget https://bootstrap.pypa.io/ez_setup.py -O - | python
pip install pwntools
pip install termcolor
pip install zio
pip install ipython
apt-get install socat
apt-get install lib32readline-gplv2-dev
大概有这么一些命令,可以直接复制黏贴了,然后再做相应操作。
我大概说下,首先更新一下,这边不建议去更新源/etc/apt/sources.list
,会出现无法upgrade
,现在都是Ubuntu官方中国的源,速度不慢。
之后安装vim
,ssh
,git
,wget
,socat
等一些软件
这边ssh如下配置:
vim /etc/ssh/sshd_config
#改下这条PermitRootLogin yes
vim /etc/rc.local
#在exit 0前加入/etc/init.d/ssh start用于开机启动ssh
/etc/inid.d/ssh start
#启动ssh
我习惯用zsh
,oh-my-zsh
是主题,还有ipython
。
之后就是装一些pwn
需要的,有pwntools
和zio
还有一些相关的依赖,这边pwntools安装好后,可以试一下
cheksec filename
这个命令,如果有报错就根据错误提示安装相应的库文件,没错的话就基本没什么问题了。
最后的lib32readline-gplv2-dev
是安装32位库
,这样就32位和64位都可以编译了(gcc指定-m32或-m64)
之后就根据自己需要去添加东西了,这边基本搞定了。
另外因为有时候需要在windows系统下进行一些测试,会涉及文件同步的问题,这边我的解决办法是,在本机新建个pwn
文件夹,然后在虚拟机的linux以及windows下都开启文件夹共享
(要先装VMware Tools),这样文件同步问题就解决了,且方便管理一些pwn相关的文件。
我本机是OS X EI Capitan系统,之前这篇OS X EI Capitan的SIP也说过,有个新的机制SIP,我想在本机装pwntools也频频出错,最后我先关闭SIP
,装好之后再打开,方法如下:
1.重启按Command+R
进入Recovery Mode
,打开终端
,输入
csrutil disable
2.重启,进行安装
sudo -H pip install --upgrade pwntools
还需要到这个页面找下适合自己的架构的binutils
进行安装(一般是binutils-amd64.rb
),比如pwnlib.asm
这个模块就需要用到。
brew install https://raw.githubusercontent.com/Gallopsled/pwntools-binutils/master/osx/binutils-amd64.rb
3.重复步骤1,命令改成
csrutil enable
在这期间,把想装的一起装了,否则之后得再重复这个步骤,当然也可以选择不再开启SIP,个人建议还是开启,免得引起一些不必要的麻烦 : )