Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Leer un parseo de STIX

4 tareas · 40 min · Principiante

Miércoles 11 de noviembre. Junto con el boletín, la mesa sectorial publica un paquete STIX 2.1 con los mismos indicadores y algo que el CSV no trae: versiones, revocaciones y relaciones con familias de malware. En Los Cerezos un guion corto saca de ese paquete los valores para la lista de vigilancia, y Octavio Lizcano, que lo revisa, sospecha que entrega de más y de menos. Se leen el paquete, el guion y su salida de esta mañana. Nada se ejecuta y nada se descarga: es una copia para revisar.

0 de 4 · 0%

Objetivo de la sala

Miércoles 11 de noviembre. Junto con el boletín, la mesa sectorial publica un paquete STIX 2.1 con los mismos indicadores y algo que el CSV no trae: versiones, revocaciones y relaciones con familias de malware. En Los Cerezos un guion corto saca de ese paquete los valores para la lista de vigilancia, y Octavio Lizcano, que lo revisa, sospecha que entrega de más y de menos. Se leen el paquete, el guion y su salida de esta mañana. Nada se ejecuta y nada se descarga: es una copia para revisar.

Un paquete STIX 2.1 ("type": "bundle") es un sobre con una lista objects. Cada objeto lleva type, un id con la forma tipo--UUID, y las marcas created y modified, siempre en UTC y terminadas en Z. Un indicador exige además pattern (qué buscar), pattern_type y valid_from (desde cuándo vale).

Los objetos de STIX se versionan. Cuando quien creó un objeto lo cambia, publica otra versión con el mismo id y un modified nuevo: la especificación dice que una versión se identifica por la combinación de id y modified. Un paquete puede traer varias versiones del mismo objeto, en cualquier orden.

Abre bundle-msc-45.json y busca los dos objetos cuyo id termina en 0012.

Responde para continuar

¿Cuál de los dos objetos con id terminado en 0012 describe lo que la mesa sostiene hoy sobre ese indicador?

Ver pista de ayuda

Compara los dos valores de created y los dos de modified; uno de los dos pares es idéntico.

Un objeto con "revoked": true es uno que su creador ya no considera válido, y la revocación no tiene vuelta atrás: es la forma correcta de que una mesa diga «esto fue un error, sáquenlo». Un guion que no mira revoked, ni compara versiones, entrega a la lista de vigilancia justo lo que la fuente pidió retirar.

El guion recorre objects de principio a fin e imprime cada indicador que entiende, sin recordar los ids que ya vio. Lee extrae_stix.py y compara su salida (salida-extrae.txt) con el paquete.

Responde para continuar

¿Qué valor entregó el guion que la mesa ya retiró? Escríbelo tal como aparece en la salida.

Ver pista de ayuda

Es el único valor que sale dos veces en la salida; mira qué dice su última versión en el paquete.

El valor solo es la mitad de lo que trae el paquete. Las relaciones ("type": "relationship") unen objetos con un verbo: relationship_type dice cuál, source_ref el objeto de origen y target_ref el de destino. indicates va de un indicador a lo que delata, por ejemplo una familia de malware.

El guion de Los Cerezos imprime valores y tira el resto, así que el SOC recibe una dirección sin saber de qué campaña es. Para recuperarlo a mano: toma el id del indicador, búscalo en los source_ref y sigue el target_ref hasta el objeto malware.

Responde para continuar

¿Qué familia de malware indica el indicador de la dirección IPv4 del paquete? Escribe su nombre.

Ver pista de ayuda

El indicador de la IPv4 termina en 0013; busca la relación cuyo source_ref es ese id.

Los patrones de STIX tienen gramática propia: una comparación entre corchetes ([ipv4-addr:value = '...']), varias comparaciones unidas con AND u OR, y rutas de propiedad como file:hashes.'SHA-256' para los hashes. La expresión regular de la línea 4 solo reconoce una forma: una comparación sola, de tres tipos de observable. Todo lo demás termina en la línea 14.

El guion hace bien una cosa: no se calla lo que no entiende y lo imprime. Lo que falla es que nadie lee esas líneas y que la solución no puede ser forzar más la expresión regular. Busca en el paquete los dos indicadores que salieron como «sin extraer».

Responde para continuar

¿Qué cambio recupera los dos indicadores sin extraer sin estropear los que ya salen bien?

Ver pista de ayuda

Uno de los dos patrones lleva dos comparaciones unidas; el otro, un hash con una ruta de propiedad entre comillas.

Inicia sesión para registrar tus puntos y progreso en el ranking.

Whoami-Labs Pro

Whoami-Labs Pro utiliza cookies

Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad