XSpear – 强大的 XSS 扫描和参数分析工具
跨站点脚本或 XSS是 OWASP 十大漏洞列表中列出的漏洞或安全漏洞。 XSS 漏洞主要处理可以破坏应用程序内部架构的任意 JavaScript 代码。攻击者或黑客通过恶意代码片段,意图窃取或破坏系统架构。此恶意字符串或代码通过输入字段、参数等各种方式传递到服务器,甚至作为文件传递。在这个缺陷中,Web 应用程序根据用户输入生成输出,如果用户输入是危险的,这可能会有风险。
XSS 示例
考虑一个 Web 应用程序,它通过查询字符串。
http://geeksforgeeks.org/aform.html?name=Gaurav
网站服务器希望在 HTML 页面上显示用户提供的名称-值。在这种情况下, PHP用于从 URL 中提取值并生成结果 HTML
因此可以形成一个恶意脚本,这样如果受害者单击 URL,则恶意脚本将由受害者的浏览器执行并将会话值发送给攻击者。
http://geeksforgeeks.org/aform.html?name=
什么是 XSpear 工具?
跨站点脚本或 XSS 是网站上检测到的最常见的漏洞;恶意 JavaScript 负载被插入到数据载体参数或输入字段中。针对目标域的 XSS 检测有多种技术,例如 Burp Suite、ZAP 等。但我们可以使用名为 XSpear 的工具执行自动化测试。 XSpear 工具是一个用 Ruby 语言设计和开发的自动化工具。 XSpear 工具检查各种类型的 XSS 漏洞,如 Reflected、Blind 等。我们可以在测试域时提供自定义有效载荷。该工具还提取了一些 Recon 信息,如 Server、Action 等。XSpear 工具是开源的,可以免费使用。
注意:由于 XSpear 是基于 Ruby 语言的工具,因此您需要在系统上安装 Ruby 环境。因此,请检查此链接以在您的系统中安装 Ruby。 – 在 Linux 中安装 Ruby
主要特点
- XSpear 工具支持模式匹配。
- XSpear 工具支持反射参数、过滤测试事件处理程序等。
- XSpear 工具可以处理通过 Burp Suite 和 ZAP 生成的原始文件。
- XSpear 工具支持以 JSON 格式保存结果。
- XSpear 工具在 Ruby 代码上运行。
- XSpear 工具可以对安全标头进行深入分析。
- XSpear 工具支持动态和静态分析。
在 Kali Linux 上安装 XSpear 工具
第 1 步:使用以下命令检查 Ruby 环境版本。
gem -v
第 2 步:使用以下命令安装所需的包 1。
sudo gem install colorize
第 3 步:使用以下命令安装所需的包 2。
sudo gem install selenium-webdriver
第 4 步:使用以下命令安装所需的包 3。
sudo gem install terminal-table
第 5 步:使用以下命令安装所需的包 4。
sudo gem install progress_bar
第 6 步:现在使用以下命令安装 XSpear 工具包。
gem install XSpear
第 7 步:查看工具的帮助页面以更好地理解。
XSpear -h
依赖宝石
1.着色
gem install colorize
2. Selenium-Webdriver
gem install selenium-webdriver
3.终端表
gem install terminal-table
4.进度条
gem install progress_bar
在 Kali Linux 上使用 XSpear 工具
示例 1:详细模式
XSpear -u “http://testphp.vulnweb.com/listproducts.php?cat=123” -v 2
在此示例中,我们将以详细模式对目标域执行扫描。 -v 标签用于详细模式。
示例 2:扫描 XSS
XSpear -u “http://testphp.vulnweb.com/search.php?test=query” -d “searchFor=yy”
在此示例中,我们将从 XSS 漏洞扫描目标域。
示例 3:仅 JSON 输出
XSpear -u “http://testphp.vulnweb.com/search.php?test=query” -d “searchFor=yy” -o json
1. 在本例中,我们将以 JSON 格式保存扫描结果。 -o 标签用于保存输出。
2. 在下面的截图中,我们得到了 JSON 格式的扫描结果。
3. 在下面的屏幕截图中,我们显示了输出文件的 JSON 格式结果。
示例 4:设置扫描线程
XSpear -u “http://testphp.vulnweb.com/search.php?test=query” -t 30
在此示例中,我们正在更改默认线程值。 -t 标签用于更改默认值。
示例 5:在选定参数下进行测试
XSpear -u “http://testphp.vulnweb.com/search.php?test=query&cat=123&ppl=demo” -p cat,test
1. 在本例中,我们将仅测试选定的参数。 -p 标签用于选择扫描的参数。
2.在下面的截图中,我们得到了上面扫描的结果。
示例 6:仅测试参数分析(又名 no-xss 模式)
XSpear -u “http://testphp.vulnweb.com/search.php?test=query&cat=123&ppl=demo” –no-xss
1.在这个例子中,我们只测试参数,没有XSS测试。使用-no-xss 标签。
2. 在下面的屏幕截图中,我们得到了扫描结果。
示例 7:测试盲 XSS(所有参数)
XSpear -u “http://testphp.vulnweb.com/search.php?test=query” -b “https://hahwul.xss.ht” -a
1. 在这个例子中,我们正在测试目标域的 Blind XSS 漏洞。我们已经通过了有效载荷收集链接。
2. 在下面的屏幕截图中,我们得到了扫描结果。
示例 8 :安静模式
XSpear -u http://testphp.vulnweb.com/listproducts.php?cat=123 -a -v2
在这个例子中,我们正在实现 Quite 模式。我们使用 -v2 标签来表示安静模式
示例 9 :扫描日志
XSpear -u http://testphp.vulnweb.com/listproducts.php?cat=123 -a -v3
1. 在本例中,我们将显示扫描的实时日志。我们为实时日志使用了 -v3 标签。
2. 在下面的屏幕截图中,我们正在获取扫描的实时日志详细信息。