MalDet · Static Security Report
6 findings likely need attention, 2 look like noise. Most notable: Detects destructive operations (recursive deletion, wiping) [threat-filesystem-destruct... (99% confidence).
Generated from finding counts. A plain-English summary was not available for this scan.
MalDet scores two different questions separately, because they call for different responses: code can be badly written without being hostile, and hostile code is not always badly written.
| Detector | Looks for | High | Medium | Low | Total |
|---|---|---|---|---|---|
| semgrep | Insecure coding patterns across many languages | 0 | 4 | 1 | 5 |
| yara | Signatures of malicious behaviour in source files | 0 | 0 | 2 | 2 |
| guarddog | Malicious package and install-time behaviour | 2 | 0 | 0 | 2 |
6 of 9 findings were rated more likely genuine than noise by the classifier.
Identical findings are grouped, so a single rule firing many times takes one row. Ordered worst first. “Seen” is how many times that finding occurred.
| Severity | Detector | Finding | Seen | Example location |
|---|---|---|---|---|
| high | guarddog | Detects destructive operations (recursive deletion, wiping) [threat-filesystem-destruction] | 2 | /cli/scripts/smoke-worker.mjs:30 |
| medium | semgrep | RegExp() called with a `level` function argument, this might allow an attacker to cause a Regular Expression Denial-of-Service (ReDoS) within your application as RegExP blocks the main thread. For this reason, it is recommended to use hardcoded regexes instead. If your regex is run on user-controlle | 1 | /scripts/skill-index.mjs:38 |
| medium | semgrep | Skill instructs the agent to act autonomously without user confirmation, approval, or oversight. Excessive autonomy directives suppress the human-in-the-loop checkpoints that prevent unintended or malicious actions. In legitimate automation skills, user confirmation should be scoped narrowly; blanke | 1 | /skills/antislop/SKILL.md:96 |
| medium | semgrep | GitHub Actions step uses a mutable tag or branch reference. Tags and branch names can be silently repointed by the action owner, enabling supply-chain attacks — as seen in the trivy-action and kics-github-action compromises. Pin the reference to a full 40-character commit SHA instead, e.g. `uses: ac | 2 | /.github/workflows/ci.yml:27 |
| low | semgrep | Detected string concatenation with a non-literal variable in a util.format / console.log function. If an attacker injects a format specifier in the string, it will forge the log message. Try to use constant values for the format string. | 1 | /cli/scripts/smoke-worker.mjs:78 |
| low | yara | YARA rule matched: detect_downloader — Downloads a remote resource - common and low-signal alone; see detect_download_and_execute for the composite version | 2 | /README.md |