第14天:信息打点-JS架构&框架识别&泄漏提取&API接口枚举&FUZZ爬虫&插件项目

第14天:信息打点-JS架构&框架识别&泄漏提取&API接口枚举&FUZZ爬虫&插件项目
Yatming的博客什么是 JS 渗透测试?
在 Javascript 中也存在变量和函数,当存在可控变量及函数调用即可参数漏洞JS 开发的 WEB 应用和 PHP,JAVA,NET 等区别在于即没有源代码,也可以通过浏览器的查看源代码获取真实的点。获取 URL,获取 JS 敏感信息,获取代码传参等,所以相当于JS 开发的 WEB 应用属于白盒测试(默认有源码参考),一般会在 JS 中寻找更多的 URL地址,在 JS 代码逻辑(加密算法,APIkey 配置,验证逻辑等)进行后期安全测试。
1 | 假设:web应用可以采用后端或者前端语言进行开发 |
JS手工进行分析
如何快速获取有价值的信息,说白了就是找更多的ip地址或者url路径,从而扩大自己的资产范围,要是本来就有敏感信息,比如说身份证之类的东西进行泄漏,或者前端泄漏有账号和密码。
1 | src= |
从js的文件名来判断这些js文件对应的功能点。
个人理解 , 如果使用手工进行分析 , 那么就需要对js开发有点理解 , 因为你要知道什么关键字对于网站来说是敏感的 , js开发者喜欢使用什么关键字作为一个函数的名字.
JS半自动进行分析
第一个:使用burp自带的功能点进行分析
这个功能点是burp将你开启代理时候浏览的网站 , 然后自动提取出来的.
第二个使用burp上的插件进行分析(推荐)
推荐的是两款burp插件商店自带的插件: js link finder
和js miner
, 还有一个第三方插件:HaE
在burp的插件商店下载上图的两个插件. 其中需要注意的是js link Finder是需要提前下载一个jython的jar包的
1 | https://www.jython.org/download.html |
在burp上安装第三方插件:
将新的规则进行载入:
首先复制下图中红框的内容
将下图的配置文件替换成新规则的配置文件:
然后回到burp点击载入就行了.
这个时候在看历史数据包的时候就可以发现被规则匹配上的数据包就被颜色标记了.
JS全自动进行分析
JSFinder
功能: 从网站中提取js文件
JSFinder项目地址: https://github.com/Threezh1/JSFinder
使用方式:python JSFinder.py -u http://47.92.71.78/
URLFinder
功能: 从网站中提取js文件
项目地址:https://github.com/pingc0y/URLFinder
这款工具也有Linux的版本,这里为了方便直接使用windows版本:
1 | URLFinder-windows-amd64.exe -u http://47.103.17.101/ -s all -m 2 |
FFUF
功能: 利用fuzz的方式从网站中爆破出js文件
项目地址:https://github.com/ffuf/ffuf
模糊测试字典下载地址:https://wordlists-cdn.assetnote.io/data/automated/
1 | 使用方式: |
Packer-Fuzzer
简介: 针对JS框架开发打包器Webpack检测
项目地址:https://github.com/rtcatc/Packer-Fuzzer
使用方式:
1 | python PackerFuzzer.py -u http://47.92.71.78/ |
总结
js安全问题
1 | 1.源码纰漏 |