最近,接到一位好友求助,他的discuz论坛又被挂马了。这次挂马,感受是不太一样的。据描述,当时正好两位管理员都在线处理版务,短短几分钟,两位管理员先后被弹出论坛,再次登录时提示密码不对!给朋友直观的感觉是被黑了。由于管理员在线,马上用小号登录,在导航栏出现了“贷款”字样,再次刷新却不见了,这又是一个直观感受,有人用管理员帐号在做坏事。不久之后,使用admin帐号的管理员可以登录了,admin帮助另一管理员把密码重置。对方挂马操作完毕。
可是论坛没什么异样,运行一切正常,页面源码里也没有古老的<iframe>、js等手法挂马痕迹。于是向我求助。本文开头提到了“又”被挂马,在分析这次直观被黑事件之前,先回顾一下上次挂马的经历,后经证实,两次手法基本一致。
时间回到半年前,当时好友反映,最近论坛怎么这么慢,是不是被攻击了?在线人数也屡破新高,人气却没有明显增长。我打开网站看了下,的确,直观感受是慢了些,但首页、版面、帖子页面的源码都没什么异常。先安抚朋友,阿里云有时是这样拉,在一个物理机里挤的虚机多拉,店大欺客之类。
但在线数据不是这样说,说明这些访问是实实在在的来了,一边安抚朋友,一边分析日志,发现了一些异常。原来攻击源来自百度,怎么可能?但的确是这样,把近几日的日志统计出来,来自百度的采集请求近百万/日,agent正常,不象是伪造的请求,这个量级的采集对朋友的小站来说,确实相当于拒绝服务攻击了。具体看了一下采集的地址,却发现了一些问题,随便帖几个,都是类似这样的:
/thread-15063160275-1-1.html
/thread-29704948585-1-1.html
/forum-71459571159-1.html
/forum-94009706208-1.html
对Discuz伪静态熟悉的朋友一看就知道问题所在了,这种tid或fid的请求基本上是不会存在的。那我们自己访问一下看看,百度为什么会对这样的地址感兴趣?用自己的浏览器访问之后,论坛给出了正确的反馈:“抱歉,指定的主题不存在或已被删除或正在被审核”,“抱歉,指定的版块不存在”。恩,跟猜想的一样。可是百度为什么要这样做?类似的地址是怎么进入百度采集库的,总不会凭空出现的吧。这个问题困扰了几天,一直想不明白,朋友的小站就在百度的“攻击”下艰难的生存。
后来想到,总是这样也不行啊,先对百度限流吧,研究了一下robot.txt语法,发现百度才是店大欺客,通用的限制语法百度一概不遵守,只有去注册百度的站长平台,验证好站长身份,然后提交限制采集频率的申请。可是这个申请只管30天,即使挂马问题最终被解决,朋友的小站也要每30天去限制一下采集频率,这是对小站的长久影响,还不算这段时间之内,正常的内容没被采集到的损失。限制采集上限之后,小站第二天就生龙活虎了,但这只是治标,没有治本啊,问题到底出在哪儿?
在百度的站长平台闲逛,发现有模拟采集的功能,随意测试了一下小站主页,终于发现了这个惊天的秘密。
模拟采集来的页面源码,有了明显的篡改痕迹,里面加了十行类似“thread-15063160275-1-1.html”这样的连接,数字都是随机生成的,每次刷新都不一样。而通过模拟采集这个随机连接,内容更是完全驴唇不对马嘴了,根本就不是朋友小站的内容,甚至根本不是Discuz的内容。这下问题搞清楚了,朋友小站遭到了搜索引擎劫持,被挂上了面向搜索引擎的隐蔽式SEO木马,其目的是让百度采集朋友小站,而采集内容是订制过的,最终为了宣传攻击者的“bo采”类网站。
做一个简单的验证,把自己的火狐浏览器的 agent 改成 Baiduspider,再次打开上述不可能存在的网站,Discuz没有正确反馈了,被木马接管的页面出现了,如下图所示:
这时,问题就好解决了,找到挂载点,清除掉木马代码。具体代码就不帖了(如果有幸百度的算法工程师看到本文想做反制研究的,可以私信我,csdn潜水多登录少,不过大数据时代,你们肯定找得到我)。大致作用就是,通过判断agent,如果是普通浏览者,就什么都不做。如果是几大搜索引擎,就在正常页面中加入随机生成的10条“新URL”(专指正常论坛不可能出现的,伪造的URL,下同),这些id,是有固定范围的。而搜索引擎采集这些固定范围的ID时,就会通过模版生成伪造的页面,页面内容来自几个txt文件(似乎是几本网络小说),再对其乱序和随机组合,人眼阅读是不通顺的,但特别符合搜索引擎的胃口,这些大量的“新”内容,极大的勾起了搜索引擎的采集兴趣,通过短时间的采集,搜索引擎就可能在待采集数据库中积累大量的“新url”,有可能这些“新url"短时间不会开始正式采集,但这只是时间问题,一旦开始了,采集数据就会指数式爆发,每个“新URL”会又推荐十多个“新URL”,渐渐的,就对朋友小站形成准拒绝服务式攻击。当然,拒绝服务不是挂马者的目的,挂马者是想通过百度的采集,实现对自己违规站点的推广。而拒绝服务式的影响,可能攻击者自己也没想到吧。
半年前的事情就这样处理了,通过日志分析了下黑客的挂马手法,初步感觉是管理员密码泄露,没有深究,觉得这是个偶然案例,只是建议让朋友定期更换复杂的密码。然后对目录权限进行梳理,部分目录文件甚至只给400权限。但心中隐隐有些不安,是不是Discuz有漏洞啊?再观察观察吧,即使有漏洞,在400权限下也没什么施展空间吧。这半年来,百度蜘蛛在采集频率限制线以下,每天还进行着大量“新URL”的采集,虽然木马早就清除掉了,这个影响却一直存在。这里有个悖论,限制的频率越低,采集时间越长,限制高了,对正常访问有影响。于是春节期间,想着小站没什么人,放开限制让百度蜘蛛撒了一次欢,恩,又是近百万。可是百度似乎一直没意识到自己采集到的“新URL”的问题,还在不懈地坚持着。
3月初爆出的百度网址劫持黑产的报道,我隐约觉得,跟朋友小站被挂马有点相似,应该是一个团伙干的,通过百度搜索到朋友的小站,点开连接会跳到“bo菜”、“涩青”站,这是那几天挂马时的影响。
时间回到现在,这次挂马不太一样,被管理员撞个正着,密码不太可能泄露了,朋友已经很频繁地修改复杂的密码了。从Discuz本身多找找原因吧。这套Discuz是X3.2的,随着开发团队的解体,官方论坛没落了,基本上是解决不了问题,朋友的这个版本不是最新,心中一直隐隐不安,但也没太好办法。因为源码经过了小作坊式深度二次开发,全面升级的成本太高,一直没敢弄,为了验证是Discuz漏洞,我打算把对手的攻击手段完全模拟出来,只有这样,才能让朋友下定决心,再大困难也要彻底升级。
于是我把最近几天的日志切割出来,很快定位到挂载点,注释掉恶意代码,把恶意txt、php和模版改名,置权限为0000。为什么不删除,留着样本做研究啊。附录中有按时间线整理的关键日志记录,后面有整理过程中写的小小心得,供参考。
下面我要分析日志内容,模拟出攻击手段来,不一定按时间线,就按思路来,有些环节有跳跃,有些细节就不帖了,免得被人利用做坏事。
我把事发前后日志再次分割,得到一份50万行左右的日志,根据经验先初步排查。
首先暴露的是bh大马,cat到“base64_decode”就知道了,内容就不说了,这个目标太明显,即使50万行的日志,也很快定位到了它,简单解个密,得到登录密码,再杀马。日志时间点16:17:37。
大马放在data/sysdata下,这是个644权限目录,看了下内容,给400应该也可以,还是被人家把马给放上来了。data目录不太敢把权限限制的太死,比如data/log就因为半年前控制了权限,直到这次入侵发现没有后台日志时才知道权限过小了。
继续向前,找找这个大马怎么放上来的。这只编码后的大马,占地80K,基本排除Get方式,向前追查可疑的POST操作。在追查过程中,每找到一个可疑IP,就要把它记录下来,然后grep “IP” clip_log.txt,把所有该IP的操作复制出来,过滤出可疑操作。这时,排查分两条线,一条逻辑线,一条IP线,然后通过时间线把整个入侵流程串起来。通过逻辑线,可以找到对手更换的IP(分析过程中也经历了思想变化,以为是团队合作),通过IP又可以找到该IP所有操作,再按时间整理出来。这样得到的入侵细节就越来越多。真相渐渐就会浮出水面。
向上找到最近的可疑POST来自 /data/dzapp_haodai_config.php 日志时间点16:04:17。 这是论坛中没装的插件,这个文件已经不在了,大马得手之后,毁尸灭迹。了解了一下这个插件,它可能被一句话注入,这个长达80K的内容,应该是一句话+菜刀POST进来的。这也解释了朋友小号登录时,在导航看到“贷款”字样的来源,是对手安装完插件,传播大马过程中,被小号无意撞见了。这个环节不需要模拟,我相信这个漏洞的存在,但让我更关心的是,对手如何进入的后台,毕竟插件是要管理员才能装的。
防守就是有天然优势的,不需要知道攻击者的每一个攻击细节,在关键点上设置一点点障碍,对手的攻击成本就会成百上千倍的增加。暂时不纠结细节,通过双线排查把对手的所有操作都过滤出来,这样关键入侵点自然就暴露在字里行间了。然后得到了附录中的干货。
这不到100行的干货日志就很容易发现问题了:
1、时间点 15:58:43 有文件上传,这个需要警惕,因为早期的入侵事件,论坛已经把附件上传、头像上传控制的很严了,目录权限也在操作系统层面做了限制,这个要好好研究,模拟出来。
2、时间点 15:58:48 好贷插件是为了传大马,那这个插件(应用)是做什么的?
3、时间点 15:56:47 这是一个很隐蔽的发现,甚至困扰了我好几天,没有POST,是如何登录的?在这20多少秒里,正常日志记录了几百行数据,每一行细细筛过,确定不是自己遗漏了什么。幸好最终将它模拟出来,不然即使升级到X3.4,仍然有被攻击的可能,一点被破,功亏一篑。
一、绕过图片上传限制,上传含有木马的图片
漏洞名字就不提了,这是利用出生地检验漏洞,可任意删除文件,经过本地模拟,的确成功删除了目标文件,但删除文件不是这个漏洞的目的(如果有install.lock在的就要小心了),对手借这个漏洞绕过了上传限制,成功的上传了图片。时间点在15:58:43,到此我还是想不出这个漏洞能做什么,因为只能删除文件还不够,不能挂广告的嘛。要能写入文件才行。暂时放下。这个传上来的图片后面会用到。模拟后的效果如图:
二、先不去想好贷的事,就日志而言,对手装这个插件是为了什么,很可能是为了触发上一步传上来的图片马运行。
通过搜索发现这是一个本地文件包含漏洞,构造巧妙的接口路径,触发图片马运行,整理心得中写道:为所欲为,沦陷了。感觉这应该是个终点了,对方还要做什么呢?想像中的一顿POST的猛操作没有出现,是在练兵,还是新手?也许本地windows权限没做限制,可以当做终点,服务器上的环境更苛刻,对方没有运行成功?也不打算到服务器上去试,想不通不想了。本地模拟效果如图:
思绪到这里,就有一个很明显的问题,这两个漏洞的组合利用,需要先决条件的。第一个条件,上传图片,需要一个合法帐号。这个比较容易,可以自己注册,也可以扫一个用了弱口令的老帐号,可能有些网站注册麻烦,他们选择扫描。我们这位ID19的帐号,用的密码已经反向解析出来的,是Aa123456,比较弱的密码了,就被人家利用了。第二个条件就比较难搞,需要创始人密码或admin密码,要能进入后台。我在本机模拟,是知道admin密码,可是入侵者是如何知道,还要继续研究一下。利用收集到的资料进行猜测,创始人密码被盗可能性比较大。首先发现discuz的验证码是有漏洞的,可以轻易绕过,这样就为穷举破解提供了可能。模拟了一下,在构造的环境下,验证码可以指定为CCCC。然后出生年(1910-2010)是密码字典的必备字段,****必然会被猜中,域名拆解也是密码字典必备字段,xxx、yyy类似组合也会被尝试,而叠字母、叠数字的组合也是最基本的字典,三段碰撞,总会碰出我们的创始人密码来,换句话说,创始人密码太弱了,经不住穷举的折腾,而且这个密码很可能已经泄露很多年了,因为在近一年的日志中,没有找到对方穷举创始人密码的痕迹。
三、现在再回想到没有POST就登录后台的怪事,渐渐的,又一个思路浮现出来。
Ucenter、跨站、key泄露有没有可能?这样一想,觉得比创始人密码被穷举的可能性更大,因为朋友总有这样那样的小需求,习惯在某宝找个人给解决掉,升级也找人帮忙过,太多的杂人经手过这个系统,ukey泄漏是大概率的,而且建站后就没改过,脱过裤也不是不可能,即使没人从中恶意泄露ukey,历史版本中也暴出过泄露ukey的漏洞来,只要有ukey,再在本地建个论坛。。。。果然,模拟出朋友遇到的效果了,我在不知道管理员密码,只知道ukey的情况下,把朋友的管理员密码改了,而且在朋友服务器上没有登录的POST痕迹,因为我是在本地登录的。
关键环节都弄清楚了,我用直白的语言给朋友总结了一下:
某日15:56:23,攻击者通过已知的ukey,改掉了管理员a密码,并以管理员a身份登录,此时,两位正在管理版务,于是a被弹出。(疑似对ab密码做了备份,以便入侵后改回)稍后,攻击者读取了id小于23的人的头像,判断其是否存在,过程中选中了id为19的用户,可能他的密码是弱口令,在攻击者的数据库中早有记录,也可能通过ukey,远程修改了19的密码,然后以19的身份登录。15:58:27利用出生地检测漏洞上传了含有木马的图片,接着又以管理员身份添加插件激活木马。在本机模拟过程中,15:59:12应该就是终点了,因为这时已经可以为所欲为,可是攻击者试图删除些什么,离开了。很有可能是半年前的权限收缩起到了效果,这个图片马没有执行权,攻击者试图删除刚刚上传的图片马,宣告失败,因为没有删除权。16:01:31 换了IP,再次登录,这次身份还是管理员a,通过sid可以判断到。再次读出头像,定位到b,以管理员b登录。于是b被弹出。16:02:36 这里是有post的,攻击者是在服务器上直接登录的。直接安装好贷插件,在conifg中加入一句话脚本,菜刀post进来大马。此时,小号登录,在菜单栏看到“贷款”字样。16:15:09 大马进来,这次真的为所欲为了,为下次攻击方便留好后门,就开始挂广告,想在config_ucenter.php挂,失败了,没有权限。最终大马放在了这data/sysdata/,还紧张的输错了三次密码。修改function_core.php文件,加入注入点。建立cache目录,上传一个压缩包。通过大马解压,再修改function_core.php。挂马完毕。打扫痕迹去除插件改回管理员a密码(怎么做的没发现,很可能利用大马)。2小时后回来巡视效果。
下面要做或已做的防范措施:
1、在阿里控制台安全策略中把ssh/ftp/mysql作IP限制
2、整理个性需求的修改记录,为全面升级到X3.4做准备。
3、升级X3.4,改/admin.php和/uc_server/admin.php的名字,只有自己知道。
4、改ssh/ftp/mysql/管理员abc/admin/uckey/创始人所有的密码
5、在上次收缩权限的基础上,把本次被改过的目录和文件包括插件目录,权限置为400。
6、在x3.4中再次模拟攻击,确认已知漏洞不会再被利用。
7、检索数据库,对出生地字段异常的直接删除处理,同时删除异常文件。
附录,根据日志时间线整理出的关键内容:
15:55:55 43.249.128.253日本 该IP第一次出现GET /data/sysdata/cache_filelogs.php 尝试预留后门,403无响应 15:56:22 43.249.128.253日本 /data/appbyme/cache/************.php 再次尝试预留后门,403 无响应 15:56:22 43.249.128.253日本 GET /uc_server/admin.php?m=user&a=login&iframe=&sid= 打开Ucenter管理中心 15:56:23 43.249.128.253日本 GET /uc_server/admin.php?m=seccode&seccodeauth=7b77vRbEsIkzeN7pBSbPuGS1tJRRc%2FInvcHLBIFHaKa6540&1260911591 将验证码指定为CCCC 15:56:47 43.249.128.253日本 GET /uc_server/admin.php?sid=ebeci2SpBuMNpXDK0L1gyHf4zyPPNgzPaf53YPysqOl2D%2BIck0bw%2FccmNfSGQ9ymr9wOrk9bZToimA 这里登录了?有sid了,怎么登录的?有密码?不需要POST吗? 15:56:47 43.249.128.253日本 GET /uc_server/admin.php?m=frame&a=menu&sid=6968b13bXgG8VJK3co8Z5uWnbE5kFW62GJclnaMgfWfKi5zZ1EUoxxn4%2Beim7pgGBmFtGUgafzXf8g 15:56:47 43.249.128.253日本 GET /uc_server/admin.php?m=frame&a=header&sid=6968b13bXgG8VJK3co8Z5uWnbE5kFW62GJclnaMgfWfKi5zZ1EUoxxn4%2Beim7pgGBmFtGUgafzXf8g 15:56:47 43.249.128.253日本 GET /uc_server/admin.php?m=frame&a=main&sid=6968b13bXgG8VJK3co8Z5uWnbE5kFW62GJclnaMgfWfKi5zZ1EUoxxn4%2Beim7pgGBmFtGUgafzXf8g 15:56:54 43.249.128.253日本 GET /home.php?mod=misc&ac=sendmail&rand=1551945412 15:56:59 43.249.128.253日本 /uc_server/admin.php?m=user&a=ls&sid=a81dES%2BIGlckLs%2FI9YxTKse7rnXscDo5JBBUv%2FAPnCg5hhR%2F1n%2B%2BHWfxfXMitxXdNE1JUB3ZLhGpNw 15:56:59 43.249.128.253日本 /uc_server/avatar.php?uid=9&size=small 读取一批用户的头像,包括2、3、4、5、8、9、10、11、13、14、17、18、16、20、19、22、21、23 (跳过的ID应该是在之前扫描时已知不存在的) 15:57:02 43.249.128.253日本 GET /uc_server/admin.php?m=user&a=edit&uid=19&sid=faefRe4chIfqB66j7CU%2BcrMivIzK0Py%2BWRkXG79InXLTvDmOdOTe0RD0n7V40qKZaBwhZXaBflkCmw 15:57:02 43.249.128.253日本 GET /uc_server/avatar.php?uid=19&size=big 15:57:02 43.249.128.253日本 GET /uc_server/avatar.php?uid=19&size=big&type=real 15:57:06 43.249.128.253日本 POST /uc_server/admin.php?m=user&a=edit&uid=19 15:57:11 43.249.128.253日本 POST /member.php?mod=logging&action=login&loginsubmit=yes&infloat=yes&lssubmit=yes&inajax=1 15:57:17 43.249.128.253日本 GET /forum.php?mod=redirect&tid=1619&goto=lastpost 15:57:17 43.249.128.253日本 GET /forum.php?mod=viewthread&tid=1619&page=7 15:57:23 43.249.128.253日本 GET /member.php?mod=logging&action=login 以uid为19的用户身份登录 (19号密码反查 md5:3facafec839b9bc5520b8b7ad625be89 盐:624843 反解析结果:Aa123456),预计是弱口令扫描 15:57:35 43.249.128.253日本 GET /space-uid-19.html 15:58:27 43.249.128.253日本 POST /home.php?mod=spacecp&ac=profile&op=base&deletefile[birthprovi%20nce]=test 利用出生地检验漏洞,可任意删除文件,此处是为了上传含木马的图片。 15:58:33 43.249.128.253日本 GET /home.php?mod=spacecp&ac=profile&op=base&deletefile[birthprovi%20nce]=test 验证效果 15:58:43 43.249.128.253日本 GET /data/attachment/profile/201903/07/155827kmmo9z8d6bud89bm.gif 验证上传的文件(图片为熊猫烧香,copy合并进去90K的php木马代码) 15:58:48 43.249.128.253日本 GET /uc_server/admin.php?m=app&a=ls&sid=a81dES%2BIGlckLs%2FI9YxTKse7rnXscDo5JBBUv%2FAPnCg5hhR%2F1n%2B%2BHWfxfXMitxXdNE1JUB3ZLhGpNw 插件列表 15:58:48 43.249.128.253日本 GET /uc_server/admin.php?m=app&a=ping&inajax=1&url=http%3A%2F%2Fwww.xxx.com&ip=&appid=9&random=1698098925&sid=a81dES%2BIGlckLs%2FI9YxTKse7rnXscDo5JBBUv%2FAPnCg5hhR%2F1n%2B%2BHWfxfXMitxXdNE1JUB3ZLhGpNw 测试通信 15:58:48 43.249.128.253日本 GET /uc_server/admin.php?m=app&a=add&sid=59d8Vt7UR1Qqg0poep%2Fqn5x2TUdsKTaVryRtJMWiApeTc02zN8ZFjmL5oKLkYYpTUD6yxyZdWo11eA 添加插件 15:59:02 43.249.128.253日本 POST /uc_server/admin.php?m=app&a=add 利用本地包含漏洞,把上面的图片包含进接口地址 15:59:02 43.249.128.253日本 GET /uc_server/admin.php?m=app&a=detail&appid=16&addapp=yes&sid=38bdWTjwEf4zsDzZjGYdxsQ9AmJ3ALUQq8A5MYV%2F%2B%2FQTih7q90jfCzZPJodU%2BKUxCYc3YclZ77XqSg 15:59:03 43.249.128.253日本 GET /uc_server/admin.php?m=app&a=ls&sid=a81dES%2BIGlckLs%2FI9YxTKse7rnXscDo5JBBUv%2FAPnCg5hhR%2F1n%2B%2BHWfxfXMitxXdNE1JUB3ZLhGpNw 15:59:03 43.249.128.253日本 GET /uc_server/admin.php?m=app&a=ping&inajax=1&url=http%3A%2F%2Fwww.xxx.com&ip=&appid=9&random=192829450&sid=a81dES%2BIGlckLs%2FI9YxTKse7rnXscDo5JBBUv%2FAPnCg5hhR%2F1n%2B%2BHWfxfXMitxXdNE1JUB3ZLhGpNw 15:59:03 43.249.128.253日本 GET /uc_server/admin.php?m=app&a=ping&inajax=1&url=http%3A%2F%2Fwww.xxx.com%2Fuc_server&ip=&appid=16&random=564603294&sid=a81dES%2BIGlckLs%2FI9YxTKse7rnXscDo5JBBUv%2FAPnCg5hhR%2F1n%2B%2BHWfxfXMitxXdNE1JUB3ZLhGpNw 15:59:12 43.249.128.253日本 GET /uc_server/admin.php?m=app&a=ping&appid=16&sid=9fccYN92wMOsyd2wLUKnQf8uhma1iCYA5rJhouyZgdoEopJlfdITZd90ivNHUhI8%2FNallhgitkhnVw 为所欲为,沦陷了。 16:00:00 43.249.128.253日本 POST /home.php?mod=spacecp&ac=profile&op=base&deletefile[birthprovi%20nce]=test 要删除什么? 16:00:01 43.249.128.253日本 GET /home.php?mod=spacecp&ac=profile&op=base&deletefile[birthprovi%20nce]=test 16:00:45 43.249.128.253日本 GET /forum.php?mod=viewthread&tid=1619&page=7 该IP最后一次出现之后。离开 16:01:31 128.90.50.143美国 该IP第一次出现,访问http://www.xxx.com/forum.php?mod=post&action=reply&fid=19&tid=1619 16:01:32 128.90.50.143美国 在上述界面点击“站内消息” 16:01:51 128.90.50.143美国 POST /uc_server/admin.php?m=app&a=ls 值得注意,此处伪造refere。来自:http://www.xxx.com/uc_server/admin.php?m=app&a=ls&sid=a81dES%2BIGlckLs%2FI9YxTKse7rnXscDo5JBBUv%2FAPnCg5hhR%2F1n%2B%2BHWfxfXMitxXdNE1JUB3ZLhGpNw 16:01:52 128.90.50.143美国 GET /uc_server/admin.php?m=app&a=ping&inajax=1&url=http%3A%2F%2Fwww.xxx.com&ip=&appid=9&random=1821220896&sid=9fccYN92wMOsyd2wLUKnQf8uhma1iCYA5rJhouyZgdoEopJlfdITZd90ivNHUhI8%2FNallhgitkhnVw 16:02:03 128.90.50.143美国 GET /uc_server/admin.php?m=user&a=ls&sid=a81dES%2BIGlckLs%2FI9YxTKse7rnXscDo5JBBUv%2FAPnCg5hhR%2F1n%2B%2BHWfxfXMitxXdNE1JUB3ZLhGpNw 16:02:04 128.90.50.143美国 获取uid1-23头像,301表示有此ID,503表示nginx拒绝服务,对方采集频率太快了,同时还获取了144113 16:02:12 128.90.50.143美国 开始对id2下手 GET /uc_server/admin.php?m=user&a=edit&uid=2&sid=d121PRUskoXvzQovCVw4aUbfLUm8YcvsW%2Fj91DlIebSlkbpZcY7vxltRrk5DxtAGuretTJdYNdqefA 16:02:19 128.90.50.143美国 POST /uc_server/admin.php?m=user&a=edit&uid=2 16:02:22 128.90.50.143美国 GET /member.php?mod=logging&action=logout&formhash=79c32065 此处退出的是Id 19吗? 16:02:23 128.90.50.143美国 GET /forum.php?mod=post&action=reply&fid=19&tid=1619 16:02:27 128.90.50.143美国 POST /member.php?mod=logging&action=login&loginsubmit=yes&frommessage&loginhash=Lm4nk&inajax=1 以ID2身份登录? 16:02:32 128.90.50.143美国 GET /admin.php 16:02:36 128.90.50.143美国 POST /admin.php? 这里有Post,注意与15:56:47对比 16:02:46 128.90.50.143美国 GET /admin.php?action=plugins&operation=import&dir=dzapp_haodai 登录成功了 16:02:47 128.90.50.143美国 GET /admin.php?action=plugins&operation=import&dir=dzapp_haodai&installtype= 16:02:49 128.90.50.143美国 GET /admin.php?action=plugins&operation=import&dir=dzapp_haodai&installtype=&license=yes 16:02:50 128.90.50.143美国 GET /admin.php?action=plugins&operation=plugininstall&dir=dzapp_haodai&installtype=&pluginid=21 16:02:53 128.90.50.143美国 POST /admin.php?action=plugins&operation=plugininstall&dir=dzapp_haodai&installtype=&pluginid=21&step=install&modetype=1 16:03:14 128.90.50.143美国 POST /admin.php?action=plugins&operation=plugininstall&dir=dzapp_haodai&installtype=&pluginid=21&modetype=1&step=install&modetype=1 16:03:16 128.90.50.143美国 GET /admin.php?action=plugins&operation=plugininstall&dir=dzapp_haodai&installtype=&pluginid=21&modetype=1&modetype=1&step=ok 安装完毕 16:03:19 128.90.50.143美国 GET /admin.php?action=plugins&hl=21 16:03:21 128.90.50.143美国 GET /admin.php?action=plugins&operation=config&do=21&identifier=dzapp_haodai&pmod=admincp_callback 16:04:17 128.90.50.143美国 POST /data/dzapp_haodai_config.php 注意,此处变换了agent,把自己伪装成蜘蛛,要看效果了。 16:05:23 128.90.63.136美国 该IP第一次出现,访问/data/phpbase64.php后门。错误代码403,没有响应 16:05:42 128.90.63.136美国 再次尝试/phpbase64.php后门。错误代码403,没有响应 16:07:31 128.90.63.136美国 再次尝试/api/1.php后门。错误代码403,没有响应 16:07:31 128.90.63.136美国 看了一眼主页,走了。该IP最后一次出现,他尝试地后门应该是团伙上次预留的,已经不在了。 16:15:09 103.27.231.186新加坡 该IP第一次出现,访问/data/sysdata/phpbase64.php后门。系统正常响应,代码200.(美国的成员象是新手,放弃之后请新加坡的老手来,一次就中,有可能这个后门就是这个老手留的。) 16:15:34 103.27.231.186新加坡 把后门地址从 phpbase64.php 改为 cache_filerise.php 16:16:42 103.27.231.186新加坡 把data目录下的phpbase64.php后门删除(这个位置的后门很可能是默认位置,老手的习惯把默认的后门删除,给它换个地方) 16:17:05 103.27.231.186新加坡 进入config目录试图通过修改config_ucenter.php挂入广告,失败。(权限收缩初见成效) 16:17:37 43.251.164.109新加坡 该IP第一次进入访问 data/sysdata/cache_filerise.php 16:17:49 43.251.164.109新加坡 POST数据,可能在登录后门,post了三次,密码错了? 16:18:28 103.27.231.186新加坡 进入uc_server目录下的data目录浏览文件没有操作。 16:19:00 43.251.164.109新加坡 打开 function_core.php 文件修改 16:19:05 43.251.164.109新加坡 修改完毕提交 16:19:05 43.251.164.109新加坡 该IP最后一次出现 16:19:28 103.27.231.186新加坡 在source/function/cache目录下上传文件取名cache_homework.php 16:19:33 103.27.231.186新加坡 该IP最后一次出现,验证cache_homework.php可以访问。(至此,cache_homework.php这条线断了,再无人问津,很可能是为下次攻击埋的后门) 16:23:19 128.90.53.44美国 该IP第一次出现 打开 /data/sysdata/cache_filerise.php 16:23:29 128.90.53.44美国 POST2次,可能密码输错 解密出的密码是“ADMIN--” 16:23:45 128.90.53.44美国 依次进入home、template目录,可能发现没有写权限。 16:23:59 128.90.53.44美国 进入data目录 下的sysdata目录 16:24:04 128.90.53.44美国 建立一个新的cache子目录 16:24:20 128.90.53.44美国 POST数据,似乎是一个压缩包 16:24:58 128.90.53.44美国 解压ptbaiduxin.zip 16:28:03 128.90.53.44美国 打开 function_core.php 文件修改 16:28:13 128.90.53.44美国 修改完毕提交 16:29:41 128.90.53.44美国 打开 function_core.php 文件修改 16:29:52 128.90.53.44美国 修改完毕提交 16:30:10 128.90.53.44美国 伪装成百度蜘蛛的身份测试效果 18:54:14 128.90.53.44美国 2个多小时后,又来测试效果,该IP最后一次出现。 ———————————————— 版权声明:本文为CSDN博主「xinew4712」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/xinew4712/article/details/88556144
还没有评论,来说两句吧...