Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Assinatura e verificação de arquivos veriexec para o Junos OS

Saiba mais sobre a assinatura e verificação de arquivos da Veriexec, seus benefícios e como usá-lo no firewall da Série SRX.

O Exec verificado (também conhecido como veriexec) é um esquema de assinatura e verificação de arquivos que protege o sistema operacional Junos (OS) contra software e atividade não autorizados que podem comprometer a integridade do seu dispositivo. Originalmente desenvolvido para o NetBSD OS, o veriexec foi adaptado para o Junos OS e habilitado por padrão.

Arquivos autorizados, que são certos arquivos que são enviados com o Junos OS, têm uma impressão digital associada que verifica veriexec para determinar se o arquivo pode ser usado (executado ou até mesmo aberto). Qualquer arquivo que não tenha uma impressão digital válida não pode ser executado ou lido por aplicativos que exijam entrada verificada.

O/bin/sh não requer entrada verificada. Ele pode ser usado para executar scripts arbitrários porque, do ponto de vista de risco, eles são os mesmos que comandos interativos, que já são controlados por autenticação e permissões do usuário. No entanto, se um script de shell verificado contém instruções para executar um script arbitrário, ou seja, um arquivo que não tenha uma assinatura no manifesto, a execução desse arquivo será evitada.

Como funciona a Veriexec

A Veriexec fornece ao kernel um manifesto assinado digitalmente que consiste em um conjunto de impressões digitais para todos os executáveis e outros arquivos que devem permanecer imutáveis. O carregador veriexec alimenta o conteúdo do manifesto para o kernel apenas se a assinatura digital do manifesto for verificada com sucesso. O kernel pode então verificar se um arquivo corresponde à sua impressão digital. Se o veriexec estiver sendo aplicado, somente serão executados executáveis com uma impressão digital verificada. Os arquivos protegidos não podem ser escritos, modificados ou alterados.

Cada imagem de instalação contém um manifesto. O manifesto é somente leitura. Ele contém entradas como:

Se um arquivo tiver sido modificado e a impressão digital resultante difere da do manifesto, você verá uma mensagem de log, como o seguinte exemplo:

A mensagem de log está no seguinte formato:

A incompatibilidade da impressão digital indica que o arquivo foi modificado. Não tente executar o arquivo. Poderia conter código corrupto. Entre em contato com a JTAC.

Benefícios da Veriexec

Veja abaixo os principais benefícios da Veriexec:

  • Protege a segurança do sistema: A Veriexec protege roteadores, switches e firewalls da Juniper Networks contra violações de segurança.

  • Impede o acesso não autorizado: Ele impede que os agentes de ameaças obtenham acesso persistente e não autorizado ou causem falhas no sistema.

  • Frustra a execução de malwares: Ao impedir a execução de binários não assinados, ele impede modificações não autorizadas e malwares.

  • Suporte a código autorizado: Os clientes podem adicionar código assinado e autorizado ao Junos OS com a aplicação da Veriexec usando o JET SDK.

  • Consulte o Guia SDK: Para obter mais informações sobre a solução SDK, consulte Desenvolva aplicativos JET no dispositivo no Guia de desenvolvedores do Extension Toolkit da Juniper.

Como verificar se o Veriexec é aplicado em um dispositivo que executa o Junos OS - Opção 1

As subseções a seguir dão procedimentos sobre como verificar se o veriexec é aplicado ou não.

Algumas plataformas do Junos OS oferecem uma versão opcional do Junos OS com aplicação veriexec desativada (conhecida como Junos Enhanced Automation ou Junos Flex). Para obter mais informações sobre o Junos Enhanced Automation, veja a visão geral dos aprimoramentos da automação do Junos em dispositivos que executam o Junos OS com automação aprimorada.

Use o sysctl security.mac.veriexec.state Command para o Junos OS Release 15.1 e posterior

Os administradores podem verificar se o veriexec é aplicado executando os seguintes comandos da shell CLI do Junos OS:

  1. Inicie a casca.

  2. Use o sysctl security.mac.veriexec.state comando.

    Se o veriexec for aplicado, a saída será security.mac.veriexec.state: loaded active enforce. Se o veriexec não for aplicado, a saída será security.mac.veriexec.state: loaded active.

Como verificar se o Veriexec funciona — Opção 2

Você pode confirmar se o veriexec está funcionando copiando um arquivo autorizado (aqui, /usr/bin/id), para um novo local conforme mostrado abaixo. A Veriexec impede a operação porque, embora haja uma impressão digital válida para /usr/bin/id, não há impressão digital para /tmp/id , embora o arquivo seja idêntico. O que está acontecendo é que o veriexec avalia as propriedades subjacentes do Linux do arquivo, que não são idênticas após serem copiadas, e não o próprio arquivo.

  1. Inicie a casca.

  2. Altere os diretórios e copie o arquivo de exemplo, /usr/bin/id para um novo local.

Resultados

Se o veriexec estiver sendo aplicado, aparece um erro de autenticação. Se não for, o arquivo será executado normalmente.

Saída quando o veriexec é aplicado (o arquivo é bloqueado):

Saída quando o veriexec não é aplicado (o arquivo é copiado):

Carregador com capacidade veriexec para dispositivos da Série SRX

O carregador com capacidade veriexec instala uma imagem do Junos OS usando o install comando de um servidor TFTP ou de um dispositivo de armazenamento USB.

  • Instale a imagem do Junos OS de um servidor tftp usando o comando de instalação install tftp://[host]/ .

  • Instale a imagem do Junos OS a partir de um dispositivo de armazenamento USB usando o comando de instalação install file:/// .

O carregador com capacidade veriexec valida a imagem do Junos OS. O carregador com capacidade veriexec inicializa apenas uma nova imagem do Junos OS com impressões digitais e não inicializa a imagem existente do Junos OS sem impressões digitais ou kernel. Você pode usar a nextboot função para verificar o dispositivo de inicialização atual.

Bootupgrade é uma ferramenta disponível no pacote Junos OS para oferecer suporte à atualização do firmware BIOS. Você pode usar o bootupgrade comando para atualizar, verificar uboot, carregar manualmente e instalar o carregador com capacidade veriexec de tamanho maior. O bootupgrade -c loader comando imprime a string da versão para o carregador atual.

Antes de instalar o carregador com capacidade veriexec para a imagem do Junos OS, a identificação das impressões digitais do Junos OS é realizada em ambas as partições de raiz dupla. Somente quando ambas as partições de raiz dupla têm o Junos OS com impressões digitais, a instalação de carregadores com capacidade veriexec é permitida.

Instale o carregador com capacidade veriexec da concha CLI do Junos OS:

  1. Inicie a casca.

  2. Use o bootupgrade -l /boot/veloader comando para instalar o carregador com capacidade veriexec.

  3. Você pode ver diferentes cenários aqui:

    • Use request system software add /var/tmp/xxx.tgz no-copy no-validate o comando para instalar o Junos OS com impressões digitais normalmente.

    • Para versões mais antigas do Junos OS, se o carregador com capacidade veriexec estiver em uso e a imagem do Junos OS alvo para versões anteriores não for suportada pelo carregador com capacidade veriexec, então use o request system software add /var/tmp/xxx.tgz no-copy no-validate comando para rebaixar automaticamente para o carregador antigo do carregador veriexec-compatível.

    • Use o request system software add /var/tmp/xxx comando para verificar se o pacote Junos OS é compatível com a instalação.

      A instalação é terminada porque o carregador com capacidade veriexec não é suportado para versões do Junos OS antes do 20.3R1.