17.JavaScript 自动化侦察工具

1. 项目介绍

JSFScan 是一款专为 Bug Bounty渗透测试 设计的自动化工具,专注于对目标网站的 JavaScript 文件 进行深度侦察。其通过多维度分析 JS 文件,快速提取敏感信息、潜在漏洞点和攻击面,适用于红队渗透、漏洞挖掘及资产测绘等场景。

核心功能亮点

  1. JS 文件收集:从目标子域名列表自动爬取所有关联的 JS 文件链接(支持 Hakrawler、Gau 等工具集成)
  2. 端点提取:解析 JS 文件中的 API 接口、隐藏路径及 URL 端点,为漏洞探测提供关键数据。
  3. 敏感信息发现:检测 JS 中的硬编码密钥(如 AWS Access Key、API Token)、调试接口等。
  4. XSS 探测:识别潜在的 DOM XSS 漏洞点,并提取变量名辅助手动验证。
  5. 数据整合:生成结构化报告(HTML/文本)、自定义词表,支持本地存储 JS 文件供后续分析。

适用场景

  • 红队渗透:快速定位 Web 应用的未授权接口或敏感数据泄露点。
  • 漏洞挖掘:通过 JS 文件中的隐藏路径发现 SQL 注入、SSRF 等漏洞。
  • 资产测绘:梳理企业 Web 应用的 JavaScript 依赖库及第三方服务。

2. 安装教程

2.1. 环境要求

  • 操作系统:Linux/macOS(推荐 Kali Linux 或 Ubuntu)。
  • 依赖工具:Go 1.16+、Docker(可选)、Python 3.6+。

2.2. 安装方法

方法一:本地安装(推荐)

复制代码
git clone https://github.com/KathanP19/JSFScan.sh  
cd JSFScan.sh  
sudo chmod +x install.sh  
./install.sh  # 自动安装 Hakrawler、Gau、SecretFinder 等依赖  

注意:若遇到权限问题,确保已正确配置 Go 环境变量

方法二:Docker 容器

复制代码
docker build -t jsfscan .  
docker run -it jsfscan /bin/bash  # 进入容器环境  

优势:避免依赖冲突,适合快速部署

3. 基础使用教程

3.1. 准备目标列表

3.2. 常用命令示例

  1. 收集 JS 文件链接

    ./JSFScan.sh -l -i targets.txt -o output

    • -l:启用 JS 链接收集模块。
    • -o:指定输出目录。
  1. 提取端点与敏感信息

    ./JSFScan.sh -e -s -i targets.txt

    • -e:提取 JS 中的 URL 端点。
    • -s:扫描硬编码密钥(如 AWS Key、数据库凭证)。
  1. 生成 HTML 报告

    ./JSFScan.sh --all -i targets.txt -r report.html

    • --all:启用全部功能模块。
    • -r:生成可视化报告

4. 进阶使用教程

  • 编辑脚本文件,修改 Hakrawler 的请求参数(如添加认证 Cookie):

    修改 JSFScan.sh 第 23 行

    hakrawler -js -cookie "session=123abc" -depth 3

4.2. 生成自定义词表

  • 从 JS 文件中提取高频词汇,用于目录爆破或密码猜测:

    ./JSFScan.sh -w -i targets.txt -o custom_wordlist.txt

4.3. 变量名提取与 XSS 检测

  • 提取 JS 变量名辅助 XSS 漏洞挖掘:

    ./JSFScan.sh -v -d -i targets.txt

    • -v:提取变量名(如 userInputredirectUrl)。
    • -d:扫描潜在的 DOM XSS 漏洞点

4.4. 联动其他工具

  • 将提取的端点导入 Burp SuiteNuclei 进行深度测试:

    cat output/endpoints.txt | nuclei -t ~/nuclei-templates/

5. 官方下载地址

6. 注意事项

  1. 合法授权:仅用于授权测试,禁止非法入侵。
  2. 性能优化
    • 调整线程数(默认 20)避免触发 WAF:-t 10
    • 使用代理池分散请求:-proxy http://127.0.0.1:8080
  1. 数据更新:定期拉取最新版以获取增强的规则库(如密钥正则表达式)

通过 JSFScan ,用户可高效完成从 JS 文件分析到漏洞验证的全流程,建议结合 ZAPXray 进行漏洞验证,形成完整的攻击链。

相关推荐
CHANG_THE_WORLD10 小时前
TCP 三次握手彻底解析:SYN、ACK、SEQ、确认号与状态迁移
网络·网络协议·tcp/ip
2501_9151063210 小时前
TraceEagle 代理抓包教程 本机和手机的 HTTPS 抓包方法
网络协议·计算机网络·网络安全·ios·adb·https·udp
DLYSB_11 小时前
基于 HTTP API 与 Modbus 协议的多源监控声光语音联动告警系统设计与实现
网络·网络协议·http·报警灯
Bobolink_12 小时前
手机端和电脑端的网络环境配置有什么不同?
网络·智能手机·电脑·网络环境
星恒讯工业路由器13 小时前
三大工业以太网协议选型对比
网络·物联网·ethercat·profinet·ethernet/ip·工业以太网协议
春卷同学13 小时前
HarmonyOS掌上记账APP开发实践第25篇:Image 组件高级用法 — 资源引用、网络图片与首字符占位方案
网络·华为·harmonyos
mounter62513 小时前
从内存隔离到运行时防线:透视 Linux 内核安全强化的博弈与演进
linux·网络·安全·linux kernel·kernel
Bug退散师15 小时前
多路IO复用[select版TCP服务器与poll版TCP服务器]与常用网络编程函数详解
linux·服务器·c语言·网络·驱动开发·tcp/ip
Acrellea16 小时前
固态变压器(SST)热管理破局:安科瑞交直流专属测温方案护航无人值守运维
运维·网络
振浩微433射频芯片17 小时前
5个IO控制20个LED?查理复用实战拆解
网络·单片机·物联网·学习·智能家居