近期习科一直在处理和上报一些网络攻击行为,精选一些取证过程中的技术部分发出来,给大家扩展思路。
本帖子要说的是一个XSS平台:cro.im,通报原因是其站长手欠插了水深不该插的地方。
不是每个地方你都可以随便插个代码试试能不能打到数据的。枪打出头鸟。
如图所示,我们看到一个昵称为“陈好”的人,插了一段XSS代码。
虽然这段代码没解析,但是根据其内容中包含调取Cookie值,钓鱼,表单劫持,Wordpress的获取webshell等行为,我们判定此段代码为未生效的恶意代码
。
未成功进行攻击,但属于恶意代码传播行为。那么我们来看看cro.im是个什么样子的网站。
这个Cro.im站点为 长短短(sogili) 开发的XSS平台0.2.2版本。
从网上搜索了一下这个域名,也在圈内问了一下,这个平台不是长短短的,需要邀请注册,圈内也没有人知道这个是谁的(反正知道也不说,你咬我啊),所以这个平台并不是一个开放的XSS平台。
所以假定站长为插恶意代码的攻击者没有问题,如果站长本人不是,那攻击者和站长也脱不了关系,站长同时也属于教唆犯罪。
cro.im的域名解析到183.111.161.96这个ip,隶属于韩国最大网络运营商Cafe24。
通过cro.im的WHOIS信息查不到太多有用的信息,所以只能从服务器上入手。
Cafe24的这台机器是uws64-116.cafe24.com,操作系统为CentOS 5.2,是一台虚拟主机,其对服务器上网站的权限设置不够严,因此我们能读取到很多信息。
首先是要确认cro.im网站在uws64-116是不是在这台机器上,以及其账户等等。
读取/etc/passwd
文件就可以了。
根据筛选,cro.im网站在服务器上的账户就是croim,而croim.cafe24.com和cro.im解析的也是同一个站点。
uknicehouse:x:1729:1729::/home/hosting_users/uknicehouse:/home/bin/bash hyuscuba:x:1730:1730::/home/hosting_users/hyuscuba:/home/bin/bash croim:x:1731:1731::/home/hosting_users/croim:/usr/libexec/openssh/sftp-server eye163:x:1732:1732::/home/hosting_users/eye163:/home/bin/bash kdm7004:x:1733:1733::/home/hosting_users/kdm7004:/home/bin/nologin cdsline:x:1734:1734::/home/hosting_users/cdsline:/home/bin/bash
一般的账户使用的都是bash账户类型,而croim使用的则是sftp类型登陆(line3)。
管理员对服务器/home下的用户都做了权限归属,是没有办法直接跨的(要是管理员连这个都不做,那cafe24直接倒闭好了)
不过我们还是读到了MySQL的备份文件。
读取到root和vpopmail的用户密码hash
root | *F973ECA17BD3589DE1EFF46E61E742D5244D36BF | - |
vpopmail | *A3D47E9BE1E29F77532D91680A958FA6 |
kdm7004 pts/7 116.43.33.158 Sun Oct 5 20:42:37 +0900 2008 cdsline pts/3 219.240.70.222 Tue Nov 18 10:47:50 +0900 2014 </file>
croim用户的最后登录记录是2014年,登录ip是198.71.89.74,又是一台vps
如果登录用户是国内的ip,其实就可以直接水表约谈了。这里又是一台vps,可能要稍微麻烦一点了,需要继续进行技术取证。
除了对198.71.89.74
这台VPS上面进行调查,在uws64-116
上面我们也会跑个脚本进行取佐证。
看到tmp目录中的php的session文件了吗?上面随便一个网站的用户就可以读取其他用户的网站session。
这当中也包括croim用户的。服务器配置的很细致,php的session文件所属用户、用户组都分的很好。
因此随便简单写个脚本,每5秒或者10秒筛选一次/tmp目录中的文件,其归属用户为croim即记录其时间、内容及访问服务器80端口的ip列表。
另外每5秒lastlog根据正则记录一次croim用户的登陆记录,如果变了,就自动记录上,这两个py脚本的代码就不发了,自己随便写写就好。
当然了,这两个脚本的信息获取存在时效性并非最佳方案。
关于用户登录ip 198.71.89.74这个vps,有这样几点要确认。
1, 这个VPS是否中间易过主
2, 是否为公共代理ip
如果确认了上面两点就等于是间接确认了VPS的主人,可以作为佐证来证实XSS平台的使用者。
在开始以前,我们要确认一下这个ip上面是不是存在网站(存在网站最好)。
wlheihei.com →> 198.71.89.74 | - |
fuck.0day5.com →> 198.71.89.74 | 已经失效 |
mylovelier.net →> 198.71.89.74 | 失效,疑似曾解析 |
4.qqmm.at →> 198.71.89.74 | - |
6.qqmm.at →> 198.71.89.74 | - |
gztbhb.com →> 198.71.89.74 | - |
一个个人博客,一个企业站点。个人博客名为Benzuo(夲蓙)的Blog
,wlheihei的域名从2013年10月在万网(hichina)注册,同年12月更新过解析记录到198.71.89.74,一直到现在(当然包括2014年7月),域名都是解析在上面的。
因此这个VPS至少从2013年12月之后没有易过主。
其次就是要确认其是否为公共代理的情况。
对该VPS进行nmap扫描全部端口,发现只开放了22(SSH),80(HTTP),443(HTTPS)这3个端口。
未发现PPTP,L2TP,HTTP代理等端口,因此XSS平台站长应该是直接在198.71.89.74这台VPS上直接用SSH命令连接的croim.cafe24.com这台机器。
从wlheihei.com上面可能看不到什么太多有用的信息。
无非是198.71.89.74上面的mysql服务挂掉以后,fuck.0day5.com、wlheihei.com和gztbhb.com就全都挂掉了,这一点可以用作服务器在一台,为一个管理员的佐证。
当然了,我们还是要知道管理员是谁。
这次的入手点就在这个贵州天博环保了。
该站点使用的是一款由长沙米拓信息技术有限公司开源的MetInfo企业网站管理系统,版本为5.2.3。
根据其官网公告,5.2.3版本存在变量覆盖漏洞、前台任意文件包含漏洞、重置任意用户密码漏洞,当然了,挖洞不是我们的目的。
下载了其源码,还没审计几行代码呢,发现这么个文件:gztbhb.com/install/phpinfo.php
phpinfo就直接来看吧。
管理员大概经常在上面调试网站,调试的太顺手了,很多东西都是直接复制的,比方说SERVER_ADMIN。
SERVER[“SERVER_SIGNATURE”] | <address>Apache/2.2.15 (CentOS) Server at gztbhb.com Port 80</address> |
_SERVER[“SERVER_SOFTWARE”] | Apache/2.2.15 (CentOS) |
_SERVER[“SERVER_NAME”] | gztbhb.com |
_SERVER[“SERVER_ADDR”] | 198.71.89.74 |
_SERVER[“SERVER_PORT”] | 80 |
_SERVER[“DOCUMENT_ROOT”] | /home/www/6.qqmm.at/web |
_SERVER[“SERVER_ADMIN”] | [email protected] |
_SERVER[“SCRIPT_FILENAME”] /home/www/6.qqmm.at/web/install/phpinfo.php |
现状很清晰明了了。
评论
因此我们能读取到很多信息