Effective Pivot Attack Detection via System and Network Information
O artigo apresenta o Stitch, um sistema baseado em host que aproveita kernels programáveis para combinar informações de sistema e de rede para a detecção em tempo real, precisa e leve de ataques de pivoteamento, superando significativamente as defesas existentes em precisão ao mesmo tempo em que mantém uma taxa de falsos positivos mínima.
Artigo original sob licença CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta é uma explicação gerada por IA do artigo abaixo. Não foi escrita nem endossada pelos autores. Para precisão técnica, consulte o artigo original. Ler aviso legal completo
No mundo digital, a segurança muitas vezes baseia-se numa ideia simples: construir uma parede forte ao redor do interior de uma rede e não deixar passar nada de suspeito. É assim que funcionam os firewalls e os sistemas de detecção de intrusão; eles vigiam o perímetro, observando atacantes que tentam romper a barreira vinda do exterior. No entanto, esta estratégia tem um ponto cego. Uma vez que um atacante consegue enganar a parede externa e comprometer um único computador no interior, ele não precisa de quebrar a parede novamente para alcançar o seu alvo final. Em vez disso, pode usar esse primeiro computador comprometido como um degrau, ou um pivô, para saltar para outros computadores mais protegidos nas profundezas da rede. Porque o tráfego que se move entre estes computadores internos parece perfeitamente normal e confiável, ele passa despercebido pelos guardas do perímetro. Esta técnica, conhecida como pivoting (pivoteamento), permite que os atacantes se movam silenciosamente através de uma rede, roubando dados ou espalhando malware sem nunca acionar os alarmes desenhados para os deter.
O problema é que detetar este movimento é incrivelmente difícil. Os dados que fluem entre computadores internos parecem frequentemente idênticos ao trabalho legítimo das pessoas que os utilizam. As soluções existentes para capturar estes atacantes têm tido dificuldade com um dilema difícil: ou são demasiado lentas para serem úteis em tempo real, ou exigem que todos os computadores de uma rede cooperem (o que é muitas vezes impossível em ambientes modernos e flexíveis), ou geram tantos falsos alarmes que as equipas de segurança ficam sobrecarregadas e perdem as ameaças reais. Para resolver isto, investigadores da Universidade de Dalhousie e da Universidade da Virgínia desenvolveram um novo sistema chamado Stitch. Em vez de tentar observar toda a rede a partir de um ponto central, o Stitch vive diretamente nos computadores individuais. Ele atua como um observador local que observa como os processos internos de um computador lidam com o tráfego de rede, procurando a assinatura específica de um atacante a usar uma máquina para falar com outra.
A ideia central por trás do Stitch é que, para capturar um pivô, é necessário ligar os pontos entre o que entra num computador e o que sai dele, e deve-se saber qual o programa de software responsável por esse movimento. Métodos anteriores olhavam frequentemente apenas para o tempo e o tamanho dos pacotes de dados, supondo que, se dois fluxos de dados chegassem e saíssem em tempos semelhantes e com tamanhos semelhantes, estariam conectados. Esta abordagem é falha porque frequentemente confunde tráfego rotineiro e inofensivo com ataques, levando a uma inundação de falsos alarmes. O Stitch evita este palpite ao utilizar uma tecnologia integrada no sistema operativo Linux chamada eBPF. Esta tecnologia permite que o sistema insira de forma segura pequenos programas personalizados no kernel — o núcleo do sistema operativo — sem necessidade de abrandar o computador ou de obter permissão de todos os outros dispositivos na rede.
O Stitch funciona rastreando a vida de um processo, que é simplesmente um programa em execução, desde o momento em que recebe um dado até ao momento em que envia um novo dado para fora. Quando um pacote de dados chega a um computador, o Stitch rotula-o e segue-o à medida que ele é entregue a um programa específico. Se esse programa abrir então uma nova ligação para enviar dados para outro lugar, o Stitch verifica se a nova ligação de saída está ligada à original de entrada. Faz isto observando as chamadas de sistema (system calls) — os pedidos que um programa faz ao sistema operativo — para ver se o mesmo processo que recebeu os dados é o que está a enviar os novos dados. Se o sistema detetar que um processo está a retransmitir tráfego de um lugar para outro, verifica então as características desse tráfego. Analisa quanto tempo passou entre a entrada e a saída dos dados e o quão semelhantes são os seus tamanhos.
Para garantir que não dá falsos alarmes, o Stitch também mantém um registo de para onde um computador costuma enviar os seus dados. Se um computador comunica frequentemente com um servidor específico por razões legítimas, como verificar uma base de dados ou gerir uma conta de utilizador, o Stitch aprende a reconhecer isto como um comportamento normal e ignora-o. Só levanta um alerta se o padrão de tráfego parecer um pivô e estiver a dirigir-se a um destino que é raramente visitado. Esta combinação de rastrear o processo de software, analisar o fluxo de dados e aprender os hábitos normais do computador permite que o Stitch seja altamente preciso. Em testes utilizando ataques simulados, o Stitch melhorou a precisão de deteção em cerca de 31 por cento em comparação com os melhores métodos existentes que dependem apenas do tempo e do tamanho do tráfego. Mais importante ainda, reduziu a taxa de falsos alarmes para menos de um quinto de um por cento, uma melhoria massiva em relação aos sistemas anteriores que frequentemente sinalizavam tráfego inofensivo como perigoso.
Os investigadores não pararam nas simulações. Instalaram o Stitch em servidores reais dentro de uma grande rede universitária, que serve milhares de estudantes, professores e funcionários. Executaram o sistema durante mais de 80 dias num servidor de faculdade partilhado e num servidor web público. Durante este período, o sistema monitorizou milhões de eventos de rede sem abrandar os servidores ou exigir quaisquer alterações à configuração de segurança existente da rede. No servidor da faculdade, o sistema identificou com sucesso todos os ataques de teste lançados pelos investigadores, que envolviam o uso de túneis secure shell para mover dados. Gerou apenas um número ínfimo de falsos alarmes, a maioria causada por tarefas administrativas legítimas, como o redirecionamento de portas (port forwarding) para acesso a bases de dados. No servidor web público, o sistema funcionou durante 32 dias sem gerar um único alerta, confirmando que consegue distinguir o tráfego web normal de potenciais tentativas de pivoteamento.
Os resultados mostram que o Stitch oferece uma forma prática de defender contra estes ataques furtivos sem necessidade de uma reformulação completa da infraestrutura de uma rede. Funciona independentemente em cada computador, o que significa que não importa se outros dispositivos na rede estão a correr software diferente ou se a topologia da rede muda frequentemente. O sistema é leve, utilizando menos de 350 megabytes de memória e adicionando quase nenhuma carga extra ao processador do computador. Mesmo sob cargas de tráfego intensas, manteve a sua capacidade de detetar ataques. Os investigadores descobriram que o sistema consegue lidar com milhares de novas ligações de rede por segundo, mantendo a capacidade de rastrear com precisência os caminhos dos dados. Esta eficiência é crucial porque as redes modernas são dinâmicas e movimentadas; uma ferramenta de segurança que seja demasiado pesada ou lenta seria impraticável para o uso no mundo real.
Ao focar-se na relação entre os processos de software e o tráfego de rede, o Stitch resolve o problema de distinguir entre um utilizador legítimo a realizar o seu trabalho e um atacante a usar o computador desse utilizador como ponte. Não depende da cooperação de todos os dispositivos da rede, nem requer o armazenamento de quantidades massivas de dados históricos para encontrar padrões. Em vez disso, observa o contexto imediato do tráfego enquanto este acontece. Os investigadores demonstraram que esta abordagem é eficaz contra ferramentas comuns usadas por atacantes, tais como SSH, Nmap e Chisel, que são frequentemente utilizadas para criar estes túneis de pivoteamento. O sistema identificou com sucesso estes ataques mesmo quando estavam disfarçados dentro de atividade de rede normal.
O trabalho também destaca a importância de olhar para o quadro geral ao assegurar uma rede. Confiar apenas no perímetro já não é suficiente, e confiar apenas em estatísticas de tráfego é demasiado propenso ao erro. Ao combinar a observação de processos do sistema com a análise de fluxo de rede, o Stitch proporciona uma visão mais completa do que está a acontecer dentro de um computador. Os investigadores planeiam disponibilizar o código fonte do sistema para o público, permitindo que outros testem e desenvolvam a partir do seu trabalho. Esta transparência visa ajudar a comunidade de segurança mais ampla a melhorar as defesas contra ameaças persistentes avançadas, que são ataques de longo prazo sofisticados, frequentemente lançados por grupos organizados. O sucesso do Stitch sugere que uma mudança para a deteção baseada no host e em tempo real, que compreenda o contexto do tráfego, é um caminho viável e necessário para a segurança de rede.
No final, o artigo apresenta um sistema que é simultaneamente preciso e eficiente, preenchendo uma lacuna nas ferramentas de segurança atuais. Prova que é possível detetar ataques de pivoteamento em tempo real sem gerar uma inundação de falsos alarmes ou exigir que toda a rede mude o seu comportamento. A capacidade do sistema de operar independentemente em hosts individuais torna-o adaptável a vários ambientes, desde pequenas redes de escritório até infraestruturas universitárias grandes e complexas. As conclusões sugerem que, ao integrar o rastreio ao nível do sistema com a análise de rede, as equipas de segurança podem obter uma visão muito mais clara das ameaças que espreitam dentro das suas redes, permitindo-lhes responder aos ataques antes que estes possam causar danos significativos. O trabalho serve como uma demonstração de que a segurança eficaz não exige sempre hardware mais complexo ou caro, mas sim uma forma mais inteligente de olhar para os dados que já lá estão.
Afogado em artigos na sua área?
Receba digests diários dos artigos mais recentes que correspondam às suas palavras-chave de pesquisa — com resumos técnicos, no seu idioma.