Security: gate Anthropic-backed simulation analysis with auth and quotas
Los mantenedores suelen responder en 2 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 45/100
Línea de trabajo
Comienza con policyengine_api/routes/simulation_analysis_routes.py:19-78 y policyengine_api/services/ai_analysis_service.py:45-77 para rastrear cómo las solicitudes no autenticadas llegan al análisis respaldado por Anthropic. Revisa el comportamiento del endpoint y del servicio, y después añade pruebas que demuestren que las solicitudes no autenticadas son rechazadas y verifica la aplicación prevista de los límites de frecuencia o de cuota. Se considera terminado cuando los llamadores públicos no pueden consumir repetidamente la cuota de LLM ni conservar registros de análisis arbitrarios.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
policyengine-api exposes an unauthenticated Anthropic-backed simulation analysis endpoint.
Severity
High
Impact
Attackers can burn LLM quota and persist arbitrary analysis records by repeatedly calling the endpoint.
Affected code
policyengine_api/routes/simulation_analysis_routes.py:19-78policyengine_api/services/ai_analysis_service.py:45-77
Details
/simulation-analysis accepts public requests, and AIAnalysisService immediately initializes an Anthropic client with ANTHROPIC_API_KEY and streams a response for new prompts.
Expected behavior
LLM-backed analysis should require auth, rate limits, and ideally per-user quotas or explicit feature gating.
Suggested remediation
- Require authenticated callers
- Add rate limiting / quota enforcement
- Consider caching and internal-only generation paths for expensive prompts
- Add tests proving unauthenticated requests are denied
- Lenguaje dominante
- Python
- Estrellas
- 18
- Forks
- 33
- Merge medio
- 1 d 18 h
- PR fusionados (30 d)
- 23
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de PolicyEngine/policyengine-api
-
State society-wide reports run on the sparse national datasetPosiblemente ocupada @anth-volk la tomó hoy. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
PolicyEngine/policyengine-api#3864 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 38/100
PolicyEngine/policyengine-api#3823 ·
Los mantenedores suelen responder en 2 días
-
API v2: report validations as an append-only, provenance-keyed resource on reportsQuizá libre de nuevo @anth-volk la tomó hace 28 días y no hay ningún pull request abierto. Abierto
PolicyEngine/policyengine-api#3818 · 1 asignado ·
Los mantenedores suelen responder en 2 días
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
PolicyEngine/policyengine-api#3816 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
PolicyEngine/policyengine-api#3814 ·
Los mantenedores suelen responder en 2 días
Todos los issues de PolicyEngine/policyengine-api
Issues similares
-
defect from-review v0.9.2
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
khuisman/mcp-gee-sweet#926 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 Menos de una hora Aptitud para principiantes 84/100
EtanHey/brainlayer#1164 ·
Los mantenedores suelen responder en 1 día
-
bug security
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
yunaremaia/vibeguard#141 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
PrismorSec/prismor#599 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
iii-hq/iii#2278 · 1 comentario ·
Los mantenedores suelen responder en 1 día