<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Byron Antonio Lainez Sasvin</title>
    <description>The latest articles on DEV Community by Byron Antonio Lainez Sasvin (@byron_lainez).</description>
    <link>https://dev.to/byron_lainez</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2290329%2F551e180e-b6ed-480e-8686-e10b49a64da8.png</url>
      <title>DEV Community: Byron Antonio Lainez Sasvin</title>
      <link>https://dev.to/byron_lainez</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/byron_lainez"/>
    <language>en</language>
    <item>
      <title>¿Qué significan esas letras del CVSS? Guía para entenderlo de una vez</title>
      <dc:creator>Byron Antonio Lainez Sasvin</dc:creator>
      <pubDate>Sun, 24 May 2026 05:32:16 +0000</pubDate>
      <link>https://dev.to/byron_lainez/que-significan-esas-letras-del-cvss-guia-para-entenderlo-de-una-vez-gmh</link>
      <guid>https://dev.to/byron_lainez/que-significan-esas-letras-del-cvss-guia-para-entenderlo-de-una-vez-gmh</guid>
      <description>&lt;p&gt;Cada vez que sale un CVE importante, alguien pega el vector CVSS en el chat del equipo y todos hacen como que lo entienden. Spoiler: la mayoría solo mira el número (&lt;strong&gt;9.1 CRITICAL&lt;/strong&gt;) e ignora el resto.&lt;/p&gt;

&lt;p&gt;El problema es que el número solo te dice &lt;em&gt;qué tan grave&lt;/em&gt; es. El vector te dice &lt;em&gt;por qué&lt;/em&gt; — y eso cambia completamente cómo respondes.&lt;/p&gt;

&lt;h2&gt;
  
  
  Primero: ¿qué es el CVSS?
&lt;/h2&gt;

&lt;p&gt;CVSS (&lt;em&gt;Common Vulnerability Scoring System&lt;/em&gt;) es un sistema de puntuación para describir vulnerabilidades de seguridad. No solo te da un número: te da un &lt;strong&gt;vector&lt;/strong&gt;, que es básicamente una descripción comprimida de cómo funciona el ataque.&lt;/p&gt;

&lt;p&gt;Existen dos versiones que vas a ver seguido: &lt;strong&gt;v3.1&lt;/strong&gt; (la más común hoy) y &lt;strong&gt;v4.0&lt;/strong&gt; (la más nueva, más detallada). Voy a explicar las dos.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;💡 &lt;/p&gt;

&lt;p&gt;💡 La escala de puntuación&lt;br&gt;
      0.1–3.9 LOW &lt;br&gt;
      4.0–6.9 MEDIUM &lt;br&gt;
      7.0–8.9 HIGH &lt;br&gt;
      9.0–10.0 CRITICAL&lt;/p&gt;
&lt;h2&gt;
  
  
  La analogía del ladrón
&lt;/h2&gt;

&lt;p&gt;Para entender el vector CVSS, imagina que una vulnerabilidad es como una forma de entrar a robar a una casa. El vector CVSS responde estas preguntas sobre el "robo":&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  🏠 Analogía
  **¿Desde dónde puede atacar el ladrón?** ¿Desde la calle, o tiene que estar en el jardín? *(Attack Vector)*
  **¿Es difícil entrar?** ¿Puerta abierta o cerradura de alta seguridad? *(Attack Complexity)*
  **¿Necesita una llave?** ¿O entra sin nada? *(Privileges Required)*
  **¿Alguien tiene que abrir la puerta desde adentro?** *(User Interaction)*
  **¿Qué se puede robar?** Documentos, muebles, o puede romper cosas también. *(Impactos: C/I/A)*
&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;
  
  
  CVSS v3.1 — letra por letra
&lt;/h2&gt;

&lt;p&gt;Tomemos este vector real del CVE-2024-9465 (Palo Alto Expedition):&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  CVSS v3.1
  CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N





      Código
      Nombre
      Valor en este CVE
      Qué significa en palabras simples




      AV:N
      Attack Vector — Network
      🔴 Peligroso
      El atacante no necesita estar cerca físicamente. Puede atacar desde cualquier lugar del mundo por internet. *(N=Network, A=Adjacent, L=Local, P=Physical)*


      AC:L
      Attack Complexity — Low
      🔴 Peligroso
      El ataque es fácil de ejecutar. No requiere condiciones especiales, timing exacto ni conocimiento avanzado. Cualquiera con el exploit puede hacerlo. *(L=Low, H=High)*


      PR:N
      Privileges Required — None
      🔴 Peligroso
      El atacante no necesita ninguna cuenta ni contraseña previa. Llega, ataca, listo. *(N=None, L=Low, H=High)*


      UI:N
      User Interaction — None
      🔴 Peligroso
      Ningún usuario tiene que hacer clic en nada, abrir ningún archivo ni visitar ningún enlace. El ataque funciona solo. *(N=None, R=Required)*


      S:U
      Scope — Unchanged
      ⚪ Neutral
      El impacto se queda en el sistema atacado. No "salta" automáticamente a otros sistemas. *(U=Unchanged, C=Changed)*


      C:H
      Confidentiality — High
      🔴 Crítico
      Toda la información confidencial queda expuesta: contraseñas, API keys, configuraciones. El atacante puede leer todo. *(N=None, L=Low, H=High)*


      I:H
      Integrity — High
      🔴 Crítico
      El atacante puede modificar o crear datos. En este caso, puede escribir archivos arbitrarios en el sistema. *(N=None, L=Low, H=High)*


      A:N
      Availability — None
      🟢 Sin impacto
      El atacante no puede tirar el sistema. El servicio sigue disponible mientras lo explotan en silencio. *(N=None, L=Low, H=High)*
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;⚠️ &lt;/p&gt;

&lt;p&gt;⚠️ Cómo leer el resultado&lt;br&gt;
      &lt;strong&gt;AV:N + AC:L + PR:N + UI:N&lt;/strong&gt; en el mismo vector = "cualquier persona en internet, sin esfuerzo, sin cuenta, sin ayuda de nadie" puede ejecutar el ataque. Eso, combinado con &lt;strong&gt;C:H&lt;/strong&gt;, es la peor combinación posible para datos confidenciales.&lt;/p&gt;
&lt;h2&gt;
  
  
  CVSS v4.0 — ¿qué cambia?
&lt;/h2&gt;

&lt;p&gt;La versión 4.0 es más nueva y más detallada. Divide el impacto en dos partes: el sistema directamente atacado (&lt;strong&gt;Vulnerable System&lt;/strong&gt;) y otros sistemas que podrían verse afectados (&lt;strong&gt;Subsequent System&lt;/strong&gt;).&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  CVSS v4.0
  CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:L/VA:N/SC:H/SI:N/SA:N





      Código
      Nombre
      Valor
      Qué significa




      AV:N
      Attack Vector — Network
      🔴
      Igual que en v3.1: ataque desde internet, sin estar cerca.


      AC:L
      Attack Complexity — Low
      🔴
      Fácil de ejecutar, sin condiciones especiales.


      AT:N
      Attack Requirements — None
      🔴
      **Nuevo en v4.0.** El ataque no depende de ninguna condición externa que no controle el atacante (como que haya sesiones activas o configuraciones específicas). *(N=None, P=Present)*


      PR:N
      Privileges Required — None
      🔴
      Sin cuenta, sin autenticación.


      UI:N
      User Interaction — None
      🔴
      Nadie tiene que hacer nada para que el ataque funcione.


      VC:H
      Vulnerable System Confidentiality — High
      🔴
      **El sistema atacado (Expedition):** toda su información queda expuesta. Hashes, configs, API keys.


      VI:L
      Vulnerable System Integrity — Low
      🟡
      **El sistema atacado:** el atacante puede modificar algunos datos, pero no tiene control total de escritura. Impacto parcial en integridad.


      VA:N
      Vulnerable System Availability — None
      🟢
      **El sistema atacado:** sigue funcionando. No hay denegación de servicio.


      SC:H
      Subsequent System Confidentiality — High
      🔴
      **Otros sistemas (los firewalls PAN-OS):** como las API keys quedan expuestas, los firewalls también quedan comprometidos en confidencialidad. El daño se propaga.


      SI:N
      Subsequent System Integrity — None
      🟢
      **Otros sistemas:** el atacante no puede modificar datos en los firewalls directamente a través de este vector.


      SA:N
      Subsequent System Availability — None
      🟢
      **Otros sistemas:** no puede tumbar los firewalls con este ataque.
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;💡 &lt;/p&gt;

&lt;p&gt;💡 La gran mejora de v4.0&lt;br&gt;
      v4.0 separa el impacto en &lt;strong&gt;VC/VI/VA&lt;/strong&gt; (sistema directamente atacado) y &lt;strong&gt;SC/SI/SA&lt;/strong&gt; (sistemas que se ven afectados después). En este CVE, eso es clave: Expedition tiene SC:H porque las API keys expuestas comprometen los firewalls. v3.1 no capturaba bien ese efecto en cadena.&lt;/p&gt;
&lt;h2&gt;
  
  
  Resumen visual: cómo leer un vector rápido
&lt;/h2&gt;


&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;CVSS:3.1 / AV:? / AC:? / PR:? / UI:? / S:? / C:? / I:? / A:?
&amp;gt;           │       │       │       │       │     │      │     └─ ¿Se cae el servicio?
&amp;gt;           │       │       │       │       │     │      └──────── ¿Puede modificar datos?
&amp;gt;           │       │       │       │       │     └─────────────── ¿Puede leer datos privados?
&amp;gt;           │       │       │       │       └───────────────────── ¿El daño se propaga a otros sistemas?
&amp;gt;           │       │       │       └───────────────────────────── ¿Alguien tiene que hacer clic?
&amp;gt;           │       │       └───────────────────────────────────── ¿Necesita cuenta o contraseña?
&amp;gt;           │       └───────────────────────────────────────────── ¿Es difícil ejecutarlo?
&amp;gt;           └───────────────────────────────────────────────────── ¿Desde dónde puede atacar?
&amp;gt; 
&amp;gt; Valores de riesgo (de mayor a menor):
&amp;gt;   N (None) / H (High) = 🔴  →  Peor escenario
&amp;gt;   L (Low)             = 🟡  →  Impacto parcial
&amp;gt;   N (None en impacto) = 🟢  →  Sin efecto en esa categoría
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;h2&gt;
  
  
  La frase que resume todo
&lt;/h2&gt;

&lt;p&gt;Cuando veas un vector como el de CVE-2024-9465, tradúcelo a una sola frase antes de enviarlo al equipo:&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  📝 Traducción al español
  **"Cualquier persona en internet puede atacar este sistema sin credenciales ni ayuda de nadie, y obtener acceso completo a todos los datos confidenciales, incluyendo las llaves de tus firewalls."**
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Eso es lo que dice el vector. Ahora sí sabes por qué tiene un 9.2.&lt;/p&gt;
&lt;h2&gt;
  
  
  Conclusión
&lt;/h2&gt;

&lt;p&gt;El número CVSS te dice si debes preocuparte. El vector te dice &lt;em&gt;cómo&lt;/em&gt; preocuparte. &lt;strong&gt;AV:N/AC:L/PR:N/UI:N&lt;/strong&gt; juntos es lo más peligroso que existe: fácil, remoto y sin depender de nadie. Cuando lo veas así, actúa primero y analiza después.&lt;/p&gt;

&lt;p&gt;✅ &lt;/p&gt;

&lt;p&gt;✅ Regla práctica&lt;br&gt;
      Si los primeros 4 campos son &lt;strong&gt;AV:N / AC:L / PR:N / UI:N&lt;/strong&gt; — el atacante puede ser cualquier persona en internet, atacando sin esfuerzo, sin cuenta y sin ayuda. Parchea hoy.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Compartir

  🐦 Twitter/X
  💼 LinkedIn
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;
  
  
  ¿Te fue útil?
&lt;/h3&gt;

&lt;p&gt;Mando contenido así cuando tengo algo que vale la pena.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    Suscribirse





    ← Anterior
    CVE-2024-9465: SQL Injection en Palo Alto Expedition — CVSS 9.2


    Todos los posts →
    Ver el blog completo








byron.lainez
© 2026 · Guatemala 🇬🇹
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;

</description>
      <category>seguridad</category>
      <category>cvss</category>
      <category>fundamentos</category>
    </item>
    <item>
      <title>I Defend Networks for a Living. Google I/O 2026 Just Changed My Threat Model</title>
      <dc:creator>Byron Antonio Lainez Sasvin</dc:creator>
      <pubDate>Sun, 24 May 2026 05:28:55 +0000</pubDate>
      <link>https://dev.to/byron_lainez/i-defend-networks-for-a-living-google-io-2026-just-changed-my-threat-model-3bkm</link>
      <guid>https://dev.to/byron_lainez/i-defend-networks-for-a-living-google-io-2026-just-changed-my-threat-model-3bkm</guid>
      <description>&lt;p&gt;Everyone reading about Antigravity 2.0 this week is a developer celebrating what &lt;br&gt;
they can now build. I read the same announcements from a different chair: I'm an &lt;br&gt;
MSS Engineer at a Security Operations Center in Latin America. My job is to detect, &lt;br&gt;
contain, and respond to threats across the networks where these tools will eventually run.&lt;/p&gt;

&lt;p&gt;And Google I/O 2026 gave me a lot to think about — not because the technology is &lt;br&gt;
dangerous, but because it introduces agent execution patterns that most security &lt;br&gt;
teams are completely unprepared for.&lt;/p&gt;

&lt;p&gt;This is that conversation. The one the developer track didn't have.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Actually Shipped (The Security-Relevant Parts)
&lt;/h2&gt;

