Tema representativo de entrevista

Entrevista de diseño de sistemas: ¿Cómo diseñarías una plataforma de divulgación coordinada de vulnerabilidades?

Diseño de sistemasDifícil
Equipo editorial de Offer.ccPublicado Actualizado

Pregunta

Una empresa SaaS desea aceptar reportes de vulnerabilidades de investigadores externos y coordinar a los equipos internos, proveedores e informantes a lo largo de la remediación y la divulgación. ¿Cómo diseñarías la plataforma para proteger las evidencias sensibles y la identidad del informante, evitando al mismo tiempo la duplicación de trabajo, el acceso no autorizado y los errores en la divulgación?

Planteamiento y contexto adecuado

Esta es una pregunta de diseño de sistemas de seguridad. La plataforma recibe reportes externos, verifica el alcance, aísla evidencias, deduplica hallazgos, clasifica el riesgo (triage), enruta la asignación de responsabilidades, verifica la remediación, se comunica con los informantes y publica avisos de seguridad. El ingeniero debe transformar la política de divulgación de vulnerabilidades de la organización en una máquina de estados ejecutable; los límites políticos, legales y contractuales son entradas que la organización debe definir, mientras que el sistema proporciona evidencias, permisos y cronogramas.

Qué evalúa el entrevistador

  • Si puedes trazar límites de confianza entre los investigadores, la plataforma, los equipos de producto, los proveedores y los avisos públicos.
  • Si el ciclo de vida, la idempotencia, la deduplicación, la autorización y la auditoría están representados como un flujo de datos verificable.
  • Si puedes explicar las compensaciones (trade-offs) entre el riesgo, la disponibilidad, la confidencialidad y la velocidad de remediación.
  • Si tratas CVSS y puntuaciones similares como entradas y las combinas con la exposición, la explotabilidad y el impacto en el negocio.

Aclaraciones que se deben hacer primero

Confirma si los informantes son anónimos, registrados o invitados, y si se permiten archivos adjuntos y envíos a través de API. Aclara el alcance de los activos, el lenguaje de puerto seguro (safe harbor), las pruebas prohibidas, la gestión de abusos, el volumen de reportes, el aislamiento de inquilinos (tenant isolation), los requisitos regionales y de retención, la coordinación con proveedores o CERT, los objetivos de severidad y remediación, la propiedad de CVE/CNA y la política de divulgación deseada. Si no se especifica la escala, expón los supuestos que utilizarás.

Estructura para una respuesta en 30 segundos

Cubriría cinco etapas: recepción y aislamiento, normalización y deduplicación, clasificación (triage) y enrutamiento, remediación y coordinación, y luego divulgación y auditoría. Una puerta de enlace (gateway) pública solo acepta formatos restringidos; los archivos adjuntos pasan a cuarentena y las PoC nunca se ejecutan en producción. Un flujo canónico de eventos de reportes con claves de idempotencia respalda la clasificación basada en riesgos y la asignación de responsabilidades. La remediación, la comunicación con proveedores y las actualizaciones a informantes utilizan colas de trabajo restringidas. Los avisos públicos requieren aprobación y evidencias de remediación, y cada acción genera registros de auditoría bajo el principio de menor privilegio.

Respuesta detallada paso a paso

1. Trazar límites de confianza y proteger la recepción

Los formularios públicos, un buzón dedicado y las API ingresan a través de una puerta de enlace con límites de tasa (rate limits), CAPTCHA, listas de permitidos para tipos de contenido y escaneo de adjuntos maliciosos. La evidencia sin procesar va a un almacenamiento de cuarentena cifrado, mientras que el análisis se aísla de las redes de producción. Solo se permite la inspección estática necesaria; el código o las solicitudes de los investigadores nunca se reproducen directamente contra producción. Los datos personales del informante se cifran por separado y el acceso se concede por caso y rol.

2. Usar un modelo canónico y una máquina de estados

Cada reporte debe contar con un reportId estable, fuente, activo y versión afectados, referencias de evidencia, nivel de confidencialidad, severidad, responsable, reportes relacionados y cronograma. Una clave de idempotencia hace que los reintentos anexen eventos en lugar de duplicar el trabajo. Los estados pueden incluir received, triage, needs-info, accepted, rejected, duplicate, mitigated, fixed, coordination, disclosed y closed; las transiciones se envían a un registro de auditoría de solo anexado (append-only) en lugar de sobrescribir el historial.

3. Clasificar (triage), deduplicar y enrutar la responsabilidad

Verifica primero el alcance, luego clasifica por activo afectado, versión, explotabilidad, exposición, impacto en los datos y criticidad para el negocio. CVSS puede expresar la severidad, pero no puede reemplazar el juicio de riesgo específico del entorno. Las huellas digitales (fingerprints), las versiones de los activos y la similitud de las evidencias generan candidatos para la deduplicación; un analista confirma la relación y preserva la atribución del informante. Enruta a producto, infraestructura, proveedores o entidades externas de coordinación, con aprobaciones separadas y escalamiento por vencimiento.

4. Remediar, coordinar con proveedores y divulgar

