Lurk: uma empresa exemplar do cibercrime

O que os pesquisadores mais se lembram sobre o grupo Lurk.

O julgamento dos criadores do Trojan bancário Lurk finalmente acabou. Eles foram presos em uma operação conjunta entre várias autoridades e a ajuda de nossos especialistas. Os criminosos foram presos em 2016. No entanto, a investigação e o caso judicial se arrastaram por mais cinco anos. Mas isso não deve ser surpresa, já que o número de suspeitos e vítimas envolvidos era sem precedentes.

Foi necessário, inclusive, transportar os membros do Lurk de ônibus. E os arquivos do caso totalizaram em média 4.000 volumes (um volume = 250 páginas). A quantidade de trabalho foi enorme e demorada, todos os registros e depoimentos foram analisados com uma lupa, mas em 2018, 27 réus foram a julgamento.

A Kaspersky monitora as atividades do grupo desde 2011. Ouvi falar pela primeira vez do Lurk quando cheguei à empresa em 2013. Lembro que pensei: “Quem conseguir pegá-los, pode tranquilamente se aposentar. A carreira estará completa.” Comparados com os cibercriminosos usuais da época, eles pareciam ser verdadeiramente sofisticados, tanto tecnicamente quanto organizacionalmente. Tendo dito que, se eu fosse encontrar Lurk hoje, eu provavelmente não ficaria tão impressionado e iria vê-los como um grupo que se apegava às melhores práticas.

A sentença do tribunal é uma boa desculpa para olhar para trás para os destaques desta atuação do cibercrime.

Esquema de infecção

Temos que começar com o vetor de infecção. Os atacantes usaram uma tática watering-hole, que publicava um redirecionamento para um kit de exploits  em vários sites empresarias. Esse método não era novo, mas neste caso, para se infectar, a vítima (sempre um contador) tinha visitado o local durante sua refeição (e somente neste momento). O  kit de exploit  baixava um Trojan sem arquivo para o computador da vítima, que seria usado exclusivamente para espionagem.

Os cibercriminosos estudavam quais programas funcionavam na máquina, se eram softwares bancários ou qualquer traço de software investigativo, e em quais sub-redes a máquina trabalhava (o foco principal eram as redes bancárias e governamentais). Em outras palavras, eles avaliaram o quão interessante o computador era, e eles sabiam exatamente quem eles queriam afetar.

O malware principal seria inserido apenas se o computador fosse de interesse. Se não, eles roubaram todas as senhas que podiam obter, por precaução, e removiam o malware da máquina da vítima.

Comunicação com C&C

O processo de troca de informações entre o Trojan e o servidor de comando e controle (C&C) não foi menos notável. A maioria dos Trojans daquela época incluía o endereço C&C prefixado no código-fonte. Os autores simplesmente especificaram o nome de domínio, o que lhes deixou a opção, se necessário, de alterar o endereço IP do servidor: ou seja, se eles perderem o controle dos principais endereços C&C, eles poderiam simplesmente substituí-los por um backup. Em suma, era um mecanismo de segurança bastante primitivo. No entanto, Lurk era muito diferente: o grupo empregava um método digno de um filme de espionagem.

Antes de uma sessão de comunicação, Lurk calculou o endereço do servidor C&C. Os cibercriminosos foram ao Yahoo! e procuraram pelo preço das ações de uma empresa específica (durante nossa pesquisa, foi o McDonald’s). Dependendo do valor do estoque em um momento específico, eles geraram um nome de domínio e o acessaram. Ou seja, para controlar o Trojan, os cibercriminosos investigaram o preço das ações naquele momento exato e registraram um nome de domínio com base nesses números. Em outras palavras, era impossível saber com antecedência qual nome de domínio será usado para o servidor C&C.

Isso levanta uma questão legítima: se o algoritmo estava embutido no Trojan, o que impediu um pesquisador de gerar tal sequência, registrar um nome de domínio perante os cibercriminosos e simplesmente esperar que o Trojan se conectasse a ele? Infelizmente, os criadores de Lurk tomaram precauções. Eles usaram criptografia assimétrica. Ou seja, foi gerado um par de chaves, em que o bot, acessando o servidor C&C, usaria a chave pública para verificar se realmente pertencia aos seus proprietários (verificando a assinatura digital). Isso é impossível de forjar sem conhecer a chave secreta. Portanto, apenas o proprietário da chave secreta pode receber solicitações de bots e emitir comandos – nenhum pesquisador externo pode emular o servidor C&C. Outros cibercriminosos não usavam esse método de proteção na época, portanto, se detectássemos uma proteção de chave privada no servidor, poderíamos ter certeza de que era um ataque Lurk.

Infraestrutura organizada