&lt;p&gt;Let me be specific about what changed, because the details matter.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Antigravity 2.0&lt;/strong&gt; introduced:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Subagent orchestration — one agent spawning and directing others&lt;/li&gt;
&lt;li&gt;Background cron workflows — agents running on schedules without human initiation
&lt;/li&gt;
&lt;li&gt;Native credential masking and Git policy enforcement in sandboxes&lt;/li&gt;
&lt;li&gt;An &lt;code&gt;AGENTS.md&lt;/code&gt; / &lt;code&gt;SKILL.md&lt;/code&gt; system for defining agent behavior in markdown files&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Managed Agents in the Gemini API&lt;/strong&gt; lets any developer with an API key provision &lt;br&gt;
an isolated Linux sandbox where an agent reasons, runs tools, executes code, and &lt;br&gt;
browses the web. One API call.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;WebMCP&lt;/strong&gt; lets websites expose structured JavaScript functions and HTML forms &lt;br&gt;
directly to browser-based agents.&lt;/p&gt;

&lt;p&gt;These three things together describe a world where autonomous code execution agents &lt;br&gt;
are a commodity, run on schedules, spawn children, interact with websites directly, &lt;br&gt;
and are configured through text files that can be stored in version control.&lt;/p&gt;

&lt;p&gt;That's a meaningfully different threat surface than "a chatbot that writes code suggestions."&lt;/p&gt;

&lt;h2&gt;
  
  
  The New Questions a SOC Has to Answer
&lt;/h2&gt;

&lt;p&gt;I work with CrowdStrike Falcon and SentinelOne daily. Right now, when I see &lt;br&gt;
suspicious process execution, I have a mental model: a human did something, &lt;br&gt;
or malware did something. The attribution chain — even when complicated — &lt;br&gt;
ultimately traces back to one of those two categories.&lt;/p&gt;

&lt;p&gt;Agents break that model.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;When Antigravity spawns a subagent that writes and executes code in a sandbox, &lt;br&gt;
what does that look like in an EDR telemetry feed?&lt;/strong&gt; Is it parent process → child &lt;br&gt;
process in a way I recognize? Or does it look like a new process tree with no &lt;br&gt;
obvious human ancestor? If my detection rules fire on "unusual process spawned by &lt;br&gt;
browser," will they fire on legitimate agent workflows too? &lt;/p&gt;

&lt;p&gt;I don't know yet. And neither does most of the security industry, because this &lt;br&gt;
is genuinely new behavior at scale.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Background cron workflows mean agents acting without user sessions.&lt;/strong&gt; &lt;br&gt;
Traditional behavioral analytics lean heavily on user context — this process ran &lt;br&gt;
while this user was logged in, doing these other things. An agent running on a &lt;br&gt;
schedule at 3am has no user session. It looks anomalous by design. Either we &lt;br&gt;
tune detection to exclude it (creating a blind spot) or we drown in false positives.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;code&gt;AGENTS.md&lt;/code&gt; and &lt;code&gt;SKILL.md&lt;/code&gt; files are configuration-as-code for agent behavior.&lt;/strong&gt; &lt;br&gt;
That's elegant for developers. For security teams, it means agent behavior can be &lt;br&gt;
modified by anyone with write access to a repository — and that modification &lt;br&gt;
might not go through any approval workflow, might not trigger any alert, &lt;br&gt;
and might not be reviewed by anyone who understands the security implications.&lt;/p&gt;

&lt;p&gt;Prompt injection already exists as an attack class. Now imagine prompt injection &lt;br&gt;
via a committed markdown file in a repository that a developer trusted.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Google Actually Got Right (Security Edition)
&lt;/h2&gt;

&lt;p&gt;I want to be clear: I'm not writing a scare piece. Several of Google's design &lt;br&gt;
choices at I/O 2026 show real security awareness.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cross-platform terminal sandboxing&lt;/strong&gt; in Antigravity is a meaningful control. &lt;br&gt;
Agents running in isolated Linux VMs with fresh filesystems per execution have &lt;br&gt;
a much smaller blast radius than agents running in shared environments. &lt;br&gt;
If an agent gets manipulated into doing something malicious, containment &lt;br&gt;
is real — not theoretical.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Credential masking as a native feature&lt;/strong&gt; is the right call. One of the &lt;br&gt;
most common failure modes in early agentic systems was agents logging or &lt;br&gt;
outputting credentials that were in their context. Building masking into &lt;br&gt;
the harness rather than leaving it to individual developers reduces &lt;br&gt;
that class of incident significantly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hardened Git policies&lt;/strong&gt; mean agents can't arbitrarily push to protected &lt;br&gt;
branches. Again — this is the right constraint to build into the platform.&lt;/p&gt;

&lt;p&gt;Google clearly thought about the obvious attack surface. The question is &lt;br&gt;
whether they thought about the non-obvious ones.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Gap Nobody's Talking About
&lt;/h2&gt;

&lt;p&gt;The gap is &lt;strong&gt;observability and auditability for security teams&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Developers have great new tools to build and run agents. What do security &lt;br&gt;
teams get to monitor them?&lt;/p&gt;

&lt;p&gt;Right now the answer appears to be: the same SIEM and EDR tools we already have, &lt;br&gt;
which were designed for human-generated activity and are going to produce significant &lt;br&gt;
noise when confronted with agent-generated activity at scale.&lt;/p&gt;

&lt;p&gt;I'd like to see — and I'd argue the industry needs before this becomes mainstream &lt;br&gt;
in enterprises — a few things that weren't in the I/O announcements:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Structured agent audit logs&lt;/strong&gt; that are parseable by security tooling. Not &lt;br&gt;
application logs, but something analogous to CloudTrail for agent actions: &lt;br&gt;
what did this agent call, what files did it touch, what external requests &lt;br&gt;
did it make, what was the decision chain that led to each action?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Agent identity in security context.&lt;/strong&gt; When an Antigravity agent makes a &lt;br&gt;
network request, what identity does it carry? Is it the developer's API key? &lt;br&gt;
A service account? How does an IR team, post-incident, determine which agent &lt;br&gt;
made which request with what authorization?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AGENTS.md change detection and alerting.&lt;/strong&gt; If this file is where agent &lt;br&gt;
behavior lives, security teams need to know when it changes — not as a &lt;br&gt;
Git notification to a developer, but as a security event with context.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why This Matters for the Developer Community
&lt;/h2&gt;

&lt;p&gt;If you're building with Antigravity, Managed Agents, or any of Google's &lt;br&gt;
new agentic tooling — this is on you too, not just the security team.&lt;/p&gt;