Despacha la remediación a través de colas con reintentos idempotentes y una bandeja de salida (outbox) para notificaciones externas. Cada parche o mitigación se vincula a los resultados de las pruebas y a un punto de reversión (rollback). La autorización a nivel de caso controla las actualizaciones para el informante y las solicitudes de material suplementario. Los tiempos de divulgación dependen de la política de la organización, la respuesta del proveedor y el riesgo. La política pública de GSA es un ejemplo con un acuse de recibo en dos días hábiles, hasta 90 días de confidencialidad y un objetivo de remediación; es específica de la organización y no un plazo legal universal. Trata dichas fechas como entradas de política y escala a medida que se acercan los plazos límite.

5. Asegurar, recuperar y monitorear el sistema

Utiliza claves administradas por KMS y cifrado en tránsito; aplica el principio de menor privilegio por caso, inquilino y rol, almacenando la identidad del informante separada de la evidencia técnica. Los consumidores de la cola deben ser idempotentes y los mensajes fallidos van a cuarentena. Realiza copias de seguridad y ensaya la recuperación para la base de datos de reportes, el almacén de evidencias y los registros de auditoría de forma independiente. Monitorea la latencia de acuse de recibo, el SLA de clasificación (triage), el tiempo de remediación, los reportes antiguos, la tasa de duplicados, los plazos de divulgación incumplidos, los bloqueos de adjuntos y las alertas de acceso no autorizado. NIST SP 800-216 considera la recepción, el procesamiento, el seguimiento, la coordinación y la comunicación de reportes de vulnerabilidades como elementos del marco de trabajo, lo cual resulta útil como verificación de completitud.

Respuesta de ejemplo de alta calidad

Primero aclararía el alcance, el puerto seguro (safe harbor), el volumen de reportes, los datos sensibles, la coordinación con proveedores y la política de divulgación. La puerta de enlace pública acepta reportes, almacena la evidencia sin procesar en cuarentena y mantiene el escaneo y el análisis separados de producción. Un servicio de normalización crea eventos de reporte idempotentes y los clasifica, deduplica y enruta utilizando el activo, el impacto y la explotabilidad. Las colas de remediación vinculan parches, mitigaciones, pruebas y evidencia de reversión; la comunicación con el informante y los avisos utilizan autorizaciones y aprobaciones a nivel de caso. Un servicio de políticas suministra los plazos de acuse de recibo, escalamiento y divulgación, sin codificar de forma fija el ejemplo de 90 días de una organización como una regla universal. El cifrado, la auditoría de solo anexado, el aislamiento de inquilinos, los reintentos, los simulacros de recuperación y las métricas de vencimiento hacen que el flujo de trabajo sea auditable y confiable.

Errores comunes

  • Diseñar únicamente una bandeja de entrada, sin máquina de estados, idempotencia ni deduplicación.
  • Reproducir la PoC de un investigador en producción o colocar archivos adjuntos en el mismo dominio de confianza.
  • Dar a todos los usuarios de soporte o ingeniería acceso a la identidad del informante y a la evidencia sin procesar.
  • Clasificar únicamente mediante CVSS sin considerar la exposición, la explotabilidad o el impacto en el negocio.
  • Tratar un plazo fijo de 90 días como una fecha límite legal universal a pesar de las diferencias normativas y de proveedores.
  • Omitir la evidencia de remediación, la aprobación de divulgación, los puntos de reversión, el escalamiento por vencimiento y los simulacros de recuperación.

Preguntas de seguimiento y respuestas

¿Cómo aceptas reportes anónimos mientras controlas el spam y el abuso?

Permite el envío anónimo con campos estructurados, límites de tasa, huellas digitales para duplicados y clasificación humana; envía los adjuntos riesgosos a cuarentena. El envío anónimo no elude las verificaciones de alcance, y el sistema sigue registrando el canal, la hora y los hashes de la evidencia.

¿Qué sucede si se filtra la identidad del informante?

Almacena la identidad separada de la evidencia técnica, utiliza autorizaciones de caso de corta duración y audita cada visualización. Las notificaciones, exportaciones y plantillas de avisos ocultan información de forma predeterminada (redaction); solo los coordinadores explícitamente autorizados pueden vincular un contacto real.

¿Qué pasa si un proveedor no responde antes de la fecha límite de divulgación?

Escala tempranamente al responsable del proveedor, al equipo legal y a un organismo externo de coordinación de acuerdo con la política, registrando cada notificación y decisión de riesgo. Cualquier extensión requiere un responsable, una justificación, una aprobación y un plan de comunicación revisado.

¿Cómo preservas el reconocimiento cuando dos reportes son duplicados?

Genera candidatos por similitud y haz que un analista confirme la causa raíz, la versión del activo y la evidencia. Fusiona en un caso principal preservando ambos cronogramas, la atribución del informante y las decisiones de recompensa en lugar de eliminar el reporte posterior.

¿Cómo demuestras que la plataforma mejora la respuesta?

Rastrea la latencia de acuse de recibo, el tiempo de clasificación y remediación, la tasa de vencimiento, la tasa de duplicados, las divulgaciones erróneas y las alertas de acceso no autorizado por severidad y tipo de activo. Las anomalías deben activar revisiones por muestreo en lugar de simplemente presionar para cerrar más casos.

Fuentes públicas

Preguntas relacionadas

Herramienta de entrevista relacionada

Usa Resolver para una respuesta de diseño de sistemas

Aclara primero los requisitos y luego avanza a través de la escala, la arquitectura, la elección de componentes y las compensaciones (trade-offs).

Ver la herramienta