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

相关推荐
EndingCoder16 分钟前
类的继承和多态
linux·运维·前端·javascript·ubuntu·typescript
Zero_Era17 分钟前
高性价比安全MCU——LKT6830C
单片机·嵌入式硬件·安全
用户479492835691518 分钟前
React 终于出手了:彻底终结 useEffect 的"闭包陷阱"
前端·javascript·react.js
程序员猫哥24 分钟前
前端开发,一句话生成网站
前端
专注前端30年37 分钟前
【PHP开发与安全防护实战】性能调优手册
android·安全·php
Younglina1 小时前
一个纯前端的网站集合管理工具
前端·vue.js·chrome
木头程序员1 小时前
前端(包含HTML/JavaScript/DOM/BOM/jQuery)基础-暴力复习篇
开发语言·前端·javascript·ecmascript·es6·jquery·html5
卖火箭的小男孩1 小时前
# Flutter Provider 状态管理完全指南
前端
小雨青年1 小时前
鸿蒙 HarmonyOS 6|ArkUI(01):从框架认知到项目骨架
前端
Null1551 小时前
浏览器唤起本地桌面应用(基础版)
前端·浏览器