Skip to content

Esta herramienta no está afiliada a Okta, Inc., ni avalada ni patrocinada por ella. Okta es una marca comercial de Okta, Inc. Los demás nombres son marcas comerciales de sus respectivos propietarios.

System Log WebAssembly

¿Han comprometido nuestro tenant de Okta?

Suelta tu exportación del System Log de Okta (JSON de la API, CSV de la consola de administración, exportaciones de SIEM) y obtén un veredicto, los hallazgos, una cronología del incidente y una lista de remediación. Se analiza en tu navegador con WebAssembly: no se sube nada.

Suelta aquí tu exportación del System Log de Okta

JSON o JSON Lines de /api/v1/logs, CSV de Reports › System Log, exportaciones de EventBridge / Splunk / Elastic: gzip, carpetas y archivos ZIP funcionan tal cual. Varios ficheros se combinan y se eliminan los duplicados.

Una exportación sintética de un incidente ficticio (ingeniería social al helpdesk → toma de control de un administrador → IdP malicioso → AWS): sin datos reales.

100 % en el cliente: los registros se analizan con WebAssembly en tu navegador y nunca se suben.

Cómo obtener tus datos

De cero a un veredicto en unos dos minutos: descarga el System Log de Okta y suelta los ficheros aquí. Exporta toda la organización, no una vista filtrada.

  1. 1. RecopilarEjecuta el script de la API o descarga el CSV
  2. 2. SoltarSuelta los ficheros, la carpeta o un ZIP en esta página
  3. 3. Se queda en tu navegadorAnalizado localmente con WebAssembly, nunca se sube

Requisito: un token de API creado por un administrador de solo lectura (Security › API › Tokens). Descarga toda la organización de los últimos 90 días en JSON bruto, con todos los campos.

  1. Indica tu dominio de Okta y el token (sustituye los dos valores):

    bash / zsh
    export OKTA_DOMAIN="<your-org>.okta.com"
    export OKTA_API_TOKEN="<read-only API token>"

  2. Pega en el Terminal (bash o zsh). Cada página se guarda en okta-system-log/ dentro de la carpeta actual:

    bash / zsh
    out=okta-system-log; mkdir -p "$out"
    start=$(date -u -v-90d +%Y-%m-%dT%H:%M:%SZ 2>/dev/null || date -u -d '90 days ago' +%Y-%m-%dT%H:%M:%SZ)
    end=$(date -u +%Y-%m-%dT%H:%M:%SZ)
    url="https://${OKTA_DOMAIN}/api/v1/logs?since=${start}&until=${end}&limit=1000"
    n=0
    while [ -n "$url" ]; do
      n=$((n+1)); f="$out/okta-system-log-$(printf %04d $n).json"
      curl -sS --fail -D "$out.headers" \
        -H "Authorization: SSWS ${OKTA_API_TOKEN}" \
        -H "Accept: application/json" \
        "$url" > "$f" || { rm -f "$f"; break; }
      url=$(tr -d '\r' < "$out.headers" | grep -i '^link:.*rel="next"' \
            | sed -E 's/^[Ll]ink: <([^>]+)>.*/\1/')
      sleep 1
    done
    rm -f "$out.headers"; ls -l "$out"

  3. Suelta la carpeta okta-system-log en esta página (o comprímela antes en ZIP). Una organización con mucha actividad genera muchas páginas de 1000 eventos: déjalo terminar.

Errores habituales

  • No filtres por usuario ni por tipo de evento: un restablecimiento del helpdesk o la asignación de un rol de administrador se registra a nombre de otra persona, y una exportación filtrada puede parecer limpia.
  • El System Log conserva 90 días: exporta ya. Las marcas de tiempo están en UTC y la herramienta muestra UTC por defecto.
  • Un token de API tiene los permisos de quien lo crea: créalo como administrador de solo lectura, desde una cuenta que el atacante no pueda controlar, y revócalo tras la exportación.

