HanDs
管理员

一款功能强大的Web shell工具RC-SHELL 



(提示:这篇文章中包含较多图片,可能需要一些时间来加载。)

在威胁领域,web shell并不是一种新事物。Web shell是一种用PHP、ASL、Perl等语言编写的脚本(选用的语言视可用的环境而定),它可以被上传到web服务器,便于进行远程管理。安装web shell通常都不是出于一种好的目的,攻击者通常将其安装在被盗用的服务器上,一旦安装到位,web shell将会允许攻击者完全接管受害者的服务器,它也可以被用来攻击内部系统。

在最近的一次调查中,我发现在一个共享平台上,一个被盗用的网站正在传播网络钓鱼页面。我设法获取了包含钓鱼工具包的档案,却发现里面还包含一个web shell。它也被安装在了服务器中,而且位置很容易找到。这个web shell名为“RC-SHELL”,它并不是新出现的脚本(我在2013年曾经提到过),但它在VT中的检出率非常低(4/55),而且在几个小时前刚刚完成第一次上传,也许它已经进行了改进或者更新?

新型的web shell功能非常强大,能为攻击者提供多种特性。因为图片比文字更有说服力,我决定在下面详细介绍一下web shell的界面,并且展示它们的特性。和通常一样,这个web shell是用PHP编写的, 因为凭证是写死的,所以其访问web界面时会受到限制。登录密码位于源代码中,需要通过快速搜索彩虹表来测试登录名和密码吗?不,这是因为访问权限是开放的(通过修改代码,身份验证被禁用)。需要注意的是,源代码中也包含所有者的电子邮件地址。

当你访问URL时,这是默认的界面:

 

http://p9.qhimg.com/t0162e77eda622068e0.png

在这个界面上,你可以看到主机的信息和基本的PHP设置,例如“安全模式”状态、可用的数据库支持。上面的一行菜单中包含所有的特性,让我们来一个个浏览一下。

 “Files”菜单用来访问文件管理器,它可以浏览本地文件系统,或者对文件执行各种操作 (复制、删除、重命名、移动等):

 

http://p8.qhimg.com/t01db5f4f3ba234205f.png

“Search”菜单用来执行文件搜索操作,你也可以寻找文件中包含的特定内容 (例如“grep”):

 

http://p3.qhimg.com/t0168481986ec0229e7.png

“Upload”菜单用于将本地文件系统中的文件进行转移。文件可以通过本地驱动器(攻击者的电脑上)上传,或从远程位置取出(使用HTTP、FTP这一类的普通协议):

 

http://p3.qhimg.com/t019418dc168ebbacbd.png

“Cmd”菜单用于对目标执行shell指令(这是web shell真正的核心特性)。执行命令后,将输出返回给浏览器:

 

http://p2.qhimg.com/t0149b403cff69014cd.png

 “Eval”菜单和“Cmd”菜单具有相同的功能,但它只执行本机的PHP代码。这是一个“PHP Shell”:

 

http://p8.qhimg.com/t01fd8c858bff1328ea.png

“FTP”菜单提供了一个强大的FTP客户端,例如WinSCP和其他图像工具:

 

http://p0.qhimg.com/t010f92ff09f15004f3.png

“SQL”菜单提供了PHPMysqlAdmin这类工具。可以和SQL服务器相互作用:

 

http://p2.qhimg.com/t0160ff1f316d5bf689.png

“Mailers”菜单,顾名思义,是一种用来发送垃圾邮件的工具。这种活动基于一个CSV文件,它可以发送简单的电子邮件:

 

http://p8.qhimg.com/t014417fa9b2a44c698.png

“Calc”菜单是一个工具箱,提供哈希计算器、编码器、转换器等工具:

 

http://p6.qhimg.com/t01d029dfc2837583dd.png

 “Tools”菜单是我的首选。它提供了许多用于攻击其他资源的工具,例如强力攻击、代码注入、端口扫描器等:

 

http://p7.qhimg.com/t01d41a8c27695df6e4.png

最后两个菜单是用于管理进程的,并且显示系统主机的信息,例如CPU、内存、文件系统等:

 

http://p3.qhimg.com/t0188f1fda0c8aeace0.png

http://p2.qhimg.com/t01322087ce30d84d58.png

正如你所看到的,新型的web shell功能非常强大。为了减少风险, 最佳的做法是:

•在受限制的环境中(VM、Docker container)运行web服务器。

•不允许通过sudo命令获取访问特权。

•不要开放数据库全部的DBA访问权限,对数据库/表的访问权限进行限制,只认可必要的SQL命令。

•使用出口过滤器,限制与外界的通信。

•保护好你的web服务器路径。


学习中请遵守法律法规,本网站内容均来自于互联网,本网站不负担法律责任
功能强大 W eb s he ll
#1楼
发帖时间:2016-7-16   |   查看数:0   |   回复数:0
游客组
快速回复