游客发表
凌晨两点,秋蝉我盯着屏幕上的渗试404页面,手边的透测咖啡已经凉透。目标站点的秋蝉后台登录框就在眼前,可密码字典跑了三小时,渗试连个水花都没溅起来。透测秋蝉sblog,秋蝉一个看似普通的渗试个人博客系统,却让我栽了个跟头。透测
这站用的秋蝉是经典LAMP架构,Apache+MySQL+PHP,渗试版本都不算新。透测管理员显然有点安全意识,秋蝉改了默认后台路径,渗试还上了WAF——我试探性地提交了个`' or 透测1=1`,直接被拦下来,返回403。硬闯肯定不行,得换个思路。
我转头去翻它的前端源码。HTML注释里藏着个`?page=about`参数,看起来是文件包含的入口。试着传`?page=../../../../etc/passwd`,页面空白,但响应头里多了个`X-Powered-By: PHP/5.6.3`。老版本,有戏。再试`php://filter/convert.base64-encode/resource=config.php`,这次返回了一串base64字符。解码一看,数据库账号密码明文躺在里面——`root:toor2023`。
拿到数据库权限,我直接连上去。phpMyAdmin没开外网,但MySQL端口3306暴露着。用root身份登录,翻了翻`wp_users`表(这站居然还套着WordPress的壳),管理员密码是md5加密的,破解难度不低。可我没打算在这耗时间——直接往`wp_options`表里插了条自定义选项,把站点URL改成我的监听地址,再触发一次后台登录,管理员cookie就被我劫持了。
进后台以后,我反而冷静下来。这站数据量不大,但有个细节让我停手:文章列表里,有个草稿标题叫《关于漏洞上报的说明》,点开一看,是站长自己写的渗透测试笔记,记录了之前别人发现的XSS和CSRF漏洞,还标注了“已修复”。我查了下时间,三天前刚更新过。
这站长是个明白人。我本来想留个后门方便以后再来,但转念一想,这种主动自查的站点,迟早会发现异常。不如干脆点,把数据库里我改过的地方全还原,删掉日志记录,连MySQL的general_log都清了。走之前,我在后台留言板里留了句话:“管理员你好,你站点的文件包含漏洞已复现,建议升级PHP版本并开启open_basedir。测试完毕,数据未动。”署名:秋蝉。
三天后我再访问,发现站点加了https,后台路径又换了。页脚多了行小字:“感谢秋蝉师傅指点。”我笑了笑,关掉浏览器。渗透测试从来不是破门而入那么简单——有时候,留一扇虚掩的门,比砸开十把锁更有意义。
友情链接