【信息收集-05】Web应用&JS架构&URL提取&数据匹配&Fuzz接口&WebPack分析&自动化

JS信息收集

概念

在日常渗透测试中,从JavaScript(JS)文件中提取信息是一项关键的步骤,以往有些案例就是通过JS文件中发现的敏感信息从而拿下重要的系统。在JS开发的WEB应用和PHP,JAVA,NET等区别在于即没有源代码,也可以通过浏览器的查看源代码获取部分源代码逻辑。从而获取URL,获取JS敏感信息,获取代码传参等,所以相当于JS开发的WEB应用大部分属于白盒测试(默认有大量源码参考),一般会在JS中寻找更多的URL地址,在JS代码逻辑(加密算法,APIkey配置,验证逻辑等)进行后期安全测试。

方法

  • 接口URL提取
  • 后端地址提取
  • 敏感信息提取
  • 配置信息提取
  • 其他信息提取(环境,注释,用途等)

JS安全问题

  • 源码泄漏,代码审计,JS逆向分析
  • 未授权访问 -> JS里面分析更多的URL访问确定接口路径
  • 敏感Key泄漏 -> JS文件中配置接口信息(云应用,短信,邮件,数据库等)
  • API接口安全 -> 代码中加密提交参数传递,更多的URL路径

流行的JS框架

  • Vue
  • NodeJS
  • jQuery
  • Angular等

判定JS开发应用

  • 插件wappalyzer
  • 源程序代码简短
  • 引入多个js文件
  • 一般有/static/js/app.js等顺序的js文件
  • 一般cookie中有connect.sid

获取更多的JS文件

  • 手工-浏览器搜索
  • 半自动-Burpsuite插件
  • 工具化-各类提取&FUZZ项目

快速获取价值信息

F12调试搜索已加载的js文件

关键词:

src=
path=
method:"get"
http.get("
method:"post"
http.post("
$.ajax
http://service.httppost
http://service.httpget

项目插件工具:

类型工具/插件名称项目地址功能简介
独立工具/命令行ffufhttps://github.com/ffuf/ffuf用 Go 编写的快速 Web 模糊测试程序。
独立工具/命令行JSFinderhttps://github.com/Threezh1/JSFinder一款用作快速在网站的 JS 文件中提取 URL、子域名的工具。
独立工具/命令行URLFinderhttps://github.com/pingc0y/URLFinder一款快速、全面、易用的页面信息提取工具,用于分析页面中的 JS 与 URL,查找隐藏在其中的敏感信息或未授权 API 接口。
独立工具/命令行Packer-Fuzzerhttps://github.com/rtcatc/Packer-Fuzzer针对 Webpack 等前端打包工具所构造的网站进行快速、高效安全检测的扫描工具。
独立工具/命令行LinkFinderhttps://github.com/GerbenJavado/LinkFinder功能类似于 JSFinder,但 JSFinder 好久没更新了。
独立工具/命令行jjjjjjjjjjjjjshttps://github.com/ttstormxx/jjjjjjjjjjjjjs针对 Webpack 站点,爬取 JS 文件并分析获取接口列表。自动结合指纹识别和 fuzz 获取正确 API 根,可指定后端接口地址。根据有效 API 根组合爬取到的接口进行自动化请求,发现未授权/敏感信息泄露,回显 API 响应,定位敏感信息/文件/接口。支持批量模式及需认证接口自动尝试 bypass。
Burp Suite 插件HaEhttps://github.com/gh0stkey/HaE一款网络安全领域下的框架式项目,采用乐高积木式模块化设计理念,融入 AI 大模型辅助技术,实现对 HTTP 消息(包含 WebSocket)精细化的标记和提取。
Burp Suite 插件BurpAPIFinderhttps://github.com/shuanx/BurpAPIFinder攻防演练中用于发现隐匿在已访问接口、HTML、JS 文件中的未授权/敏感信息/越权: 1. 发现未授权/越权获取账号密码、私钥、凭证 2. 发现枚举用户信息、密码修改、用户创建接口 3. 发现登陆后台网址 4. 发现 HTML/JS 中泄漏的账号密码或云主机 Access Key 和 SecretKey 5. 自动提取 JS/HTML 中路径进行访问,支持自定义父路径访问。
Burp Suite 插件Unexpected_informationhttps://github.com/ScriptKid-Beta/Unexpected_information用来标记请求包中的一些敏感信息、JS 接口和一些特殊字段,防止我们疏忽了一些数据包,使用它可能会有意外的收获信息。
浏览器插件FindSomethinghttps://github.com/momosecurity/FindSomething用于快速在网页的 HTML 源码或 JS 代码中提取一些有趣的信息的浏览器插件,包括请求的资源、接口的 URL、请求的 IP 和域名、泄漏的证件号、手机号、邮箱等信息。

本节知识点&思维导图

信息收集-Web应用-JS提取分析-人工&插件*项目

信息收集-Web应用-JS提取分析-URL&配置&逻辑

十二亿七千光年
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