本页介绍了 hackingtool 框架中包含的跨站脚本(XSS)攻击工具。这些工具可帮助安全专业人员识别、测试和利用 Web 应用程序中的 XSS 漏洞。XSS 攻击允许攻击者将恶意脚本注入到其他用户查看的网页中,从而可能导致会话劫持、凭证窃取或其他恶意活动。
有关通用 Web 攻击工具的信息,请参阅 Web 攻击工具。
来源: tools/xss_attack.py134-146 hackingtool.py27-59
XSS 攻击工具组件实现为一个独立工具的集合,这些工具组织在 XSSAttackTools 类下,该类继承自 HackingToolsCollection。每个特定工具都继承自基础 HackingTool 类。
来源: tools/xss_attack.py134-146 tools/xss_attack.py9-133
来源: hackingtool.py27-62 tools/xss_attack.py134-146
hackingtool 框架包含 9 种不同的 XSS 攻击工具,每种工具都有特定的功能和能力。下表概述了这些工具
| 工具 | 描述 | 语言/框架 | 安装方法 |
|---|---|---|---|
| DalFox | XSS 扫描和参数分析工具 | Go | Git clone + Go install |
| XSS 有效载荷生成器 | 生成 XSS 有效载荷,并包含扫描器功能 | Python | Git clone + pip install |
| 扩展 XSS 搜索器和查找器 | 全面的 XSS 漏洞搜索 | Python | Git clone |
| XSS-Freak | 从头开始编写的 XSS 扫描器 | Python 3 | Git clone + pip install |
| XSpear | XSS 扫描器 | Ruby | Ruby gem |
| XSSCon | XSS 漏洞扫描器 | Python | Git clone |
| XanXSS | 基于模板的反射型 XSS 搜索工具 | Python | Git clone |
| XSSStrike | 高级 XSS 检测套件 | Python | Git clone + pip install |
| RVuln | 多线程 Web 漏洞扫描器 | Rust | Git clone + Rust build |
DalFox 是一款强大的 XSS 扫描和参数分析工具,使用 Go 语言编写。
特性
安装
sudo apt-get install golang
sudo git clone https://github.com/hahwul/dalfox
cd dalfox;go install
用途
~/go/bin/dalfox [options]
此工具有助于生成用于测试的 XSS 有效载荷,并且还包含扫描功能。
特性
安装
git clone https://github.com/capture0x/XSS-LOADER.git
cd XSS-LOADER;sudo pip3 install -r requirements.txt
用途
cd XSS-LOADER;sudo python3 payloader.py
一个全面的工具,用于在 Web 应用程序中搜索和查找 XSS 漏洞。
特性
安装
git clone https://github.com/Damian89/extended-xss-search.git
安装后设置: 安装后,您需要进入 extended-xss-search 目录并将 example.app-settings.conf 重命名为 app-settings.conf。
用途
config/urls-to-test.txt 中添加要扫描的 URLpython3 extended-xss-search.py 运行XSS-Freak 是一款完全用 Python 3 从零开始编写的 XSS 扫描器。
特性
安装
git clone https://github.com/PR0PH3CY33/XSS-Freak.git
cd XSS-Freak;sudo pip3 install -r requirements.txt
用途
cd XSS-Freak;sudo python3 XSS-Freak.py
XSpear 是一款 XSS 扫描器,实现为一个 Ruby gem。
特性
安装
gem install XSpear
用途
XSpear -h
XSSCon 是一款用于检测 Web 应用程序中 XSS 漏洞的工具。
安装
git clone https://github.com/menkrep1337/XSSCon.git
sudo chmod 755 -R XSSCon
用法: 该工具会提示输入网站 URL,然后扫描该网站是否存在 XSS 漏洞。
cd XSSCon
python3 xsscon.py -u [website]
XanXSS 是一款基于模板的反射型 XSS 搜索工具。
特性
安装
git clone https://github.com/Ekultek/XanXSS.git
用途
cd XanXSS
python xanxss.py [Options]
XSSStrike 是一款高级 XSS 检测套件,旨在检测和利用 XSS 漏洞。
特性
安装
sudo rm -rf XSStrike
git clone https://github.com/UltimateHackers/XSStrike.git && cd XSStrike && pip install -r requirements.txt
注意:此工具在代码库中被标记为不可运行。
来源: tools/xss_attack.py105-116
RVuln 是一款多线程、自动化的 Web 漏洞扫描器,使用 Rust 语言编写。
特性
安装
sudo git clone https://github.com/iinc0gnit0/RVuln.git
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source $HOME/.cargo/env
sudo apt install librust-openssl-dev
cd RVuln;sudo su;cargo build --release;mv target/release/RVuln
用途
RVuln
来源: tools/xss_attack.py119-131
下图说明了在 hackingtool 框架中使用 XSS 攻击工具的典型工作流程
来源: hackingtool.py65-107 tools/xss_attack.py134-146
The XSSAttackTools 类继承自 HackingToolsCollection,并作为所有 XSS 相关工具的容器。它在 hackingtool.py 的 all_tools 列表中实例化,并在主菜单中作为选项显示。
每个单独的工具类都继承自 HackingTool 并实现必要的属性和方法
TITLE:工具名称DESCRIPTION:工具功能的简要说明INSTALL_COMMANDS:安装工具的 shell 命令RUN_COMMANDS:运行工具的 shell 命令PROJECT_URL:指向原始项目仓库的链接一些工具会覆盖基类方法
run():运行工具的自定义逻辑after_install():安装后执行的操作XSSStrike 在代码中被标记为不可运行(runnable = False),这意味着它已安装但无法直接从 hackingtool 界面执行。
XSSFinder 安装后需要手动配置。用户必须将 example.app-settings.conf 文件重命名为 app-settings.conf,并在 config/urls-to-test.txt 文件中添加要扫描的 URL。
像 XSSCon 这样的某些工具实现了自定义运行方法,这些方法会提示用户输入(网站 URL),然后用这些参数执行工具。
许多工具需要不同的编程语言环境(Go、Python、Ruby、Rust)才能正常运行,这些环境作为工具安装过程的一部分进行安装。
来源: tools/xss_attack.py35-57 tools/xss_attack.py78-90 tools/xss_attack.py105-116