WebGoat - 刻意设计的不安全Web应用程序

文章目录


一、关于 WebGoat

1、项目概览

WebGoat是由OWASP维护的刻意设计的不安全Web应用程序,用于教授Web应用安全课程。该项目演示了常见的服务器端应用漏洞,旨在帮助用户学习应用安全和渗透测试技术。

警告1: 运行此程序时您的机器将极易受到攻击,建议断开互联网连接使用。WebGoat默认绑定到localhost以最小化暴露风险。

警告2: 本程序仅用于教育目的。未经授权尝试这些技术很可能导致法律后果,大多数公司会解雇进行未授权黑客行为的员工。


2、相关链接资源


3、功能特性

  1. 安全教学平台

    • 提供多种服务器端应用漏洞场景
    • 包含完整的安全攻防练习体系
  2. 多环境支持

    • 支持Docker容器化部署
    • 提供完整Linux桌面环境镜像
    • 支持源码编译运行

二、安装配置

1、Docker运行方式

bash 复制代码
# 基础运行
docker run -it -p 127.0.0.1:8080:8080 -p 127.0.0.1:9090:9090 webgoat/webgoat

# 设置时区
docker run -it -p 127.0.0.1:8080:8080 -p 127.0.0.1:9090:9090 -e TZ=America/Boise webgoat/webgoat

# 使用代理配置
docker run -it -p 127.0.0.1:8080:8080 -p 127.0.0.1:9090:9090 -e WEBGOAT_HOST=www.webgoat.local -e WEBWOLF_HOST=www.webwolf.local -e TZ=America/Boise webgoat/webgoat

2、带桌面环境的Docker运行

bash 复制代码
docker run -p 127.0.0.1:3000:3000 webgoat/webgoat-desktop

3、独立运行

bash 复制代码
# 设置时区后运行
export TZ=Europe/Amsterdam
java -Dfile.encoding=UTF-8 -jar webgoat-2023.8.jar

# 自定义端口
java -jar webgoat-2023.8.jar --webgoat.port=8001 --webwolf.port=8002

4、源码编译运行

前提条件:

  • Java 23
  • Git
  • Maven
bash 复制代码
git clone git@github.com:WebGoat/WebGoat.git
cd WebGoat
./mvnw clean install
./mvnw spring-boot:run

三、高级配置

1、自定义菜单

可通过环境变量排除特定类别或课程:

bash 复制代码
# 排除特定类别和课程
export EXCLUDE_CATEGORIES="CLIENT_SIDE,GENERAL,CHALLENGE"
export EXCLUDE_LESSONS="SqlInjectionAdvanced,SqlInjectionMitigations"
java -jar target/webgoat-2023.8-SNAPSHOT.jar

# Docker方式
docker run -d -p 127.0.0.1:8080:8080 -p 127.0.0.1:9090:9090 -e EXCLUDE_CATEGORIES="CLIENT_SIDE,GENERAL,CHALLENGE" -e EXCLUDE_LESSONS="SqlInjectionAdvanced,SqlInjectionMitigations" webgoat/webgoat

伊织 xAI 2025-09-20(六)

相关推荐
IT_Octopus7 小时前
【零基础入门 LLM 开发 · Day 11】:ChatOpenAI vs init_chat_model——一行换供应商
java·前端·javascript
HackTwoHub7 小时前
DeepSeek Harness 红队破甲插件|适配 SRC 挖掘场景,区分平台拦截与模型原生输出,用于大模型安全边界合规测评研究
安全·web安全·网络安全·系统安全·密码学·网络攻击模型·安全架构
deli0077 小时前
撒下 200 个种子点,平面为什么自己长成蜂窝?Voronoi 图实验室
前端
梦帮科技7 小时前
【3.0】上线与运维:节点监控、水龙头、区块浏览器与安全清单
运维·安全·web安全·金融·区块链·密码学·安全架构
大文说跨境7 小时前
多账号环境隔离方案技术选型:指纹浏览器、VPS 与云手机的三种架构对比
java·开发语言·前端
咕白m6257 小时前
使用 C# 将 TIFF 转换为 PDF
前端·c#
全栈项目管理程序猿7 小时前
ArcGIS JS 基础教程(28):图层渲染顺序管理
前端·javascript
huakoh7 小时前
MCP 工具报错走哪条通道:三条探针的最小复现检查
前端
用户033307413957 小时前
ParadeDB 的 pg_search 0.26 把十词 BM25 搜索从 129ms 降到 29ms
前端
花 满 楼7 小时前
HSM自学之路——阶段5安全启动专题与实践
安全·嵌入式·汽车电子·hsm·安全启动