TechTalks STACK KITS

OWASP Top 10:2025 coverage matrix

Every security control shipped across the catalogue, mapped to the current OWASP Top 10. Generated directly from each kit's security/checks.json, so this page cannot drift from what the kits actually enforce.

433
controls
35
kits
10 / 10
categories
2026-10-24
generated

Controls by severity

110
critical
194
high
97
medium
32
low

Kit × category matrix

Each cell counts controls in that kit mapped to that category. A dash means no control in this kit maps there — which is often correct: a static analysis pack has no session layer to harden.

Security control counts per kit, by OWASP Top 10:2025 category
Kit All A01A02A03A04A05A06A07A08A09A10
agentic-langgraph-crewai12—22133—1——
django-api-ninja1221222—11—1
django-tailwind-postgresql12—2212221——
elixir-phoenix-liveview1211213211——
flask-htmx-sqlite15—21224——31
go-chi-templ-htmx12—11223——12
go-fiber-api12—221—3——13
go-gin-postgresql12—32122———2
laravel-ai-features141112521——1
laravel-api-sanctum1422—11152——
laravel-filament-mysql142212222——1
laravel-filament-postgresql122—21223———
laravel-livewire-postgresql123—11313———
laravel-mongodb121—12422———
laravel-mysql1223—121—1—2
mcp-tools-kit1412123311——
nextjs-approuter-supabase124—11213———
nextjs-prisma-postgresql1411123231——
python-litestar-postgresql12122122———2
rag-fastapi-qdrant1212222——1—2
rag-haystack-weaviate12122122—1—1
rag-langgraph-agentic12—221231——1
rag-llamaindex-pgvector12122121—1—2
rag-local-private12122112—1—2
reverse-engineering-security12—4313———1—
ruby-rails-hotwire12111123111—
rust-actix-postgresql12—2—123—2—2
rust-axum-postgresql12—1—124—2—2
rust-leptos-fullstack1224—121—1—1
rust-loco-sqlite12—3—12311—1
security-devsecops-ci12—1721———1—
security-llm-guardrails12—21134———1
security-owasp-api1241——231——1
security-passkeys-auth12—212—16———
ts-hono-bun-sqlite1212—223———2

Category breakdown

Authorization gaps including IDOR/BOLA, tenant leakage, privilege escalation, and server-side request forgery (absorbed from A10:2021).

21 / 35 kits

14 kit(s) without a mapped control: agentic-langgraph-crewai, django-tailwind-postgresql, flask-htmx-sqlite, go-chi-templ-htmx, go-fiber-api, go-gin-postgresql, rag-langgraph-agentic, reverse-engineering-security …

Insecure defaults, permissive CORS, debug surfaces in production, over-privileged containers, and missing hardening headers.

31 / 35 kits

4 kit(s) without a mapped control: laravel-filament-postgresql, laravel-livewire-postgresql, laravel-mongodb, nextjs-approuter-supabase

Compromise of dependencies, build systems, package registries, and distribution infrastructure. Expanded from A06:2021 components.

27 / 35 kits

8 kit(s) without a mapped control: laravel-api-sanctum, laravel-mysql, rust-actix-postgresql, rust-axum-postgresql, rust-leptos-fullstack, rust-loco-sqlite, security-owasp-api, ts-hono-bun-sqlite

Weak or missing encryption in transit and at rest, poor key handling, and inadequate password hashing.

34 / 35 kits

1 kit(s) without a mapped control: security-owasp-api

SQL, NoSQL, command, template, and LDAP injection, plus cross-site scripting arising from untrusted input reaching an interpreter.

33 / 35 kits

2 kit(s) without a mapped control: go-fiber-api, security-passkeys-auth

Missing or ineffective control design: absent threat modelling, unbounded resource consumption, and missing rate limits.

31 / 35 kits

4 kit(s) without a mapped control: django-api-ninja, rag-fastapi-qdrant, reverse-engineering-security, security-devsecops-ci

Credential stuffing exposure, weak session lifecycle, missing MFA. Renamed from Identification and Authentication Failures.

17 / 35 kits

18 kit(s) without a mapped control: agentic-langgraph-crewai, flask-htmx-sqlite, go-chi-templ-htmx, go-fiber-api, go-gin-postgresql, laravel-mysql, python-litestar-postgresql, rag-fastapi-qdrant …

Unverified updates, insecure deserialization, and CI/CD pipelines that accept unsigned or unpinned artifacts.

17 / 35 kits

18 kit(s) without a mapped control: flask-htmx-sqlite, go-chi-templ-htmx, go-fiber-api, go-gin-postgresql, laravel-ai-features, laravel-filament-mysql, laravel-filament-postgresql, laravel-livewire-postgresql …

Insufficient audit trails, unmonitored security events, and logs that leak secrets or personal data. Renamed to emphasise alerting.

6 / 35 kits

29 kit(s) without a mapped control: agentic-langgraph-crewai, django-api-ninja, django-tailwind-postgresql, elixir-phoenix-liveview, go-gin-postgresql, laravel-ai-features, laravel-api-sanctum, laravel-filament-mysql …

Improper error handling, fail-open logic, verbose stack traces, and unhandled edge cases that degrade into insecure states.

21 / 35 kits

14 kit(s) without a mapped control: agentic-langgraph-crewai, django-tailwind-postgresql, elixir-phoenix-liveview, laravel-api-sanctum, laravel-filament-postgresql, laravel-livewire-postgresql, laravel-mongodb, mcp-tools-kit …

Machine-readable

The same data as JSON, for agents and dashboards. Each kit manifest validates against kit-security-checks.schema.json.

curl -s https://techtalks.itsumarfarooq.com/security/coverage.json | jq '.categories[] | select(.id=="A01:2025")'

# Verify locally
python tools/validate_checks.py
python tools/build_security_matrix.py --check