浅谈js在挖掘CNVD通用漏洞中的思路,附实战案例
本文纯干货详细记述了利用js在挖掘cnvd通用漏洞中的思路以及附带的实战案例。
一、前言
JS渗透测试是一种针对客户端JavaScript代码的安全测试方法,旨在发现和利用应用程序中潜在的安全漏洞。那么在本文中,我们不去讲述常见的XSS、CSRF这些漏洞,我们要去讲述一些在挖掘漏洞中非常实用的技巧,并且依靠这种方法,我也是成功挖掘到了许多cnvd的通用漏洞,欢迎各位师傅一起补充、指点。
二、正文
首先,当我们拿到一个登陆站点,常见的漏洞方法都尝试却依然无果,那么此时我们可以尝试查看网页源代码,看看都加载或者调用了哪些js文件。查看重要文件,一是寻找配置文件,二是查看app.xxx.js文件。
常见的重要文件:
配置文件 | /config/index.js | /config/menu.js |
包含index |
包含config |
包含menu |
包含common |
包含login |
包含cookie | 可以找到后台登录成功页面的地址 |
app系统主文件 | app.xxx.js | method:"get" | http.get(" | method:"post" | $.ajax | service.httppost | http.post(" | service.httpget | 会包含许多未授权接口信息 |
以上信息可以通过一些工具来完成,例如:
Findsomething:
https:
//www.crxsoso.com/webstore/detail/kfhniponecokdefffkpagipffdefeldb
这款工具是浏览器的插件,可以在你访问目标网站的时候,自动爬取js文件中的路径,方便后续拼接url,寻找未授权漏洞。
工具毕竟只是工具,如果你有充足的时间完全可以自己查看js文件,寻找上述敏感的配置文件,打开文件后使用CTRL+F 用来搜索敏感字符,针对app系统主文件,可以打开app.xxx.js,搜索后面我例举的那些关键字,还有一些关键字如:http、https、url、api等等,熟练使用这些查找关键字,可以成为你寻找突破点的关键。
下面给大家看一个实战某路由器的案例:
访问目标网址,前台页面
右键查看网页源代码,可以看到,当type值为0时,进入用户界面,后台地址为index.html
随意输入用户名密码,点击登陆,抓取响应包
将type值修改为0,放包
这里放包,出现验证cookie页面
这里是访问config.js文件,搜索cookie,看到当type值不为1时返回登陆界面
我们这里修改type值为1,绕过登陆验证
成功进入后台
三、总结
这个案例就是,它将登陆页面的判断逻辑放在了网页源代码中,加上查看config.js文件,通过组合的形式,我们拿到了后台。大家可能会好奇,又是怎么想到找cookie的判断逻辑呢,当我发现前端可以绕过的时候,我就猜测它其他的信息可能也会存放在网页源代码中,加上之前提到的那些敏感关键字,所以我有刻意去寻找这些文件。渗透测试还是要更多的细心,你注意到其他人没注意到的点,那你就会比别人更有机会挖到漏洞。
首发Freebuf,作者授权
原文链接:
https:
/
/www.freebuf.com/articles
/web/
390857
.html
原文始发于微信公众号(PwnPigPig):浅谈js在挖掘CNVD通用漏洞中的思路,附实战案例
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论