Una revisión útil sigue los datos entre funciones. Una llamada que parece arriesgada puede estar protegida por una comprobación previa; un handler aparentemente correcto puede depender de un helper que pierde el filtro de tenant.
Selecciona el código relevante y sus llamadores inmediatos. Pide un recorrido explícito de la entrada a la operación, con el contexto ausente identificado. Un parche propuesto se evalúa mejor con una prueba que demuestre el fallo original.
Material de partida
- El handler, helper o consulta seleccionados y suficiente contexto de llamadas para identificar el límite de confianza.
- Tipos, restricciones de base de datos y pruebas relevantes; elimina claves y cadenas de conexión.
- La regla esperada, como propiedad por tenant, lista de argumentos permitidos o consumo único de un token.
Analiza las evidencias
- Pide puntos de entrada, transformaciones, validaciones y la operación final. Exige referencias a archivos y líneas para cada afirmación.
- Busca un contraejemplo que viole la regla. Comprueba si el middleware o las restricciones de la base de datos ya lo bloquean.
- Solicita el parche compatible más pequeño y una prueba de regresión. Incluye fallos y concurrencia cuando la regla dependa de una operación atómica.
- Revisa y ejecuta la prueba antes de aplicar el parche. La revisión de parches por CLI requiere una confirmación local aparte; una sugerencia del modelo no escribe por sí sola en tu proyecto.
Un prompt para adaptar
Adáptalo a tus pruebas
Sigue el parámetro seleccionado desde la solicitud hasta la consulta. Nuestra regla es que un tenant solo puede leer sus propios informes. Cita cada comprobación, identifica el contexto de llamadores que falta y crea una prueba entre tenants que falle si el recorrido es vulnerable. Propón un parche mínimo que preserve el contrato de respuesta.
Comprueba el resultado
- El hallazgo identifica un recorrido alcanzable y explica por qué las validaciones existentes no lo impiden.
- La prueba comprueba el comportamiento público en vez de repetir la implementación.
- El parche conserva solicitudes válidas, trata los errores y sigue los patrones existentes de autorización y transacciones.
Lleva tus evidencias a una conversación y trabaja en la siguiente pregunta.
Abrir chat