Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
6a56e03
Cleaned up grammar and wording for insecure deserialization lessons
agrevster May 5, 2026
f13f605
Fixed hints not appearing up for XXE lessons (#2432)
agrevster May 28, 2026
951b040
Removed second slash on XXE blind assignment (#2436)
agrevster May 28, 2026
5c70eb7
Fixed issue where lessons do not turn green upon completion (#2434)
agrevster May 28, 2026
936c3d2
Fixed bug in advanced SQL injection module never showing completed (#…
agrevster May 28, 2026
c624868
Use null-safe string comparison to prevent NullPointerException in Sq…
Kaustub593S May 29, 2026
01c2a01
Expanded and updated Burp Suite section and consolidated ZAP modules …
agrevster May 30, 2026
7632b8c
improved language selector and add defaults for different languages (…
zubcevic May 30, 2026
0ec9b03
Cleanall (#2442)
zubcevic May 30, 2026
6ba0985
chore: bump org.bitbucket.b_c:jose4j from 0.9.3 to 0.9.6 (#2441)
dependabot[bot] May 30, 2026
0223b25
chore: bump org.apache.commons:commons-text from 1.14.0 to 1.15.0 (#2…
dependabot[bot] Jun 8, 2026
8d4233f
chore: bump org.asciidoctor:asciidoctorj from 3.0.0 to 3.0.1 (#2451)
dependabot[bot] Jun 8, 2026
52fc140
chore: bump commons-io:commons-io from 2.20.0 to 2.22.0 (#2449)
dependabot[bot] Jun 8, 2026
7873e49
chore: bump org.apache.maven.plugins:maven-enforcer-plugin (#2450)
dependabot[bot] Jun 8, 2026
ec19ae6
chore: bump org.projectlombok:lombok from 1.18.42 to 1.18.46 (#2448)
dependabot[bot] Jun 8, 2026
75c671d
chore: bump devops-infra/action-commit-push from 0.11.4 to 1.3.3 (#2447)
dependabot[bot] Jun 8, 2026
ba5db9d
chore: bump devops-infra/action-pull-request from 1.0.2 to 1.2.1 (#2443)
dependabot[bot] Jun 8, 2026
c12e011
chore: bump docker/build-push-action from 6.18.0 to 7.2.0 (#2444)
dependabot[bot] Jun 8, 2026
40fb615
chore: bump docker/login-action from 3.6.0 to 4.2.0 (#2445)
dependabot[bot] Jun 8, 2026
18e517a
chore: bump softprops/action-gh-release from 1 to 3 (#2446)
dependabot[bot] Jun 8, 2026
5a47c8a
Fixed bug where hostnames didn't work on password reset lesson's host…
agrevster Jun 8, 2026
0248a8f
Handle both lowercase and CamelCase network routes (#2380)
Ishitadubeyy Jun 8, 2026
79c2181
chore: bump docker/setup-buildx-action from 3 to 4 (#2455)
dependabot[bot] Jun 8, 2026
20a9b6d
chore: bump devops-infra/action-pull-request from 1.2.1 to 1.3.0 (#2457)
dependabot[bot] Jun 8, 2026
ad08c5a
chore: bump com.auth0:java-jwt from 4.5.0 to 4.5.2 (#2459)
dependabot[bot] Jun 8, 2026
fdb27ee
chore: bump com.microsoft.playwright:playwright from 1.55.0 to 1.60.0…
dependabot[bot] Jun 8, 2026
0d886e4
chore: bump docker/setup-qemu-action from 3.6.0 to 4.1.0 (#2458)
dependabot[bot] Jun 8, 2026
8c43645
chore: bump io.github.bonigarcia:webdrivermanager from 6.3.2 to 6.3.4…
dependabot[bot] Jun 8, 2026
1cb8058
chore: bump org.apache.commons:commons-exec from 1.5.0 to 1.6.0 (#2462)
dependabot[bot] Jun 8, 2026
ba5f373
chore: bump devops-infra/action-commit-push from 1.3.3 to 1.5.0 (#2456)
dependabot[bot] Jun 8, 2026
5738ddc
chore: bump com.auth0:jwks-rsa from 0.23.0 to 0.24.1 (#2463)
dependabot[bot] Jun 8, 2026
6514586
Upgrade and fix JWT lessons (#2431)
agrevster Jun 14, 2026
224dddf
Expanded HTTP Basics lesson (#2423)
agrevster Jun 18, 2026
7533e97
springboot 4.1.0 migration (#2468)
zubcevic Jun 20, 2026
e455b9d
Fixed capitalization issue in log bleeding lesson (#2376)
agrevster Jun 22, 2026
4cb3df3
chore: bump com.diffplug.spotless:spotless-maven-plugin (#2472)
dependabot[bot] Jun 22, 2026
8e1a38e
chore: bump org.jruby:jruby from 10.0.0.1 to 10.1.0.0 (#2466)
dependabot[bot] Jun 22, 2026
acbe4ef
chore: bump actions/checkout from 4 to 7 (#2471)
dependabot[bot] Jun 22, 2026
0fec339
move mail from webwolf to webgoat (#2470)
zubcevic Jun 26, 2026
f8b4361
chore: bump com.microsoft.playwright:playwright from 1.60.0 to 1.61.0…
dependabot[bot] Jul 6, 2026
75d475f
chore: bump com.diffplug.spotless:spotless-maven-plugin (#2479)
dependabot[bot] Jul 6, 2026
6aee5bb
chore: bump docker/build-push-action from 7.2.0 to 7.3.0 (#2476)
dependabot[bot] Jul 18, 2026
bc6a584
chore: bump docker/login-action from 4.2.0 to 4.4.0 (#2477)
dependabot[bot] Jul 18, 2026
07ee2e7
chore: bump io.rest-assured:rest-assured from 6.0.0 to 6.0.1 (#2482)
dependabot[bot] Jul 18, 2026
27dea78
chore: bump devops-infra/action-pull-request from 1.3.0 to 1.4.0 (#2481)
dependabot[bot] Jul 18, 2026
3bf4fed
chore: bump docker/setup-qemu-action from 4.1.0 to 4.2.0 (#2478)
dependabot[bot] Jul 18, 2026
5142935
chore: bump com.auth0:java-jwt from 4.5.2 to 4.6.0 (#2483)
dependabot[bot] Jul 18, 2026
cfa7397
feat: add MissingFunctionAC lesson template for access control modules
danishistired Jul 3, 2026
fb42f14
feat: add general support for Spanish language
aolle Dec 9, 2023
fd6a827
add intro messages in Spanish
aolle Dec 10, 2023
5079728
add Spanish language support in authbypass doc
aolle Dec 10, 2023
cd5156d
add Spanish language support in bpassrestrictions doc
aolle Dec 10, 2023
4b5dfd3
add Spanish language support in challenges doc
aolle Dec 10, 2023
4d319c9
add Spanish language support in chromedevtools doc
aolle Dec 10, 2023
8085c1e
chore: bump actions/setup-python from 6 to 7
dependabot[bot] Jul 20, 2026
c60f091
chore: bump org.jruby:jruby from 10.1.0.0 to 10.1.1.0
dependabot[bot] Jul 27, 2026
c141736
chore: bump docker/login-action from 4.4.0 to 4.5.1
dependabot[bot] Jul 27, 2026
25c4a13
chore: bump org.webjars:webjars-locator-lite from 1.1.3 to 1.1.4
dependabot[bot] Aug 2, 2026
59a9897
chore: bump org.jsoup:jsoup from 1.22.2 to 1.23.1 (#2497)
dependabot[bot] Aug 5, 2026
f824ac2
chore: bump com.diffplug.spotless:spotless-maven-plugin (#2496)
dependabot[bot] Aug 5, 2026
4027fe2
chore: bump docker/login-action from 4.5.1 to 4.6.0 (#2495)
dependabot[bot] Aug 7, 2026
c596b72
feat: Add WebGoat administration panel (Fixes #2048) (#2498)
sahitya0xsingh Aug 8, 2026
14c7c58
Add employee search
kciesielski Aug 12, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout git repository
uses: actions/checkout@v4.1.6
uses: actions/checkout@v7
- name: Setup python
uses: actions/setup-python@v6
uses: actions/setup-python@v7
with:
python-version: "3.9"
- name: Setup Java
Expand All @@ -39,7 +39,7 @@ jobs:
os: [ windows-latest, ubuntu-latest, macos-15-intel ]
max-parallel: 1
steps:
- uses: actions/checkout@v4.1.6
- uses: actions/checkout@v7
- name: Set up JDK
uses: ./.github/actions/java-setup
with:
Expand Down
20 changes: 10 additions & 10 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
environment:
name: release
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v7

- name: Set up JDK
uses: ./.github/actions/java-setup
Expand All @@ -31,7 +31,7 @@ jobs:
mvn --no-transfer-progress install -DskipTests

- name: "Create release"
uses: softprops/action-gh-release@v1
uses: softprops/action-gh-release@v3
with:
draft: false
files: |
Expand Down Expand Up @@ -65,21 +65,21 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: "Set up QEMU"
uses: docker/setup-qemu-action@v3.6.0
uses: docker/setup-qemu-action@v4.2.0
with:
platforms: all

- name: "Set up Docker Buildx"
uses: docker/setup-buildx-action@v3
uses: docker/setup-buildx-action@v4

- name: "Login to dockerhub"
uses: docker/login-action@v3.6.0
uses: docker/login-action@v4.6.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: "Build and push WebGoat"
uses: docker/build-push-action@v6.18.0
uses: docker/build-push-action@v7.3.0
with:
context: ./
file: ./Dockerfile
Expand All @@ -92,7 +92,7 @@ jobs:
webgoat_version=${{ env.WEBGOAT_MAVEN_VERSION }}

- name: "Build and push WebGoat desktop"
uses: docker/build-push-action@v6.18.0
uses: docker/build-push-action@v7.3.0
with:
context: ./
file: ./Dockerfile_desktop
Expand All @@ -109,7 +109,7 @@ jobs:
needs: [ release ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v7
with:
fetch-depth: 0

Expand All @@ -123,15 +123,15 @@ jobs:
mvn build-helper:parse-version versions:set -DnewVersion=\${parsedVersion.majorVersion}.\${parsedVersion.minorVersion}-SNAPSHOT versions:commit

- name: Push the changes to new branch
uses: devops-infra/action-commit-push@v0.11.4
uses: devops-infra/action-commit-push@v1.5.0
with:
github_token: "${{ secrets.GITHUB_TOKEN }}"
add_timestamp: true
commit_message: "Updating to the new development version"
force: false

- name: Create PR
uses: devops-infra/action-pull-request@v1.0.2
uses: devops-infra/action-pull-request@v1.4.0
with:
github_token: "${{ secrets.GITHUB_TOKEN }}"
title: ${{ github.event.commits[0].message }}
Expand Down
18 changes: 8 additions & 10 deletions Dockerfile_desktop
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Builder stage to download OWASP ZAP once per version
FROM alpine:3.22 AS zap
ARG ZAP_VERSION=2.16.1
FROM alpine:3.24.1 AS zap
ARG ZAP_VERSION=2.17.0
RUN apk add --no-cache curl tar \
&& set -eux; \
curl -sSL "https://github.com/zaproxy/zaproxy/releases/download/v${ZAP_VERSION}/ZAP_${ZAP_VERSION}_Linux.tar.gz" -o /tmp/zap.tgz; \
Expand All @@ -9,9 +9,9 @@ RUN apk add --no-cache curl tar \
rm -f /tmp/zap.tgz

# Builder stage to fetch a JRE suited for the target architecture
FROM alpine:3.22 AS jre
ARG JAVA_MAJOR=23
ARG JAVA_FULL=23.0.1+11
FROM alpine:3.24.1 AS jre
ARG JAVA_MAJOR=25
ARG JAVA_FULL=25.0.3.0
ARG TARGETARCH
RUN apk add --no-cache curl tar \
&& set -eux; \
Expand All @@ -22,19 +22,17 @@ RUN apk add --no-cache curl tar \
esac; \
JAVA_ENC="${JAVA_FULL//+/%2B}"; \
JAVA_FILE="${JAVA_FULL//+/_}"; \
curl -sSL "https://github.com/adoptium/temurin${JAVA_MAJOR}-binaries/releases/download/jdk-${JAVA_ENC}/OpenJDK${JAVA_MAJOR}U-jre_${ARCH}_linux_hotspot_${JAVA_FILE}.tar.gz" -o /tmp/java.tgz; \
curl -sSL "https://github.com/AdoptOpenJDK/semeru${JAVA_MAJOR}-binaries/releases/download/jdk-${JAVA_ENC}/ibm-semeru-open-jre_${ARCH}_linux_${JAVA_ENC}.tar.gz" -o /tmp/java.tgz; \
mkdir -p /jre; \
tar -xzf /tmp/java.tgz -C /jre --strip-components=1; \
rm -f /tmp/java.tgz

# Final runtime image
FROM lscr.io/linuxserver/webtop:ubuntu-xfce
FROM lscr.io/linuxserver/webtop:ubuntu-kde
LABEL name="WebGoat: A deliberately insecure Web Application"
LABEL maintainer="WebGoat team"

ARG ZAP_VERSION=2.16.1
ARG JAVA_MAJOR=23
ARG JAVA_FULL=23.0.1+11
ARG ZAP_VERSION=2.17.0
ENV ZAP_VERSION=${ZAP_VERSION} \
JAVA_HOME=/config/java-jdk \
PATH="${PATH}:/config/java-jdk/bin" \
Expand Down
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,8 @@ git checkout <<branch_name>>
# On Windows:
./mvnw.cmd clean install

If you have ran WebGoat before, you should first run mvn clean -Pcleanall to clean up files from your temp and home directories which could fail the tests due to changes in lessons!

# Using docker or podman, you can than build the container locally
docker build -f Dockerfile . -t webgoat/webgoat
```
Expand Down
Loading
Loading