CTF(PWN基础学习笔记)

PWN工具

*IDA pro(静态调试)

*pwntools

*pwndbg(动态调试)

*checkesc(pwn第一步,了解程序相关保护措施)

*ROPgadget

*one_gadget(自动获得shell)

IDA使用基础

1.导入文件后将机器码转为汇编语言

2.找到目标函数,选择目标函数的任意代码段,F5将该函数的汇编语言一键反编译为C语言

3.进入目标函数后,选择其中的可能出现漏洞的子函数,双击进入该函数的反编译后的C语言界面

4.寻找漏洞,进行PWN分析

TIPS:

*某些函数无C语言代码,无法反编译为C语言代码,如start()

*可在option中开启机械码显示(便于对照)

*可将C语言代码拷贝到汇编代码中进行对照

*CTRL+S可保存做题进程,保存为.idb类型

*功能键冲突(如shift+F12),可加Fn消除冲突

*shift+F12,字符串表,可根据字符串查找该字符串所在函数的位置

Pwntools

1)python3

2)from pwn import

3)ls

4)io = process("./name"),链接本地端口展开攻击,完成后再链接远程端口

5)io 查看类型

6)利用io.process io.remote io.recv io.send 进行简单操作

*可利用-d命令进行解码得到flag

Pwndbg

1)gdb filename进入pwngdb调试

2)b main在main函数设置断点

3)r 运行,显示出寄存器,汇编码,栈,函数关系 四栏信息

4)n过到目标子函数,s进入函数,n执行函数,输入函数执行信息

5)stack 所需查看数查看函数栈空间

6)查询后门函数地址,计算到达后门函数所需字节数

7)退出Pwndbg,重新进入python开始攻击,执行io命令链接后,payload相应字节数填充垃圾数据,在缓冲区位置填入打包后的后门函数地址

8)成功获得shell

9)io.remote+远程地址获得远程服务器控制权

10)ctrl+d退出python环

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值