社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
本帖最后由 sucppVK 于 2017-1-9 14:39 编辑
一、前言
本文原创作者:XXX,本文属i春秋原创奖励计划,未经许可禁止转载!
可笔者见还是有不少小白没有理解一句话(只知道是拿来链接菜刀) 今天打算做一篇面向初学者的教程,总结知识点,抛砖引玉。 让小白从彻底理解马的含义,到打造属于自己过waf的马。 --------------目录------------------------------------------------------------------
二、正文 -----------0x01.php一句话含义--------------------------------------------------- 一句话木马: 一句话木马短小精悍,而且功能强大,隐蔽性非常好,在入侵中始终扮演着强大的作用。 先来瞅瞅最原始的一句话是啥样子:
[PHP] 纯文本查看 复制代码
看到只能赞叹前辈的智慧,我们这一代始终是站在巨人的肩膀上。 而小白看到这个会想到什么呢? 哦,密码是pw 这句话什么意思呢? php的代码要写在<?php ?>里面,服务器才能认出来这是php代码,然后才去解析。 @符号的意思是不报错。 例如: 如果没有@,如下图,就会报错 为什么呢? 因为一个变量没有定义,就被拿去使用了, 服务器就善意的提醒:Notice,你的xxx变量没有定义。 这不就暴露了密码吗? 所以加上@ 为什么pw是密码呢? 那就要来理解这句话的意思了 php里面几个超全局变量 $_GET、$_POST就是其中之一 $_POST['a']; 意思就是a这个变量,用post的方法接收。 (传输数据的两种方法,get、post,post是在消息体存放数据,get是在消息头的url路径里存放数据(例如xxx.php?a=2)) eval() 把字符串作为PHP代码执行 例如:eval("echo 'a'");其实就等于直接 echo 'a'; 再来看看<?php eval($_POST['pw']); ?> 首先,用post方式接收变量pw,比如接收到了:pw=echo 'a'; 这时代码就变成<?php eval("echo 'a';"); ?> 结果: 连起来意思就是: 用post方法接收变量pw,把变量pw里面的字符串当做php代码来执行 所以也就能这么玩: 也就是说,你想执行什么代码,就把什么代码放进变量pw里,用post传输给一句话木马 你想查看目标硬盘里有没有小黄片,可以用php函数:opendir()和readdir()等等 想上传点小黄片,诬陷站主,就用php函数:move_uploaded_file,当然相应的html要写好 你想执行cmd命令,则用exec() 当然前提是: php配置文件php.ini里,关掉安全模式safe_mode = off, 然后在看看 禁用函数列表 disable_functions = proc_open, popen, exec, system, shell_exec ,把exec去掉,确保没有exec。 (有些cms为了方便处理某些功能,会去掉的) 看看效果: 现在应该理解,为什么说一句话短小精悍了吧! -------------------------------------------------------------------------------- -----------0x02.用js+php打造高效率爆破一句话脚本---------------- 用来接收的变量可以随便写, 例如<?php @eval($_POST['aadhqdssjdodjsijsdmzodjihdaisjd']); ?> 那么变量就是aadhqdssjdodjsijsdmzodjihdaisjd,也就是所谓的密码 那如果,在扫描目录的时候,发现某个可疑目录, 例如:www.dedecms.com/include/taglib/yijuhua.php 扫到了的返回信息是200 ok 但是打开却是空的,我们就有理由相信:这很可能是别人留下的后门(一句话木马) 这时候,咱们就可以尝试爆破这个密码 a=echo 'okok'; 没有回显,不对 b=echo 'okok'; 没有回显,不对 . . . 这样可以吗,可以,但太慢了。 吐司论坛上,接地气表哥就已经给出过思路,用&连接多个变量参数,一次测试多个参数 这样可以让你的爆破效率提高千倍 比如 一次放几百个参数,只要里面恰好有那个密码,就会有回显! tip:阿帕奇最多接收1000参数 咱们i春秋论坛已经有人给出py脚本,这里给出js+php的,大家完善+修改后,就可以放到自己的网站上,丰富网站功能 奸笑一下,为什么说是完善+修改呢?一会再说
[PHP] 纯文本查看 复制代码
|