AvanzadoMITRE ATT&CKCommand and ControlC2beaconingDNS tunnelingdetección

Command and Control (TA0011): Comunicación con Sistemas Comprometidos

Análisis completo de la táctica Command and Control de MITRE ATT&CK (TA0011): técnicas C2 que usan los atacantes para comunicarse con sistemas comprometidos. HTTPS beaconing, DNS tunneling, protocol tunneling, domain fronting, y detección de cada patrón.

MalwareIntel Research··6 min lectura
Serie: MITRE ATT&CK y D3FEND — Parte 12

Command and Control es el canal que mantiene al atacante conectado con los sistemas comprometidos

La táctica Command and Control (TA0011) documenta las técnicas que los adversarios usan para comunicarse con los sistemas bajo su control. Sin C2, un atacante pierde la capacidad de enviar comandos, recibir datos y coordinar el ataque. El desafío para el atacante es mantener comunicación fiable y sigilosa que no sea detectada ni bloqueada por las defensas de red.

Técnicas por protocolo

T1071: Application Layer Protocol

El C2 se camufla como tráfico de aplicación legítimo.

T1071.001: Web Protocols (HTTP/HTTPS)

El protocolo C2 más utilizado. Frameworks como Cobalt Strike, Sliver, Brute Ratel y Havoc usan HTTPS por defecto.

Patrón de beaconing:

Beacon Cobalt Strike típico:
  Intervalo: 60 segundos (configurable)
  Jitter: 20% (±12 segundos)
  Método: HTTPS GET para check-in, POST para enviar datos
  User-Agent: configurable (imita navegador real)
  URI: /api/v1/status, /updates/check, /news/feed (configurable)

Tráfico resultante:
  09:00:00 → GET https://c2.example.com/api/status (check-in)
  09:01:02 → GET https://c2.example.com/api/status
  09:01:58 → GET https://c2.example.com/api/status
  09:03:05 → POST https://c2.example.com/api/data (envío datos)
  ...

Detección:

  • Beacon pattern analysis: identificar intervalos regulares con jitter en conexiones a la misma IP/dominio
  • JA3/JA3S fingerprint: hash del TLS handshake que identifica el cliente. Cobalt Strike tiene JA3 conocidos
  • Domain age: dominios C2 frecuentemente registrados < 30 días
  • Certificate analysis: certificados self-signed o de CAs poco comunes
  • SNI mismatch: Server Name Indication no coincide con el certificado
  • Tráfico fuera de horario: beaconing continuo a las 3 AM desde endpoint de usuario

T1071.004: DNS

DNS como canal C2: los comandos y datos se codifican en queries DNS.

Consulta legítima:
  query: www.google.com → A record

Consulta C2 (DNS tunneling):
  query: aGVsbG8gd29ybGQ.data.attacker-domain.com → TXT record
         ^^^^^^^^^^^^^^^^
         datos codificados en base32/base64 como subdominio

Respuesta C2:
  TXT: "Y29tbWFuZDogd2hvYW1p"  (comando codificado)

Detección:

  • DNS entropy: subdominios con entropy alta (base32/64 encoded)
  • Query length: consultas DNS anormalmente largas (> 50 chars)
  • TXT record volume: alto volumen de consultas TXT a un solo dominio
  • NXDomain ratio: muchas consultas a dominios inexistentes (DGA)
  • DNS over HTTPS (DoH): tráfico HTTPS al puerto 443 de resolvers conocidos (8.8.8.8, 1.1.1.1)

T1573: Encrypted Channel

Cifrado adicional sobre el protocolo de transporte.

Sub-técnicaMétodoNota
T1573.001: SymmetricAES, RC4 sobre HTTPTráfico cifrado dentro de HTTP (no HTTPS)
T1573.002: AsymmetricRSA, ECDH key exchangeKey exchange para sesión cifrada

Detección: inspección TLS (TLS interception proxy) para ver contenido. Sin inspección, solo metadata analysis.

T1572: Protocol Tunneling

Encapsular C2 dentro de otro protocolo.

MétodoProtocolo túnelHerramientas
DNS tunnelingDNSdnscat2, Cobalt Strike DNS beacon
ICMP tunnelingICMPicmpsh, ptunnel
SSH tunnelingSSHssh -R, chisel
HTTP tunnelingHTTPreGeorg, Neo-reGeorg, Chisel

Detección: volumen anómalo de ICMP, tamaño de paquetes ICMP inconsistente, SSH a hosts externos no habituales.

T1090: Proxy

Uso de proxies intermedios para ocultar la ubicación del C2.

