Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Cadenas y condiciones: leer sin ejecutar

4 tareas · 40 min · Principiante

Antes de adoptar una regla recibida hay que saber qué archivos va a marcar, y eso se puede hacer leyéndola. En la estación del equipo de inteligencia de la Aseguradora Tucuso hay una regla para el cargador Tatacoa, una familia ficticia, y el inventario de ocho archivos de la cuarentena con sus primeros bytes, su tamaño y las cadenas que contienen. No hay motor: la condición se evalúa a mano, archivo por archivo. Las cadenas son marcadores inventados.

0 de 4 · 0%

Objetivo de la sala

Antes de adoptar una regla recibida hay que saber qué archivos va a marcar, y eso se puede hacer leyéndola. En la estación del equipo de inteligencia de la Aseguradora Tucuso hay una regla para el cargador Tatacoa, una familia ficticia, y el inventario de ocho archivos de la cuarentena con sus primeros bytes, su tamaño y las cadenas que contienen. No hay motor: la condición se evalúa a mano, archivo por archivo. Las cadenas son marcadores inventados.

Una regla YARA tiene un nombre, etiquetas opcionales tras dos puntos y hasta tres secciones. En meta el autor deja datos para quien lee: quién la escribió, cuándo, qué busca. En strings declara las cadenas, cada una con un identificador que empieza por $: texto entre comillas o bytes en hexadecimal entre llaves, donde ?? acepta cualquier byte. En condition las combina con and, or y paréntesis. La documentación oficial es clara en dos puntos: la condición es la única sección obligatoria, y los valores de meta no intervienen en ella.

Los modificadores cambian cómo se busca cada texto: nocase ignora mayúsculas, wide busca la cadena con dos bytes por carácter, como la guardan muchos programas de Windows, y ascii wide busca las dos formas. Abre la regla con cat TCS_Tatacoa_Cargador.yar en la carpeta de inicio.

Responde para continuar

En esta regla, ¿qué exige la parte `all of ($cfg*)` de la condición?

Ver pista de ayuda

«all of» con un comodín en el identificador se refiere solo al grupo que nombra el comodín.

La condición tiene tres partes unidas por and: los dos primeros bytes del archivo deben ser MZ (eso comprueba uint16(0) == 0x5A4D), el tamaño debe ser menor de 400KB y, además, se tiene que cumplir uno de dos caminos: todas las cadenas $cfg, o la secuencia $hex1 junto con al menos una de las cadenas $doc.

Lee cat inventario-de-archivos.txt y recorre los ocho archivos. En YARA, KB multiplica por 1024, así que el límite está en bytes. Un archivo debe pasar las tres partes; uno que falle cualquiera queda fuera.

Responde para continuar

¿Cuántos de los ocho archivos del inventario cumplen la condición completa? Escribe solo el número.

Ver pista de ayuda

Descarta primero los que no empiezan por MZ y los que no son menores que 409600 bytes; luego mira los dos caminos.

Los límites de tamaño se escriben con un operador estricto o no estricto, y un archivo que mide exactamente el límite cae de un lado o del otro según cuál se haya usado. Es un detalle que solo aparece si se lee la regla con cuidado, y que en un informe se convierte en la pregunta de por qué una muestra no coincidió.

En el inventario hay un archivo que cumple los bytes iniciales y tiene todas las cadenas de un camino, pero no coincide.

Responde para continuar

¿Qué archivo queda fuera de la regla únicamente por su tamaño? Escribe su nombre tal como aparece en el inventario.

Ver pista de ayuda

Calcula 400 por 1024 y busca un tamaño que no sea estrictamente menor.

El archivo arch-04 contiene todas las cadenas de configuración y uno de los textos del recibo, y aun así la regla no lo marca. Leer por qué no coincide un archivo es tan útil como leer por qué coincide: dice qué supuso el autor de la regla sobre la familia.

Responde para continuar

¿Por qué arch-04 no cumple la condición de la regla?

Ver pista de ayuda

Mira la columna de los dos primeros bytes.

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