Back to browse
GitHub Repository

Scan your LLM-powered applications for authorization gaps, leaked credentials, missing rate limits, prompt injection risks, and other security issues — before they reach production.

5 starsPython

LLM AuthZ Audit – find auth gaps and prompt injection in LLM apps

by iamspathan·Feb 16, 2026·1 point·0 comments

AI Analysis

●●SolidBig BrainSolve My Problem

Purpose-built LLM security linter covers OWASP Top 10, but static analysis has inherent blind spots.

Strengths
  • 13 analyzers with 27 rules specifically for LLM patterns (API keys, prompt injection, auth gaps)
  • Cross-file auth context detection downgrades findings when FastAPI Depends() or Flask login_required exists
  • Covers multi-language (Python/JS/TS) with deduplication, suppressions, and confidence filtering
Weaknesses
  • Static analysis cannot detect runtime auth bypasses or complex prompt injection in production LLMs
  • Crowded security scanner category: Semgrep, Snyk, and GitHub CodeQL already handle broad rule sets
Category
Target Audience

Backend developers, DevSecOps engineers, LLM application builders

Similar To

Semgrep · Snyk Code · GitHub CodeQL

Post Description

Hi HN,

I built llm-authz-audit because I kept seeing the same security issues in LLM-powered applications: API keys hardcoded next to OpenAI calls, FastAPI endpoints serving chat completions with zero auth, user input concatenated straight into prompts, and shared conversation memory with no session isolation.

These aren't hypothetical — they're patterns I found repeatedly across open-source LLM projects and production codebases.

What it does:

It's a static analyzer (think eslint/semgrep but purpose-built for LLM security) that scans Python, JavaScript, and TypeScript codebases for authorization and security gaps. It ships with 13 analyzers and 27 rules covering the OWASP Top 10 for LLM Applications:

- Prompt injection risks (unsanitized input in prompts, missing delimiters) - Hardcoded API keys (OpenAI, Anthropic, HuggingFace, AWS, generic) - Unauthenticated LLM endpoints (FastAPI, Flask, Express) - LangChain/LlamaIndex tools without RBAC - RAG retrievals without document-level access controls - Over-permissioned MCP server configs - Shared conversation memory without user scoping - Missing rate limiting, audit logging, output filtering - Credentials forwarded to LLM via prompt templates Would love feedback from anyone building or securing LLM applications.

Similar Projects

Security●●Solid

PromptSonar – Static analysis for LLM prompt security

Static scanner catches prompt injections in code before runtime, unlike runtime guards.

Solve My ProblemShip It
meghal86
102mo ago