qazbnm456/VWGen

GitHub: qazbnm456/VWGen

基于 Docker 的可定制漏洞 Web 应用生成器,用于安全教学与 CTF 靶场搭建。

Stars: 85 | Forks: 16

# 易受攻击的 Web 应用程序生成器 这是 `VWGen` 的 Git 仓库,其全称为 *Vulnerable Web applications Generator*。 **相关链接:** [Github](https://github.com/qazbnm456/VWGen) **目录** * [版本发布](#releases) * [当前状态](#status) * [功能特性](#feature) * [安装说明](#install) * [使用说明](#instruction) * [简介](#brief) * [已知问题](#issue) * [贡献](#contribute) * [许可证](#license) ## 版本发布 - 0.1.0 -- 初始版本 - 0.2.0 -- 现在,VWGen 也可以作为 [Tsaotun](https://github.com/qazbnm456/tsaotun) 的插件之一了。 :tada: ## 当前状态 1. 目前支持的模块非常有限,例如 [SQLI](https://www.owasp.org/index.php/SQL_Injection)、[NOSQLI](https://www.owasp.org/index.php/Testing_for_NoSQL_injection)、[LFI](https://www.owasp.org/index.php/Testing_for_Local_File_Inclusion)、[CRLF](https://www.owasp.org/index.php/CRLF_Injection)、[Command Injection](https://www.owasp.org/index.php/Command_Injection) 和 [XSS](https://www.owasp.org/index.php/Cross-site_Scripting_(XSS)。 2. 有两个重要的模块在部署易受攻击的 Web 应用程序中扮演着至关重要的角色。 - *unfilter* 模块会抓取网站并找到需要被参数替换的关键词。 - *expand* 模块会学习网站结构,并尝试重新排列元素,以便让子模块能在其中插入它们的 payload。 3. 目前仅有两套主题。
4. **目前不支持 Python3!** 5. `--file` 选项可以运行,但仍需进一步开发。示例命令:`./VWGen.py --file="$VWGen_HOME/examples/2016_ais3_web3/sample.py"` ## 功能特性 `--file` 选项使得共享 Web 挑战变得非常容易。您只需提供一个自定义脚本,用于定义漏洞的生成或触发方式,其他人只需加载该脚本,即可立即生成相同的易受攻击的 Web 应用程序。 根目录下有一个 [examples/](https://github.com/qazbnm456/VWGen/tree/master/examples) 目录,我会在其中放置一些示例脚本。现在,我们已经有许多脚本了! ## 安装说明 1. 安装 docker 二进制文件。仅支持 1.11.0 及以上版本。请查阅官方 [安装指南](https://docs.docker.com/linux/)。 2. 运行 `sudo apt-get install -y libcurl4-gnutls-dev libcurl4-nss-dev libcurl4-openssl-dev` 以确保 `pycurl` 正常工作。 3. 拉取 VWGen 将要使用到的基础镜像: - `docker pull richarvey/nginx-php-fpm:php5` - `docker pull richarvey/nginx-php-fpm:php7` - `docker pull mysql:5` - `docker pull phpmyadmin/phpmyadmin:4.6.5.1-1` - `docker pull node:7` 4. 安装 lxml:`apt-get install python-lxml`。 5. 克隆 [VWGen](https://github.com/qazbnm456/VWGen) 并 `cd` 进入该目录。 6. 安装依赖包: 1. 通过 `pip` - `pip install -r requirements.txt` 2. 通过 `pipenv` - `pip install pipenv` - `pipenv install` - `pipenv shell` 或 `pipenv shell --fancy` 7. 输入 `./VWGen.py --help` 以测试其是否正常工作,或查看下文获取更多说明。 ## 使用说明 ``` Usage: VWGen.py [options] Options: --version show program's version number and exit -h, --help show this help message and exit -c, --console enter console mode --backend=BACKEND configure the backend (Default: php) --theme=THEME configure the theme (Default: startbootstrap- agency-1.0.6) --expose=EXPOSE_PORT configure the port of the host for container binding (Default: 80) --database=DBMS, --db=DBMS configure the dbms for container linking --modules=LIST list of modules to load (Default: +unfilter) --color set terminal color -v, --verbose set verbosity level Under development: Following options are still in development! --file=FILENAME specify the file that VWGen will gonna operate on ``` ## 简介 生成的漏洞类型将取决于您在启动 VWGen 时设置的模块,以下是 VWGen 的一些屏幕截图: - `./VWGen.py -c` - 进入控制台模式。
- `./VWGen.py` - 使用一些默认参数启动 VWGen。
- `./VWGen.py --module="+sqli" --database="MySQL"` - 启动基于 MySQL 的 SQL 注入 VWGen。
- `./VWGen.py --module="+exec"` - 启动带有命令注入漏洞的 VWGen。
## 已知问题 1. [mod_expand.py](https://github.com/qazbnm456/VWGen/blob/master/core/attack/mod_expand.py) 可以生成不同的扩展,但仍需要用户交互来修改源代码(已提供警告信息)。 ## 贡献至 VWGen | Linux | Windows | MacOSX | |------------------|---------|---------| | ![Compatibility Docker Version](https://img.shields.io/badge/docker%20version-1.12.3-blue.svg) | ![Compatibility Docker Version](https://img.shields.io/badge/docker%20version-1.12.3-blue.svg) | ![Compatibility Docker Version](https://img.shields.io/badge/docker%20version-1.12.3-blue.svg) | 想要丰富 VWGen 能够激发的无限可能吗?立即提交 pull requests 或 issues 吧! ## 许可证 本项目使用 [Apache License, Version 2.0](https://github.com/qazbnm456/VWGen/blob/master/LICENSE)。
标签:CISA项目, CRLF注入, LFI, Maven, MITM代理, NoSQL注入, Python, Web安全, XSS, 命令注入, 安全测试, 攻击性安全, 无后门, 本地文件包含, 漏洞情报, 漏洞演练, 漏洞靶场, 漏洞验证, 网络安全, 自动化分析, 蓝队分析, 请求拦截, 跨站脚本, 逆向工具, 防御检测, 隐私保护, 靶场环境, 靶机生成