Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Firma y verificación de archivos Veriexec para Junos OS

Obtenga información sobre la firma y verificación de archivos de Veriexec, los beneficios y cómo usarlo en el firewall de la serie SRX.

Verified Exec (también conocido como veriexec) es un esquema de firma y verificación de archivos que protege el sistema operativo (SO) de Junos contra software y actividades no autorizados que puedan comprometer la integridad de su dispositivo. Originalmente desarrollado para el sistema operativo NetBSD, veriexec fue adaptado para Junos OS y habilitado por defecto.

Los archivos autorizados, es decir, ciertos archivos que se suministran con Junos OS, tienen una huella digital asociada que veriexec comprueba para determinar si el archivo se puede usar (ejecutar o incluso abrir). Cualquier archivo que carezca de una huella digital válida no puede ser ejecutado o leído por aplicaciones que requieren una entrada verificada.

El/bin/sh no requiere entrada verificada. Se puede usar para ejecutar scripts arbitrarios porque, desde una perspectiva de riesgo, son lo mismo que los comandos interactivos, que ya se controlan a través de la autenticación y los permisos del usuario. Sin embargo, si una secuencia de comandos de shell comprobada contiene instrucciones para ejecutar una secuencia de comandos arbitraria, es decir, un archivo que no tiene una firma en el manifiesto, se impedirá la ejecución de ese archivo.

Cómo funciona Veriexec

Veriexec proporciona al kernel un manifiesto firmado digitalmente que consiste en un conjunto de huellas digitales para todos los ejecutables y otros archivos que deben permanecer inmutables. El cargador veriexec alimenta el contenido del manifiesto al kernel solo si la firma digital del manifiesto se verifica correctamente. El kernel puede verificar si un archivo coincide con su huella digital. Si se está aplicando veriexec, solo se ejecutarán ejecutables con una huella digital verificada. Los archivos protegidos no se pueden escribir, modificar ni cambiar.

Cada imagen de instalación contiene un manifiesto. El manifiesto es de solo lectura. Contiene entradas como las siguientes:

Si se ha modificado un archivo y la huella digital resultante difiere de la del manifiesto, verá un mensaje de registro, como el siguiente ejemplo:

El mensaje de registro tiene el siguiente formato:

La falta de coincidencia de huellas digitales indica que el archivo se ha modificado. No intente ejecutar el archivo. Podría contener código dañado. Comuníquese con el JTAC.

Beneficios de Veriexec

Encuentre los beneficios clave de Veriexec a continuación:

  • Protege la seguridad del sistema: Veriexec protege los enrutadores, conmutadores y firewalls de Juniper Networks de violaciones de seguridad.

  • Evita el acceso no autorizado: Bloquea a los actores de amenazas para que no obtengan acceso persistente y no autorizado o causen fallas en el sistema.

  • Frustra la ejecución de malware: Al evitar la ejecución de binarios sin firmar, detiene las modificaciones no autorizadas y los malwares.

  • Soporta código autorizado: Los clientes pueden agregar código firmado y autorizado a Junos OS con la aplicación de Veriexec mediante el SDK de JET.

  • Consulte la Guía del SDK: Para obtener más información sobre la solución SDK, consulte Desarrollo de aplicaciones JET en el dispositivo en la Guía para desarrolladores del kit de herramientas de extensión de Juniper.

Cómo verificar si Veriexec se aplica en un dispositivo que ejecuta Junos OS - Opción 1

Las siguientes subsecciones proporcionan procedimientos sobre cómo comprobar si veriexec se aplica o no.

Algunas plataformas Junos OS ofrecen una versión opcional de Junos OS con la aplicación veriexec deshabilitada (denominada Junos Enhanced Automation o Junos Flex). Para obtener más información acerca de Junos Enhanced Automation, consulte Descripción general de las mejoras de Junos Automation en dispositivos que ejecutan Junos OS con automatización mejorada.

