编写一句话木马
主要是因为自己以前常常不会用一句话木马,所以专门写一个栏目来讲解如何写一句话木马,当时不知道为什么脑子总转不过弯,写不会。
(1)一句话木马是什么
首先最简单最常见的一句话
虽然是最简单,但是也可能会劝退人,也是讲解一下这句话是什么意思吧。@是就算代码是个错的依然执行;eval是执行代码的函数,这个x就是我们连接木马管理器的一个木马(可能这个地方不太知道是正常的,等后面介绍木马管理器的使用的时候就理解了)。
接下来,对这句简单的话进行变形,通过这些变形,我们可以绕过一些防火墙的拦截,就是我们常说的“免杀”。
①一句话木马的不同形态
1)形态一:
通常x就是我们连接蚁剑或者菜刀的密码。
这段代码简化的关键语句是eval(@$_POST['X'])和基本形态没有什么区别。这应该也算是最简单的免杀了。
2)形态二
这些都是php语法的简单变形,但是语句都是一样的,就不多说了。
3)形态三
这个地方运用了一个函数str_replace()函数
str_replace():子字符串替换
str_replace
(array|string $search,array|string $replace, string|array $subject, int &$count =``
null
): string|array
第一个参数是茶渣的目标值,第二参数是search的替换值,第三个参数是执行替换的数组或者字符串。
所以这个变形形态就是
4)形态四
②一句话木马的各种绕过
1)防爆破一句话
这段代码的意思就是,接受一个变量x的值,然后对x的值进行md5加密(通常加密后的为32位),所以substr(string,offset)表示从x的28位开始要是6862(是从0,1,2,3,这样开始的到28),然后满足了才能进行eval()函数,所以就是防止了直接爆破password。(上述的6862是根据自己的x的md5确定的,比如题目中的是x=myh0st,myh0st通过md5加密后后四位是6862)
2)过狗的一句话
这些就是我们上面之前讲的简单一句话的变形的形态一样的道理。
3)不用问号?的一句话
相当于转化成为了js代码片段里面插入php代码。
4)躲避检测
直接把eval变成了assert来执行emmm,怎么不算躲避呢
5)404隐藏一句话
这个解释一下,前面部分的html代码就是一个404常见页面的代码,不多讲了,重点讲一下后面的php代码
preg_replace():是一个执行一个正则表达式的搜索和替换
第一个参数是模式串,第二个参数是替换的字符串,第三个是要进行替换的字符串。只不过第一个参数是一个正则表达式的模式串
正则表达式中/e是指将替换串也就是replacement中的字符串当做代码来执行。
菜刀连接时在配置栏添加<O>date=@eval($_POST[paxmac]);</O>
6)过滤php的一句话
7)过滤[]的一句话
把[]换成{}.
(2)ASP的一句话木马
资料都很少,这个语法可以不用学,就连网上的资料我都觉得讲的有点不知所云,直接记就可以了。知道是以<%开头%>结尾就行。
1)基本形态
其他的感觉都不知道重不重要,因为感觉都没有怎么用这个玩意了,等考了再补充吧。
(3)生成图片马
linux下面有指令可以生成图片马,这里介绍一下步骤。
step1:我们准备好木马文件和一张图片(图片尽量小一点)
我这里就准备最简单的一句话木马,然后图片也在这里发一下吧。
1.php
图片(小于1mb,只有471kb)
step2:在linux的terminal下输入指令,然后可以看到生成了shell.jpg,这个文件就是我们的图片马。(注意要将图片的文件名写在前面,木马的写在后面。因为校验是否是图片一般是按照文件的exif来检查的)
step3:这里我们来看看图片马为什么能实现这个功能吧,我们查看shell.jpg的内容。可以看到找个图片插入了我们的木马代码片段。
(4)蚁剑的使用
本人用的是linux下的antsword,这里就只展示蚁剑的使用。
step1:打开chinese antsword
step2:右键创建add
step3:然后将自己需要连接的信息填进去,需要连接的文件目录的url(一定要写到包含有木马语句的文件),和密码(就是REQUEST后面中括号里面的内容),然后test connection
连接成功右下角会有绿色的框,然后我们点击add。
然后就可以进行操作了。
参考门
https://www.cnblogs.com/goodgad/p/13463866.html
最后更新于