��_�.📦 JS前端渗透测试工具包(���� 企业级 实战版) 即拿即用 · 合法授权 · 全链路覆盖 🔗 下载说明 💡 以下为完整工具包内容清单与使用指南。请将所有文件打包为 js_recon_toolkit_2026.zip ,通过安全渠道分发。 📂 一、核心工具集
- JS信息提取工具 JS Link Finder(Burp插件) ● 功能:自动提取JS中URL/API ○ ○ 安装:Burp → Extender → Add → 选择 js-link-finder.jar URLFinder(命令行) ● 1 # 安装 2 go install github.com/0xInfection/urlfinder@latest 3 4 # 使用 5 urlfinder -u https://target.com —depth 3
- 敏感信息高亮 HaE(Burp插件) ● ○ 配置文件 hae_rules.json : 205
1 { 2 “rules”: [ 3 {“name”: “API”, “regex”: ""(/api/[^”]+)""}, 4 {“name”: “JWT”, “regex”: “ey[A-Za-z0-9_-]{10,}\.[A-Za-z0-9._-]{10,}”} 5 ] 6 } FindSomething(浏览器插件) ● 自动高亮邮箱/手机号/JWT ○ 📄 二、自动化脚本库
- JS文件递归提取 js_crawler.py 206
1 import requests
2 from bs4 import BeautifulSoup
3 import re
4
5 def extract_js_urls(url):
6 js_files = set()
7 try:
8 resp = requests.get(url, timeout=5)
9 soup = BeautifulSoup(resp.text, ‘html.parser’)
10
11 # 提取HTML中的JS
12 for script in soup.find_all(‘script’, src=True):
13 if script[‘src’].startswith(’/’):
14 js_files.add(url + script[‘src’])
15 elif script[‘src’].startswith(‘http’):
16 js_files.add(script[‘src’])
17
18 # 提取JS中的新URL
19 for js_url in list(js_files):
20 try:
21 js_resp = requests.get(js_url, timeout=5)
22 urls = re.findall(r’(?
1 import re
2 import sys
3
4 PATTERNS = {
5 “AWS_KEY”: r”AKIA[0-9A-Z]{16}”,
6 “JWT”: r”ey[A-Za-z0-9_-]{10,}.[A-Za-z0-9._-]{10,}”,
7 “INTERNAL_IP”: r”\b(?:10|172.(?:1[6-9]|2[0-9]|3[01])|192.168).\d{1,
3}.\d{1,3}\b”,
8 “API_ENDPOINT”: r”(?:’|“|)(/api/[^\s'\"]+)(?:'|\"|)”
9 }
10
11 def scan_js_file(file_path):
12 with open(file_path, ‘r’, errors=‘ignore’) as f:
13 content = f.read()
14
15 for name, pattern in PATTERNS.items():
16 matches = re.findall(pattern, content, re.IGNORECASE)
17 for match in matches:
18 print(f”[!] {name}: {match}”)
19
20 # 批量扫描目录
21 import os
22 for root, _, files in os.walk(sys.argv[1]):
23 for file in files:
24 if file.endswith(‘.js’):
25 scan_js_file(os.path.join(root, file))
3. Webpack源码还原
webpack_extractor.py
1 # 使用 webpack-extractor 还原混淆代码
2 # 安装: pip install webpack-extractor
3 from webpack_extractor import WebpackExtractor
4
5 def extract_webpack(url):
6 extractor = WebpackExtractor()
7 modules = extractor.extract_from_url(url)
8 for module_id, source in modules.items():
9 print(f”Module {module_id}:\n{source}\n”)
10
11 # 使用
12 extract_webpack(“https://target.com/static/js/app.js”)
208
📚 三、字典与配置文件
- JS路径爆破字典 js_paths.txt 1 static/js/app.js 2 dist/js/chunk-vendors.js 3 js/login.js 4 assets/js/main.js 5 public/js/config.js
- Burp HaE 规则
hae_rules.json
1 {
2 “rules”: [
3 {
4 “name”: “API接口”,
5 “regex”: ”(?:’|“|
)(/api/[^\s'\"]+)(?:'|\"|)”, 6 “color”: “red” 7 }, 8 { 9 “name”: “云密钥”, 10 “regex”: “AKIA[0-9A-Z]{16}”, 11 “color”: “yellow” 12 }, 13 { 14 “name”: “JWT Token”, 15 “regex”: “ey[A-Za-z0-9_-]{10,}\.[A-Za-z0-9._-]{10,}”, 16 “color”: “green” 17 } 18 ] 19 } - FFUF 爆破命令模板 1 # JS文件爆破 2 ffuf -w js_paths.txt -u https://target.com/FUZZ -mc 200,302 -t 50 3 4 # API接口爆破(从JS提取后) 5 ffuf -w api_endpoints.txt -u https://target.com/FUZZ -H “Authorization: Bea rer xxx” -mc 200 209
🧪 四、实战案例库 案例 1:教育系统未授权API ● 目标: sdxt.university.edu.cn 步骤: ● a. Wappalyzer 识别 Vue.js b. DevTools 发现 api.js 引用 c. JS Link Finder 提取 /api/user/list d. 未授权访问 → 获取全校用户信息 案例 2:Webpack源码泄露 目标:某金融平台 ● 步骤: ● a. 发现 main.js 含 webpack_require b. 使用 webpack-extractor 还原源码 c. 找到硬编码的 /admin/debug 接口 d. 调用接口 → RCE 🛡 五、法律声明(必读!) 本工具包仅用于 合法授权渗透测试。 严禁对非授权目标进行信息收集。 技术是盾,不是矛——用它守护,而非破坏。 🚀 使用流程图 210
1 1. 浏览器访问目标 2 ↓ 3 2. Wappalyzer 识别技术栈 4 ↓ 5 3. DevTools 提取JS文件 6 ↓ 7 4. Burp HaE 高亮敏感信息 8 ↓ 9 5. FFUF 爆破隐藏JS/API 10 ↓ 11 6. 漏洞验证 & 报告 ✅ 排版说明:短段落 + 图标引导 + 代码块高亮 → 拒绝大段文字,操作步骤一目了然! 🔥 真实部署建议: 将上述内容打包为 js_recon_toolkit_2026.zip ,并通过内网 HTTPS 或加密 USB 分发,确保 合规安全。 211
��_�.� 渗透测试终极手册:JS前端架构深度渗 透全解析(含工具链+实战思路) 一句话破题: 后端是黑盒,前端是白盒——JS代码里藏着通往系统的“后⻔钥匙”! 🔥 一、为什么JS渗透是红队的“⻩金入口”? 💡 普通渗透看端口,高手直取JS——因为一切API、密钥、逻辑都在前端代码里! ✅ JS渗透 vs 传统渗透对氏 维度 传统渗透(后端) JS前端渗透 信息获取 黑盒:靠猜、扫、爆破 白盒:直接看源码 攻击面 Web服务器、数据库、中间件 API接口、加密逻辑、配置文件 关键资产 IP、端口、CMS版本 JS文件、路由、Token、密钥 典型漏洞 SQL注入、RCE、文件上传 未授权API、敏感信息泄露、逻 辑绕过 工具链 nmap, sqlmap, burp 浏览器DevTools, JS Link Finder, ffuf 🎯 真实案例:某政务系统主站WAF严防死守,但 login.js 中硬编码了 /admin/bypass 接口 → 直接越权! 📦 二、JS渗透全景图:5大核心阶段 212
识别JS应用 提取JS文件 分析敏感信息 FUZZ未知接口 利用漏洞 🔍 三、阶段1:识别JS开发应用(别把Vue当PHP!) ❌ 普通做法: 只看CMS(WordPress/ThinkPHP) ● 忽略前端框架 ● ✅ 高级打法:
- 浏览器插件快速识别 Wappalyzer:一键识别 Vue/React/Angular ● 示例输出: Vue.js 3.2.0 + Ant Design + Nginx BuiltWith:查看技术栈详情 ●
- 手动特征判断 特征 说明 static/js/app.js Vue/React 打包文件 cookie: connect.sid Node.js 后端 简短HTML + 大量JS引用 典型SPA(单⻚应用) webpack_require Webpack 打包 💡 实战技巧:右键 → “检查” → Network → 刷⻚面 → 看JS加载顺序 213
🛠 四、阶段2:提取JS文件(手工+半自动+全自动) � 手工模式(精准但慢) 步骤: ● a. F12 → Network → Filter JS b. 优先看: login.js , admin.js , api.js c. 全局搜索: Ctrl+Shift+F → 关键词: ■ $.ajax , fetch , axios ■ url: , api_key , password ■ method: “post” , http.get ✅ 优势:100% 精准,可理解业务逻辑 ❌ 劣势:耗时,依赖经验 � 半自动模式(Burp Suite 插件) 推荐插件: 插件 功能 安装方式 JS Link Finder 自动提取JS中URL Burp Extender → Add HaE 高亮敏感信息(Token/API) 加载 HaE.jar Find Scripts 内置功能:Target → Engagement tools → Find scripts 🎯 操作流程:
- Proxy 抓包 → 访问目标站
- Target → Site map → 右键 → Find scripts
- 插件自动标记JS文件 → 右键 Send to Repeater 分析 214
� 全自动模式(命令行工具) 核心工具: 工具 命令示例 特点 JSFinder python JSFinder.py -u 老牌,支持递归 https://target.com URLFinder URLFinder -u https://t 更快,支持动态渲染 arget.com FindSomething 浏览器插件 实时高亮邮箱/手机号/JWT 💡 进阶技巧:结合 waybackurls 获取历史JS 1 echo “target.com” | waybackurls | grep “.js$” | httpx 🔐 五、阶段3:分析敏感信息(从JS挖金矿) 🗂 敏感信息类型 & 提取方法 类型 正则表达式 工具 API接口 `(?:’ ”)(/[\w/-]+)(?:’ 云密钥 AKIA[0-9A-Z]{16} gitleaks JWT Token ey[A-Za-z0-9_-]{10,}. FindSomething [A-Za-z0-9._-]{10,} 内部IP \b(?:[0-9]{1,3}.){3} 自定义正则 [0-9]{1,3}\b 数据库密码 password[’”]?\s*[:=]\s extract_secrets.py *[’”][^’”]+ 215
✅ 实战案例: 在 config.js 发现: → 直接接管阿里云OSS存储桶! 1 const OSS_CONFIG = { 2 accessKeyId: ‘LTAI5tXXXX’, 3 accessKeySecret: ‘xxxxxx’ 4 } 🌀 六、阶段4:FUZZ未知JS与接口(扩大攻击面) ❓ 为什么需要FUZZ? ● 登录后才加载的JS(如 user_profile.js ) ● 动态路由(如 /report/2026/02 ) 未在HTML中引用的隐藏JS ● 🛠 FUZZ工具链
-
字典生成 使用 Assetnote Wordlists ● 1 js/lazy_load.js 2 static/js/chunk-vendors.js 3 dist/js/app.12345.js
-
爆破命令 1 # 用 ffuf 爆破JS文件 2 ffuf -w js_wordlist.txt -u https://target.com/FUZZ -mc 200,302 3 4 # 递归爬取JS中的新URL 5 python URLFinder.py -u https://target.com —depth 3 216
-
Webpack特殊处理 ● 如果发现 main.js 含 webpack_require 使用 Webpack Extractor 还原源码: ● 1 python3 webpack-extractor.py https://target.com/static/js/app.js ⚔ 七、阶段5:漏洞利用(从信息到权限) 🎯 高价值漏洞场景 场景 利用方式 工具 未授权API 直接访问 /api/admin/user Burp Repeater s 敏感接口 调用 /api/export?table= curl users 逻辑绕过 修改JS中的 role: “user” 浏览器Console → “admin” 密钥滥用 用泄露的AWS Key创建EC2 AWS CLI 💣 真实案例: 某教育平台 login.js 中: → 攻击者直接访问 /admin → 越权! 1 if (res.data.role === ‘student’) { 2 window.location = ‘/student’; 3 } else { 4 window.location = ‘/admin’; // 未校验后端! 5 } 217
🧰 八、红队必备工具箱(2026最新版)
-
浏览器插件 Wappalyzer(技术识别) ● FindSomething(敏感信息高亮) ● Hack-Tools(快速编码/解码) ●
-
Burp Suite 插件 JS Link Finder ● HaE(自定义正则高亮) ● Param Miner(参数挖掘) ●
-
命令行工具 工具 用途 安装 ffuf 目录/JS爆破 go install github.com/ ffuf/ffuf@latest httpx 快速存活检测 go install github.com/ projectdiscovery/httpx/ cmd/httpx@latest gau 获取历史URL go install github.com/ lc/gau/v2/cmd/gau@lates t 📜 九、法律与伦理红线 JS渗透必须满足:
-
书面授权(明确包含前端测试)
-
不下载/传播源码 218
-
仅验证漏洞,不窃取数据 ❌ 严禁: 对非授权站点使用自动化工具 ● 利用泄露密钥访问云平台 ● 传播他人JS代码 ● ✅ 十、终极口诀(背下来效率翻倍!) Wappalyzer 先识别, DevTools 看JS; Burp插件自动提, FFUF爆破扩边界; 敏感信息全挖出, 未授权接口直接打! 219
如果这篇文章对你有帮助,欢迎分享给更多人!
部分信息可能已经过时