Qué hace esta herramienta

El System Log de Okta registra cada inicio de sesión, desafío MFA, sesión, cambio de administración y acceso a aplicaciones de una organización de Okta como registros LogEvent (eventType, actor, client, target, outcome, authenticationContext, securityContext, debugContext).

Esta herramienta lee una exportación del System Log en tu navegador, correlaciona los eventos entre usuarios, sesiones y direcciones IP y te dice si revelan un ataque de identidad, con un veredicto, los hallazgos y sus pruebas, una cronología del incidente y una lista de remediación.

Qué detecta

  • Fatiga MFA / bombardeo push: ráfagas de notificaciones o rechazos de Okta Verify, agravadas cuando al final se acepta una notificación.
  • Ingeniería social al helpdesk: un restablecimiento de contraseña o factores por parte de un administrador seguido del registro de un nuevo factor; crítico si procede de una red nueva, un proveedor de hosting o un anonimizador.
  • Secuestro de sesión: el mismo externalSessionId usado desde varias redes (ASN) o navegadores, detecciones de itinerancia de Okta, alertas de ThreatInsight, inicios de sesión mediante proxy / Tor.
  • Abuso de administración y persistencia: concesiones de Super administrador y de roles de administrador, creación de tokens de API, proveedores de identidad nuevos o modificados (federación entrante), autenticadores y políticas desactivados, ajustes de seguridad debilitados.
  • Password spraying y adivinación: muchas cuentas probadas desde una IP con pocos intentos cada una, o muchos fallos en una cuenta; agravado cuando un inicio de sesión tiene éxito.
  • Acceso a aplicaciones sensibles tras actividad sospechosa (AWS, Microsoft 365, Google Workspace, GitHub, Salesforce, la consola de administración de Okta…), con un enlace a la herramienta de análisis de registros correspondiente.

Reglas de detección

Las detecciones son datos, no código: cada regla es un filtro de tipo Sigma, un umbral, una secuencia o una condición de seguimiento sobre los campos del System Log, con una gravedad y técnicas de MITRE ATT&CK. El conjunto de reglas se versiona con la herramienta.

ReglaGravedad baseATT&CK
Fatiga MFA / bombardeo de notificaciones push
mfa.push_fatigue
AltaT1621
Restablecimiento por el helpdesk y nuevo factor registrado
mfa.helpdesk_reset_then_enroll
AltaT1656, T1098.005, T1556.006
Contraseña o factores restablecidos por otro usuario
mfa.factor_reset_by_admin
BajaT1098
Intento de eludir el MFA
mfa.bypass_attempt
MediaT1556.006
Sesión usada desde varias redes
session.multi_asn
AltaT1539, T1550.004
Sesión usada por varios navegadores
session.multi_user_agent
MediaT1539, T1550.004
Itinerancia de sesión detectada por Okta
session.roaming
MediaT1550.004
Password spraying
access.password_spray
AltaT1110.003
Adivinación de contraseña en una cuenta
access.brute_force
MediaT1110.001
Inicio de sesión a través de un anonimizador
access.anonymizer
MediaT1090.003, T1078.004
Inicio de sesión desde un proveedor de hosting
access.hosting_provider
MediaT1078.004
Alerta de Okta ThreatInsight
threat.threatinsight
MediaT1110
El usuario informó de actividad sospechosa
threat.user_reported
Alta
Credencial filtrada utilizada
threat.breached_credential
MediaT1078
Rol de Super administrador concedido
admin.super_admin_granted
AltaT1098.003
Rol de administrador concedido
admin.role_granted
MediaT1098.003
Token de API creado
admin.api_token_created
MediaT1098.001
Acceso del soporte de Okta / suplantación
admin.support_access
MediaT1078.004
Nuevo proveedor de identidad (federación entrante)
persistence.idp_created
AltaT1484.002
Proveedor de identidad modificado
persistence.idp_modified
MediaT1484.002
Autenticador desactivado
defense.authenticator_disabled
AltaT1556.006
Política o regla desactivada
defense.policy_disabled
MediaT1556.006
Política modificada
defense.policy_modified
BajaT1556
Ajustes de seguridad modificados
defense.security_settings_changed
MediaT1562
Aplicación sensible abierta tras actividad sospechosa
app.sso_after_suspicious
AltaT1021.007, T1550.001

