菜刀,c刀,蚁剑都使用过。而且他们的方法基本上差不多。
今天突然心血来潮写来研究一下一句话木马和菜刀的原理。
下面的原理是自己看其他大佬写的和自己总结的一些介绍。
希望能够帮助老表们~~~
一句话木马原理
我这里就分析一下PHP代码,其他代码基本上差不多。希望老表们可以自己进行分析。
我们来看一下经典的一句话木马
<?php
@eval($_POST['123']);
?>
-
前面的@表示如果脚本出现错误,则不显示错误。下面就是没有@的时候。会报错!
这里是加了@,则不会进行报错
-
eval()函数是执行PHP代码的一个函数。意思就是eval函数里面如果是PHP代码,那么就可以执行。
-
$_POST[‘123’]是可以进行一个提交POST参数的操作
eg:
123=phpinfo();
123=echo “hacker by 111”;
可以清楚的看到执行成功了!
错误操作:
最开始自己是进行的bp进行操作但是怎么也没有成功。
然后自己通过浏览器的hackbar进行操作提交,抓包发现http报文前面多加了一个
Content-Type: application/x-www-form-urlencoded
然后自己进行操作成功
content-type的介绍
这里介绍2个常见的:
application/x-www-form-urlencoded :
form表单数据被编码为key/value格式发送到服务器(表单默认的提交数据的格式)或者一种是常见的媒体格式是上传文件之时使用
multipart/form-data :
需要在表单中进行文件上传时,就需要使用该格式(文件上传,上传一句话木马)
其实也可以进行GET方法获取
<?php
@eval($_GET['123']);
?>
其实思想就是:在客户端进行传递参数(php代码)然后通过eval()函数执行PHP代码。造成漏洞,但是一般都是进行POST方法。GET方法介绍是为了更好地理解原理
菜刀原理
菜刀原理介绍
这篇文章里面介绍的非常清楚,自己也进行了一次操作
里面的Wireshark过滤方法
eg:
ip.addr 192.168.0.15 and tcp.port80 and http
ip地址是自己进行操作电脑的ip
菜刀的原理简单的说就是构造http报文(里面是PHP代码)发送给服务器执行(脚本)php代码。
其实如果自己特别厉害,可以不需要菜刀就只要一个浏览器,自己写代码进行提交~~~
最后分享一个菜刀链接。
菜刀官方快照
总结
自己写这一篇文章的目的是为了自己更好的理解
和分享给朋友们,所谓的黑客精神就是分享~~~
希望朋友们希望!!!