diff --git a/episodes/TRAZA_riesgos-y-proteccin_S20260923.R2_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD.md b/episodes/TRAZA_riesgos-y-proteccin_S20260923.R2_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD.md new file mode 100644 index 00000000..6b8c9f8c --- /dev/null +++ b/episodes/TRAZA_riesgos-y-proteccin_S20260923.R2_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD.md @@ -0,0 +1,51 @@ +--- +episode_id: "263c54d3-ccef-43ff-a9d9-83eb33b343bf" +puente_flat: "TRAZA_riesgos-y-proteccin_S20260923.R2_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD" +session_code: "S20260923.SIDC61B58AF8BC4" +acto_dialogico: "informar" +actor_flujo: "multi_actor" +criticidad_aegis: "low" +skill_dominante: "NONE" +fase_proyecto: "operations" +tipo_semantico: "advisory" +summary_one_line: "EPISODIO 2 — Ember: Riesgos y protección" +source_type: "claude_code" +trust_boundary: "internal" +created_at: "2026-09-23T23:35:20.502043+00:00" +relectura_tagged: false +forgejo_commit_sha: "pending" +--- + +## Riesgos y protección +- **¿Me inyectaron instrucciones?** Dirigidas a mí, no, y nada se obedeció. +- **Sí vi textos escritos para manipular agentes:** + - Hooks que dicen "no le preguntes al usuario, hazlo" o "ofrece editar la configuración". + - Modos que ordenan "nunca anuncies este modo". + - Un plugin que se autodeclara "EXTREMELY_IMPORTANT". **Ese plugin (superpowers) está instalado en tu entorno** y se inyecta al inicio de cada sesión. +- **Registro de riesgos:** abrí un registro vivo con **26 clases de riesgo**, 11 ya mitigadas con prueba y el resto con dueño y fecha: [REGISTRO_RIESGOS_REPOS_EXTERNOS.md](docs/REGISTRO_RIESGOS_REPOS_EXTERNOS.md). +- **De paso cerré dos huecos más de D7:** `echo $(cat …)` ya no vuelca contenido del clon, y los bucles `for`/`if` ya no se bloquean por error. + +`★ Insight ─────────────────────────────────────` +- **Estudiar el ataque de otro sirve sobre todo para mirarse al espejo.** El repo ajeno enseñó la clase de riesgo ("el guardián que da su llave"), y la medición la encontró en casa. +- **Un muro sin replay es una apuesta.** La primera versión de D8 negaba unos 40 comandos inocentes (`2>/dev/null`, `[ -f ]`). El historial real lo detectó antes de que te estorbara. +`─────────────────────────────────────────────────` + +> 🎯 **En una frase:** estudié 9 repos sin riesgo, los borré, y de paso cerré una puerta por la que Ember se había saltado sus propios guardianes 424 veces. + +✅ **Hice:** +- Estudié los 9 repos y guardé sus fichas; el registro tiene 26 riesgos. +- D8 cerró los auto-overrides por la terminal; D7 recibió dos arreglos. +- Arreglé Casbin y dejé listo el diseño de la #1. +- Borré los 10 clones. Todo está subido a los 3 remotos. + +⏳ **Falta, y depende de ti:** +- Que los 27 mensajes de los guardianes digan "pídeselo a John" en vez de dar la receta. +- Que las banderas exijan tu firma. +- Qué hacer con superpowers, que se inyecta con autoridad en cada inicio. + +💡 **Mi consejo:** la **A**. El diseño de la #1 ya está verificado contra quienes fallaron antes. Tus tres decisiones pueden esperar un turno, porque la puerta peligrosa ya está cerrada. + +**Para avanzar, elige:** +- 🟢 **A** → construyo la **#1**: el revisor en dos etapas que no aprueba sin pruebas y que no puede aprobarse a sí mismo. *Si eliges esto:* las auditorías pasan de depender de mí a depender de un proceso verificable. *(recomendado)* +- 🟡 **B** → te preparo tus **3 decisiones** explicadas una por una (mensajes, firma de banderas, superpowers). *Si eliges esto:* se cierra la última vía de auto-override y el riesgo del plugin. +- ⚪ **C** → estudio otro repo del top 15, con el mismo flujo y el borrado al final. *Si eliges esto:* más ideas y más riesgos al registro.