Utilice el comando sysctl security.mac.veriexec.state para Junos OS versión 15.1 y posteriores

Los administradores pueden comprobar si se aplica veriexec ejecutando los siguientes comandos desde el shell de la CLI de Junos OS:

  1. Inicie el shell.

  2. Utilice el sysctl security.mac.veriexec.state comando.

    Si se aplica veriexec, el resultado es security.mac.veriexec.state: loaded active enforce. Si no se aplica veriexec, el resultado es security.mac.veriexec.state: loaded active.

Cómo verificar si Veriexec funciona - Opción 2

Puede confirmar si veriexec está funcionando copiando un archivo autorizado (aquí, /usr/bin/id), a una nueva ubicación como se muestra a continuación. Veriexec bloquea la operación. /usr/bin/id tiene una huella digital válida, pero /tmp/id no, aunque los archivos sean idénticos. Lo que está sucediendo es que veriexec evalúa las propiedades subyacentes de Linux del archivo, que no son idénticas después de ser copiadas, en lugar del archivo en sí.

  1. Inicie el shell.

  2. Cambie los directorios y, a continuación, copie el archivo de ejemplo, /usr/bin/id a una nueva ubicación.

Resultados

Si se está aplicando veriexec, aparece un error de autenticación. Si no es así, el archivo se ejecutará normalmente.

Salida cuando se aplica veriexec. Aquí el archivo está bloqueado:

Salida cuando no se aplica veriexec. Aquí se copia el archivo:

Cargador compatible con Veriexec para firewall de la serie SRX

El cargador compatible con veriexec instala una imagen de Junos OS mediante el install comando de un servidor TFTP o un dispositivo de almacenamiento USB.

  • Instale la imagen de Junos OS desde un servidor tftp mediante el install tftp://[host]/ comando install.

  • Instale la imagen de Junos OS desde un dispositivo de almacenamiento USB mediante el comando install install file:/// .

El cargador compatible con veriexec valida la imagen de Junos OS. El cargador solo arranca las imágenes nuevas de Junos OS con huellas digitales y no arranca las imágenes existentes sin huellas digitales ni kernel. Puede utilizar la nextboot función para comprobar el dispositivo de arranque actual.

Bootupgrade es una herramienta disponible en el paquete Junos OS para admitir la actualización del firmware del BIOS. Puede usar el bootupgrade comando para actualizar, comprobar uboot, cargar manualmente e instalar el cargador compatible con veriexec de mayor tamaño. El bootupgrade -c loader comando imprime la cadena de versión del cargador actual.

Antes de instalar el cargador compatible con veriexec en la imagen de Junos OS, se lleva a cabo una identificación de huellas digitales de Junos OS en ambas particiones de raíz dual. Solo cuando ambas particiones de raíz dual tienen Junos OS con huellas digitales, se permite la instalación del cargador compatible con veriexec.

Instale el cargador compatible con veriexec desde el shell de la CLI de Junos OS:

  1. Inicie el shell.

  2. Utilice el bootupgrade -l /boot/veloader comando para instalar el cargador compatible con veriexec.

  3. Puedes ver diferentes escenarios aquí:

    • Use request system software add /var/tmp/xxx.tgz no-copy no-validate comando para instalar Junos OS con huellas digitales normalmente.

    • En versiones anteriores de Junos OS, si el cargador compatible con veriexec está en uso y el cargador compatible con veriexec no admite la imagen de Junos OS de destino de versiones anteriores, utilice el request system software add /var/tmp/xxx.tgz no-copy no-validate comando para cambiar automáticamente al cargador antiguo desde el cargador compatible con veriexec.

    • Utilice el request system software add /var/tmp/xxx comando para comprobar si el paquete de Junos OS es compatible con la instalación.

      La instalación finaliza porque el cargador compatible con veriexec no es compatible con las versiones de Junos OS anteriores a 20.3R1.