&lt;p&gt;The security of AI agent systems doesn't live only in the platform controls &lt;br&gt;
Google builds. It lives in how developers design agent scopes (minimal permissions, &lt;br&gt;
always), how they handle credentials in AGENTS.md files (they shouldn't be there), &lt;br&gt;
how they think about what happens when an agent receives unexpected input from &lt;br&gt;
an external source it was instructed to interact with.&lt;/p&gt;

&lt;p&gt;WebMCP being a structured interface rather than screen scraping is &lt;br&gt;
actually a security improvement — it reduces the attack surface of &lt;br&gt;
"agent receives malicious content from a web page and executes it." &lt;br&gt;
But it doesn't eliminate prompt injection. A WebMCP endpoint can still &lt;br&gt;
return instructions crafted to manipulate the agent's next action.&lt;/p&gt;

&lt;p&gt;The developer and security communities need to have this conversation &lt;br&gt;
together, now, before agent-generated activity is normalized in enterprise &lt;br&gt;
environments and the anomaly detection window closes.&lt;/p&gt;

&lt;p&gt;Google I/O 2026 built a remarkable platform. The security industry's job &lt;br&gt;
is to make sure we understand it before the adversaries do.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Bals (Byron Lainez) is an MSS Engineer at  Security Operations Center &lt;br&gt;
in Guatemala, working daily with CrowdStrike Falcon. He leads &lt;br&gt;
the AWS User Group El Progreso.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>googleiochallenge</category>
      <category>antigravity</category>
      <category>webmcp</category>
      <category>security</category>
    </item>
    <item>
      <title>Virtual SOC Analyst</title>
      <dc:creator>Byron Antonio Lainez Sasvin</dc:creator>
      <pubDate>Sun, 24 May 2026 04:46:38 +0000</pubDate>
      <link>https://dev.to/byron_lainez/virtual-soc-analyst-4a5p</link>
      <guid>https://dev.to/byron_lainez/virtual-soc-analyst-4a5p</guid>
      <description>&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://analista.byronlainez.click/" rel="noopener noreferrer"&gt;analista.byronlainez.click&lt;/a&gt;&lt;/strong&gt; is an AI-powered &lt;strong&gt;Virtual SOC (Security Operations Center) Analyst&lt;/strong&gt; that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ingests raw cloud security logs (AWS CloudTrail, WAF, Nginx) with no size limits&lt;/li&gt;
&lt;li&gt;Automatically maps every detected threat to &lt;strong&gt;MITRE ATT&amp;amp;CK&lt;/strong&gt; and &lt;strong&gt;OWASP Top 10&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Generates &lt;strong&gt;production-ready AWS WAF block rules&lt;/strong&gt; and Terraform HCL — copy-paste to deploy&lt;/li&gt;
&lt;li&gt;Analyzes &lt;strong&gt;screenshots of dashboards and architecture diagrams&lt;/strong&gt; using Gemma 4's multimodal vision&lt;/li&gt;
&lt;li&gt;Runs a &lt;strong&gt;fully private local mode&lt;/strong&gt; where Gemma 4 4B executes inside the browser via WebLLM — your logs never leave your machine&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  The Problem It Solves
&lt;/h3&gt;

&lt;p&gt;If you manage AWS infrastructure, you know the pain: &lt;strong&gt;CloudTrail + WAF + Nginx logs grow exponentially&lt;/strong&gt;. A production environment generates tens of thousands of security events per hour. When an incident happens:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Junior SOC analysts hit &lt;strong&gt;alert fatigue&lt;/strong&gt; within 30 minutes of a real incident&lt;/li&gt;
&lt;li&gt;Correlating events separated in time (a 2:00 AM port scan and a 5:00 AM SQL injection from the same IP) requires expensive SIEM tooling or hours of manual grep queries&lt;/li&gt;
&lt;li&gt;Writing a WAF block rule takes 10–15 minutes — time that an active attacker is already exploiting&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;This tool cuts all of that to under 30 seconds.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The real enemy in cybersecurity is often not the attacker — it is the sheer &lt;strong&gt;volume of data&lt;/strong&gt; that buries the signal inside the noise. Gemma 4 solves this.&lt;/p&gt;




&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Unfortunately, due to the API limit, I couldn't record the video, but I'm leaving the link so you can try it. In the settings, if you don't see the option to enter the API, reduce your window resolution.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7kn6u7wyfx55gadn500g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7kn6u7wyfx55gadn500g.png" alt=" " width="800" height="315"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🌐 &lt;strong&gt;Live app:&lt;/strong&gt; &lt;a href="https://analista.byronlainez.click/" rel="noopener noreferrer"&gt;analista.byronlainez.click&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  End-to-End Example
&lt;/h3&gt;

&lt;p&gt;I fed the tool a raw AWS WAF log containing a SQL injection attempt from an automated scanner:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Input — raw WAF log:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"timestamp"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2026-05-21T02:14:33Z"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ALLOW"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"httpRequest"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"uri"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"/api/users?id=1' OR '1'='1"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"clientIp"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"45.33.32.156"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"country"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"RU"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"headers"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"User-Agent"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"value"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"sqlmap/1.7"&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Gemma 4 analysis — returned in under 8 seconds:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;🚨 THREAT DETECTED — HIGH CONFIDENCE

MITRE Tactic:    Initial Access
MITRE Technique: T1190 — Exploit Public-Facing Application
OWASP Category:  A03:2021 — Injection (SQL Injection)
Attacker IP:     45.33.32.156
Tool Signature:  sqlmap/1.7 (automated SQL injection scanner)

Timeline correlation: This IP performed ICMP reconnaissance
at 01:47 UTC before switching to active exploitation.

Recommended Action: BLOCK immediately and audit all requests
from this source in the last 24 hours for lateral movement.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Auto-generated AWS WAF block rule — ready to deploy:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"Name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"BlockMaliciousIPsGemma"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"Priority"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"Statement"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"IPSetReferenceStatement"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"ARN"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:wafv2:us-east-1:123456789012:regional/ipset/MaliciousIPs/a1b2c3d4"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"Action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nl"&gt;"Block"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{}&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"VisibilityConfig"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"SampledRequestsEnabled"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"CloudWatchMetricsEnabled"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"MetricName"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"BlockMaliciousIPsGemmaMetric"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;No editing needed. Paste this directly into AWS Console or deploy via CLI.&lt;/p&gt;

&lt;h3&gt;
  
  
  Visual Triage — Multimodal in Action
&lt;/h3&gt;

&lt;p&gt;I uploaded a screenshot of an AWS architecture diagram where a database was sitting in a public subnet. Gemma 4 flagged it without any additional prompting:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;⚠️ ARCHITECTURE MISCONFIGURATION DETECTED

Finding:     RDS instance appears exposed in a public subnet
Risk Level:  CRITICAL — direct internet-reachable database
MITRE Ref:   T1190, T1078 (Valid Accounts via exposed DB port)

Remediation:
1. Move RDS to a private subnet immediately
2. Configure NAT Gateway for outbound-only connectivity
3. Enable RDS encryption at rest (KMS) if not already active
4. Audit Security Group rules — port 3306/5432 must not be 0.0.0.0/0
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This second layer of analysis — visual + log correlation — is something no purely text-based model can replicate.&lt;/p&gt;




&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;🔗 &lt;strong&gt;Repository:&lt;/strong&gt; &lt;a href="https://github.com/Byronsasvin/bals-analyst-v2" rel="noopener noreferrer"&gt;github.com/Byronsasvin/bals-analyst-v2&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Core Architecture
&lt;/h3&gt;

&lt;p&gt;The system is built around a &lt;strong&gt;structured prompt engineering core&lt;/strong&gt; that leverages Gemma 4's 128K context window to correlate security events across massive log files in a single inference pass — no chunking, no summarization loss.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SOC analyst system prompt (simplified):&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;SYSTEM_PROMPT&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="sh"&gt;"""&lt;/span&gt;&lt;span class="s"&gt;
You are a senior SOC analyst with expertise in AWS security,
MITRE ATT&amp;amp;CK framework, and OWASP Top 10.

Analyze the provided security logs and return a structured JSON with:
  - threat_detected: boolean
  - confidence: HIGH | MEDIUM | LOW
  - mitre_tactic: string
  - mitre_technique: string (include T-number)
  - owasp_category: string or null
  - attacker_ips: array of strings
  - attack_timeline: chronologically ordered events
  - waf_rule_json: complete AWS WAF rule object, deployment-ready
  - remediation_steps: prioritized action list

If image input is provided, also analyze for:
  - Architecture misconfigurations (public subnets, open ports)
  - Visual anomalies in traffic/metric charts
&lt;/span&gt;&lt;span class="sh"&gt;"""&lt;/span&gt;

&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;analyze&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;log_content&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;str&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;screenshot&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="bp"&gt;None&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;-&amp;gt;&lt;/span&gt; &lt;span class="nb"&gt;dict&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
    &lt;span class="n"&gt;messages&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;role&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;user&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[]}]&lt;/span&gt;

    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;screenshot&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
        &lt;span class="c1"&gt;# Gemma 4 multimodal: image tokens must precede text tokens
&lt;/span&gt;        &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nf"&gt;append&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;image&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
            &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;image&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;screenshot&lt;/span&gt;
        &lt;span class="p"&gt;})&lt;/span&gt;

    &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;content&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nf"&gt;append&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;text&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;text&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;SYSTEM_PROMPT&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="se"&gt;\n\n&lt;/span&gt;&lt;span class="s"&gt;Logs to analyze:&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;log_content&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;
    &lt;span class="p"&gt;})&lt;/span&gt;

    &lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;gemma4_client&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;chat&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="n"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="n"&gt;response_format&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;type&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;json_object&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;
        &lt;span class="n"&gt;max_tokens&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;2048&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="n"&gt;temperature&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mf"&gt;0.1&lt;/span&gt;   &lt;span class="c1"&gt;# Low temperature = consistent structured output
&lt;/span&gt;    &lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;loads&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;choices&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;message&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;content&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Local edge mode — Gemma 4 4B running 100% in-browser:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;CreateWebWorkerMLCEngine&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;@mlc-ai/web-llm&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="c1"&gt;// Runs in a Web Worker — zero server calls, zero data leakage&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;engine&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nc"&gt;CreateWebWorkerMLCEngine&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
  &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;Worker&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="nc"&gt;URL&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;./worker.js&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="k"&gt;import&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;meta&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;url&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;module&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="p"&gt;}),&lt;/span&gt;
  &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;gemma-4-4b-it-q4f32_1-MLC&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;initProgressCallback&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;p&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nf"&gt;updateProgressBar&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;p&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;progress&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="k"&gt;async&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;analyzeLocally&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;logContent&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;reply&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;engine&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;chat&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;completions&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;create&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
    &lt;span class="na"&gt;messages&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
      &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;role&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;system&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;content&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;SYSTEM_PROMPT&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
      &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;role&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;user&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;   &lt;span class="na"&gt;content&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;logContent&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;],&lt;/span&gt;
    &lt;span class="na"&gt;temperature&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mf"&gt;0.1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="na"&gt;max_tokens&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;2048&lt;/span&gt;
  &lt;span class="p"&gt;});&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;JSON&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;parse&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;reply&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;choices&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nx"&gt;message&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;content&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After the model downloads once (~2.5 GB cached in IndexedDB), every analysis run is completely offline. &lt;strong&gt;Your production logs never touch a server.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  How I Used Gemma 4
&lt;/h2&gt;

&lt;p&gt;I made a &lt;strong&gt;deliberate choice to use two different Gemma 4 variants&lt;/strong&gt; for two distinct security scenarios. Here is the reasoning behind each decision.&lt;/p&gt;

&lt;h3&gt;
  
  
  Gemma 4 27B — Deep cloud forensics (via Gemini API)
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Why 27B? The 128K context window was the decisive factor.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I benchmarked the same log analysis task against smaller models and previous-generation LLMs. Every one of them failed in the same way: they either refused files larger than ~30K tokens, or they exhibited the classic "lost in the middle" problem — forgetting events from the beginning of the log by the time they reached the end.&lt;/p&gt;

&lt;p&gt;With &lt;strong&gt;Gemma 4 27B&lt;/strong&gt;, I fed a complete 72-hour CloudTrail export (~85K tokens) in a single call. It correctly identified a three-hop attack chain:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Time&lt;/th&gt;
&lt;th&gt;IP&lt;/th&gt;
&lt;th&gt;Event&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;02:14 UTC&lt;/td&gt;
&lt;td&gt;45.33.32.156&lt;/td&gt;
&lt;td&gt;ICMP sweep — passive reconnaissance&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;03:47 UTC&lt;/td&gt;
&lt;td&gt;45.33.32.159&lt;/td&gt;
&lt;td&gt;WAF probing — fuzzing for bypasses&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;05:22 UTC&lt;/td&gt;
&lt;td&gt;45.33.32.157&lt;/td&gt;
&lt;td&gt;Active SQL injection using &lt;code&gt;sqlmap&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;That correlation across 3 hours and 3 rotating IPs from the same subnet would have taken a human analyst 45+ minutes to find manually.&lt;/strong&gt; Gemma 4 found it in one inference pass, in under 90 seconds.&lt;/p&gt;

&lt;p&gt;This is what the 128K window actually unlocks in a security context: not just "longer documents," but &lt;strong&gt;temporal correlation at scale&lt;/strong&gt; without losing context.&lt;/p&gt;

&lt;h3&gt;
  
  
  Gemma 4 4B — Privacy-first local analysis (via WebLLM)
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Why 4B in the browser? Because compliance is a hard blocker for most enterprises.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Uploading production security logs to any external API — even a secure, encrypted one — can violate:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;GDPR&lt;/strong&gt; Article 28 — data processor agreements and data residency requirements&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;HIPAA&lt;/strong&gt; — if HTTP request logs contain PHI embedded in URL parameters&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;PCI-DSS&lt;/strong&gt; — cardholder data potentially visible in WAF request logs&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By running &lt;strong&gt;Gemma 4 4B locally via WebLLM&lt;/strong&gt;, the sensitive data never leaves the user's machine. The model runs in a browser Web Worker with no outbound network calls after the initial model download. This makes the tool usable for banks, hospitals, and any regulated industry that would otherwise be completely blocked from using a cloud API version.&lt;/p&gt;

&lt;p&gt;The 4B model handles single-event triage with enough accuracy for real-time alerting. Users who need deep forensic correlation across large log archives can switch to the cloud mode with a single toggle.&lt;/p&gt;

&lt;h3&gt;
  
  
  Native multimodal — an unexpected force multiplier
&lt;/h3&gt;

&lt;p&gt;Building the visual triage module revealed something I did not anticipate: &lt;strong&gt;Gemma 4 can read AWS dashboard screenshots with the accuracy of a trained human analyst.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Feed it a CloudWatch metrics screenshot showing a traffic anomaly, and it correctly identifies:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The approximate time window of the spike&lt;/li&gt;
&lt;li&gt;Whether the pattern resembles a DDoS, a scraper bot, or a legitimate traffic surge&lt;/li&gt;
&lt;li&gt;Which alarms should have fired but did not — flagging monitoring gaps&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is a second analysis layer that no text-only model can replicate. It required zero extra tooling — just passing the screenshot as native image input to Gemma 4.&lt;/p&gt;




&lt;h2&gt;
  
  
  From MVP to Enterprise: The Closed-Loop SOC Pipeline
&lt;/h2&gt;

&lt;p&gt;This app is a working MVP. Here is how the same architecture scales to a fully automated, production-grade SecOps pipeline:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;AWS WAF / CloudTrail
        │
        ▼
Amazon Kinesis Firehose      ← real-time event stream
        │
        ▼
Classifier Lambda             ← fast filter: normal vs suspicious
        │ (suspicious events only)
        ▼
analista.byronlainez.click API
        │
        ▼
Gemma 4 31B Dense             ← deep reasoning + timeline correlation
        │
        ▼
Generate WAF Rule JSON
        │
        ▼
Lambda → Update WAF IP Set   ← automatic block in ~200ms
        │
        ▼
Slack / Teams webhook         ← SOC team notified with full report
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;What this closed-loop approach delivers:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Zero-touch threat containment&lt;/strong&gt; — from detection to active block in under 500ms, with no human in the loop for high-confidence threats&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Automated IAM privilege audits&lt;/strong&gt; — Gemma 4 31B Dense running nightly scans of all IAM policies, surfacing silent privilege escalation paths before attackers find them&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;SIEM enrichment&lt;/strong&gt; — structured threat reports pushed directly into Splunk, Microsoft Sentinel, or any webhook-compatible platform&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;That is what open-weights models like Gemma 4 make possible — and why I believe this architecture represents the future of accessible, privacy-respecting enterprise security.&lt;/p&gt;




&lt;p&gt;Try &lt;strong&gt;&lt;a href="https://analista.byronlainez.click/" rel="noopener noreferrer"&gt;analista.byronlainez.click&lt;/a&gt;&lt;/strong&gt; with your own logs.&lt;/p&gt;

&lt;p&gt;What threats did Gemma 4 find in your infrastructure? Drop your results in the comments 👇&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>gemmachallenge</category>
      <category>gemma</category>
      <category>security</category>
    </item>
    <item>
      <title>Todo lo que debes saber sobre IAM en 2026</title>
      <dc:creator>Byron Antonio Lainez Sasvin</dc:creator>
      <pubDate>Tue, 12 May 2026 04:33:22 +0000</pubDate>
      <link>https://dev.to/byron_lainez/todo-lo-que-debes-saber-sobre-iam-en-2026-31m3</link>
      <guid>https://dev.to/byron_lainez/todo-lo-que-debes-saber-sobre-iam-en-2026-31m3</guid>
      <description>&lt;p&gt;Si hay un servicio fundamental para cualquiera que toque la nube, es &lt;strong&gt;IAM (Identity and Access Management)&lt;/strong&gt;. En una época en la que gran parte de nuestras infraestructuras se gestionan con ayuda de agentes autónomos y herramientas de última generación, IAM sigue siendo el verdadero guardián de tus datos y recursos.&lt;/p&gt;

&lt;p&gt;A lo largo de los años, he escuchado infinidad de preguntas. A continuación, respondo las dudas más comunes sobre la gestión de accesos en pleno 2026, y ahondaré también en cómo la ** Inteligencia Artificial (IA)** ha entrado a jugar en la cancha del control de accesos.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. ¿Seguimos usando "Usuarios de IAM" tradicionales?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;La respuesta corta es NO.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Crear usuarios directamente en IAM (los famosos &lt;em&gt;IAM Users&lt;/em&gt; con Access Keys de larga duración) es ahora considerado un anti-patrón enorme y una receta para desastres de seguridad. En 2026 utilizamos &lt;strong&gt;IAM Identity Center&lt;/strong&gt; (el sucesor definitivo de AWS SSO), el cual te permite unificar los accesos y entregar credenciales temporales. Las "Access Keys que nunca expiran" ya son de la década pasada.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Políticas Inline vs Políticas Administradas (Managed Policies)
&lt;/h2&gt;

&lt;p&gt;Es una duda de siempre: &lt;em&gt;"¿Conviene meter los permisos directo al rol o crearlos por separado?"&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Managed Policies (Administradas):&lt;/strong&gt; Son la mejor opción. Las creas una vez, controlas sus versiones y las aplicas a los múltiples roles que consideres necesarios. Son auditables fácilmente en CloudTrail y Config.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Inline Policies:&lt;/strong&gt; Recomendables &lt;strong&gt;solo&lt;/strong&gt; si estás haciendo una restricción altamente específica que sabes que nadie más va a reutilizar bajo ningún caso en toda la cuenta. &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  3. ¿Qué son los famosos "Permission Boundaries"?
&lt;/h2&gt;

&lt;p&gt;Imagina que tienes una agencia y quieres darle capacidad a unos devs Jr de crear sus propios "roles" para sus aplicaciones, pero te aterroriza que se otorguen permisos de "Administrador" accidentalmente a ellos mismos y secuestren tu cuenta.&lt;/p&gt;

&lt;p&gt;El límite de permisos (&lt;em&gt;Permission Boundary&lt;/em&gt;) es la frontera absoluta que nadie puede pasar. Si un desarrollador crea otro rol con permisos completos a la base de datos de los clientes, pero tu Permission Boundary dice que &lt;em&gt;nadie en ese departamento&lt;/em&gt; puede borrar bases de datos de clientes, ese nuevo rol no podrá hacerlo. Punto final. Incluso teniendo políticas de &lt;code&gt;AdministradorAccess&lt;/code&gt; adheridas.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. ¿Cómo afecta la Inteligencia Artificial (IA) a IAM? Dudas más comunes
&lt;/h2&gt;

&lt;p&gt;Con agentes como AWS Kiro u otros asistentes basados en IA apoyándonos al escribir la infraestructura, surgen muchas dudas acerca de la seguridad. Te muestro cómo interactúan IAM e IA hoy en día (y cómo resolver esto minimizando peligros):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;"¿La IA no creará roles inseguros?" - IA en la Generación de Píldoras IAM:&lt;/strong&gt; Ya no debes adivinar cuáles permisos exactos necesitas. Las IAs de 2026 mapean tu código o infraestructura en un instante y &lt;strong&gt;te sugieren la política de IAM exacta&lt;/strong&gt; con privilegios mínimos en formato JSON (Least Privilege). Esto es una maravilla defensiva.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Auditoría Automatizada Potenciada por IA:&lt;/strong&gt; Gracias a machine learning profundo, los analizadores ahora no arrojan "solo" fallas sintácticas de JSON; te alertan en lenguaje natural: &lt;em&gt;“El rol 'S1-Deploy' tiene permisos de escritura en la base de Prod y no los ha usado en 90 días, te recomiendo generar un retiro de permisos ahora mismo”.&lt;/em&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Permisos especiales para agentes IA de codificación:&lt;/strong&gt; Si usas un asistente que modifique código o genere despliegues por ti en tu consola (los agentes verdaderos de "acción"), &lt;strong&gt;debes usar Service Control Policies (SCPs) restrictivas.&lt;/strong&gt; Crea un ambiente de pruebas y al agente otórgale credenciales cortas donde es imposible bajo cualquier escenario (aún alucinando) que el agente te elimine de la facturación o abra redes por error a internet.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;⚠️ &lt;/p&gt;

&lt;p&gt;⚠️ Ojo al dato Crítico&lt;br&gt;
      NUNCA le des credenciales estáticas de tipo "AdministratorAccess" ni siquiera a una IA o asistente de código potente para "que haga lo suyo". Debes de proveer identidades cortas (roles que asumibles a través de su Identity Provider vía OIDC) diseñadas paso a paso.&lt;/p&gt;
&lt;h2&gt;
  
  
  5. IAM Roles "Asumibles": ¿Por qué a todo el mundo le duele la cabeza configurarlos?
&lt;/h2&gt;

&lt;p&gt;La curva de aprendizaje para IAM casi siempre está en &lt;strong&gt;Trust Relationships (Relaciones de Confianza)&lt;/strong&gt;. Un rol consta de dos partes indiscutibles:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Permissions Policy (Política de Permisos):&lt;/strong&gt; ¿Qué es lo que este rol puede hacer? (Ej: Leer DynamoDB en mi tabla 'usuarios').&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Trust Policy (Política de Confianza):&lt;/strong&gt; ¿QUIÉN puede meterse dentro (asumir) de este rol? (Ej: Un usuario de Azure AD, una función Lambda, o una instancia de EC2).&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Si alguna vez te encuentras con un servicio que recibe un fallo de tipo "AccessDenied" cuando intenta ejecutar tu trabajo, usualmente es porque olvidaste revisar el Trust Policy, no la de permisos propiamente.&lt;/p&gt;
&lt;h2&gt;
  
  
  Conclusión
&lt;/h2&gt;

&lt;p&gt;El núcleo de la seguridad siempre será asegurarnos de que "cada tecnología/rol solo acceda a lo estrictamente necesario". IAM toma días en aprenderse, pero semanas o meses en dominarlo. El mantra aquí es simple: &lt;strong&gt;No al usuario estático de 2020, sí a OIDC/Identity Center provisionales, y apoyo continuo usando IA para validar que el ecosistema se mantenga firme.&lt;/strong&gt;&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Compartir

  🐦 Twitter/X
  💼 LinkedIn
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;
  
  
  ¿Te fue útil?
&lt;/h3&gt;

&lt;p&gt;Mando contenido así cuando tengo algo que vale la pena.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    Suscribirse





    ← Anterior
    ¿Qué es y para qué sirve AWS Kiro?








byron.lainez
© 2026 · Guatemala 🇬🇹
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;

</description>
      <category>aws</category>
      <category>seguridad</category>
    </item>
    <item>
      <title>MITRE ATT&amp;CK: el mapa del crimen que todo profesional de seguridad debería conocer</title>
      <dc:creator>Byron Antonio Lainez Sasvin</dc:creator>
      <pubDate>Fri, 01 May 2026 16:37:45 +0000</pubDate>
      <link>https://dev.to/byron_lainez/mitre-attck-el-mapa-del-crimen-que-todo-profesional-de-seguridad-deberia-conocer-2dib</link>
      <guid>https://dev.to/byron_lainez/mitre-attck-el-mapa-del-crimen-que-todo-profesional-de-seguridad-deberia-conocer-2dib</guid>
      <description>&lt;p&gt;En ciberseguridad hay frameworks que son bonitos en papel y nadie usa en la vida real. Y luego está &lt;strong&gt;MITRE ATT&amp;amp;CK&lt;/strong&gt; — que usan los equipos de threat intelligence de Microsoft, CrowdStrike, Mandiant y básicamente cualquier SOC que se tome en serio su trabajo.&lt;/p&gt;

&lt;p&gt;La diferencia es que ATT&amp;amp;CK no es teoría. Es una base de datos viva de cómo atacan los adversarios reales, construida a partir de incidentes reales documentados. Si quieres entender al atacante, primero necesitas hablar su idioma.&lt;/p&gt;

&lt;h2&gt;
  
  
  La analogía: el manual del ladrón profesional
&lt;/h2&gt;

&lt;p&gt;Imagina que eres detective y quieres atrapar a ladrones de bancos. Tienes dos opciones:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  🔍 Opción A — Sin MITRE
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Llegas al banco robado, ves que falta dinero, y tratas de adivinar cómo entraron. Cada robo lo investigas desde cero. No sabes si van a volver, ni qué van a intentar después.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  🗺️ Opción B — Con MITRE
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Tienes un catálogo detallado de cómo operan los grupos de ladrones más peligrosos del mundo. Sabes que el &lt;em&gt;Grupo A&lt;/em&gt; siempre entra por el sótano, deshabilita las cámaras antes de actuar, y siempre ataca un viernes. Cuando ves las señales, sabes exactamente qué va a pasar después.&lt;/p&gt;

&lt;p&gt;Eso es MITRE ATT&amp;amp;CK para ciberseguridad: el catálogo de cómo operan los atacantes reales, paso a paso.&lt;/p&gt;

&lt;h2&gt;
  
  
  ¿Qué es MITRE ATT&amp;amp;CK exactamente?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;MITRE&lt;/strong&gt; es una organización sin fines de lucro que trabaja con el gobierno de EE.UU. en investigación de seguridad. En 2013 empezaron a documentar las técnicas que usaban los atacantes reales en incidentes reales. Hoy, esa base de datos se llama &lt;strong&gt;ATT&amp;amp;CK&lt;/strong&gt; (&lt;em&gt;Adversarial Tactics, Techniques &amp;amp; Common Knowledge&lt;/em&gt;) y tiene más de 600 técnicas documentadas.&lt;/p&gt;

&lt;p&gt;El framework se organiza en una &lt;strong&gt;matriz&lt;/strong&gt;: las columnas son &lt;strong&gt;tácticas&lt;/strong&gt; (el objetivo del atacante en esa fase) y las filas son &lt;strong&gt;técnicas&lt;/strong&gt; (cómo lo consigue).&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    TA0043
    Reconnaissance
    43 técnicas


    TA0042
    Resource Development
    8 técnicas


    TA0001
    Initial Access
    10 técnicas


    TA0002
    Execution
    14 técnicas


    TA0003
    Persistence
    20 técnicas


    TA0004
    Privilege Escalation
    14 técnicas


    TA0005
    Defense Evasion
    43 técnicas


    TA0006
    Credential Access
    17 técnicas


    TA0007
    Discovery
    32 técnicas


    TA0008
    Lateral Movement
    9 técnicas


    TA0009
    Collection
    17 técnicas


    TA0011
    Command &amp;amp; Control
    18 técnicas


    TA0010
    Exfiltration
    9 técnicas


    TA0040
    Impact
    14 técnicas
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Cada táctica responde a la pregunta &lt;em&gt;"¿qué quiere lograr el atacante ahora?"&lt;/em&gt; y cada técnica responde &lt;em&gt;"¿cómo lo está haciendo?"&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Un ataque real traducido a MITRE ATT&amp;amp;CK
&lt;/h2&gt;

&lt;p&gt;Así se ve un ataque de ransomware típico cuando lo mapeas al framework. En lugar de "nos hackearon", tienes exactamente qué pasó en cada fase:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  🎯 Ataque de ransomware — mapeado a ATT&amp;amp;CK

    Paso 1

      El atacante envía un email con un Excel malicioso al área de contabilidad.
      → T1566.001 · Phishing: Spearphishing Attachment (Initial Access)



    Paso 2

      El Excel ejecuta una macro que descarga un payload de internet.
      → T1059.005 · Command &amp;amp; Scripting: Visual Basic (Execution)



    Paso 3

      El malware se registra en el inicio de Windows para sobrevivir reinicios.
      → T1547.001 · Boot or Logon Autostart: Registry Run Keys (Persistence)



    Paso 4

      Roba las credenciales de la memoria RAM del sistema.
      → T1003.001 · OS Credential Dumping: LSASS Memory (Credential Access)



    Paso 5

      Usa esas credenciales para moverse a otros equipos de la red.
      → T1021.002 · Remote Services: SMB/Windows Admin Shares (Lateral Movement)



    Paso 6

      Cifra todos los archivos y deja la nota de rescate.
      → T1486 · Data Encrypted for Impact (Impact)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Cuando documentas incidentes así, dejas de decir "nos hackearon" y empiezas a decir "el adversario usó T1566 para el acceso inicial y T1003 para escalar privilegios". Eso le dice a tu equipo exactamente qué buscar y cómo defenderse.&lt;/p&gt;

&lt;h2&gt;
  
  
  ¿Por qué deberías aprenderlo si trabajas en seguridad?
&lt;/h2&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    SOC Analyst
    Triaje más rápido
    Cuando ves una alerta de EDR, el ID de técnica ATT&amp;amp;CK te dice exactamente qué está pasando y qué revisar a continuación. Sin ATT&amp;amp;CK, investigas a ciegas.


    Threat Intelligence
    Lenguaje común
    Todos los reportes de inteligencia serios (Mandiant, CrowdStrike, CISA) usan IDs ATT&amp;amp;CK. Sin conocerlo, lees los reportes a medias.


    Blue Team
    Detecciones basadas en comportamiento
    Construir reglas de detección por técnica ATT&amp;amp;CK es más efectivo que buscar firmas de malware. Los atacantes cambian herramientas, pero las técnicas se repiten.


    Red Team / Pentester
    Simular adversarios reales
    Los ejercicios de adversary emulation usan ATT&amp;amp;CK para simular grupos APT específicos. Es el estándar para engagements serios.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;blockquote&gt;
&lt;p&gt;💡 &lt;/p&gt;

&lt;p&gt;💡 Por qué importa en LATAM específicamente&lt;br&gt;
      Las herramientas que usamos en la región — CrowdStrike, SentinelOne, Sophos — todas mapean sus detecciones a ATT&amp;amp;CK. Cuando ves una alerta en el dashboard y dice &lt;code&gt;T1055 - Process Injection&lt;/code&gt;, estás viendo ATT&amp;amp;CK. Si no sabes qué significa, estás perdiendo contexto en cada alerta del día.&lt;/p&gt;
&lt;h2&gt;
  
  
  Las 3 capas que necesitas entender
&lt;/h2&gt;


&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;MITRE ATT&amp;amp;CK
&amp;gt; ├── Tácticas (14 en total)          ← El "qué quiere lograr"
&amp;gt; │   └── TA0001: Initial Access
&amp;gt; │   └── TA0002: Execution
&amp;gt; │   └── ... (12 más)
&amp;gt; │
&amp;gt; ├── Técnicas (~200)                 ← El "cómo lo hace"
&amp;gt; │   └── T1566: Phishing
&amp;gt; │   └── T1059: Command &amp;amp; Scripting
&amp;gt; │   └── ...
&amp;gt; │
&amp;gt; └── Sub-técnicas (~400)             ← El detalle específico
&amp;gt;     └── T1566.001: Spearphishing Attachment
&amp;gt;     └── T1566.002: Spearphishing Link
&amp;gt;     └── ...
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;No necesitas memorizar las 600+ técnicas. Necesitas entender la estructura y saber dónde buscar. Con el tiempo, las más comunes se te van a quedar solas — porque las verás en alertas reales todos los días.&lt;/p&gt;
&lt;h2&gt;
  
  
  Cómo empezar sin abrumarte
&lt;/h2&gt;

&lt;p&gt;✅ &lt;/p&gt;

&lt;p&gt;✅ Plan de 3 pasos&lt;br&gt;
      &lt;strong&gt;Paso 1 — Aprende las 14 tácticas.&lt;/strong&gt; Solo los nombres y el objetivo de cada una. Con eso ya tienes el mapa general.&lt;br&gt;
      &lt;strong&gt;Paso 2 — Estudia las técnicas más comunes.&lt;/strong&gt; T1566 (Phishing), T1059 (Scripts), T1003 (Credential Dumping), T1486 (Ransomware). Las verás en el 80% de los incidentes reales.&lt;br&gt;
      &lt;strong&gt;Paso 3 — Mapea un incidente real.&lt;/strong&gt; Toma cualquier reporte de threat intel (los de CISA son públicos) y trata de identificar las técnicas ATT&amp;amp;CK. Eso vale más que cualquier curso.&lt;/p&gt;
&lt;h2&gt;
  
  
  El recurso que construí para practicarlo
&lt;/h2&gt;

&lt;p&gt;Aprender ATT&amp;amp;CK de memoria leyendo la documentación oficial es un camino lento y aburrido. Por eso construí &lt;strong&gt;MITRE ATT&amp;amp;CK Learning&lt;/strong&gt;: una plataforma para estudiar las tácticas y técnicas con flashcards y modo quiz, en español, de forma interactiva.&lt;/p&gt;

&lt;p&gt;La idea es la misma que con las guías de certificaciones: apréndes haciendo, no leyendo. Repasas las técnicas, las clasificas, y el modo quiz te fuerza a asociar nombres con descripciones reales.&lt;/p&gt;

&lt;p&gt;💡 &lt;/p&gt;

&lt;p&gt;🔗 Recurso&lt;br&gt;
      &lt;strong&gt;mitre-attack-learning.byronlainez.click&lt;/strong&gt; — Gratis, sin registro, en español.&lt;/p&gt;
&lt;h2&gt;
  
  
  Conclusión
&lt;/h2&gt;

&lt;p&gt;MITRE ATT&amp;amp;CK no es un certificación ni un examen. Es el lenguaje que usa la industria para hablar de cómo atacan los adversarios. Si trabajas en ciberseguridad y no lo conoces, estás en la misma situación que un médico que no sabe anatomía: puedes trabajar, pero siempre vas a tener puntos ciegos.&lt;/p&gt;

&lt;p&gt;Lo bueno es que tampoco necesitas un año para aprenderlo. Con las 14 tácticas claras y las técnicas más comunes internalizadas, ya puedes leer reportes de inteligencia, entender alertas de tu EDR y tener conversaciones mucho más precisas con tu equipo.&lt;/p&gt;

&lt;p&gt;⚠️ &lt;/p&gt;

&lt;p&gt;⚠️ La única trampa&lt;br&gt;
      ATT&amp;amp;CK se actualiza constantemente — MITRE añade técnicas nuevas con cada versión. No lo trates como algo que "terminas de aprender". Es una referencia viva que vas a consultar toda tu carrera.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Compartir

  🐦 Twitter/X
  💼 LinkedIn
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;
  
  
  ¿Te fue útil?
&lt;/h3&gt;

&lt;p&gt;Mando contenido así cuando tengo algo que vale la pena.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    Suscribirse





    ← Anterior
    ¿Qué significan esas letras del CVSS? Guía para entenderlo de una vez


    Todos los posts →
    Ver el blog completo








byron.lainez
© 2026 · Guatemala 🇬🇹
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;

</description>
      <category>seguridad</category>
      <category>mitre</category>
      <category>threatintel</category>
    </item>
    <item>
      <title>Mapa de Ciberseguridad en AWS: Guía Completa de Servicios</title>
      <dc:creator>Byron Antonio Lainez Sasvin</dc:creator>
      <pubDate>Wed, 29 Apr 2026 21:13:36 +0000</pubDate>
      <link>https://dev.to/byron_lainez/mapa-de-ciberseguridad-en-aws-guia-completa-de-servicios-1jh8</link>
      <guid>https://dev.to/byron_lainez/mapa-de-ciberseguridad-en-aws-guia-completa-de-servicios-1jh8</guid>
      <description>&lt;p&gt;Aprender seguridad en AWS puede ser abrumador. Entras a la consola y ves una lista interminable de nombres que parecen sacados de una película de ciencia ficción. Pero si los agrupamos por su &lt;strong&gt;funcionalidad real&lt;/strong&gt;, todo empieza a tener sentido.&lt;/p&gt;

&lt;p&gt;He diseñado este mapa mental dividido en 6 categorías críticas que cubren todo el espectro de protección en la nube.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. IAM &amp;amp; Identidad: Quién entra y qué hace
&lt;/h2&gt;

&lt;p&gt;La identidad es el nuevo perímetro. Aquí es donde decides quién puede tocar tus recursos.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;IAM (Identity and Access Management):&lt;/strong&gt; La base de todo. Usuarios, grupos, roles y políticas (JSON) para dar permisos granulares.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Cognito:&lt;/strong&gt; El servicio para tus aplicaciones móviles y web. Maneja el login de tus usuarios finales (Facebook, Google, Apple o email propio).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;IAM Identity Center:&lt;/strong&gt; (Antes AWS SSO). La forma moderna de gestionar el acceso centralizado a múltiples cuentas de AWS desde un solo lugar.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  2. Detección y Respuesta: El equipo de vigilancia
&lt;/h2&gt;

&lt;p&gt;Estos servicios te avisan cuando las cosas se ponen feas o te ayudan a investigar qué pasó.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;GuardDuty:&lt;/strong&gt; Detección inteligente de amenazas basada en logs (DPI, DNS, CloudTrail). Es tu sistema de alarmas.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Security Hub:&lt;/strong&gt; El agregador central. Revisa si cumples mejores prácticas y centraliza las alertas de otros servicios.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Detective:&lt;/strong&gt; Te ayuda a hacer "forensics". Analiza la raíz de un incidente visualizando las conexiones y comportamientos previos de un atacante.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;✅ &lt;/p&gt;

&lt;p&gt;💡 Tip Pro&lt;br&gt;
      Activa GuardDuty y Security Hub desde el primer día. Son esenciales para saber si alguien está intentando entrar en tu cuenta.&lt;/p&gt;
&lt;h2&gt;
  
  
  3. Protección de Red y Aplicaciones: Blindaje exterior
&lt;/h2&gt;

&lt;p&gt;Protección contra ataques desde Internet.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;AWS Shield:&lt;/strong&gt; Protección contra ataques DDoS (denegación de servicio). El nivel estándar es gratis y automático.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;WAF (Web Application Firewall):&lt;/strong&gt; Filtra el tráfico HTTP/S. Bloquea inyecciones SQL, Cross-Site Scripting (XSS) y ataques de bots.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Network Firewall:&lt;/strong&gt; Un firewall de red tradicional (inspección de paquetes a nivel 3-7) para proteger toda tu VPC.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  4. Cifrado y Datos: Protegiendo el tesoro
&lt;/h2&gt;

&lt;p&gt;Si el atacante entra, que no pueda leer nada.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;KMS (Key Management System):&lt;/strong&gt; Gestión de llaves para cifrar casi cualquier recurso (S3, EBS, RDS).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;CloudHSM:&lt;/strong&gt; Hardware de seguridad dedicado para cuando necesitas control total sobre las llaves físicas (regulatorio).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Secrets Manager:&lt;/strong&gt; Centraliza tus contraseñas de BD y API Keys con rotación automática. No más "hardcode" en el código.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Macie:&lt;/strong&gt; Usa IA para encontrar datos sensibles (DPI, tarjetas de crédito, nombres) que hayas dejado olvidados en S3.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  5. Auditoría y Cumplimiento: Manteniéndolo legal
&lt;/h2&gt;

&lt;p&gt;Demuestra que estás haciendo lo que dices que haces.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;CloudTrail:&lt;/strong&gt; El "CCTV" de AWS. Registra cada API call. Quién hizo qué, cuándo y desde dónde.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;AWS Config:&lt;/strong&gt; Historial de cambios en tus recursos. Te permite volver atrás en el tiempo para ver cómo estaba configurado un recurso hace 3 meses.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Audit Manager:&lt;/strong&gt; Automatiza la recolección de evidencia para auditorías (ej: SOC2, PCI, HIPAA).&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  6. El futuro: Seguridad con IA
&lt;/h2&gt;

&lt;p&gt;Las nuevas herramientas que están cambiando el juego.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Security Agent:&lt;/strong&gt; Evaluación automática de vulnerabilidades en tiempo de ejecución.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;GuardDuty XTD:&lt;/strong&gt; Detección extendida que ahora analiza comportamientos más profundos en servicios de bases de datos y contenedores sin necesidad de agentes complejos.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  Conclusión
&lt;/h2&gt;

&lt;p&gt;No necesitas usar los 20+ servicios a la vez. Empieza por &lt;strong&gt;IAM&lt;/strong&gt;, activa &lt;strong&gt;CloudTrail&lt;/strong&gt;, protege tus datos con &lt;strong&gt;KMS/Secrets Manager&lt;/strong&gt; y mantén la vista puesta en &lt;strong&gt;GuardDuty/Security Hub&lt;/strong&gt;. La seguridad en la nube no es un destino, es un proceso continuo.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Compartir

  🐦 Twitter/X
  💼 LinkedIn
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;
  
  
  ¿Te fue útil?
&lt;/h3&gt;

&lt;p&gt;Mando contenido así cuando tengo algo que vale la pena.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    Suscribirse





    ← Anterior
    GuardDuty vs Security Hub








byron.lainez
© 2026 · Guatemala 🇬🇹
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;

</description>
      <category>aws</category>
      <category>seguridad</category>
    </item>
    <item>
      <title>Responsabilidad compartida en AWS: si no la entiendes, no puedes proteger la nube</title>
      <dc:creator>Byron Antonio Lainez Sasvin</dc:creator>
      <pubDate>Tue, 14 Apr 2026 04:20:58 +0000</pubDate>
      <link>https://dev.to/byron_lainez/responsabilidad-compartida-en-aws-si-no-la-entiendes-no-puedes-proteger-la-nube-4aoc</link>
      <guid>https://dev.to/byron_lainez/responsabilidad-compartida-en-aws-si-no-la-entiendes-no-puedes-proteger-la-nube-4aoc</guid>
      <description>&lt;p&gt;Cuando alguien me dice "usamos AWS, estamos seguros", sé de inmediato que hay una conversación pendiente. AWS es uno de los proveedores de nube más seguros del mundo. Y al mismo tiempo, todos los años hay miles de brechas de datos en AWS. Las dos cosas son verdad al mismo tiempo — y el modelo de responsabilidad compartida explica exactamente por qué.&lt;/p&gt;

&lt;p&gt;Entender esto no es preparación para el examen CCP. Es la base sin la cual no puedes tomar ninguna decisión de seguridad en la nube de forma correcta.&lt;/p&gt;

&lt;h2&gt;
  
  
  La analogía del apartamento
&lt;/h2&gt;

&lt;p&gt;Imagina que rentas un apartamento en un edificio seguro:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  🏢 Analogía
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;El &lt;strong&gt;edificio&lt;/strong&gt; (AWS) es responsable de: la estructura del edificio, el sistema eléctrico, el ascensor, las cámaras del lobby, la seguridad de la entrada principal, el mantenimiento de las áreas comunes.&lt;/p&gt;

&lt;p&gt;Pero &lt;strong&gt;tú&lt;/strong&gt; eres responsable de: no dejar la puerta de tu apartamento abierta, no darle la llave a cualquiera, no dejar objetos de valor a la vista, cambiar la cerradura si pierdes una llave.&lt;/p&gt;

&lt;p&gt;Si dejas la puerta abierta y te roban, el edificio no tiene la culpa. Aunque el lobby esté perfectamente vigilado.&lt;/p&gt;

&lt;p&gt;AWS es el edificio. Tu cuenta, tus datos, tu configuración — eso es tu apartamento. Son dos responsabilidades distintas, y ninguna cubre a la otra.&lt;/p&gt;

&lt;h2&gt;
  
  
  Qué protege AWS y qué proteges tú
&lt;/h2&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    AWS protege — "Seguridad DE la nube"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Hardware físico de los data centers (servidores, switches, storage)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Infraestructura de red global (fibra, routers, DDoS a nivel de red)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Hipervisores y aislamiento entre clientes&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Seguridad física: acceso biométrico, cámaras, guardias 24/7&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Software de los servicios administrados (RDS, Lambda, S3 en su núcleo)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Parches del sistema operativo en servicios managed (RDS, ECS Fargate)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Disponibilidad y resiliencia de la infraestructura global&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Certificaciones de cumplimiento: ISO 27001, SOC 2, PCI DSS (la infraestructura)&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Tú proteges — "Seguridad EN la nube"
&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Configuración de IAM: usuarios, roles, políticas, permisos&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Configuración de red: Security Groups, NACLs, VPC, rutas&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cifrado de datos en tránsito y en reposo (tú decides si lo activas)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Parches del OS en EC2 (si usas instancias, tú las parcheas)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Configuración de S3: permisos de bucket, políticas, ACLs&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Datos de clientes y su clasificación&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Aplicaciones que despiegas: código, dependencias, vulnerabilidades&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Configuración de logging: CloudTrail, VPC Flow Logs, S3 access logs&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;MFA, rotación de credenciales, gestión de API keys&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;⚠️ &lt;/p&gt;

&lt;p&gt;⚠️ El error más común&lt;br&gt;
      Pensar que porque AWS tiene ISO 27001 y SOC 2, &lt;strong&gt;tu cuenta&lt;/strong&gt; también está certificada. No. Esas certificaciones cubren la infraestructura de AWS. Tu workload necesita su propio proceso de cumplimiento, con tus propias configuraciones.&lt;/p&gt;
&lt;h2&gt;
  
  
  Cómo cambia según el tipo de servicio
&lt;/h2&gt;

&lt;p&gt;Esto es lo que complica el modelo: la división de responsabilidad no es siempre la misma. Cambia dependiendo del tipo de servicio que uses.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;      Servicio
      Tipo
      OS / Plataforma
      App / Datos
      Red / Firewall




      EC2
      IaaS
      Tú
      Tú
      Tú


      RDS
      PaaS
      AWS
      Tú
      Tú


      Lambda
      Serverless
      AWS
      Tú
      Compartido


      S3
      Storage
      AWS
      Tú
      Tú


      EKS (K8s)
      Managed
      Compartido
      Tú
      Tú


      Fargate
      Serverless containers
      AWS
      Tú
      Compartido
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;La regla general: &lt;strong&gt;mientras más "managed" sea el servicio, más responsabilidad asume AWS&lt;/strong&gt;. Pero tus datos, tu configuración y tus permisos siempre son tuyo — sin importar qué servicio uses.&lt;/p&gt;
&lt;h2&gt;
  
  
  Casos reales donde la confusión sale cara
&lt;/h2&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  💥 Caso 1 — S3 bucket público
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Una empresa sube documentos de clientes a S3. Asumen que "AWS lo protege". Nadie revisa la configuración del bucket. Resulta que el bucket tiene acceso público activado — cualquiera en internet podía descargar los archivos con solo conocer la URL. AWS nunca falló. La configuración fue responsabilidad del equipo y nadie la auditó. &lt;strong&gt;Resultado: brecha de datos, multa por GDPR.&lt;/strong&gt;&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  💥 Caso 2 — EC2 sin parches
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Un equipo lanza instancias EC2 con Ubuntu. AWS garantiza que el hipervisor está seguro y actualizado. Pero el sistema operativo dentro de la instancia es responsabilidad del equipo. Nadie configura actualizaciones automáticas. Seis meses después, una vulnerabilidad conocida (con CVE y parche disponible) es explotada. &lt;strong&gt;AWS hizo su parte. El equipo no hizo la suya.&lt;/strong&gt;&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  💥 Caso 3 — IAM con permisos de admin para todo
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Un desarrollador crea un usuario IAM con &lt;code&gt;AdministratorAccess&lt;/code&gt; "para que no haya problemas de permisos". Las credenciales quedan hardcodeadas en el código, se suben a GitHub. Un bot escanea GitHub, encuentra las keys, las usa para lanzar 500 instancias EC2 minando criptomonedas. &lt;strong&gt;Factura de $45,000 en 72 horas. AWS detectó el tráfico anómalo, pero la configuración IAM fue decisión del equipo.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;💡 &lt;/p&gt;

&lt;p&gt;💡 El patrón en los tres casos&lt;br&gt;
      AWS funcionó exactamente como debía. La infraestructura estuvo disponible y segura. El problema fue siempre en la capa de responsabilidad del cliente: configuración, permisos, actualizaciones. Eso es lo que el modelo de responsabilidad compartida intenta dejar claro desde el inicio.&lt;/p&gt;
&lt;h2&gt;
  
  
  Lo que sí deberías tener siempre activo en tu cuenta
&lt;/h2&gt;

&lt;p&gt;Si entiendes el modelo, sabes que estas configuraciones son &lt;strong&gt;tuya&lt;/strong&gt; — AWS no las activa por ti:&lt;/p&gt;


&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Controles mínimos que tú debes configurar (AWS no lo hace por ti)
&amp;gt; 
&amp;gt; [ ] CloudTrail activado en todas las regiones     → quién hizo qué y cuándo
&amp;gt; [ ] MFA en el root account                        → la cuenta más poderosa
&amp;gt; [ ] MFA en todos los usuarios IAM con consola     → acceso humano protegido
&amp;gt; [ ] No usar el root account para operaciones      → principio de mínimo privilegio
&amp;gt; [ ] GuardDuty activado                            → detección de amenazas en tu cuenta
&amp;gt; [ ] AWS Config activado                           → auditoría de configuración
&amp;gt; [ ] Security Hub activado                         → panel centralizado de hallazgos
&amp;gt; [ ] Alertas de billing                            → detectar actividad anómala por costo
&amp;gt; [ ] S3 Block Public Access a nivel de cuenta      → evitar buckets accidentalmente públicos
&amp;gt; [ ] VPC Flow Logs activados                       → visibilidad de tráfico de red
&amp;gt; [ ] Rotación automática de secrets (Secrets Manager) → credenciales que no envejecen
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;✅ &lt;/p&gt;

&lt;p&gt;✅ La pregunta que debes hacerte siempre&lt;br&gt;
      Antes de asumir que un servicio AWS "ya viene seguro", pregúntate: &lt;strong&gt;¿esto está en la capa de infraestructura o en la capa de configuración?&lt;/strong&gt; Si es configuración, es tuya. Si no estás seguro, revisa la documentación del servicio en la sección "Security" — AWS siempre documenta qué protege y qué no.&lt;/p&gt;
&lt;h2&gt;
  
  
  Por qué esto importa más allá de la certificación
&lt;/h2&gt;

&lt;p&gt;El modelo de responsabilidad compartida aparece en el examen AWS CCP como pregunta de opción múltiple. Pero en el trabajo real, es la base de cada conversación de seguridad que vas a tener sobre infraestructura en la nube:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Cuando un cliente pregunta &lt;em&gt;"¿está seguro en AWS?"&lt;/em&gt; — necesitas saber qué parte de "seguro" puedes garantizar tú y qué parte garantiza AWS.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cuando haces una auditoría de seguridad — necesitas saber qué controles buscar en la cuenta del cliente vs. qué asumir que AWS ya maneja.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cuando diseñas una arquitectura — necesitas saber qué servicio te da más control (EC2) vs. cuál te quita responsabilidad operativa (Fargate, RDS).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cuando responder un incidente en la nube — necesitas saber exactamente dónde buscar: en tu configuración, no en la infraestructura de AWS.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  Conclusión
&lt;/h2&gt;

&lt;p&gt;AWS puede ser el proveedor de nube más seguro del mundo y al mismo tiempo alojar miles de cuentas mal configuradas. No hay contradicción. La seguridad de la infraestructura es de AWS. La seguridad de lo que construyes sobre esa infraestructura es tuya.&lt;/p&gt;

&lt;p&gt;Entender eso no es opcional si trabajas en la nube. Es el punto de partida. Sin ese entendimiento, no sabes qué revisar, no sabes qué preguntar, y no sabes de quién es la culpa cuando algo sale mal.&lt;/p&gt;

&lt;p&gt;⚠️ &lt;/p&gt;

&lt;p&gt;⚠️ Para recordar siempre&lt;br&gt;
      &lt;strong&gt;"AWS es responsable de la seguridad DE la nube. Tú eres responsable de la seguridad EN la nube."&lt;/strong&gt;&lt;br&gt;
      Una letra cambia todo. &lt;em&gt;De&lt;/em&gt; la nube vs. &lt;em&gt;en&lt;/em&gt; la nube. Tatúatelo.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Compartir

  🐦 Twitter/X
  💼 LinkedIn
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;
  
  
  ¿Te fue útil?
&lt;/h3&gt;

&lt;p&gt;Mando contenido así cuando tengo algo que vale la pena.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    Suscribirse





    ← Anterior
    MITRE ATT&amp;amp;CK: el mapa del crimen que todo profesional de seguridad debería conocer


    Todos los posts →
    Ver el blog completo








byron.lainez
© 2026 · Guatemala 🇬🇹
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;

</description>
      <category>aws</category>
      <category>seguridad</category>
      <category>fundamentos</category>
    </item>
    <item>
      <title>GuardDuty vs Security Hub: ¿Cuál es la diferencia y cómo usarlos juntos?</title>
      <dc:creator>Byron Antonio Lainez Sasvin</dc:creator>
      <pubDate>Mon, 13 Apr 2026 03:40:29 +0000</pubDate>
      <link>https://dev.to/byron_lainez/guardduty-vs-security-hub-cual-es-la-diferencia-y-como-usarlos-juntos-52kh</link>
      <guid>https://dev.to/byron_lainez/guardduty-vs-security-hub-cual-es-la-diferencia-y-como-usarlos-juntos-52kh</guid>
      <description>&lt;p&gt;Si alguna vez has entrado a la consola de AWS buscando "cómo asegurar mi cuenta", te habrás topado con estos dos servicios. A primera vista parecen hacer lo mismo: "ayudarte con la seguridad". Pero en la práctica, cumplen roles totalmente distintos y complementarios.&lt;/p&gt;

&lt;h2&gt;
  
  
  GuardDuty: El detective que nunca duerme
&lt;/h2&gt;

&lt;p&gt;Piensa en &lt;strong&gt;GuardDuty&lt;/strong&gt; como un sistema de detección de intrusiones (IDS) basado en logs. No mira si tu bucket S3 es público; lo que mira es si alguien desde una IP sospechosa está intentando acceder a él o si tus instancias EC2 están minando criptomonedas.&lt;/p&gt;

&lt;p&gt;Utiliza Machine Learning y feeds de inteligencia de amenazas para analizar:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;VPC Flow Logs (tráfico de red).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;CloudTrail Events (acciones en la API).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;DNS Logs (consultas a dominios maliciosos).&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;⚠️ &lt;/p&gt;

&lt;p&gt;⚠️ Importante&lt;br&gt;
      GuardDuty es reactivo: te avisa cuando &lt;strong&gt;algo malo ya está pasando&lt;/strong&gt; o está por pasar.&lt;/p&gt;
&lt;h2&gt;
  
  
  Security Hub: El auditor y panel de control
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Security Hub&lt;/strong&gt; es un servicio de CSPM (Cloud Security Posture Management). Su trabajo principal es medir tu postura de seguridad frente a estándares como el &lt;strong&gt;AWS Foundational Security Best Practices&lt;/strong&gt; o &lt;strong&gt;CIS Foundations Benchmark&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Te dirá cosas como: "Tienes el usuario root sin MFA" o "Tus bases de datos no están cifradas". Pero lo más potente de Security Hub no es solo su auditoría, sino su capacidad de ser el &lt;strong&gt;agregador central&lt;/strong&gt;.&lt;/p&gt;
&lt;h2&gt;
  
  
  La diferencia clave
&lt;/h2&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;      Característica
      Amazon GuardDuty
      AWS Security Hub




      **Tipo**
      Detección de Amenazas (Threat Detection)
      Gestión de Postura (Compliance)


      **Foco**
      Comportamientos maliciosos actuales.
      Configuraciones erróneas y mejores prácticas.


      **Acción**
      Analiza logs en tiempo real.
      Realiza escaneos periódicos de recursos.
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;✅ &lt;/p&gt;

&lt;p&gt;💡 El Combo Perfecto&lt;br&gt;
      La mejor configuración es habilitar ambos y configurar &lt;strong&gt;Security Hub como el punto único de visibilidad&lt;/strong&gt;. Security Hub puede importar automáticamente todos los "Findings" de GuardDuty.&lt;/p&gt;
&lt;h2&gt;
  
  
  Cómo activarlos juntos vía CLI
&lt;/h2&gt;

&lt;p&gt;Si manejas varias regiones, habilitarlos manualmente es una tortura. Aquí te dejo cómo empezar con GuardDuty:&lt;/p&gt;


&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Habilitar GuardDuty en la región actual&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; aws guardduty create-detector &lt;span class="nt"&gt;--enable&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;Y para Security Hub:&lt;/p&gt;


&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Habilitar Security Hub&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; aws securityhub enable-security-hub
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;h2&gt;
  
  
  Conclusión
&lt;/h2&gt;

&lt;p&gt;No elijas uno. &lt;strong&gt;GuardDuty&lt;/strong&gt; detecta al atacante que está dentro; &lt;strong&gt;Security Hub&lt;/strong&gt; cierra las puertas que dejaste abiertas para que no entre. Si solo usas uno, tienes un punto ciego gigante en tu arquitectura cloud.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Compartir

  🐦 Twitter/X
  💼 LinkedIn
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;
  
  
  ¿Te fue útil?
&lt;/h3&gt;

&lt;p&gt;Mando contenido así cuando tengo algo que vale la pena.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    Suscribirse





    ← Anterior
    Cómo iniciar en AWS desde cero


    Siguiente →
    Mapa de Ciberseguridad en AWS








byron.lainez
© 2026 · Guatemala 🇬🇹
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;

</description>
      <category>aws</category>
      <category>seguridad</category>
    </item>
    <item>
      <title>Cómo iniciar en AWS: la guía honesta para empezar sin perderte</title>
      <dc:creator>Byron Antonio Lainez Sasvin</dc:creator>
      <pubDate>Sat, 11 Apr 2026 18:34:59 +0000</pubDate>
      <link>https://dev.to/byron_lainez/como-iniciar-en-aws-la-guia-honesta-para-empezar-sin-perderte-d71</link>
      <guid>https://dev.to/byron_lainez/como-iniciar-en-aws-la-guia-honesta-para-empezar-sin-perderte-d71</guid>
      <description>&lt;p&gt;Cuando yo empecé con AWS, lo primero que hice fue abrirla consola y quedarme viendo 200 servicios sin saber por dónde empezar. Si te pasó lo mismo, este post es para ti. No voy a explicarte qué es "la nube" — eso ya lo sabes. Voy directo a lo práctico: qué hacer primero, qué no tocar todavía, y cómo no llevarte una sorpresa en la factura.&lt;/p&gt;

&lt;h2&gt;
  
  
  Primero: la analogía que lo cambia todo
&lt;/h2&gt;

&lt;p&gt;AWS es como un supermercado enorme donde puedes comprar ingredientes para cocinar lo que quieras. Antes de AWS, tenías que construir tu propia cocina desde cero — comprar el terreno, instalar la electricidad, comprar los electrodomésticos. Ahora entras al supermercado, tomas lo que necesitas y pagas solo por eso.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;💡 &lt;/p&gt;

&lt;p&gt;💡 La clave&lt;br&gt;
      AWS tiene más de 200 servicios. No necesitas aprender todos. Necesitas aprender &lt;strong&gt;los 5-6 que forman la base&lt;/strong&gt; — el resto los aprendes cuando los necesitas.&lt;/p&gt;
&lt;h2&gt;
  
  
  Paso 1: Crear tu cuenta y entender el Free Tier
&lt;/h2&gt;

&lt;p&gt;Ve a &lt;strong&gt;aws.amazon.com&lt;/strong&gt; y crea una cuenta. Necesitas un correo, una tarjeta de crédito/débito (para verificación) y un número de teléfono. &lt;strong&gt;AWS no te cobra si te mantienes dentro del Free Tier.&lt;/strong&gt;&lt;/p&gt;


&lt;/blockquote&gt;

&lt;p&gt;``` free tier&lt;/p&gt;

&lt;h1&gt;
  
  
  Free Tier — 12 meses desde que creas la cuenta
&lt;/h1&gt;

&lt;blockquote&gt;
&lt;p&gt;EC2:     750 horas/mes · t2.micro o t3.micro (Linux)&lt;br&gt;
         Solo una instancia. Dos instancias = el doble de horas = cobro.&lt;br&gt;
S3:      5 GB de almacenamiento estándar&lt;br&gt;
         + 20,000 GET requests/mes + 2,000 PUT requests/mes&lt;br&gt;
RDS:     750 horas/mes · db.t2.micro o db.t3.micro (Single-AZ)&lt;br&gt;
         MySQL, PostgreSQL, MariaDB, Oracle (SE1), SQL Server (EX)&lt;/p&gt;
&lt;h1&gt;
  
  
  Always Free — no expiran, son permanentes
&lt;/h1&gt;

&lt;p&gt;Lambda:  1,000,000 invocaciones/mes&lt;br&gt;
         + 400,000 GB-segundos de cómputo/mes&lt;br&gt;
DynamoDB: 25 GB de almacenamiento&lt;br&gt;
          + 25 WCU (escrituras) + 25 RCU (lecturas) por mes&lt;br&gt;
CloudWatch: 10 métricas personalizadas + 10 alarmas + 1M API requests/mes&lt;/p&gt;
&lt;h1&gt;
  
  
  Logs de CloudWatch: 5 GB de ingesta/mes → Free Tier 12 meses (no siempre)
&lt;/h1&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;




⚠️ 

⚠️ El error más común con el Free Tier
      Crear recursos y olvidarlos. Una instancia EC2 corriendo 24/7 consume sus 750 horas en 31 días exactos. Si tienes **dos instancias**, consumes el doble y la segunda te la cobran. **Siempre apaga lo que no uses.**



## Paso 2: Lo primero que debes configurar (antes de cualquier otra cosa)




        01
        MFA en el root account
        El root account tiene acceso total a todo. Ponle autenticación de dos factores inmediatamente. Ve a IAM → Security credentials → Assign MFA.


        02
        No uses el root para trabajar
        Crea un usuario IAM con permisos de administrador para tu uso diario. El root solo se toca en emergencias. Esto es crítico.


        03
        Configura alertas de billing
        Ve a Billing → Budgets → Create budget. Pon una alerta si el gasto supera $5. Así nunca te sorprende una factura.


        04
        Activa CloudTrail
        Registra todo lo que pasa en tu cuenta. Si algo sale mal, CloudTrail te dice quién hizo qué y cuándo. Gratis el primer trail.




## Paso 3: Los 6 servicios core que necesitas aprender



De los 200+ servicios, estos 6 son la base de prácticamente todo lo que vas a construir. Aprende estos antes de cualquier otro:




        🔐

          IAM — Identity and Access Management FREE
          Controla quién puede hacer qué en tu cuenta. Usuarios, grupos, roles y políticas. Es el primer servicio que debes entender bien — un IAM mal configurado es la puerta de entrada de la mayoría de incidentes en la nube.



        💻

          EC2 — Elastic Compute Cloud
          Servidores virtuales en la nube. Lanzas una instancia, instalas lo que necesitas y listo. Es el servicio más flexible de AWS — y también el que más fácil se te puede ir la factura si no lo apagas.



        🪣

          S3 — Simple Storage Service
          Almacenamiento de archivos escalable. Puedes guardar desde imágenes hasta backups completos. También se usa para alojar sitios web estáticos. La "S" de S3 no es de simple — es de "te sorprenderás lo que puedes hacer con esto".



        🌐

          VPC — Virtual Private Cloud
          Tu red privada dentro de AWS. Defines subnets, rutas y reglas de firewall (Security Groups). Todo lo que creas en AWS vive dentro de una VPC. Entender VPC es entender cómo se comunican tus servicios.



        ⚡

          Lambda — Serverless Functions 1M FREE/mes
          Ejecuta código sin gestionar servidores. Subes una función (Python, Node, etc.), defines cuándo se ejecuta y pagas por invocación. Perfecto para automatizaciones, webhooks y procesamiento de eventos.



        🗄️

          RDS — Relational Database Service
          Bases de datos relacionales administradas: MySQL, PostgreSQL, MariaDB. AWS gestiona los backups, parches y alta disponibilidad. Tú solo te preocupas por tu base de datos, no por el servidor.





## Paso 4: Tu primer proyecto práctico



La mejor forma de aprender AWS es construyendo algo. Este proyecto te enseña los 4 servicios más importantes en un solo ejercicio:




&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Proyecto: Sitio web estático + backend serverless
&amp;gt; 
&amp;gt; 1. S3  → Crea un bucket y sube un HTML simple
&amp;gt;          (activa "Static website hosting")
&amp;gt; 
&amp;gt; 2. IAM → Crea un rol con permisos solo para ese bucket
&amp;gt;          (practica el principio de mínimo privilegio)
&amp;gt; 
&amp;gt; 3. Lambda → Crea una función que responda a peticiones HTTP
&amp;gt;             (Python o Node.js, usa el runtime que conozcas)
&amp;gt; 
&amp;gt; 4. API Gateway → Conecta Lambda a una URL pública
&amp;gt;                  (crea un endpoint /api/saludo)
&amp;gt; 
&amp;gt; Resultado: un sitio web con un backend real, en la nube,
&amp;gt;            por menos de $0.01 al mes dentro del free tier.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;✅ &lt;/p&gt;

&lt;p&gt;✅ Por qué este proyecto&lt;br&gt;
      Toca S3, IAM, Lambda y API Gateway — los 4 servicios que aparecen en el 80% de las arquitecturas serverless. Si puedes construir esto desde cero, ya tienes base para el examen CCP y para conversaciones reales de trabajo.&lt;/p&gt;
&lt;h2&gt;
  
  
  Paso 5: El modelo de precios (para no asustarte)
&lt;/h2&gt;

&lt;p&gt;AWS cobra por uso. No hay mensualidad fija. Esto es bueno (pagas exactamente lo que usas) y malo (si dejas algo corriendo sin querer, te llega la factura). Los tres modelos principales:&lt;/p&gt;


&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;On-Demand    → Pagas por hora/segundo. Sin compromiso.
&amp;gt;                Ideal para: aprender, experimentar, cargas variables.
&amp;gt; 
&amp;gt; Reserved     → Compromiso de 1 o 3 años. Hasta 72% de descuento.
&amp;gt;                Ideal para: workloads estables de producción.
&amp;gt; 
&amp;gt; Spot         → Capacidad sobrante de AWS a precio reducido (hasta 90%).
&amp;gt;                Ideal para: procesamiento batch, CI/CD, no crítico.
&amp;gt;                Riesgo: AWS puede terminar la instancia con 2 min de aviso.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;Para aprender: usa siempre &lt;strong&gt;On-Demand&lt;/strong&gt; dentro del Free Tier. Para producción: empieza On-Demand y cuando tengas estabilidad, evalúa Reserved.&lt;/p&gt;
&lt;h2&gt;
  
  
  El camino de certificaciones en AWS
&lt;/h2&gt;

&lt;p&gt;Las certificaciones de AWS son de las más valoradas en LATAM para conseguir trabajo en cloud. Este es el camino que yo recomendaría si empezaras hoy:&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    Foundational
    ☁️ AWS Cloud Practitioner (CCP)
    2-3 meses


    Associate
    ⚙️ AWS Solutions Architect Associate (SAA-C03)
    3-4 meses


    Associate
    🛡️ AWS Security Specialty (SCS-C02) *— recomendado si vas a seguridad*
    4-6 meses


    Specialty
    🤖 AWS AI Practitioner (AIF-C01) *— relevante hoy*
    2-3 meses
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;💡 &lt;/p&gt;

&lt;p&gt;💡 Mi recomendación personal&lt;br&gt;
      Empieza con CCP. No porque sea fácil, sino porque te da el mapa completo de AWS antes de especializarte. Sin ese mapa, las certificaciones de Associate se vuelven memorización pura. Con él, tienen sentido.&lt;/p&gt;
&lt;h2&gt;
  
  
  Recursos gratuitos para aprender
&lt;/h2&gt;

&lt;p&gt;No necesitas pagar un curso de $200 para empezar. Estos recursos son gratuitos y buenos:&lt;/p&gt;


&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;AWS Skill Builder        → skillbuilder.aws
&amp;gt;                            Cursos oficiales gratuitos de AWS
&amp;gt; 
&amp;gt; AWS CCP Flashcards       → awsccp.byronlainez.click
&amp;gt;                            200 tarjetas interactivas en español
&amp;gt; 
&amp;gt; AWS AI Practitioner      → awsaipractitioner.byronlainez.click
&amp;gt;                            Guía completa AIF-C01 en español
&amp;gt; 
&amp;gt; Documentación oficial    → docs.aws.amazon.com
&amp;gt;                            Siempre la referencia más actualizada
&amp;gt; 
&amp;gt; AWS Free Tier            → aws.amazon.com/free
&amp;gt;                            Experimenta sin gastar
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;h2&gt;
  
  
  Únete a la comunidad local
&lt;/h2&gt;

&lt;p&gt;Aprender solo es posible, pero aprender en comunidad es más rápido y menos frustrante. Si estás en Guatemala, el &lt;strong&gt;AWS User Group El Progreso&lt;/strong&gt; es el único grupo AWS activo en el oriente del país. Nos reunimos, compartimos experiencias reales y aprendemos juntos.&lt;/p&gt;

&lt;p&gt;✅ &lt;/p&gt;

&lt;p&gt;✅ La verdad sobre aprender AWS&lt;br&gt;
      No necesitas memorizar los 200+ servicios. Necesitas entender &lt;strong&gt;IAM, EC2, S3, VPC, Lambda y RDS&lt;/strong&gt;, construir algo con ellos, y saber que el resto existe para cuando lo necesites. Empieza pequeño, rompe cosas en el Free Tier y pregunta en la comunidad. Así es como todos aprendemos.&lt;/p&gt;
&lt;h2&gt;
  
  
  Conclusión
&lt;/h2&gt;

&lt;p&gt;AWS puede parecer abrumador al principio porque &lt;em&gt;es&lt;/em&gt; grande. Pero la manera de no perderse es la misma que con cualquier cosa grande: empiezas por una esquina, aprendes bien esa parte, y vas expandiendo. La esquina correcta para empezar es: &lt;strong&gt;crea tu cuenta, protégela con MFA, activa las alertas de billing, aprende IAM y construye algo con S3 y Lambda&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;El resto llega solo.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Compartir

  🐦 Twitter/X
  💼 LinkedIn
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;
  
  
  ¿Te fue útil?
&lt;/h3&gt;

&lt;p&gt;Mando contenido así cuando tengo algo que vale la pena.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    Suscribirse





    ← Anterior
    Responsabilidad compartida en AWS: si no la entiendes, no puedes proteger la nube


    Todos los posts →
    Ver el blog completo








byron.lainez
© 2026 · Guatemala 🇬🇹
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;

</description>
      <category>aws</category>
      <category>fundamentos</category>
      <category>comunidad</category>
    </item>
    <item>
      <title>¿Qué es y para qué sirve AWS Kiro?</title>
      <dc:creator>Byron Antonio Lainez Sasvin</dc:creator>
      <pubDate>Fri, 10 Apr 2026 22:07:15 +0000</pubDate>
      <link>https://dev.to/byron_lainez/que-es-y-para-que-sirve-aws-kiro-2k0b</link>
      <guid>https://dev.to/byron_lainez/que-es-y-para-que-sirve-aws-kiro-2k0b</guid>
      <description>&lt;p&gt;El desarrollo de software en la nube acaba de dar un salto gigante. Ya no estamos hablando solo de herramientas tipo Copilot que completan la siguiente línea de código, ahora hablamos de verdaderos &lt;strong&gt;compañeros de desarrollo&lt;/strong&gt; que entienden el contexto de tu cuenta de AWS y te asisten de manera proactiva.&lt;/p&gt;

&lt;p&gt;Hoy vamos a explorar &lt;strong&gt;AWS Kiro&lt;/strong&gt;: qué es, cómo funciona y, más importante aún, para qué te sirve en el día a día.&lt;/p&gt;

&lt;h2&gt;
  
  
  ¿Qué es AWS Kiro?
&lt;/h2&gt;

&lt;p&gt;En pocas palabras, &lt;strong&gt;AWS Kiro&lt;/strong&gt; es una herramienta de codificación impulsada por inteligencia artificial (agente de IA). Está desarrollado por Amazon y potenciado por los modelos base de Amazon Bedrock (como la familia Claude). Lo interesante es que viene en dos sabores:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Kiro IDE:&lt;/strong&gt; Un editor basado en un fork de VS Code (Code OSS), que integra todas estas capacidades de IA directamente en tu entorno gráfico.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Kiro CLI:&lt;/strong&gt; Una potente interfaz de línea de comandos diseñada para que la IA controle y automatice tareas de DevOps e infraestructura conversando directamente con tu terminal.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  ¿Para qué sirve? (Casos de Uso)
&lt;/h2&gt;

&lt;p&gt;Kiro está pensado para acompañarte "de inicio a fin" en un proyecto, y esto lo hace a través de características bien definidas:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Spec-Driven Development (Desarrollo guiado por especificaciones)
&lt;/h3&gt;

&lt;p&gt;¿Cansado de empezar a escribir código sin saber bien hacia dónde vas? AWS Kiro tiene un "Spec Mode" o modo de especificación. Tú le describes tu problema en lenguaje natural, y Kiro te redacta historias de usuario, esquemas de bases de datos, y flujos de datos antes de escribir una sola línea de código. Esto te obliga (para bien) a seguir buenas prácticas de ingeniería.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Workflow de Agente de IA
&lt;/h3&gt;

&lt;p&gt;Le puedes pedir que lea la documentación de tu repo, que estructure los archivos necesarios, que genere el código, y posteriormente los tests unitarios. Todo de forma orquestada. Actúa más como un &lt;em&gt;developer junior/mid&lt;/em&gt; al que le delegas una tarea que como un autocompletado ciego.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Operaciones de DevOps desde la Terminal
&lt;/h3&gt;

&lt;p&gt;Con &lt;strong&gt;Kiro CLI&lt;/strong&gt;, el ciclo de despliegue se acelera brutalmente. Puedes pedirle en la consola: &lt;em&gt;"Haz un deploy a S3 de la carpeta dist de este proyecto"&lt;/em&gt; o &lt;em&gt;"Analiza mis logs de CloudWatch y encuentra el error 500"&lt;/em&gt;, y la IA traducirá eso a comandos de terminal y de AWS CLI.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;✅ &lt;/p&gt;

&lt;p&gt;💡 Extensibilidad total&lt;br&gt;
      Kiro soporta &lt;strong&gt;MCP (Model Context Protocol)&lt;/strong&gt;, lo que significa que puedes conectar el agente con bases de conocimiento privadas, apis externas e incluso otras herramientas de red, abriendo infinitas posibilidades.&lt;/p&gt;
&lt;h2&gt;
  
  
  Conclusión
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;AWS Kiro&lt;/strong&gt; es un adelanto al futuro donde la IA actúa de manera &lt;strong&gt;agéntica&lt;/strong&gt;—es decir, tomando decisiones, explorando archivos, proponiendo arquitecturas y programando junto a ti. Si manejas infraestructura en AWS y desarrollas software, probar su IDE o su CLI puede ahorrarte no solo tiempo, sino un montón de frustración cuando tienes que lidiar con proyectos pesados.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Compartir

  🐦 Twitter/X
  💼 LinkedIn
&lt;/code&gt;&lt;/pre&gt;
&lt;h3&gt;
  
  
  ¿Te fue útil?
&lt;/h3&gt;

&lt;p&gt;Mando contenido así cuando tengo algo que vale la pena.&lt;/p&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    Suscribirse





    ← Anterior
    Mapa de Ciberseguridad en AWS








byron.lainez
© 2026 · Guatemala 🇬🇹
&lt;/code&gt;&lt;/pre&gt;
&lt;/blockquote&gt;

</description>
      <category>aws</category>
      <category>ia</category>
    </item>
    <item>
      <title>¿Qué es AWS CloudWatch, Casos de Uso y Por Qué Deberías Aprenderlo Hoy?</title>
      <dc:creator>Byron Antonio Lainez Sasvin</dc:creator>
      <pubDate>Thu, 09 Apr 2026 08:11:16 +0000</pubDate>
      <link>https://dev.to/byron_lainez/que-es-aws-cloudwatch-casos-de-uso-y-por-que-deberias-aprenderlo-hoy-4g1p</link>
      <guid>https://dev.to/byron_lainez/que-es-aws-cloudwatch-casos-de-uso-y-por-que-deberias-aprenderlo-hoy-4g1p</guid>
      <description>&lt;h1&gt;
  
  
  ¿Qué es AWS CloudWatch, Casos de Uso y Por Qué Deberías Aprenderlo Hoy?
&lt;/h1&gt;

&lt;p&gt;Logs, Métricas, Alarmas y por qué sin observabilidad estás operando la nube a ciegas.&lt;/p&gt;

&lt;p&gt;Son las 3:00 a.m. de un martes. Tu teléfono empieza a sonar desesperadamente porque la página de inicio o tu API estrella está caída. Entras a AWS, abres la consola de tu servidor de producción o de tu base de datos, y te haces la gran pregunta: &lt;strong&gt;"¿Qué demonios falló?"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Si alguna vez te ha pasado esto, entiendes exactamente por qué aprender a manejar la observabilidad en la nube no es opcional. Y aquí es donde &lt;strong&gt;AWS CloudWatch&lt;/strong&gt; se convierte en tu mejor amigo y el protagonista de esta guía.&lt;/p&gt;

&lt;h2&gt;
  
  
  ¿Qué es AWS CloudWatch y para qué sirve realmente?
&lt;/h2&gt;

&lt;p&gt;En términos abstractos, Amazon define a CloudWatch como un servicio integral de &lt;em&gt;monitoreo y observabilidad estructurada&lt;/em&gt;. En español: &lt;strong&gt;es el sistema nervioso central de toda tu infraestructura en AWS&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;CloudWatch recolecta datos operativos en tiempo real de tus recursos en la forma de logs (registros), métricas y eventos, dándote una visión microscópica y unificada de tus recursos en la nube, aplicaciones y servicios on-premise.&lt;/p&gt;

&lt;p&gt;Se divide principalmente en tres pilares fundamentales que todo Search Engine Optimizer (SEO), DevOps o Desarrollador debería conocer:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Métricas (Metrics):&lt;/strong&gt; Datos cuantitativos de rendimiento de tus sistemas (Ej. El consumo de CPU o latencia de red de un EC2).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Registros (Logs):&lt;/strong&gt; Líneas de texto detalladas de lo que hacen tus componentes (Ej. Errores 500 en tu backend Node.js o Lambda Function).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Alarmas (Alarms):&lt;/strong&gt; Respuestas automáticas ante comportamientos anómalos (Ej. "Mándame un SMS y ejecuta un Lambda automáticamente si mi web app no responde durante 5 minutos seguidos").&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;⚠️ CloudWatch no es CloudTrail&lt;br&gt;
Es la confusión más recurrente en entrevistas técnicas de AWS. &lt;strong&gt;CloudWatch&lt;/strong&gt; te dice "qué está pasando con el &lt;em&gt;rendimiento y la salud&lt;/em&gt; de tu recurso". &lt;strong&gt;CloudTrail&lt;/strong&gt; te dice "quién, cómo y desde dónde se tocó la configuración de dicho recurso a nivel de consola o API de AWS".&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Por Qué Deberías Aprender AWS CloudWatch Hoy Mismo
&lt;/h2&gt;

&lt;p&gt;Entender los fundamentos básicos de EC2 y S3 es el primer paso, pero el verdadero valor técnico de un ingeniero Cloud, SRE o Arquitecto radica en su capacidad para garantizar que las arquitecturas sean rentables y no colapsen en el mejor momento.&lt;/p&gt;

&lt;p&gt;Aprender CloudWatch te permite evolucionar: pasas de ser &lt;em&gt;alguien que despliega cosas por probar&lt;/em&gt; a &lt;em&gt;alguien que opera y mantiene sistemas corporativos vivos&lt;/em&gt;. Adicional a esto, más del &lt;strong&gt;85% de las certificaciones de AWS (desde Practitioner y SAA, hasta Security Specialty)&lt;/strong&gt; incluyen preguntas mandatarias pesadas sobre configuración y monitoreo usando CloudWatch. Si aspiras a certificarte, debes dominarlo.&lt;/p&gt;

&lt;h2&gt;
  
  
  Casos de Uso Principales de CloudWatch en el Día a Día
&lt;/h2&gt;

&lt;p&gt;No se necesita ser un Arquitecto de Soluciones nivel 3 para sacarle jugo. Estos son los escenarios más comunes y efectivos donde CloudWatch se aplica en la industria todos los días:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Configuración de Alarmas de Facturación (Billing Alarms)
&lt;/h3&gt;

&lt;p&gt;Nadie quiere una deuda sorpresa de $5,000 USD al final del mes. El clásico "por favor, avísame si AWS me va a cobrar más de algo presupuestado". Configurar alertar de facturación atadas a presupuestos y SNS es la primera responsabilidad de todos al abrir una nueva cuenta de AWS.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;💡 Nivel Pro: Hazlo con Infraestructura como Código (Terraform)&lt;br&gt;
No lo hagas a mano en la consola. Acostúmbrate a codificar tu configuración. Aquí tienes un snippet rápido para desplegar tu primera alarma de facturación con Terraform:&lt;br&gt;
&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight hcl"&gt;&lt;code&gt;&lt;span class="nx"&gt;resource&lt;/span&gt; &lt;span class="s2"&gt;"aws_cloudwatch_metric_alarm"&lt;/span&gt; &lt;span class="s2"&gt;"billing_alarm"&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;alarm_name&lt;/span&gt;          &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"Alarma-Costos-Altos"&lt;/span&gt;
  &lt;span class="nx"&gt;comparison_operator&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"GreaterThanOrEqualToThreshold"&lt;/span&gt;
  &lt;span class="nx"&gt;evaluation_periods&lt;/span&gt;  &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"1"&lt;/span&gt;
  &lt;span class="nx"&gt;metric_name&lt;/span&gt;         &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"EstimatedCharges"&lt;/span&gt;
  &lt;span class="nx"&gt;namespace&lt;/span&gt;           &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"AWS/Billing"&lt;/span&gt;
  &lt;span class="nx"&gt;period&lt;/span&gt;              &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"21600"&lt;/span&gt; &lt;span class="c1"&gt;# 6 horas&lt;/span&gt;
  &lt;span class="nx"&gt;statistic&lt;/span&gt;           &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"Maximum"&lt;/span&gt;
  &lt;span class="nx"&gt;threshold&lt;/span&gt;           &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"10"&lt;/span&gt;    &lt;span class="c1"&gt;# Avisar al llegar a 10 USD&lt;/span&gt;
  &lt;span class="nx"&gt;alarm_actions&lt;/span&gt;       &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;aws_sns_topic&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;billing_alerts&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;arn&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;

  &lt;span class="nx"&gt;dimensions&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;Currency&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"USD"&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  2. Proteger y Auditar el SEO Técnico (Uptime y 5xx)
&lt;/h3&gt;

&lt;p&gt;Un caso de uso espectacular del que pocos desarrolladores backend hablan con el área de Marketing (y que aplica perfectamente si tu objetivo es construir infraestructuras ultra resilientes): proteger el tráfico y evitar penalizaciones limitando el &lt;em&gt;downtime&lt;/em&gt;. Usando &lt;strong&gt;CloudWatch Synthetics (Canaries)&lt;/strong&gt; puedes simular constantemente la navegación de los usuarios o &lt;em&gt;crawlers&lt;/em&gt; dentro de tus URLs críticas desde múltiples partes del mundo.&lt;/p&gt;

&lt;p&gt;Si Googlebot visita tu sitio y obtiene un error 5xx repetidamente, el impacto negativo en tus ránkings orgánicos (SEO) puede ser implacable. CloudWatch detecta e informa estas caídas instantáneamente para que la correción suceda antes de que el crawler indexe el error.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Análisis Forense Inmediato de Logs con "Logs Insights"
&lt;/h3&gt;

&lt;p&gt;¿Tienes miles de líneas de error en formato JSON y buscas rápidamente ubicar el error de un respectivo &lt;code&gt;user_id&lt;/code&gt;? Con &lt;strong&gt;CloudWatch Logs Insights&lt;/strong&gt;, en lugar de conectarse por SSH al servidor a iterar "grep" con miedo, puedes hacer consultas en tiempo real por los miles de logs distribuidos, estructurados y guardados en fracciones de segundos, utilizando su propio sintaxis muy similar a SQL.&lt;/p&gt;

&lt;h2&gt;
  
  
  Ejemplo Rápido: Monitorear Errores con Logs Insights
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight sql"&gt;&lt;code&gt;&lt;span class="o"&gt;#&lt;/span&gt; &lt;span class="n"&gt;Busca&lt;/span&gt; &lt;span class="n"&gt;r&lt;/span&gt;&lt;span class="err"&gt;á&lt;/span&gt;&lt;span class="n"&gt;pidamente&lt;/span&gt; &lt;span class="n"&gt;los&lt;/span&gt; &lt;span class="n"&gt;errores&lt;/span&gt; &lt;span class="n"&gt;lanzados&lt;/span&gt; &lt;span class="n"&gt;en&lt;/span&gt; &lt;span class="n"&gt;las&lt;/span&gt; &lt;span class="err"&gt;ú&lt;/span&gt;&lt;span class="n"&gt;ltimas&lt;/span&gt; &lt;span class="n"&gt;horas&lt;/span&gt; &lt;span class="n"&gt;en&lt;/span&gt; &lt;span class="n"&gt;tu&lt;/span&gt; &lt;span class="n"&gt;backend&lt;/span&gt;
&lt;span class="n"&gt;fields&lt;/span&gt; &lt;span class="o"&gt;@&lt;/span&gt;&lt;span class="nb"&gt;timestamp&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;@&lt;/span&gt;&lt;span class="n"&gt;message&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;@&lt;/span&gt;&lt;span class="n"&gt;logStream&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;@&lt;/span&gt;&lt;span class="n"&gt;log&lt;/span&gt;
&lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="n"&gt;filter&lt;/span&gt; &lt;span class="o"&gt;@&lt;/span&gt;&lt;span class="n"&gt;message&lt;/span&gt; &lt;span class="k"&gt;like&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;ERROR&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="k"&gt;or&lt;/span&gt; &lt;span class="o"&gt;@&lt;/span&gt;&lt;span class="n"&gt;message&lt;/span&gt; &lt;span class="k"&gt;like&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;Exception&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;
&lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="n"&gt;sort&lt;/span&gt; &lt;span class="o"&gt;@&lt;/span&gt;&lt;span class="nb"&gt;timestamp&lt;/span&gt; &lt;span class="k"&gt;desc&lt;/span&gt;
&lt;span class="o"&gt;|&lt;/span&gt; &lt;span class="k"&gt;limit&lt;/span&gt; &lt;span class="mi"&gt;20&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;p&gt;✅ Resultado Real&lt;br&gt;
Poner este tipo de análisis en práctica acorta el 'Mean Time to Resolution' (MTTR) de horas a un par de minutos, demostrando a tu equipo, jefatura o clientes la madurez Cloud y de Troubleshooting que posees.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Arquitectura de Observabilidad Moderna
&lt;/h2&gt;

&lt;p&gt;Para visualizar cómo todo esto se conecta, este es el flujo típico de observabilidad en un entorno moderno:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Aplicación (EC2 / Lambda)&lt;/strong&gt; ➔ Escribe logs en &lt;em&gt;CloudWatch Logs&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Filtro de Métricas&lt;/strong&gt; ➔ Escanea los logs buscando palabras como "ERROR" y crea una &lt;em&gt;Métrica&lt;/em&gt; personalizada.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;CloudWatch Alarms&lt;/strong&gt; ➔ Detecta si la métrica sube a más de 5 errores en 5 minutos.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Amazon SNS&lt;/strong&gt; ➔ Dispara una notificación que te llega directo a Slack o a un webhook.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Conclusión
&lt;/h2&gt;

&lt;p&gt;No asumas de forma intuitiva que tu infraestructura está funcionando bien solo porque los usuarios o quejas aún no han aparecido en Twitter. Con el poder que te otorga &lt;strong&gt;AWS CloudWatch&lt;/strong&gt; para logs y tracking avanzado, te abres puerta a cambiar tu visión de ser reactivo a un creador hiper &lt;strong&gt;proactivo&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;¿Quieres destacar y dominar la nube de AWS u optimizar tu SEO técnico?&lt;/strong&gt; Ensaya a colocar tus ojos en la operatividad con CloudWatch, antes de que sea la caída general del sistema a las 3 a.m. la que termine tocando la puerta.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>cloudwatch</category>
    </item>
  </channel>
</rss>
