进击的HACK
- 关注
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
9

刚结束hw就被拉去做项目,安服真是辛苦的仔。
首先访问网站,随便点一点看一看报错页面。这熟悉的报错。
从插件中也看到使用了spring框架
项目测试中,尤其是在客户的内网项目测试中,spring未授权的几率很大。
先拿出我祖传的进行爆破,失败了。看来api前面还需要其他路径。
观察用户的跳转页面,为/common/api/user/login
将get请求包发送到intruder模块,使用网上收集spring常见未授权路径进行爆破
/common{/}
哈哈,有戏。
对heapdump常见操作就是下载下来,然后在其中搜索AKSK、password等等。但是因为本次测试的服务器没有上云,所以没有AKSK。
我还喜欢的操作是看/mappings下链接,打开url,从下网上翻,一个url引起了我的注意
哦豁,在repeater模块构造请求发送,因为服务端会校验是否存在referer字段,所以需要在请求包中加入。但是并没有校验referer的值是否是同一域名,估计是为了防止扫描器扫描做的限制吧。
GET //common//public/xxx/userInfo/12138 HTTP/1.1
Host: xxx.xxx.com
referer: 123
Connection: close
没想到接口直接显示出来了password,虽然password被加密了,但是熟悉的人一眼就能看出是md5加密,送到MD5解密网站中去。
可恶,居然要钱。
接下来可以批量爆破userid的值
总结:
在查找未授权的API时最重要的是能够找到API的链接然后能够构造正确的参数。查看mappings是一个很好的办法。最好的办法还是查看swagger-ui,可惜本次没有。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
