上一弹发的是易车网数十台CDN节点rsync未授权访问,乍看之下rsync目录里都是一些squid日志和配置文件之类的东西,没什么能直接利用的。
但是某个日志文件里发现了如下内容:
先上去看看url是什么再说

wow,cdn的后台管理。但是现在账号密码都没有,rsync得到的信息也只有个url。先扫下端口,看看有没有突破口,可惜只开了80,只能从web端解决了。
继续翻看url,发现php目录存在能够列目录。

翻来翻去,都是些看不了内容的php文件,好不容易发现一处rar压缩包,打开看看。

里面就两个php文件
好吧坑爹,网站目录下就没有这两个文件。但是源码里面的内容还是引起了我的注意:
几处post的参数没有处理就拼接进sql语句中了。这样看来网站存在注入的可能性就很大了。前台只有登陆,先在登陆试试注入吧。
用户名构造如下语句:


竟然进来了。。。这种万能密码好久没碰见过了
sqlmap也能跑出来

在后台测试的过程中发现一个问题

发现什么问题了吗?cookie里面只有用户名,没有session。。。。这是否意味着我们无需密码只要设置一下cookie就可以了呢?


2333333又成功了。
现在洞主已经对这个系统的验证机制产生深刻的怀疑了,我们去登陆界面悄悄它是怎么验证的。
翻看登陆页面的源代码,看到这段js的时候洞主惊呆了:
竟在在客户端做的校验,这段代码的意思就是将用户名和密码发送到服务器端,如果匹配服务器将返回值“true”;若收到“true”则将用户名写入到cookie中并跳转到后台页面。这样的话我们只要将response改成true不就能登陆系统了吗。来验证下。
在fiddler命令行中输入命令bpafter 59.151.127.48 设置response断点,然后提交一个错误的用户密码,此刻我们返回的是一个错误信息。

改成‘true’试试.走你

后台君我们又见面了
此刻我又有了一个想法,既然登陆的验证是客户端做的,那么后台页面对用户的验证是不是也是在客户端呢。

果然在后台页面找到这样一处脚本,也验证了之前仅检测cookie用户名的说法。这样我们干掉此处js然后自己构造脚本也是可行的,不过有点多此一举就不赘述了。
验证这块已经挖掘的差不多了,还有别的姿势能进入这个系统吗,当然有!
本想通过注入获得点东西,但这个系统sqlmap跑出来是基于时间注入,获取数据老出错,数据库账号权限也有限,不从这下手了。后台有个用户管理,就在我通过列目录查看相关的文件时,点开了后台获取系统账号信息的php链接:

卧槽,全部账号和md5都出来了,也不是什么强口令,google一下都能找到。当然,这里无需登录也是能获取到的。