起源
某天比较无聊,听一个朋友推荐httpscan这款工具,于是就下载下来试试。
首先对某学校网段开始进行测试。
1 | python httpscan.py **.**.**.0/24 |
测试时发现有个比较特殊的标题。一般有这个,证明存在目录遍历。
目录遍历这个漏洞,说大也不大,说小也不小,但是,一般来说,存在这种目录,可以证明网站管理员比较粗心,当然也有可能会把一些敏感文件放在上面,如数据库文件,账号文件等。
尝试google搜索
1 | intitle:Index of / |
可以找出好多这种例子。可以撞运气试一下有没有敏感文件泄露,然后进一步拿下一个站。
开始渗透
当时访问后,发现是以下的状况。
这个就又比较开心,看到了phpinfo。
这个文件和目录遍历漏洞性质也差不多,说大也大,说小也小。
phpinfo属于处在信息收集阶段的一个重头,当有了这些信息,可以看出服务器端调用了那些库,以及一些敏感路径,从而进行深入的漏洞挖掘。用途也是很广的。
所以建议各个站长,不要将这个文件泄露出来。
phpinfo先放一边,先点开1目录看一下,发现是一个discuz 3.2的站
尝试搜索discuz 3.2 getshell,最终发现有个后台插件配置导致getshell,但此时我们没有后台权限。
于是继续搜索,也没发现什么有价值的。
于是改变思路,想一下如何能进入后台。
尝试弱口令登录,最终admin admin
成功登录后台。
当时的心情是绝望的。
顺理成章,直接进入后台,找到好贷站长联盟 2.0.2
安装,并启用。
然后进行配置,输入我们的一句话即可。
成功拿到shell
控制服务器
当然,这么简单的渗透,拿到shell肯定是不够的。
要想办法进而打开3389,成功夺取服务器权限,这样可以实现长久控制。
首先shell打开命令行,查看一下用户权限
当然,由于用的是蚁剑,已经说明了。
此时因为用的就是最高权限,所以就不用再进行提权了。
此时我们可以尝试创建新用户,并赋于其管理员权限。
1 | net user hacker 123456 /add |
此时再次输入net user
即可查看到你创建的用户。
然后尝试3389链接,发现无法链接。
此时第一反应一定是,他改端口了。
因为毕竟是服务器,不可能不通过远程桌面连,天天抱个显示器去机房。
于是需要找到其3389端口修改后的端口。
首先查看一下端口占用情况:netstat -ano
发现果然是没有3389,此时可以猜测一下,感觉那个像就连那个,多试几次就好了。
但是,咱可是一个有抱负的技术宅,怎么可能用这种概率事件!
所以,可以通过查看一下当前运行的服务,定位pid后,到端口占用里面对比。
首先tasklist /svc
然后寻找TermService,记录下中间的pid号。
然后返回之前的端口占用情况图中寻找5492,可以轻易发现,3389端口被改到了65530
然后尝试用我们账户通过 mstsc链接过去即可
最终成功拿下服务器。
做到这步的时候,已经可以说是结束了,但是!如果被管理员发现账户后删除了怎么办呢?
此时需要找一下管理员的密码。
通过一款老师推荐的软件,最终查询到了管理员的密码。
寻找管理员密码
使用工具mimikatz。
首先下载该工具,然后上传到目标机器。
按目标机器环境,使用合适的位数(32or64),直接执行。
然后在工具窗格内依次输入以下两条命令即可
1 | 第一条:privilege::debug //提升权限 |
在这里,由于隐私问题就不放截图了。
最后再说一点,这几步,虽然说实现了长久的控制,但是还是有所欠缺,毕竟管理员一旦发现有其他账号,在删掉的同时也会将自己的密码改掉。
所以一般大佬们都是直接放入自己的远控木马,进而持久控制。
漏洞威胁以及修复建议
- 在该服务器下发现存在teamviewer,怀疑有人已经拿下该服务器,进而实现长久控制。
- 该服务器大部分数据为14年左右,且网站完全没用,建议关闭该台服务器。
- 网站内敏感数据建议删除或备份到其他地方。
- 建议对服务器集群内文件实施清理,减少不必要文件泄露。
总结
这次渗透测试,比较胆战心惊,因为一环一环,犹如是一个蜜罐在引自己上钩。
但是考虑到之前老师对自己进行漏洞挖掘的支持,还是进行了下去。
感觉这台服务器之前应该是测试用的,最后忘了还跑着服务,最终导致被拿下。