Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
143 commits
Select commit Hold shift + click to select a range
67f8bc7
Add detector for Redis CVE-2022-0543 vulnerability
shpei1963 Mar 7, 2023
0494691
Merge branch 'google:master' into master
shpei1963 Mar 7, 2023
5e84fdc
Move liblua to a static list and reformat code
shpei1963 Mar 8, 2023
b8fcf5c
Merge branch 'master' of https://github.com/shpei1963/tsunami-securit…
shpei1963 Mar 8, 2023
51dde50
v0.1
am0o0 Apr 19, 2023
fdcba8d
Added CVE-2023-26360 Adobe ColdFusion
jimmy-ly00 Apr 29, 2024
852fcfe
slurm exposed rest api detector: first commit
lanced00m Jun 5, 2024
bcd35c2
Initiating the integration of the Argo CD weak credential tester plugin.
JamesFoxxx Jun 13, 2024
6d2fc8f
Add CVE-2024-2928 Detector
frkngksl Sep 11, 2024
a06d5e2
Update Cve20242928VulnDetector.java
frkngksl Sep 30, 2024
66305af
Merge branch 'master' into argocd-weak-credential-tester
JamesFoxxx Oct 11, 2024
fae65a9
resolve confilicts and update the branch to master
JamesFoxxx Oct 11, 2024
1d5085f
resolve confilicts and update the branch to master
JamesFoxxx Oct 11, 2024
226dad8
add redirect for 307 status code when redirecting from http to https …
JamesFoxxx Oct 11, 2024
2e90a0d
chores
JamesFoxxx Oct 11, 2024
100682f
remove imports which we don't need anymore
JamesFoxxx Oct 16, 2024
190a4ca
remove imports which we don't need anymore
JamesFoxxx Oct 16, 2024
db81edc
remove "nodes" field as this is not mandatory and it can cause errors…
lanced00m Nov 5, 2024
5ddb090
Update community/detectors/slurm_exposed_rest_api/build.gradle
lanced00m Nov 27, 2024
b98be29
Update community/detectors/slurm_exposed_rest_api/build.gradle
lanced00m Nov 27, 2024
1af6543
Update community/detectors/slurm_exposed_rest_api/src/main/java/com/g…
lanced00m Nov 27, 2024
3a4be12
Update community/detectors/slurm_exposed_rest_api/src/main/java/com/g…
lanced00m Nov 27, 2024
a54982c
Update community/detectors/slurm_exposed_rest_api/src/test/java/com/g…
lanced00m Nov 27, 2024
b381bba
Update community/detectors/slurm_exposed_rest_api/src/test/java/com/g…
lanced00m Nov 27, 2024
b2ce981
Update community/detectors/slurm_exposed_rest_api/src/test/java/com/g…
lanced00m Nov 27, 2024
81fdbee
Update community/detectors/slurm_exposed_rest_api/src/test/java/com/g…
lanced00m Nov 27, 2024
573fd5f
Update community/detectors/slurm_exposed_rest_api/src/test/java/com/g…
lanced00m Nov 27, 2024
3e63233
Update community/detectors/slurm_exposed_rest_api/src/main/java/com/g…
lanced00m Nov 27, 2024
fc234f2
Update community/detectors/slurm_exposed_rest_api/src/main/java/com/g…
lanced00m Nov 27, 2024
3e9742a
clarify README.md
lanced00m Nov 27, 2024
e9f1d18
complete some previous commits
lanced00m Nov 27, 2024
f3b7094
fix description and some other issues mentioned in reviews
lanced00m Nov 27, 2024
d8b66f2
add sleepUninterruptibly and some minor fixes
lanced00m Nov 27, 2024
f6402b5
change the order of first http request(something like fingerprint pha…
lanced00m Nov 27, 2024
6f27ab4
perform issues of second review
lanced00m Nov 28, 2024
43f1d1b
Merge branch 'google:master' into amammad-roxy-wi
am0o0 Nov 29, 2024
50be79b
update gradle
am0o0 Nov 29, 2024
0dab20d
update httpClient
am0o0 Nov 29, 2024
34f7704
url encode the payload
am0o0 Nov 30, 2024
76d7f7c
Update community/detectors/adobe_coldfusion_cve_2023_26360/src/main/j…
jimmy-ly00 Dec 6, 2024
24e6a3a
use fingerprint filter
am0o0 Dec 9, 2024
3e12528
format the code style, and update tests
am0o0 Dec 9, 2024
b612f7a
remove withcallback method, simplified control flow, unnecessary http…
am0o0 Dec 10, 2024
73705ba
merge two methods
am0o0 Dec 11, 2024
fa00fec
add sleepUninterruptibly
am0o0 Dec 12, 2024
3f65b03
some formatting issues
am0o0 Dec 13, 2024
72eb19f
Add YAML and BIN files for LocalAI RCE
frkngksl Dec 15, 2024
db4d2ce
Enforce Scope Check in Fingerprinters
lokiuox Feb 6, 2025
bab14ed
improve: rewrite detector
giacomo-doyensec Feb 7, 2025
ca8d2b9
Initial PoC
lokiuox Feb 7, 2025
4fb0ae9
Shorter delays
lokiuox Feb 7, 2025
42c4d61
Optimized exploit
lokiuox Feb 7, 2025
754a029
Redirect logs to /dev/null
lokiuox Feb 7, 2025
fff436b
Fixed warnings
lokiuox Feb 7, 2025
bff4c1f
Fixed tests
lokiuox Feb 7, 2025
043c81d
Fix style
lokiuox Feb 7, 2025
5fb4bb5
Use generateNoCallback
lokiuox Feb 7, 2025
7a36d0d
Add a new type of action for templated plugins: Utility. With the `sl…
tooryx Feb 7, 2025
8e0eadb
Copybara import of the project:
OccamsXor Feb 10, 2025
d3bfa79
Merge pull request #590 from doyensec:fingerprint_scope_check_fix
copybara-github Feb 10, 2025
41a2504
fix tests
am0o0 Feb 10, 2025
c71e9b7
sort imports
am0o0 Feb 11, 2025
64c5541
Rephrase confusing error message.
tooryx Feb 11, 2025
817c341
Add support for workflows using the callback server in unit tests.
tooryx Feb 11, 2025
9989eeb
remove wrapper for the nodered exposed UI detector as it will be rewr…
tooryx Feb 11, 2025
aff7b12
Copybara import of the project:
VickyTheViking Feb 11, 2025
5374727
Merge pull request #592 from doyensec:CVE-2022-0543
copybara-github Feb 11, 2025
26343ea
Merge pull request #314 from am0o0:amammad-roxy-wi
copybara-github Feb 12, 2025
617b87a
Merge pull request #535 from frkngksl:mlflowLFI
copybara-github Feb 12, 2025
af6ff8f
Merge pull request #496 from lanced00m:slurm
copybara-github Feb 12, 2025
3173e7c
Merge pull request #475 from jimmy-ly00:master
copybara-github Feb 12, 2025
1ed6cb3
add wrappers for newly added detectors
tooryx Feb 12, 2025
7285492
temporarily remove wrappers for the slurm_exopsed_api detector until …
tooryx Feb 12, 2025
6e1a001
Merge pull request #502 from JamesFoxxx:argocd-weak-credential-tester
copybara-github Feb 12, 2025
6fb72e1
Introduce clean-ups for actions in the templated language.
tooryx Feb 12, 2025
c7e5492
Translate Node-RED exposed UI detector to templated plugin syntax.
Feb 12, 2025
ae3ef1b
Fix guice key collision by making slurm oobSleepDuration annotation u…
maoning Feb 12, 2025
6c6ede2
Add gradle dependency for `Nullable` in the Slurm exposed rest API de…
tooryx Feb 13, 2025
157d61e
Revert "temporarily remove wrappers for the slurm_exopsed_api detecto…
tooryx Feb 13, 2025
a7c8735
remove gradle wrappers as the plugin is being rewritten using the new…
tooryx Feb 13, 2025
d60dfb9
Rewrite the `ApacheSparksExposedWebuiVulnDetector` plugin using the t…
magl0 Feb 13, 2025
8a48950
Fix tests for `Cve202326360Detector`. We need to enqueue as many resp…
tooryx Feb 13, 2025
39d9605
Introduce the `T_UTL_CURRENT_TIMESTAMP_MS` variable. It contains the …
tooryx Feb 14, 2025
3a6c177
Ensure substitution is performed in unit tests and make the environme…
tooryx Feb 14, 2025
db470e9
Clarify the use of the `MockResponse.uri`.
tooryx Feb 17, 2025
3d1a0d6
Merge pull request #571 from frkngksl:payloadHostingForLocalAI
copybara-github Feb 17, 2025
479bbb9
Ensure all URIs in the mock are pre-pended with `/`.
tooryx Feb 19, 2025
b3ace1f
remove gradle wrappers for CVE-2023-6977 as we are transitioning to t…
tooryx Feb 19, 2025
131c8f4
Create the templated detector plugin for CVE-2023-6977.
maoning Feb 19, 2025
e02446c
Fix the imports and reformat the spark fingerprinting example.
tooryx Feb 20, 2025
55d5395
Disable debugging and reformat the `cleanup_actions` for readability …
tooryx Feb 25, 2025
3c99ff6
remove graddle wrappers for cve20236018 as it will be converted to th…
tooryx Feb 28, 2025
3f40d26
Create templated plugin implementation of CVE-2023-6018 and remove ja…
Feb 28, 2025
e888f76
Introduce an exposed UI detector for ComfyUI. Written by Doyensec.
tooryx Mar 5, 2025
220ebba
add gradle wrappers for ComfyUI exposed interface
tooryx Mar 5, 2025
598da7e
Upgrade `actions/cache` to `v4` in Github workflows.
tooryx Mar 5, 2025
4c67c8d
Normalize existing templated detectors with a leading `/` in the `uri…
tooryx Mar 14, 2025
6d0f9ee
Fix a typo in a few tests as `TSUNAMI_ANY_URI` does not exist.
tooryx Mar 18, 2025
0eef955
Fix most templated plugins as the `severity` field was missing.
tooryx Mar 18, 2025
6bc363e
Rework unit tests for templated plugins.
tooryx Mar 19, 2025
bdba897
add wrappers for the templated plugins
tooryx Apr 8, 2025
a0bd94c
Add a recommendation for the ExposedArgoWorkflow detector.
tooryx Apr 9, 2025
ef591cc
temporarily remove the wrappers for the templated format as it breaks…
tooryx Apr 15, 2025
08eb321
Release Doyensec's detectors for ComfyUI.
tooryx Apr 15, 2025
cb84cf1
add wrappers for ComfyUI detectors
tooryx Apr 16, 2025
ba14a70
Add an identifier for the advisory generated by Doyensec's ComfyUI de…
tooryx Apr 16, 2025
affdf59
Fix the switch case in the utility action runner for external builds.
tooryx May 14, 2025
e91f89c
upgrade wrappers in google/ to version 8.14 of gradle
tooryx May 16, 2025
f51648c
upgrade wrappers for govtech, doyensec and examples to version 8.14 o…
tooryx May 16, 2025
ff08d70
Update dependencies of some plugins to allow them to work with gradle…
tooryx May 16, 2025
5cc813d
Avoid cluttering the output with the full network service information.
tooryx May 19, 2025
723e635
upgrade wrappers for community plugins to version 8.14 of gradle
tooryx May 16, 2025
c7e9fed
Fix the templated plugin system when building with gradle.
tooryx May 19, 2025
3abf454
Bump plugin builds to use Java 21.
tooryx May 19, 2025
bcc1083
add wrappers again for the templated plugins
tooryx May 19, 2025
8fc888b
When it can easily be inferred, add the `related_id` field to the exi…
tooryx May 22, 2025
b5c0369
When it can easily be inferred, add the `related_id` field to the exi…
tooryx May 22, 2025
99b24a0
remove wrappers for CVE-2024-6387 (regreSSHion) as the detector's rel…
tooryx May 22, 2025
8aacef0
Remove the `CVE-2024-6387` (regreSSHion) plugin completely as the rel…
tooryx May 23, 2025
1a5971c
Add workflow to build templated plugins.
tooryx May 28, 2025
a3eae09
Ensure all workflows can be triggered manually.
tooryx May 28, 2025
2954770
Change the working directory for GH action workflow building template…
tooryx May 28, 2025
849286d
Avoid rate limiting by passing the default token.
tooryx May 28, 2025
70569a1
Add a `go.mod` to Tsunami plugins so that we can use it in Golang too…
tooryx Jun 3, 2025
4addf96
Update the proto definition to support Golang generation.
tooryx Jun 4, 2025
84779cd
Manually generate the golang code for the templated plugin proto defi…
tooryx Jun 4, 2025
ba2d117
Add a linter for the templated language plugins.
tooryx Jun 5, 2025
1335488
Add automation to verify templated plugins on push.
tooryx Jun 5, 2025
588aae8
Update doyensec, facebook, govtech and templated plugins to implement…
tooryx Jun 13, 2025
b402226
Update examples to implement `getAdvisories()`.
tooryx Jun 13, 2025
ec16e06
Update Google plugins to implement `getAdvisories()`.
tooryx Jun 13, 2025
9c9a7fd
Update community plugins to implement `getAdvisories()`.
tooryx Jun 13, 2025
ba5b508
Ensure that `getAdvisories()` does not trigger a null pointer excepti…
tooryx Jun 16, 2025
72d6218
Add the related CVE for detector `Cve202224112Detector`.
tooryx Jun 16, 2025
4a33128
Initial PoC
lokiuox Feb 7, 2025
502c92e
Shorter delays
lokiuox Feb 7, 2025
e2522a0
Optimized exploit
lokiuox Feb 7, 2025
b78a1af
Redirect logs to /dev/null
lokiuox Feb 7, 2025
b62c674
Fixed warnings
lokiuox Feb 7, 2025
6b79039
Fixed tests
lokiuox Feb 7, 2025
8560b2d
Fix style
lokiuox Feb 7, 2025
0e587dc
Use generateNoCallback
lokiuox Feb 7, 2025
b21eb9b
Merge branch 'spring4shell_detection' of github.com:doyensec/tsunami-…
savio-doyensec Jun 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 3 additions & 2 deletions .github/workflows/community-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,14 @@ on:
pull_request:
paths:
- 'community/**'
workflow_dispatch:

jobs:
build:
strategy:
matrix:
os: [ ubuntu-latest, macos-latest ]
java: [ 11 ]
java: [ 21 ]
runs-on: ${{ matrix.os }}
name: 'Build Community plugins on ${{ matrix.os }} using Java ${{ matrix.java }}'
steps:
Expand All @@ -24,7 +25,7 @@ jobs:
with:
java-version: ${{ matrix.java }}
- name: 'Cache Gradle resources'
uses: actions/cache@v2
uses: actions/cache@v4
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
Expand Down
5 changes: 3 additions & 2 deletions .github/workflows/doyensec-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,14 @@ on:
pull_request:
paths:
- 'doyensec/**'
workflow_dispatch:

jobs:
build:
strategy:
matrix:
os: [ ubuntu-latest, macos-latest ]
java: [ 11 ]
java: [ 21 ]
runs-on: ${{ matrix.os }}
name: 'Build doyensec plugins on ${{ matrix.os }} using Java ${{ matrix.java }}'
steps:
Expand All @@ -24,7 +25,7 @@ jobs:
with:
java-version: ${{ matrix.java }}
- name: 'Cache Gradle resources'
uses: actions/cache@v2
uses: actions/cache@v4
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
Expand Down
5 changes: 3 additions & 2 deletions .github/workflows/examples-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,14 @@ on:
pull_request:
paths:
- 'examples/**'
workflow_dispatch:

jobs:
build:
strategy:
matrix:
os: [ ubuntu-latest, macos-latest ]
java: [ 11 ]
java: [ 21 ]
runs-on: ${{ matrix.os }}
name: 'Build example plugins on ${{ matrix.os }} using Java ${{ matrix.java }}'
steps:
Expand All @@ -24,7 +25,7 @@ jobs:
with:
java-version: ${{ matrix.java }}
- name: 'Cache Gradle resources'
uses: actions/cache@v2
uses: actions/cache@v4
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
Expand Down
5 changes: 3 additions & 2 deletions .github/workflows/google-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,14 @@ on:
pull_request:
paths:
- 'google/**'
workflow_dispatch:

jobs:
build:
strategy:
matrix:
os: [ ubuntu-latest, macos-latest ]
java: [ 11 ]
java: [ 21 ]
runs-on: ${{ matrix.os }}
name: 'Build Google plugins on ${{ matrix.os }} using Java ${{ matrix.java }}'
steps:
Expand All @@ -24,7 +25,7 @@ jobs:
with:
java-version: ${{ matrix.java }}
- name: 'Cache Gradle resources'
uses: actions/cache@v2
uses: actions/cache@v4
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
Expand Down
5 changes: 3 additions & 2 deletions .github/workflows/govtech-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,14 @@ on:
pull_request:
paths:
- 'govtech/**'
workflow_dispatch:

jobs:
build:
strategy:
matrix:
os: [ ubuntu-latest, macos-latest ]
java: [ 11 ]
java: [ 21 ]
runs-on: ${{ matrix.os }}
name: 'Build GovTech plugins on ${{ matrix.os }} using Java ${{ matrix.java }}'
steps:
Expand All @@ -24,7 +25,7 @@ jobs:
with:
java-version: ${{ matrix.java }}
- name: 'Cache Gradle resources'
uses: actions/cache@v2
uses: actions/cache@v4
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
Expand Down
40 changes: 40 additions & 0 deletions .github/workflows/templated-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: templated-plugins-build

on:
push:
paths:
- 'templated/**'
pull_request:
paths:
- 'templated/**'
workflow_dispatch:

jobs:
build:
strategy:
matrix:
os: [ ubuntu-latest, macos-latest ]
java: [ 21 ]
runs-on: ${{ matrix.os }}
name: 'Build plugins on ${{ matrix.os }} using Java ${{ matrix.java }}'
steps:
- name: 'Check out repository'
uses: actions/checkout@v2
- name: 'Set up JDK ${{ matrix.java }}'
uses: actions/setup-java@v1
with:
java-version: ${{ matrix.java }}
- name: 'Ensure protoc is installed'
uses: arduino/setup-protoc@v3
with:
version: "25.5"
repo-token: ${{ secrets.GITHUB_TOKEN }}
- name: 'Cache Gradle resources'
uses: actions/cache@v4
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
restore-keys: ${{ runner.os }}-gradle
- name: 'Build plugins'
run: ./gradlew build
working-directory: templated/templateddetector/
25 changes: 25 additions & 0 deletions .github/workflows/templated-lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Ensures templated plugins are linted correctly.
name: templated-plugins-linter

on:
push:
paths:
- 'templated/**'
pull_request:
paths:
- 'templated/**'
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest
name: 'Verify templated plugins'
steps:
- uses: actions/checkout@v2
- uses: actions/setup-go@v5
with:
go-version: 1.22
- run: go install github.com/google/tsunami-security-scanner-plugins/templated/utils/linter@latest
- run: |
find templated/templateddetector/ -type f \( -name '*.textproto' -a ! -name '*_test.textproto' -a ! -path '*/plugins/examples/*' \) \
| xargs -I{} linter {}
20 changes: 20 additions & 0 deletions community/detectors/adobe_coldfusion_cve_2023_26360/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# CVE-2023-26360 Detector

Description: Adobe ColdFusion versions 2018 Update 15 (and earlier) and 2021
Update 5 (and earlier) are affected by an Improper Access Control vulnerability
that could result in unauthenticated file read and arbitrary code execution in
the context of the current user. Exploitation of this issue does not require
user interaction.

- https://nvd.nist.gov/vuln/detail/CVE-2023-26360
- https://helpx.adobe.com/security/products/coldfusion/apsb23-25.html

## Build jar file for this plugin

Using `gradlew`:

```shell
./gradlew jar
```

Tsunami identifiable jar file is located at `build/libs` directory.
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ plugins {
id 'java-library'
}

description = 'Tsunami MLflow LFI/RFI (CVE-2023-6977) VulnDetector plugin.'
description = 'Tsunami CVE-2023-26360 VulnDetector plugin.'
group 'com.google.tsunami'
version '0.0.2-SNAPSHOT'
version '0.0.1-SNAPSHOT'


repositories {
Expand Down Expand Up @@ -41,6 +41,7 @@ java {
showExceptions true
showCauses true
showStackTraces true
showStandardStreams true //ADDED
}
maxHeapSize = '1500m'
}
Expand All @@ -58,7 +59,6 @@ dependencies {
implementation "com.google.tsunami:tsunami-common:${tsunamiVersion}"
implementation "com.google.tsunami:tsunami-plugin:${tsunamiVersion}"
implementation "com.google.tsunami:tsunami-proto:${tsunamiVersion}"
implementation 'com.google.googlejavaformat:google-java-format:1.13.0'

testImplementation "junit:junit:${junitVersion}"
testImplementation "org.mockito:mockito-core:${mockitoVersion}"
Expand Down
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.0-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rootProject.name = 'CVE-2023-26360'
Loading