Limitaciones

  • El System Log se conserva 90 días: la actividad anterior se pierde salvo que se haya transmitido o exportado.
  • Un veredicto sin compromiso solo cubre lo que contiene la exportación: una exportación filtrada o parcial puede pasar por alto el ataque.
  • Las detecciones son heurísticas: usuarios de VPN, personal de viaje y el trabajo del helpdesk pueden generar hallazgos. Confirma cada uno con las personas implicadas.
  • Las referencias (país nuevo, dispositivo nuevo) se calculan a partir de la propia exportación: una exportación corta aporta poco historial.
  • Los campos de debugContext.debugData (risk, behaviors, threatSuspected) no son un contrato estable y varían entre organizaciones y versiones de Okta.

Preguntas frecuentes

¿Se suben mis registros a algún sitio?

No. El analizador está escrito en Rust, compilado a WebAssembly y se ejecuta en un Web Worker de tu navegador; los ficheros se leen localmente por fragmentos. No existe ningún punto de subida.

¿Qué tamaño de exportación admite?

Las exportaciones se leen en flujo por fragmentos de 4 MB (el gzip se descomprime sobre la marcha), así que los ficheros de varios GB funcionan; el límite es la memoria que ocupan los propios eventos. En exportaciones muy grandes se listan las pruebas y los eventos más recientes.

¿Qué eventos de Okta importan más en un compromiso?

user.session.start y user.authentication.auth_via_mfa (inicios de sesión), system.push.send_factor_verify_push y user.mfa.okta_verify.deny_push (fatiga MFA), user.mfa.factor.reset_all / activate (cambios de factores), user.account.privilege.grant (roles de administrador), system.api_token.create, system.idp.lifecycle.create (federación entrante) y user.authentication.sso (acceso a aplicaciones).

¿Cómo detecto un secuestro de sesión en Okta?

Agrupa los eventos por authenticationContext.externalSessionId: una sesión usada desde dos redes (securityContext.asNumber) o dos navegadores es sospechosa, sobre todo justo después del inicio de sesión. Okta también registra security.session.detect_client_roaming.

¿Es una herramienta oficial de Okta?

No. Es una herramienta independiente, no afiliada a Okta, Inc. ni avalada por ella. Lee el formato de registro descrito en la documentación pública para desarrolladores de Okta.

El veredicto indica compromiso: ¿y ahora qué?

Conserva los registros, contén las cuentas implicadas (cierre de sesiones, restablecimiento de factores y contraseñas, revocación de roles de administrador, tokens e IdP desconocidos) e investiga las aplicaciones a las que se accedió. La pestaña Remediación lista los pasos según tus hallazgos, y las recomendaciones de seguridad de Okta (sec.okta.com) documentan detecciones y medidas de refuerzo frente a estos ataques.

Por qué las detecciones de identidad de Okta fallan con VPN corporativas, redes móviles y el helpdesk, qué no ve el analizador y cómo verificar cada hallazgo.
Una intrusión ficticia en Okta leída evento a evento: restablecimiento del helpdesk, factor del atacante, Super Admin, IdP malicioso, AWS y los hallazgos.
Detecta password spraying, fuerza bruta y credential stuffing en Okta: fallos por IP y por usuario, eventos de ThreatInsight y el inicio de sesión que importa.

Esta herramienta no está afiliada a Okta, Inc., ni avalada ni patrocinada por ella. Okta es una marca comercial de Okta, Inc. Los demás nombres son marcas comerciales de sus respectivos propietarios.