Entre as apresentações da conferência Black Hat 2022 de agosto, poucas foram de uso prático para administradores de sistema e agentes de segurança. Uma exceção bem-vinda foi o relatório do pesquisador do Rapid7, Jacob Baines, que falou em detalhes sobre como ele analisou o software corporativo da Cisco e encontrou várias vulnerabilidades nele. As descobertas de Jacob estão disponíveis em slides, bem como em um relatório detalhado e também em um conjunto de utilitários no GitHub.
Jacob encontrou 10 problemas que afetam o Cisco Adaptive Security Software, o Adaptive Security Device Manager e o Firepower Services Software for ASA. Essas soluções de software controlam uma variedade de sistemas Cisco para usuários corporativos, incluindo firewalls de hardware, soluções de segurança corporativa de ponta a ponta, entre outros. Sete desses problemas foram reconhecidos pela Cisco como vulnerabilidades, enquanto aos três restantes – de acordo com o fornecedor – não afetam a segurança. No momento da divulgação, duas das sete vulnerabilidades não haviam sido solucionadas – apesar do Rapid7 ter informado a Cisco em fevereiro/março de 2022 (outra supostamente foi resolvida mais tarde).
O que são essas vulnerabilidades?
Vamos dar uma olhada em duas das mais notáveis. A vulnerabilidade CVE-2022-20829 está relacionada ao método de entrega de atualização usado no software Cisco ASA. O bug é bastante trivial: os pacotes binários de atualização não são validados durante a instalação; não há verificação de assinatura digital ou algo assim. Rapid7 mostrou como modificar pacotes binários Cisco ASDM para executar código arbitrário quando processado.
A segunda vulnerabilidade digna de nota é a CVE-2021-1585. Foi descoberta no final de 2020 pelo pesquisador Malcolm Lashley. Ele notou que, quando as atualizações são entregues, o certificado necessário para estabelecer uma conexão segura por meio de um handshake TLS é processado incorretamente. Isso, por sua vez, permite que um invasor execute um ataque man-in-the-middle contra clientes Cisco — ou seja, substitua seu próprio recurso por uma fonte de atualização legítima. Isso torna possível entregar e executar código malicioso em vez de uma patch. Essa vulnerabilidade tem um histórico interessante: Malcolm Lashley a relatou à Cisco em dezembro de 2020. Em julho de 2021, a Cisco divulgou detalhes da vulnerabilidade sem uma patch. Em julho de 2022, a vulnerabilidade foi marcada como resolvida no portal interno para clientes da empresa. Rapid7 mostrou que não era o caso: se havia uma correção, não funcionava.
Nem as outras vulnerabilidades podem ser descritas como triviais. Por exemplo, a CVE-2022-20828 pode ser usada para atacar um administrador de sistema por meio do acesso remoto. A demonstração dá um exemplo de como um invasor em potencial pode obter acesso total ao sistema digitando um único comando. Além disso, Rapid7 descobriu que os módulos de inicialização FirePOWER não são verificados. Isso significa que, se alguma vulnerabilidade for fechada no software, sempre será possível reverter a imagem de inicialização para uma versão anterior sem correção. Apesar do potencial de usar esse downgrade em ataques reais, a Cisco nem mesmo considerou isso um problema de segurança.
Dificuldades de entrega de atualizações
Essas vulnerabilidades mostram que, mesmo em software corporativo empacotado com soluções corporativas de ponta, o sistema de entrega de atualizações tem sido insuficiente. Não faz muito tempo, escrevemos sobre um problema conceitualmente semelhante em um software de uso popular, o Zoom para dispositivos Apple. O processo de verificação de atualização parecia bastante seguro: o acesso ao servidor era feito por meio de uma conexão segura e o arquivo de atualização era assinado digitalmente. Mas o procedimento de verificação de assinatura permitia que qualquer coisa fosse executada em vez de um arquivo executável legítimo – e com os mais altos privilégios. Há também um exemplo de “atualizações maliciosas” sendo usadas em ataques reais: em 2018, pesquisadores da Kaspersky detectaram esse método no ataque Slingshot APT para comprometer roteadores Mikrotik.
No caso da Cisco, a verificação da assinatura digital das atualizações de pacotes binários ASDM nem precisou ser ignorada: ela simplesmente não existia (um mecanismo supostamente foi lançado em agosto de 2022, mas sua confiabilidade ainda não foi testada). Verdade seja dita, todos os ataques propostos pelos pesquisadores da Black Hat são bastante difíceis de realizar. Mas como poderíamos estar falando de uma grande organização com muito a perder com ransomware de criptografia de arquivos ou roubo de segredos comerciais, o risco deve ser levado a sério.
O que fazer a respeito
Dadas as especificidades dessas vulnerabilidades, a principal recomendação do pesquisador Rapid7 é limitar, na medida do possível, o trabalho em modo administrador com acesso total. E isso não se refere apenas a ter altos privilégios ao se conectar remotamente à infraestrutura. Há muitos exemplos que mostram que um hack é possível mesmo com isolamento offline máximo — por meio de atualizações maliciosas ou um script simples que explora uma vulnerabilidade de software. O monitoramento cuidadoso daqueles indivíduos com acesso total à infraestrutura e também a limitação das ações executadas como administrador ajudarão a reduzir a chance de um ataque bem-sucedido. Mas o risco não será totalmente eliminado…