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(六)

相关推荐
KaMeidebaby4 分钟前
卡梅德生物技术快报|适配体筛选技术架构演进:SPARK-seq 高通量平台原理与技术流程解析
大数据·前端·其他·百度·架构·spark·新浪微博
乐迪信息6 分钟前
乐迪信息:港口船舶盲区看不清?AI视觉检测精准识别
大数据·人工智能·安全·计算机视觉·目标跟踪·视觉检测
ZC跨境爬虫14 分钟前
跟着 MDN 学CSS day_7:(层叠优先级与继承)
前端·css·数据库·ui·html
Shadow(⊙o⊙)19 分钟前
qt信号和槽链接的接入与断开
开发语言·前端·c++·qt·学习
慕斯fuafua20 分钟前
JS——DOM操作
前端·javascript·html
忆林52023 分钟前
Jenkins前端打包构建老项目拯救指南
运维·前端·jenkins
微祎_29 分钟前
写给新手的 triton-inference-server-ge-backend:昇腾Triton推理服务后端到底是啥?
前端·人工智能·cann
烂不烂问厨房32 分钟前
两张图片拼接在一起中间有条白线
前端
掘金安东尼35 分钟前
浏览器跨域窗口通信技术调研:window.open 与 postMessage
前端
Highcharts.js3 小时前
缺失数据可视化图表开发实战|Highcharts创建人员出生统计面积图表示例
开发语言·前端·javascript·信息可视化·highcharts·图表开发