项目场景:
项目平台简介:Totally Insecure Web Application Project (TIWAP) 完全不安全的 Web 应用程序项目 其使用Flask制作,供新兴安全爱好者了解各种Web漏洞。 TIWAP 是一个 Web 应用程序,专为想要学习和探索该领域的 Web 应用程序安全初学者而设计,因此仅用于教育目的。它专注于 20 个漏洞,每个漏洞有 3 个难度级别。项目数据栈:
完整的数据栈:
前端:HTML、CSS和JavaScript
后端:Flask
数据库:SQLite3和MongoDB
部署:Docker
TIWAP下载地址:
Github:下载地址
设置、安装及使用:
环境:Linux CentOS7,需要在系统中安装Docker。运行如下指令
1.将此项目克隆至TIWAP目录
git clone https://github.com/tombstoneghost/TIWAP
2.进入TIWAP目录
cd TIWAP
3.运行docker中的应用
decker-compose up
@Override
public void run() {
bytes = mmInStream.read(buffer);
mHandler.obtainMessage(READ_DATA, bytes, -1, buffer).sendToTarget();
}
在浏览器中输入https://ip:5001/,进入实验室平台页面,平台凭如下凭证进行使用。
用户名:admin
密码:admin
安装过程问题及解决:
问题一
docker-compose up后文件中的app无法启动
Build app
unknown flag:--iidfile
See 'docker build -help'.
ERROR:Service‘app’failed to build :Build Failed
解决方案:
移除当前Docker将其降级
rm -f /usr/local/bin/docker-compose
curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose
问题二
docker-compose up后正常运行不报错,但数据库拒绝授权Permission denied
db_1 | chown: changing ownership of '/proc/1/fd/1': Permission denied
db_1 | chown: changing ownership of '/proc/1/fd/2': Permission denied
解决方案:
此处应关闭Centos7的防火墙和Selinux
直接上代码
$ su root #在root用户下执行
systemctl stop firewalld
systemctl disable firewalld
systemctl status firewalld
vi /etc/selinux/config
把SELINUX=enforcing 改成 SELINUX=disabled
reboot #重启即可
重启之后再运行docker-compose up仍可能会出现
ERROR: for tiwap_db_1 Cannot start service db: error creating overlay mount to /var/lib/docker/overlay2/a452bad937826154b4297359ba70a4a97300c8f3b0f4882ab30ca53ad6adb588/merged: invalid argument ERROR: for db Cannot start service db: error creating overlay mount to /var/lib/docker/overlay2/
如出现此问题仍需修改,命令代码如下:
若开启docker则先关闭,仍旧在root用户下执行
systemctl stop docker
rm -rf /var/lib/docker 清理docker镜像
vi /etc/sysconfig/docker-storage 修改存储类型
DOCKER_STORAGE_OPTIONS="--storage-driver overlay" 把空的DOCKER_STORAGE_OPTIONS参数改为overlay
vi /etc/sysconfig/docker
去掉option的--selinux-enabled
systemctl start docker
运行:
靶场列表漏洞首页
靶场漏洞详情
目前,在实验室中有 20 个漏洞。
漏洞列表:
- SQL注入
- 盲 SQL 注入
- NoSQL 注入
- 命令注入
- 业务逻辑缺陷
- 敏感数据暴露
- XML 外部实体
- 安全配置错误
- 反射型 XSS
- 存储型 XSS
- 基于DOM的XSS
- HTML 注入
- 不正确的证书验证
- 硬编码凭证
- 不安全的文件上传
- 暴力破解
- 目录遍历
- 跨站请求伪造 (CSRF)
- 服务器端请求伪造 (SSRF)
- 服务器端模板注入 (SSTI)
每个漏洞都有 3 个难度级别,即低、中和困难。可以从设置页面设置这些级别。
参考链接