1. 传统打法
1.1 突破
站点首页
首先得知目标站点存在sql注入漏洞
1.2 找目标
打进数据库就是为了账户和密码,一开始我查看一下相关的库,但都不是我想要的。实在是不想一个一个翻直接一键dump。
把最终的扫描结果全部复制另存到一个txt中,手动搜索。
然后在yx_person表中找到了所有账户和密码。
下面是整理好后部分数据的样子。其中md5值:2e3216787eaf07e818cb27135352e8b8解密后是:666666,有了手机号和密码那就直接登录吧。
网页不允许登录,看来对地域有限制。尝试修改请求包中的ip和响应包内容,发包后还是会提示这个。去产品官网瞅瞅,说不定有意外收获啥的。
1.3 峰回路转
果然,提供app的登录方式,果断下载软件和模拟器。
环境一切安排妥当后直接成功登录的目标账号。但是这个账号权限太低了,没法玩。
2. 突破传统
2.1 爆装备
重新查看sqlmap返回的信息,意外发现有两个表爆装备。
第一个:yx_sys_verifycode,第二个:yx_sms_sendrecords。
这两个表用来记录短信内容,例如验证码登录、重置密码。第二个表中记录的更加详细,短信中的每个字都记录的一清二楚,不光包含验证码信息,还包含了修改后的密码信息。我直接在这里表里面找权限高的账户。
通过和yx_person表中的职位匹配还真找到一个管理员账户密码。
但只是一个二级管理员,没啥玩头。
2.2 奇思妙想
重新回看yx_sms_sendrecords表,他记录的信息中还包含短信验证码的发送时间,那我是不是可以重置最高管理员的密码,然后从数据库里查看发送的短信验证码,这样就可以通过身份验证从而重置密码了,逝一下。
输入管理员手机号、图形验证,最后获取验证码。页面提示验证码已发送,但是读取yx_sms_sendrecords表后发现并没有短信记录,看来这张表只记录成功被使用的验证码和修改密码后的短信提示。
评论 (0)