A configuração dos processos Lurk merece uma menção separada. Se outros grupos de cibercriminosos da época eram apenas um conjunto de usuários do fórum (um cuidava da programação, outro da cobrança, um terceiro era o coordenador), então, em contraste, Lurk era quase uma empresa de TI feita e correta. É mais preciso compará-los com uma grande empresa de software do que com um grupo de cibercriminosos. Além disso, em termos de nível organizacional, eles continuam sendo um modelo para muitos grupos até hoje.

Os verdadeiros profissionais operavam o Lurk (provavelmente com boa experiência de desenvolvimento) por meio da construção de uma infraestrutura altamente organizada com gestores e equipe de RH. Ao contrário de muitos grupos, eles pagaram a seus funcionários um salário (em vez de uma porcentagem dos lucros). Eles até costumavam realizar reuniões semanais, o que na época era totalmente inédito. Resumindo, era uma corporação exemplar com objetivos do mal.

Eles até tinham um sistema estruturado para restringir o acesso à informação.  Após a prisão, alguns membros do grupo acessaram a correspondência de seus chefes e só naquele momento perceberam que não estavam sendo tratados de forma justa.

Eles documentaram minuciosamente todas as suas atividades, de forma mais sistematizada que muita empresa de TI hoje. Isso, é claro, ajudou muito a investigação. E, talvez, foi o que acabou causando a queda: quanto mais sistemática sua abordagem, mais fácil é rastreá-la. Aqui estão alguns exemplos.

Base de conhecimento

O grupo Lurk manteve uma base de conhecimento detalhada que foi dividida em projetos de forma organizada. Cada projeto era acessível apenas a certas pessoas, ou seja, os participantes de uma iniciativa não sabiam das atividades de outra. O escopo dos projetos era amplo, do ponto de vista técnico ao organizacional. E os projetos técnicos também foram subdivididos em níveis. Por exemplo, os desenvolvedores do Trojan tiveram acesso à base de conhecimento apenas em relação aos tópicos: como evitar antivírus, como testar, etc. Mas também havia bancos de dados gerais sobre segurança operacional (semelhantes às normas de segurança em grandes empresas). Essas informações  orientaram os funcionários do Lurk como deveriam configurar suas estações de trabalho para evitar a detecção e como usar ferramentas de anonimato.

Acesso à informação

Para ter acesso ao recurso de informações do Lurk, os cibercriminosos precisavam se conectar a um servidor usando várias VPNs. Mesmo assim, eles só tiveram acesso à gestão de bots. Posteriormente, cada empregado obteve seu próprio certificado e sua própria conta com permissões diferentes. Em outras palavras, era como uma rede corporativa normal criada para trabalho remoto. Em geral, se não fosse pela falta de autenticação de dois fatores, eles poderiam ter sido considerados uma empresa modelo.

Fisicamente, todos os servidores estavam localizados em diferentes data centers e em diferentes países. Quando você chega a um desses virtualmente usando uma VPN, você não sabe o verdadeiro endereço IP do servidor. E foi por isso que o grupo foi tão difícil de detectar.

 

Desenvolvimento

O grupo Lurk tinha repositórios de código fonte adequados, procedimentos automatizados de desenvolvimento e testes em várias etapas, um servidor de produção, um servidor de teste e um servidor de desenvolvimento. Em essência, eles estavam fazendo um produto de software sério: a qualquer momento eles tinham uma versão de produção, teste e desenvolvedor do Trojan.

O servidor C&C comum da maioria dos Trojans naquela época poderia receber solicitações de bot, registrá-las em um banco de dados e fornecer um painel de administração para gerenciá-las. Tudo isso foi efetivamente disponibilizado em uma única página. O Lurk implementou o painel de administração e o banco de dados separadamente, enquanto o mecanismo de envio de respostas para bots foi ocultado completamente por um serviço intermediário.

Kits de exploits

Lurk tinha três kits de exploits, cada um com três nomes: um interno, criado por seus desenvolvedores, um para clientes e parceiros, e um destinado aos investigadores. O que aconteceu é que não só os autores da Lurk usaram suas criações, como também venderam kits de exploits  para outros cibercriminosos. Além disso, as versões para os “parceiros” tinham um código diferente, o que foi uma clara tentativa de confundi-lo como outro kits de exploits muito populares.

A Queda do Lurk

No final, todos os truques dos cibercriminosos não funcionaram. A maioria dos membros do grupo foram presos. Mas só depois que o dano foi feito: durante sua extensa carreira, os atacantes foram capazes de roubar aproximadamente US$ 45 milhões. Nossos especialistas estudaram seus métodos por quase seis anos (o que, por sinal, proporcionou uma experiência valiosa que continuaremos a empregar para derrotar o cibercrime).

Para os interessados em aprender com essa saga para as empresas, recomendamos a leitura deste artigo. E uma análise técnica detalhada está disponível em nossa publicação Securelist.

 

Dicas