80后用菜刀,90后用蚁剑,95后用冰蝎和哥斯拉,以phpshell连接为例,本文主要是对这四款经典的webshell管理工具进行流量分析和检测。
什么是一句话木马?
1、定义
顾名思义就是执行恶意指令的木马,通过技术手段上传到指定服务器并可以正常访问,将我们需要服务器执行的命令上传并执行
2、特点
短小精悍,功能强大,隐蔽性非常好
3、
举例
php一句话木马用php语言编写的,运行在php环境中的php文件,例:<?php @eval($_POST['pass']);?>
4、原理
以最为常见的php一句话木马为例,"<?php ?>"为php固定规范写法,"@"在php中含义为后面如果执行错误不会报错,"eval()"函数表示括号里的语句全做代码执行,"$_POST['pass']"表示从页面中以post方式获取变量pass的值
中国菜刀
中国菜刀是一款c/s型的webshell管理工具,它不像传统的asp恶意脚本或php恶意脚本上传到网站上可以直接打开,它有自己的服务端程序,但是这个服务端程序却极小,只有一句代码,因此保证了webshell的隐蔽性,可以用来对目标网站进行渗透获取目标系统的文件系统,对目标系统的文件系统进行管理同时也可以对获取系统的shell进行操作命令执行操作,同时可以对目标系统进行数据库操作
1、2011版本菜刀
(1)代码分析
进入网站的根目录,获取网站目录下的文件夹和文件的大小修改时间以及权限等信息
(2)数据包分析
(3)规则总结
['request_body'] : eval.*QGluaV9zZXQo
['response_code'] : 200
['response_body'] : ->\|((.*\n)+|.*)\←
2、2014版本菜刀
(1)数据包分析
(2)规则总结
['request_body']: $xx.*chr\(.*QGluaV9zZXQo
['response_code']: 200
['response_body']: ->\|((.*\n)+|.*)\|<-
3、2016版本菜刀
(1)数据包分析
(2)规则总结
['request_body']: array_map.*QGluaV9zZXQo
['response_code']: 200
['response_body']: ^X@Y((.*\n)+|.*)X@Y$
可以看到三个版本的菜刀都有这一串字符QGluaV9zZXQo,我们在对蚁剑连接webshell的流量进行分析时也会见到这一串字符,其实不止这么短,但是对规则而言已经足够了。蚁剑的核心源代码有很多都是借鉴菜刀的。
['request_body']: QGluaV9zZXQo
['response_code']: 200
['response_body']:(->\|((.*\n)+|.*)\|<-)|(^X@Y((.*\n)+|.*)X@Y$)