Skip to content

ci: add ThreatCrush security scan - #1

Merged
ralyodio merged 1 commit into
mainfrom
chore/threatcrush-scan
Aug 4, 2026
Merged

ci: add ThreatCrush security scan#1
ralyodio merged 1 commit into
mainfrom
chore/threatcrush-scan

Conversation

@ralyodio

@ralyodio ralyodio commented Aug 3, 2026

Copy link
Copy Markdown

Installs threatcrush-scan@1.1.0 from the sh1pt Actions Store.

Scans pull requests for hardcoded credentials, injection, SSRF, unsafe deserialisation, XXE and dependency tampering. Findings go to the Security tab as SARIF and to a PR comment; snippets are redacted, so no credential material reaches a CI log.

Report-only. It will not fail a pull request. Once the existing findings are triaged, set the pack's failOn input to critical,high.

Coverage against profullstack/malware-test-prs: 90.32% true-positive rate at a 0.0% false-positive rate against its control group of correct implementations.

Generated by the fleet renderer — the managed header hash matches the pack source.

🤖 Generated with Claude Code

Installs threatcrush-scan@1.1.0 from the sh1pt Actions Store.
Scans pull requests for hardcoded credentials, injection, SSRF, unsafe
deserialisation and dependency tampering; uploads SARIF to the Security
tab.

Report-only — it will not fail a pull request. Set the pack's failOn
input to critical,high once the existing findings are triaged.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown

ThreatCrush Security Scan

34 finding(s)

HIGH/CRITICAL: 9 | MEDIUM: 25

Severity Rule Location
HIGH secret-generic-credential Backend/reflio_clone_django/reflio_django_app/tests.py:7
HIGH secret-generic-credential Backend/reflio_clone_django/reflio_django_app/tests.py:8
HIGH secret-generic-credential Frontend/apps/reflio-affiliate/pages/_app.js:17
HIGH secret-generic-credential Frontend/apps/reflio-affiliate/pages/_app.js:18
HIGH secret-generic-credential Frontend/apps/reflio-affiliate/pages/reset-password.js:57
HIGH secret-generic-credential Frontend/apps/reflio/pages/_app.tsx:22
HIGH secret-generic-credential Frontend/apps/reflio/pages/_app.tsx:23
HIGH js-unescaped-html-sink Frontend/apps/reflio/pages/_app.tsx:33
HIGH secret-generic-credential Frontend/apps/reflio/pages/reset-password.js:56
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:194
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:315
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:332
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:344
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:507
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:530
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:590
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:629
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:647
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:665
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:683
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:702
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:721
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:740
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:759
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:778
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:808
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:845
MEDIUM py-stack-trace-returned Backend/reflio_clone_django/reflio_django_app/views.py:888
MEDIUM redos-nested-quantifier Frontend/apps/reflio-affiliate/utils/helpers.js:136
MEDIUM js-open-redirect Frontend/apps/reflio/pages/dashboard/[companyId]/settings.js:39
MEDIUM js-unescaped-html-sink Frontend/apps/reflio/public/js/reflio.min.js:157
MEDIUM js-unescaped-html-sink Frontend/apps/reflio/scripts/reflio.js:366
MEDIUM redos-nested-quantifier Frontend/apps/reflio/utils/helpers.js:105
MEDIUM js-unescaped-html-sink Frontend/packages/ui/src/Icons/StripeConnect.js:4

Snippets are redacted; ThreatCrush never prints matched credential material.

@ralyodio
ralyodio marked this pull request as ready for review August 4, 2026 01:08
@ralyodio
ralyodio merged commit df52f8e into main Aug 4, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant