CRIT
MINED022
[MINED022] C Strcpy: strcpy/strcat dont bounds-check; use strncpy or snprintf.
ggml/src/ggml-hexagon/htp/worker-pool.c:93
CRIT
MINED022
[MINED022] C Strcpy: strcpy/strcat dont bounds-check; use strncpy or snprintf.
ggml/src/ggml-hexagon/htp-opnode.h:112
CRIT
SEC084
[SEC084] JS: require() with non-literal: require(<variable>) loads arbitrary modules — eq…
examples/whisper.android/app/src/main/j…:39
CRIT
SEC084
[SEC084] JS: require() with non-literal: require(<variable>) loads arbitrary modules — eq…
examples/addon.node/vad-example.js:2
CRIT
SEC084
[SEC084] JS: require() with non-literal: require(<variable>) loads arbitrary modules — eq…
examples/addon.node/index.js:7
CRIT
MINED116
[MINED116] Workflow uses `secrets.HF_TOKEN` on a `pull_request` trigger: This workflow tr…
.github/workflows/build-quantize.yml:36
CRIT
MINED116
[MINED116] Workflow uses `secrets.HF_TOKEN` on a `pull_request` trigger: This workflow tr…
.github/workflows/build-cpu.yml:171
CRIT
MINED116
[MINED116] Workflow uses `secrets.HF_TOKEN` on a `pull_request` trigger: This workflow tr…
.github/workflows/build-cpu.yml:143
CRIT
MINED116
[MINED116] Workflow uses `secrets.HF_TOKEN` on a `pull_request` trigger: This workflow tr…
.github/workflows/build-cpu.yml:115
CRIT
MINED116
[MINED116] Workflow uses `secrets.HF_TOKEN` on a `pull_request` trigger: This workflow tr…
.github/workflows/build-cpu.yml:87
CRIT
MINED116
[MINED116] Workflow uses `secrets.HF_TOKEN` on a `pull_request` trigger: This workflow tr…
.github/workflows/build-cpu.yml:59
CRIT
MINED116
[MINED116] Workflow uses `secrets.HF_TOKEN` on a `pull_request` trigger: This workflow tr…
.github/workflows/examples.yml:46
HIGH
MINED108
[MINED108] `self.send_header` used but never assigned in __init__: Method `end_headers` o…
examples/server.py:99
HIGH
MINED108
[MINED108] `self.send_header` used but never assigned in __init__: Method `end_headers` o…
examples/server.py:98
HIGH
MINED108
[MINED108] `self.send_header` used but never assigned in __init__: Method `end_headers` o…
examples/server.py:97
HIGH
MINED108
[MINED108] `self.path` used but never assigned in __init__: Method `do_GET` of class `Cus…
examples/server.py:68
HIGH
MINED108
[MINED108] `self.wfile` used but never assigned in __init__: Method `do_GET` of class `Cu…
examples/server.py:88
HIGH
MINED108
[MINED108] `self.path` used but never assigned in __init__: Method `do_GET` of class `Cus…
examples/server.py:63
HIGH
MINED108
[MINED108] `self.path` used but never assigned in __init__: Method `do_GET` of class `Cus…
examples/server.py:57
HIGH
MINED108
[MINED108] `self.end_headers` used but never assigned in __init__: Method `do_GET` of cla…
examples/server.py:86
HIGH
MINED108
[MINED108] `self.send_header` used but never assigned in __init__: Method `do_GET` of cla…
examples/server.py:85
HIGH
MINED108
[MINED108] `self.send_response` used but never assigned in __init__: Method `do_GET` of c…
examples/server.py:84
HIGH
MINED108
[MINED108] `self.path` used but never assigned in __init__: Method `do_GET` of class `Cus…
examples/server.py:77
HIGH
MINED108
[MINED108] `self.path` used but never assigned in __init__: Method `do_GET` of class `Cus…
examples/server.py:73
HIGH
MINED108
[MINED108] `self.path` used but never assigned in __init__: Method `do_GET` of class `Cus…
examples/server.py:49
HIGH
MINED108
[MINED108] `self.path` used but never assigned in __init__: Method `do_GET` of class `Cus…
examples/server.py:44
HIGH
MINED108
[MINED108] `self.end_headers` used but never assigned in __init__: Method `do_GET` of cla…
examples/server.py:35
HIGH
MINED108
[MINED108] `self.send_header` used but never assigned in __init__: Method `do_GET` of cla…
examples/server.py:34
HIGH
MINED108
[MINED108] `self.send_response` used but never assigned in __init__: Method `do_GET` of c…
examples/server.py:33
HIGH
MINED108
[MINED108] `self.path` used but never assigned in __init__: Method `do_GET` of class `Cus…
examples/server.py:72
HIGH
MINED108
[MINED108] `self.path` used but never assigned in __init__: Method `do_GET` of class `Cus…
examples/server.py:30
HIGH
MINED108
[MINED108] `self.path` used but never assigned in __init__: Method `do_GET` of class `Cus…
examples/server.py:28
HIGH
MINED108
[MINED108] `self.end_headers` used but never assigned in __init__: Method `do_GET` of cla…
examples/server.py:24
HIGH
MINED108
[MINED108] `self.send_header` used but never assigned in __init__: Method `do_GET` of cla…
examples/server.py:23
HIGH
MINED108
[MINED108] `self.send_response` used but never assigned in __init__: Method `do_GET` of c…
examples/server.py:22
HIGH
MINED108
[MINED108] `self.path` used but never assigned in __init__: Method `do_GET` of class `Cus…
examples/server.py:80
HIGH
MINED108
[MINED108] `self.path` used but never assigned in __init__: Method `do_GET` of class `Cus…
examples/server.py:21
HIGH
SEC103
[SEC103] LDAP injection — non-constant search filter: User input concatenated into an LDA…
scripts/bench.py:116
HIGH
SEC128
[SEC128] Async function without await — fire-and-forget Promise (AI mistake): Async call …
scripts/bench.py:224
HIGH
SEC128
[SEC128] Async function without await — fire-and-forget Promise (AI mistake): Async call …
models/convert-h5-to-coreml.py:75
HIGH
MINED021
[MINED021] Path Traversal Os Join: os.path.join(user_dir, filename) where filename can co…
ggml/src/ggml-webgpu/wgsl-shaders/embed…:15
HIGH
SEC114
[SEC114] path.join / Path() on user-controlled segment without containment check: filepat…
ggml/src/ggml-webgpu/wgsl-shaders/embed…:15
HIGH
MINED011
[MINED011] Scala Get On Option: Option.get throws NoSuchElementException on None. Use get…
ggml/src/ggml-cuda/mmf.cu:87
HIGH
MINED011
[MINED011] Scala Get On Option: Option.get throws NoSuchElementException on None. Use get…
ggml/src/ggml-cuda/cumsum.cu:209
HIGH
MINED011
[MINED011] Scala Get On Option: Option.get throws NoSuchElementException on None. Use get…
ggml/src/ggml-cuda/argsort.cu:41
HIGH
MINED029
[MINED029] Kotlin Null Bang: x!! throws NullPointerException if x is null. Bypasses Kotli…
examples/whisper.android/app/src/main/j…:113
HIGH
MINED006
[MINED006] Overcatch Baseexception: except BaseException: ... — prevents Ctrl+C and Syste…
examples/server.py:114
HIGH
SEC100
[SEC100] CORS permissive Access-Control-Allow-Origin: *: Permissive CORS policy (`*` orig…
examples/server.py:99
HIGH
MINED034
[MINED034] Python Subprocess Shell True: subprocess(..., shell=True) enables command inje…
scripts/bench.py:153
HIGH
MINED034
[MINED034] Python Subprocess Shell True: subprocess(..., shell=True) enables command inje…
examples/python/whisper_processor.py:27
HIGH
MINED017
[MINED017] C System Call: system() invokes shell. command injection if any arg is dynamic.
examples/common-whisper.cpp:237
HIGH
SEC029
[SEC029] Server-Side Request Forgery (SSRF) — outbound HTTP from user input: Outbound HTT…
examples/whisper.swiftui/whisper.swiftu…:18
HIGH
SEC029
[SEC029] Server-Side Request Forgery (SSRF) — outbound HTTP from user input: Outbound HTT…
bindings/javascript/libwhisper.worker.js:1
HIGH
SEC029
[SEC029] Server-Side Request Forgery (SSRF) — outbound HTTP from user input: Outbound HTT…
bindings/go/examples/go-model-download/…:241
HIGH
COMP001
[COMP001] High cognitive complexity: Function `convert_silero_vad` has cognitive complexi…
models/convert-silero-vad-to-ggml.py:8
HIGH
COMP001
[COMP001] High cognitive complexity: Function `do_GET` has cognitive complexity 31 (Sonar…
examples/server.py:19
HIGH
MINED134
[MINED134] Binary file `examples/whisper.android/gradle/wrapper/gradle-wrapper.jar` commi…
examples/whisper.android/gradle/wrapper…:1
HIGH
MINED134
[MINED134] Binary file `examples/whisper.android.java/gradle/wrapper/gradle-wrapper.jar` …
examples/whisper.android.java/gradle/wr…:1
HIGH
MINED134
[MINED134] Binary file `bindings/java/gradle/wrapper/gradle-wrapper.jar` committed in sou…
bindings/java/gradle/wrapper/gradle-wra…:1
HIGH
MINED115
[MINED115] Action `actions/deploy-pages` pinned to mutable ref `@v4`: `uses: actions/depl…
.github/workflows/deploy-examples-wasm.…:97
HIGH
MINED115
[MINED115] Action `actions/upload-pages-artifact` pinned to mutable ref `@v4`: `uses: act…
.github/workflows/deploy-examples-wasm.…:91
HIGH
MINED115
[MINED115] Action `actions/configure-pages` pinned to mutable ref `@v5`: `uses: actions/c…
.github/workflows/deploy-examples-wasm.…:28
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout…
.github/workflows/deploy-examples-wasm.…:25
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout…
.github/workflows/build-vad.yml:32
HIGH
MINED115
[MINED115] Action `ggml-org/ccache-action` pinned to mutable ref `@v1.2.21`: `uses: ggml-…
.github/workflows/build-gcc.yml:137
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout…
.github/workflows/build-gcc.yml:131
HIGH
MINED115
[MINED115] Action `ggml-org/ccache-action` pinned to mutable ref `@v1.2.21`: `uses: ggml-…
.github/workflows/build-gcc.yml:96
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout…
.github/workflows/build-gcc.yml:93
HIGH
MINED115
[MINED115] Action `ggml-org/ccache-action` pinned to mutable ref `@v1.2.21`: `uses: ggml-…
.github/workflows/build-gcc.yml:54
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout…
.github/workflows/build-gcc.yml:48
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout…
.github/workflows/build-coreml.yml:34
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout…
.github/workflows/build-self-hosted.yml:110
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout…
.github/workflows/build-self-hosted.yml:97
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout…
.github/workflows/build-self-hosted.yml:83
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout…
.github/workflows/build-self-hosted.yml:69
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout…
.github/workflows/build-self-hosted.yml:55
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout…
.github/workflows/bindings-go.yml:19
HIGH
MINED115
[MINED115] Action `actions/setup-go` pinned to mutable ref `@v6`: `uses: actions/setup-go…
.github/workflows/bindings-go.yml:16
HIGH
MINED115
[MINED115] Action `actions/setup-java` pinned to mutable ref `@v5`: `uses: actions/setup-…
.github/workflows/build-android.yml:65
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout…
.github/workflows/build-android.yml:62
HIGH
MINED115
[MINED115] Action `actions/setup-java` pinned to mutable ref `@v5`: `uses: actions/setup-…
.github/workflows/build-android.yml:38
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout…
.github/workflows/build-android.yml:33
HIGH
MINED115
[MINED115] Action `ggml-org/ccache-action` pinned to mutable ref `@v1.2.21`: `uses: ggml-…
.github/workflows/build-macos.yml:50
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout…
.github/workflows/build-macos.yml:47
HIGH
MINED118
[MINED118] Dockerfile FROM `ubuntu:24.04` not pinned by digest: `FROM ubuntu:24.04` resol…
.devops/main-vulkan.Dockerfile:10
HIGH
MINED118
[MINED118] Dockerfile FROM `ubuntu:24.04` not pinned by digest: `FROM ubuntu:24.04` resol…
.devops/main-vulkan.Dockerfile:1
HIGH
MINED118
[MINED118] Dockerfile FROM `intel/deep-learning-essentials (no tag)` not pinned by digest…
.devops/main-intel.Dockerfile:18
HIGH
MINED118
[MINED118] Dockerfile FROM `intel/deep-learning-essentials (no tag)` not pinned by digest…
.devops/main-intel.Dockerfile:2
HIGH
MINED118
[MINED118] Dockerfile FROM `ubuntu:22.04` not pinned by digest: `FROM ubuntu:22.04` resol…
.devops/main.Dockerfile:10
HIGH
MINED118
[MINED118] Dockerfile FROM `ubuntu:22.04` not pinned by digest: `FROM ubuntu:22.04` resol…
.devops/main.Dockerfile:1
HIGH
SEC020
[SEC020] Secret Printed to Logs: Debug or diagnostic code appears to print a credential-b…
bindings/go/examples/go-whisper/process…:120
HIGH
SEC013
[SEC013] Path Traversal — User Input in File Path: User-controlled input used in file pat…
ggml/src/ggml-webgpu/wgsl-shaders/embed…:15
HIGH
SEC013
[SEC013] Path Traversal — User Input in File Path: User-controlled input used in file pat…
examples/whisper.android/app/src/main/j…:218
MED
MINED111
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that r…
examples/python/whisper_processor.py:48
MED
MINED111
[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that r…
models/convert-pt-to-ggml.py:206
MED
SEC011
[SEC011] Unsafe PyTorch Model Loading: torch.load() uses pickle internally and can execut…
models/convert-pt-to-ggml.py:205
MED
SEC112
[SEC112] Go html/template bypass — text/template used for HTML output, or template.HTML o…
bindings/go/examples/go-whisper/process…:97
MED
MINED124
[MINED124] requirements.txt: `more-itertools` has no version pin: Unpinned pip requiremen…
tests/earnings21/requirements.txt:6
MED
MINED124
[MINED124] requirements.txt: `regex` has no version pin: Unpinned pip requirement means e…
tests/earnings21/requirements.txt:5
MED
MINED124
[MINED124] requirements.txt: `jiwer` has no version pin: Unpinned pip requirement means e…
tests/earnings21/requirements.txt:4
MED
MINED124
[MINED124] requirements.txt: `more-itertools` has no version pin: Unpinned pip requiremen…
tests/librispeech/requirements.txt:6
MED
MINED124
[MINED124] requirements.txt: `regex` has no version pin: Unpinned pip requirement means e…
tests/librispeech/requirements.txt:5
MED
MINED124
[MINED124] requirements.txt: `jiwer` has no version pin: Unpinned pip requirement means e…
tests/librispeech/requirements.txt:4
MED
MINED124
[MINED124] requirements.txt: `ane_transformers` has no version pin: Unpinned pip requirem…
models/requirements-coreml.txt:4
MED
MINED124
[MINED124] requirements.txt: `openai-whisper` has no version pin: Unpinned pip requiremen…
models/requirements-coreml.txt:3
MED
MINED124
[MINED124] requirements.txt: `coremltools` has no version pin: Unpinned pip requirement m…
models/requirements-coreml.txt:2
MED
MINED124
[MINED124] requirements.txt: `torch` has no version pin: Unpinned pip requirement means e…
models/requirements-coreml.txt:1
MED
MINED124
[MINED124] requirements.txt: `openai-whisper` has no version pin: Unpinned pip requiremen…
models/requirements-openvino.txt:2
MED
SEC005
[SEC005] Command Injection Risk: Unsafe shell execution or eval of user input.
scripts/bench.py:153
MED
SEC005
[SEC005] Command Injection Risk: Unsafe shell execution or eval of user input.
examples/python/whisper_processor.py:27
MED
CORE_LARGE_FILES
Average file size is 513 lines (recommend <300)
—
LOW
SEC132
[SEC132] String concat where the language has interpolation (AI style drift): String buil…
examples/whisper.android.java/app/src/m…:39
LOW
SEC132
[SEC132] String concat where the language has interpolation (AI style drift): String buil…
examples/whisper.android.java/app/src/m…:112
LOW
SEC132
[SEC132] String concat where the language has interpolation (AI style drift): String buil…
examples/helpers.js:131
LOW
AIC003
Duplicated implementation block across source files
tests/librispeech/normalizers/english.py:3
LOW
AIC003
Duplicated implementation block across source files
tests/librispeech/normalizers/basic.py:1
LOW
AIC003
Duplicated implementation block across source files
models/convert-pt-to-ggml.py:18
LOW
AIC003
Duplicated implementation block across source files
ggml/src/ggml-zendnn/ggml-zendnn.cpp:307
LOW
AIC003
Duplicated implementation block across source files
ggml/src/ggml-sycl/fattn-vec.hpp:16
LOW
AIC003
Duplicated implementation block across source files
ggml/src/ggml-openvino/openvino/op/glu_…:6
LOW
AIC003
Duplicated implementation block across source files
ggml/src/ggml-hexagon/htp/sum-rows-ops.c:1
LOW
AIC003
Duplicated implementation block across source files
ggml/src/ggml-hexagon/htp/set-rows-ops.c:10
LOW
AIC003
Duplicated implementation block across source files
ggml/src/ggml-hexagon/htp/rope-ops.c:1
LOW
AIC003
Duplicated implementation block across source files
ggml/src/ggml-hexagon/htp/hvx-div.h:186
LOW
AIC002
Source file name looks like an AI patch artifact
ggml/src/ggml-hexagon/htp/hvx-copy.h:1
INFO
MINED080
[MINED080] Cpp Using Namespace Std: using namespace std; pollutes the global namespace.
ggml/src/ggml-sycl/sycl_hw.cpp:3
INFO
MINED077
[MINED077] Python Open No Context: fp = open(path) outside with-block leaks file handles.
models/convert-pt-to-ggml.py:203
INFO
MINED077
[MINED077] Python Open No Context: fp = open(path) outside with-block leaks file handles.
models/convert-h5-to-ggml.py:116
INFO
MINED077
[MINED077] Python Open No Context: fp = open(path) outside with-block leaks file handles.
ggml/src/ggml-opencl/kernels/embed_kern…:14
INFO
MINED075
[MINED075] C Malloc No Check: malloc/calloc/realloc return value used without checking fo…
examples/whisper.objc/whisper.objc/View…:84
INFO
MINED048
[MINED048] Php Error Suppress: @function() suppresses errors silently. Hides real issues.
examples/whisper.objc/whisper.objc/View…:24
INFO
MINED045
[MINED045] Ts Non Null Assertion: x! asserts not null - bypasses null checks - TypeError …
ggml/src/ggml-cuda/mean.cu:41
INFO
MINED045
[MINED045] Ts Non Null Assertion: x! asserts not null - bypasses null checks - TypeError …
ggml/src/ggml-cuda/conv-transpose-1d.cu:25
INFO
MINED045
[MINED045] Ts Non Null Assertion: x! asserts not null - bypasses null checks - TypeError …
examples/whisper.objc/whisper.objc/View…:56
INFO
MINED081
[MINED081] Java Printstacktrace: Should use logger, not stack trace to stderr.
examples/whisper.android.java/app/src/m…:41
INFO
MINED081
[MINED081] Java Printstacktrace: Should use logger, not stack trace to stderr.
examples/whisper.android.java/app/src/m…:53
INFO
MINED081
[MINED081] Java Printstacktrace: Should use logger, not stack trace to stderr.
examples/whisper.android.java/app/src/m…:58
INFO
MINED042
[MINED042] Cpp New Without Delete: C++ raw new without RAII / unique_ptr — memory leak ri…
examples/talk-llama/llama-memory-hybrid…:34
INFO
MINED042
[MINED042] Cpp New Without Delete: C++ raw new without RAII / unique_ptr — memory leak ri…
examples/talk-llama/llama-memory-hybrid…:34
INFO
MINED042
[MINED042] Cpp New Without Delete: C++ raw new without RAII / unique_ptr — memory leak ri…
examples/talk-llama/llama-kv-cache-iswa…:279
INFO
MINED043
[MINED043] Http Not Https: Hardcoded http:// (not localhost) for endpoints that handle cr…
examples/livestream.sh:10
INFO
MINED044
[MINED044] Js Console Log Prod: console.log left in code. Should be replaced with logger …
examples/addon.node/vad-example.js:34
INFO
MINED044
[MINED044] Js Console Log Prod: console.log left in code. Should be replaced with logger …
examples/addon.node/index.js:26
INFO
MINED044
[MINED044] Js Console Log Prod: console.log left in code. Should be replaced with logger …
bindings/javascript/libwhisper.worker.js:1
INFO
MINED049
[MINED049] Print Pii: Logging password/token/email/ssn directly to stdout.
models/convert-pt-to-ggml.py:238
INFO
MINED049
[MINED049] Print Pii: Logging password/token/email/ssn directly to stdout.
bindings/go/examples/go-whisper/process…:120
INFO
MINED060
[MINED060] Go Context No Cancel: context.Background() at request handler boundary leaks g…
bindings/go/examples/go-model-download/…:17