Spaces:
Sleeping
Sleeping
| title: Prompt Injection Shield | |
| emoji: "🛡️" | |
| colorFrom: green | |
| colorTo: red | |
| sdk: gradio | |
| sdk_version: "5.23.0" | |
| app_file: app.py | |
| pinned: true | |
| license: mit | |
| short_description: Enterprise-grade prompt injection detection OWASP LLM01 2025 | |
| # 🛡️ Prompt Injection Shield | |
| **Enterprise-grade LLM security middleware** — detecção de prompt injection em tempo real, baseado no OWASP LLM Top 10:2025. | |
| ## O que é? | |
| Middleware de segurança que intercepta ataques de prompt injection antes que cheguem ao LLM. Sem dependências pesadas — funciona com regex + heurísticas semânticas em <5ms por request. | |
| ## Funcionalidades | |
| | Aba | Descrição | | |
| |-----|-----------| | |
| | 🔬 Demo Interativo | Teste qualquer prompt e veja risk score + ameaças | | |
| | 🔍 Pipeline Visual | Trace de cada camada de detecção passo a passo | | |
| | 📚 OWASP LLM Top 10 | Todas as 10 vulnerabilidades com exemplos e mitigações | | |
| | 🏆 Leaderboard | Ataques detectados pelos usuários em tempo real | | |
| | 📡 API | Simulação de chamada REST + código de integração | | |
| ## Uso em produção | |
| ```python | |
| from detector import PromptInjectionDetector, ThreatLevel | |
| detector = PromptInjectionDetector() | |
| result = detector.analyze(user_input, sensitivity="alta") | |
| if result.threat_level == ThreatLevel.BLOCKED: | |
| return {"error": "Blocked", "trace_id": result.trace_id} | |
| # usar result.sanitized_text para chamar o LLM | |
| ``` | |
| ## Arquitetura — 7 camadas | |
| ``` | |
| Request | |
| │ | |
| ▼ | |
| [1] Unicode normalizer — NFKC, BOM removal | |
| │ | |
| ▼ | |
| [2] Control char filter — \x00-\x1f, zero-width, RTL override | |
| │ | |
| ▼ | |
| [3] Size limiter — max chars, max lines, repetition collapse | |
| │ | |
| ▼ | |
| [4] Pattern matcher — 25+ regex patterns (OWASP LLM01) | |
| │ │ | |
| │ BLOCKED → HTTP 403 + audit log | |
| │ | |
| ▼ | |
| [5] Semantic scorer — keyword density + linguistic heuristics | |
| │ | |
| ▼ | |
| [6] Risk aggregator — weighted score 0-100 | |
| │ | |
| ▼ | |
| [7] Output filter — PII redaction, response sanitization | |
| │ | |
| ▼ | |
| LLM API (Groq / OpenAI / Anthropic) | |
| ``` | |
| ## Stack | |
| - Python 3.11 · zero ML dependencies | |
| - Gradio 4.x | |
| - OWASP LLM01:2025 compliance | |
| - Kubernetes-ready (parte do projeto Agentic RAG K8s) | |
| ## Referências | |
| - [OWASP LLM Top 10:2025](https://owasp.org/www-project-top-10-for-large-language-model-applications/) | |
| - [OWASP LLM01: Prompt Injection](https://genai.owasp.org/llmrisk/llm01-prompt-injection/) |