Sub-técnicaIDMétodo
Internal ProxyT1090.001Pivoting a través de host comprometido
External ProxyT1090.002CDN, cloud functions como redirector
Multi-hop ProxyT1090.003Cadena de proxies (Tor, VPN chain)
Domain FrontingT1090.004CDN fronting: SNI apunta a CDN legítimo, Host header al C2

Domain fronting: la conexión TLS va a cloudfront.net (legítimo), pero el Host header interno redirige a attacker.cloudfront.net. El tráfico parece ir a Amazon CloudFront.

Detección: comparar SNI con Host header (requiere inspección TLS), bloquear dominios CDN sospechosos.

T1105: Ingress Tool Transfer

Descargar herramientas adicionales al sistema comprometido post-acceso. No es C2 puro pero usa el mismo canal.

Detección: binarios nuevos descargados a ubicaciones temporales, especialmente desde IPs/dominios sin historial.

T1104: Multi-Stage Channels

Usar diferentes canales C2 en diferentes fases:

  • Stage 1: DNS para C2 inicial (sigiloso, lento)
  • Stage 2: HTTPS para operaciones (rápido, más datos)
  • Stage 3: canal backup si el principal se bloquea

T1102: Web Service

Usar servicios web legítimos como C2:

  • GitHub/GitLab (issues, comments, gists como canal)
  • Slack/Discord/Telegram (bots como C2)
  • Google Docs/Sheets (documento compartido como dead drop)
  • Pastebin (comandos publicados como paste)
  • Cloud storage (Dropbox, OneDrive como staging)

Detección: difícil porque el tráfico va a servicios legítimos. Requiere inspección de contenido o behavioral analysis (patrón de acceso anómalo a GitHub desde servidor de producción).

T1571: Non-Standard Port

Usar puertos no estándar para protocolos C2: HTTPS en puerto 8443, 444, 8080. O protocolos custom en puertos altos.

Detección: conexiones salientes a puertos no estándar, especialmente desde servidores.

T1568: Dynamic Resolution

Resolver la dirección del C2 dinámicamente:

Sub-técnicaMétodoDetección
T1568.001: Fast Flux DNSIP del dominio cambia cada minutoMúltiples IPs para un dominio en poco tiempo
T1568.002: Domain Generation Algorithm (DGA)Generar dominios algorítmicamenteConsultas a dominios con aspecto aleatorio, alto NXDomain
T1568.003: DNS CalculationCalcular dominio/IP basado en inputsSimilar a DGA

DGA detection: machine learning sobre nombres de dominio (entropy, ratio consonantes/vocales, bigram frequency). Los dominios DGA tienen patrones estadísticos detectables.

Top C2 frameworks y sus indicadores

FrameworkProtocolo defaultJA3 conocidoNamed pipes
Cobalt StrikeHTTPSSí (múltiples)\MSSE-, \postex_, \status_*
SlivermTLS, HTTP, DNSConfigurable
Brute Ratel C4HTTPS, DNSConfigurable
Havoc C2HTTPSConfigurable
MythicHTTP, TCPVaría por agentVaría
MeterpreterTCP, HTTP, HTTPSConfigurable

Estrategia de detección C2

Capa 1: Network metadata

Sin inspeccionar contenido: domain age, JA3 fingerprint, beacon pattern, DNS anomalies, certificate analysis.

Capa 2: TLS inspection

Con proxy de inspección: analizar payload HTTP, detectar patrones de beacon, identificar comandos C2.

Capa 3: Endpoint

Sysmon Event 3 (conexiones), Event 22 (DNS queries), named pipes (Event 17/18), procesos con conexiones persistentes.

Capa 4: Threat intelligence

IOC feeds con IPs/dominios C2 conocidos, JA3 hashes de frameworks C2, reglas Suricata/Snort.

Conclusión

Command and Control es el cordón umbilical del atacante. HTTPS beaconing, DNS tunneling y web services como C2 son las técnicas dominantes. La detección requiere análisis de metadata de red (beacon patterns, JA3, domain age), inspección TLS donde sea posible, y monitorización de endpoint. Cortar el C2 aísla al atacante del sistema comprometido. La siguiente táctica, Exfiltration, usa frecuentemente el mismo canal C2 para extraer datos.

Fuentes y referencias

  • MITRE ATT&CK: Command and Control (TA0011)
  • Salesforce: JA3 TLS fingerprinting
  • SANS: "Detecting C2 Frameworks" (2024)
  • Elastic: "Identifying Beaconing Malware" (2023)
  • Fox-IT: "Cobalt Strike Beacon Detection" research

Preguntas frecuentes

Artículos relacionados

Este contenido tiene fines exclusivamente educativos y de investigación en ciberseguridad defensiva. No se proporcionan binarios maliciosos ni payloads ejecutables. El uso indebido de esta información es responsabilidad exclusiva del usuario. Leer disclaimer completo.