目标是一个大型在线论坛,论坛程序是某著名BBS程序二次开发版,需要得到目标服务器webshell,针对论坛的主站进行各种测试,未发现明显漏洞。
于是开始DNS FUZZ,发现有个子域名指向的另外的服务器存在一套WEB MAIL程序,通过社工的方式GOOGLE搜索到了该邮箱的多个账号,针对账号进行弱口令猜解,获得一个账号登陆了这套WEB MAIL程序,发现此WEB MAIL程序是一套非常老的开源程序,存在目录遍历和文件上传漏洞,得到该服务器的webshell。
从WEB MAIL程序数据库,获得了论坛管理员的一些密码,尝试一些管理员密码登陆主站论坛却需要密码提示问题,无果而返。
发现BBS程序登陆认证的SET COOKIE方式是主域名和子域名通用,于是通过之前得到的webshell上传一个记录HTTP头和IP的PHP探针,将此PHP探针的链接用于贴图发帖,放到个人签名里,到论坛上专门找管理员发过的贴回帖,最后获得了管理员的COOKIE。
使用管理员COOKIE访问论坛发现并没有在登陆状态,怀疑论坛程序对IP做了判断,于是使用Fiddler将所有的请求强制加入X-Forwarded-For头伪造为管理员的IP,这才登陆成功,获得了论坛前台的管理权限。
由于管理员前台发帖有HTML权限,将管理员最新发的几个帖子都修改并加入一个javascript脚本,脚本的作用是绑定网页的点击事件为伪造登陆窗口的函数,在伪造的登陆窗口内记录管理员输入的密码和密码提示问题,静默发送到远程的脚本。
最终得到管理员的密码提示问题,登陆论坛后台,利用论坛的模板功能获取WEBSHELL,然后提权留后门擦屁股,整个渗透完成。
|