From alfred-dev
Applies STRIDE methodology to model threats: identifies components, generates Mermaid DFDs, categorizes threats, scores risks by probability/impact, proposes mitigations.
npx claudepluginhub 686f6c61/alfred-dev --plugin alfred-devThis skill uses the workspace's default tool permissions.
Este skill aplica la metodología STRIDE para identificar y clasificar amenazas de seguridad en el sistema. STRIDE es un modelo desarrollado por Microsoft que categoriza las amenazas en seis tipos, proporcionando un framework sistemático para no dejarse nada en el tintero.
Applies STRIDE methodology to identify threats like spoofing, tampering, repudiation, info disclosure, DoS, and privilege elevation. Use for threat modeling, security reviews, and documentation.
Applies STRIDE threat modeling to Data Flow Diagrams, identifying threats like spoofing, tampering, repudiation, disclosure, DoS, and privilege elevation for system design and reviews.
Conducts structured threat modeling using OWASP Four-Question Framework and STRIDE. Generates threat matrices with risk ratings, mitigations, prioritization for attack surface analysis and security architecture reviews.
Share bugs, ideas, or general feedback.
Este skill aplica la metodología STRIDE para identificar y clasificar amenazas de seguridad en el sistema. STRIDE es un modelo desarrollado por Microsoft que categoriza las amenazas en seis tipos, proporcionando un framework sistemático para no dejarse nada en el tintero.
El modelado de amenazas se hace idealmente al principio del desarrollo (cuando es más barato corregir), pero también es valioso como ejercicio periódico para sistemas existentes.
Identificar los componentes del sistema. Listar todos los elementos relevantes:
Generar diagrama de flujo de datos (DFD). Dibujar con Mermaid los flujos de datos entre componentes, identificando los límites de confianza (trust boundaries). Las amenazas suelen concentrarse en los puntos donde los datos cruzan un límite de confianza.
Aplicar STRIDE a cada componente. Para cada elemento del diagrama, evaluar las seis categorías:
| Categoría | Descripción | Pregunta clave |
|---|---|---|
| Spoofing (suplantación) | Un atacante se hace pasar por otro usuario o sistema. | Cómo se verifica la identidad en este punto? |
| Tampering (manipulación) | Un atacante modifica datos en tránsito o en reposo. | Cómo se garantiza la integridad de los datos? |
| Repudiation (repudio) | Un usuario niega haber realizado una acción. | Hay registro de auditoría fiable? |
| Information Disclosure (fuga de información) | Datos sensibles se exponen a quien no debería verlos. | Qué datos se exponen y a quién? |
| Denial of Service (denegación de servicio) | El sistema se vuelve inaccesible para usuarios legítimos. | Qué recursos se pueden agotar? |
| Elevation of Privilege (elevación de privilegios) | Un usuario obtiene permisos que no le corresponden. | Cómo se aplican los controles de acceso? |
Clasificar cada amenaza por riesgo. Usar una matriz de probabilidad e impacto:
Proponer mitigaciones para cada amenaza. Las mitigaciones deben ser concretas y accionables:
Priorizar por ratio riesgo/esfuerzo. Las mitigaciones de alto impacto y bajo esfuerzo van primero. Las de bajo impacto y alto esfuerzo se documentan pero se posponen.
Documentar el modelo. Utilizar templates/threat-model.md si existe. Guardar en la documentación del proyecto para referencia futura.
Registrar las amenazas identificadas y las mitigaciones propuestas en la memoria del proyecto con memory_log_decision. Esto permite hacer seguimiento del estado de las mitigaciones entre sesiones y detectar si aparecen nuevas superficies de ataque con la evolución del sistema.