Skip to content

Tighten threat-model output#46

Merged
andrew merged 1 commit intomainfrom
tighten-threat-output
Apr 11, 2026
Merged

Tighten threat-model output#46
andrew merged 1 commit intomainfrom
tighten-threat-output

Conversation

@andrew
Copy link
Copy Markdown
Contributor

@andrew andrew commented Apr 11, 2026

Three improvements from testing against real projects.

Stack filtering (#41): Only tools that fire a threat mapping or carry sinks appear in the stack. Bundler, Docker, CI, linters etc are trimmed. ecosystem-dashboard goes from 16 stack entries to 7.

Empty message (#42): Shows detected ecosystems and stack before saying "No threat categories match the detected stack" instead of the old "No security data available" which implied brief had no data.

SSRF mapping (#45): Removed from `role:framework + layer:backend` since frameworks handle inbound requests. SSRF is correctly attributed via `function:http-client` on actual HTTP client libs (requests, axios, faraday).

Closes #41, #42, #45

…SSRF from backend mapping

Stack now only includes tools that actually fire a threat mapping or
carry sinks, trimming infrastructure tools (Bundler, Docker, CI,
linters) that have taxonomy but no security relevance. ecosystem-dashboard
goes from 16 stack entries to 7.

Empty threat-model output now shows the detected ecosystems and stack
before saying "No threat categories match the detected stack" instead
of the misleading "No security data available for detected tools" which
implied brief had no data about the stack.

Removed SSRF from the role:framework + layer:backend mapping since
frameworks handle inbound requests, not outbound. SSRF is correctly
attributed via function:http-client on the actual HTTP client libraries
(requests, axios, faraday, etc). Extracted resolveThreats helper to
keep ThreatModel under the gocognit limit after adding the two-pass
stack filtering.

Closes #41, closes #42, closes #45
@andrew andrew merged commit 3344972 into main Apr 11, 2026
5 checks passed
@andrew andrew deleted the tighten-threat-output branch April 11, 2026 19:09
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.

Stack list in threat-model includes every detected tool

1 participant