Botnets continuam explorando CVE-2023-1389 para disseminação em larga escala
No ano passado, foi divulgada uma vulnerabilidade de injeção de comando, CVE-2023-1389 , e desenvolvida uma correção para a interface de gerenciamento web do TP-Link Archer AX21 (AX1800).
Plataformas afetadas: TP-Link Archer AX21 (AX1800) Versão 1.1.4 Build 20230219 ou anterior
Usuários afetados: Qualquer organização
Impacto: Atacantes remotos ganham controle dos sistemas vulneráveis
Nível de gravidade: Alto
O FortiGuard Labs desenvolveu uma assinatura IPS para resolver esse problema. Recentemente, observamos vários ataques focados nesta vulnerabilidade de um ano, destacando botnets como Moobot, Miori, o agente “AGoent” baseado em Golang e a variante Gafgyt. Os picos causados por essas ameaças são evidentes na figura a seguir. Este artigo explorará seus padrões de tráfego de infecção e oferecerá insights sobre essas botnets.
Figura 1: Telemetria IPS
Infecção – CVE-2023-1389
Esta é uma vulnerabilidade de injeção de comando não autenticada na API “locale” disponível através da interface de gerenciamento web. Os usuários consultam o formulário especificado “país” e realizam uma operação de “gravação”, que é tratada pela função “set_country”. Ele chama a função “merge_config_by_country” e concatena o argumento do formato especificado “country” em uma string de comando, que é executada pela função “popen”. Como o campo “país” não será esvaziado, o invasor pode conseguir a injeção de comando.
Figura 2: Prova de Conceito de Vulnerabilidade
Eles estão indo
AGoent é um agente bot baseado em Golang. Primeiro ele busca o arquivo de script ”exec.sh“ de ”hxxp://5[.]10[.]249[.]153,” que recupera os arquivos ELF de diferentes arquiteturas baseadas em Linux.
Figura 3: Pacote de exploração
Figura 4: O arquivo de script “exec.sh”
Após baixar os arquivos ELF, o script tentará executar cada arquivo para encontrar a arquitetura apropriada e remover cada arquivo para apagar rastros de intrusão. A análise a seguir focará no arquivo executado projetado para a arquitetura “386”.
Existem dois comportamentos principais. A primeira é criar o nome de usuário e a senha do host usando caracteres aleatórios.
Figura 5: Código Assembly para Criação de Usuário
Após a criação do usuário, o malware estabelece uma conexão com o servidor C&C (comando e controle) e passa as credenciais recém-criadas pelo malware.
Figura 6: Execução de malware
Figura 7: Pacote de sessão C2 estabelecido
Figura 8: Pacote de sessão C2 estabelecido com a credencial
Variante Gafkyt
Gafgyt, também conhecido como BASHLITE, é um malware que infecta sistemas operacionais de arquitetura Linux para lançar um ataque DDoS (negação de serviço distribuída). Nesta variante, o bot baixa o arquivo de script “bins.sh” de “hxxp://195[.]62[.]32[.]227” e então executa o script. Gafgyt recupera arquivos de execução da arquitetura Linux com o prefixo “rebirth”.
Figura 9: Pacote de exploração
Figura 10: O arquivo de script “bins.sh”
A seguir, nos concentraremos em “rebirth.x86”. Gafgyt obtém o IP de destino comprometido e as informações de arquitetura, que concatena em uma string que faz parte de sua mensagem de conexão inicial.
Figura 11: Concatenação de mensagem de conexão inicial
Depois de estabelecer uma conexão com seu servidor C&C, o malware recebe um comando “PING” contínuo do servidor para garantir a persistência no alvo comprometido.
Figura 12: Conexão do servidor C2
O malware aguarda qualquer um dos seguintes comandos de seu servidor C&C. Cada um deles representa um ataque ou função específica:
- ”UDP“ significa ”Ataque de inundação UDP”
- ”NATAL“ significa ”Ataque de NATAL”
- ”VSE“ significa ”Ataque VSE”
- “TCP” significa “Ataque de inundação TCP”
- ”HEX” significa “definir string especificada dentro de pacotes de ataque”
- “STOP” significa “parar o ataque”
Figura 13: Comandos codificados manualmente
Chegará
Moobot busca um arquivo de script de “hxxp://91[.]92[.]253[.]70.” A função principal de “1.sh” é recuperar um arquivo ELF com arquiteturas diferentes para infecção adicional.
Figura 14: Pacote de exploração
Figura 15: O arquivo de script “1.sh”
A análise a seguir analisa o arquivo de execução projetado para a arquitetura “x86_64”. Uma vez executado, ele se remove e apaga todos os rastros do dispositivo comprometido. Em seguida, ele exibe “0x00000e9” no console e começa a entrar em contato com o servidor C2 “fjsnsinfinsf[.]ngcv[.]top”
Figura 16: Sessão C2 do Moobot
Com base na chave XOR “0xDEADBEEF” usada para strings codificadas e na string codificada “w5q6he3dbrsgmclkiu4to18npavj702f”, podemos confirmar este malware como Moobot. Como indica a montagem, um ataque DDoS pode ser iniciado em IPs remotos por meio de um comando C2.
Figura 17: Código assembly para método DDoS
Variante Mirai
Além disso, há um ataque usando uma variante do Mirai. O processo de exploração começa baixando “tenda.sh” de “hxxp://94[.]156[.]8[.]244”. Este arquivo de script baixa então um arquivo de execução ELF do mesmo endereço IP, disponível em 13 arquiteturas diferentes.
Figura 18: Pacote de exploração
Figura 19: O arquivo de script “tenda.sh”
O arquivo de execução original é compactado usando UPX.
Figura 20: UPX embalado
Esta variante do Mirai exibe a mensagem “faggot got malware’d” e monitora processos para encerrar aqueles associados a ferramentas de análise de pacotes. Em seguida, ele envia pacotes para o servidor C2 “45[.]155[.]91[.]135:21425” e aguarda instruções adicionais para atacar.
Figura 21: Lista de ferramentas de análise de pacotes
Abaixo está uma ilustração de um cenário de ataque DDoS: O servidor de comando e controle (C2) envia um pacote com comprimento 0x15, direcionando o endpoint para iniciar um ataque. O comando especificado é 0x01 para uma inundação do Valve Source Engine (VSE), com duração de 60 segundos (0x3C), visando o endereço IP de uma vítima selecionada aleatoriamente e o número da porta 30129.
Figura 22: Pacotes de comando C2
Miori
Miori, outra variante do Mirai, compartilha módulos semelhantes. O script em lote é obtido de “hxxp://185[.]224[.]128[.]34”. O downloader emprega protocolos HTTP e TFTP para recuperar os arquivos ELF.
Figura 23: Pacote de exploração
Figura 24: O arquivo de script “shk”
Uma vez executado, Miori exibe “seu dispositivo acabou de ser infectado em um bootnoot” no console e envia \x00\x00 para o servidor C2 “rooty[.]cc” na porta TCP 33335. A chave XOR usada para configuração de decodificação é 0xDFEDDEEF, e uma lista de senhas codificadas está incluída para a função de ataque de força bruta.
Figura 25: Lista de nome de usuário/senha codificada
O pacote de comando de ataque se assemelha aos vistos nas variantes anteriores do Mirai.
Figura 26: Pacotes de comando C2
Condi
O script de download do Condi foi recuperado usando vários protocolos para aumentar a taxa de infecção.
Figura 27: Pacote de exploração
Figura 28: O arquivo de script “jack5tr.sh”
Condi é executado com o parâmetro “work”, que está incluído no primeiro pacote enviado ao servidor C2 “bn[.]networkbn[.]click”. O comando permanece consistente com a versão distribuída no ano passado , mantendo a função de evitar reinicializações por meio da exclusão de binários responsáveis por desligar ou reinicializar o sistema.
Figura 29: Sessão C2
Ele também verifica processos ativos e referências cruzadas com strings predefinidas para encerrar processos com nomes correspondentes.
Figura 30: Processo de verificação
Com base em sua página de vendas, a Condi atualizou seus métodos de ataque, conforme mostrado abaixo.
Figura 31: Métodos de ataque de Condi
Conclusão
Como sempre, as botnets visam incansavelmente as vulnerabilidades da IoT, tentando continuamente explorá-las. Apesar da descoberta e da correção da vulnerabilidade CVE-2023-1389 no ano passado, inúmeras campanhas ainda a exploram, resultando em picos significativos em nossa telemetria IPS. Os usuários devem estar vigilantes contra botnets DDoS e aplicar patches imediatamente para proteger seus ambientes de rede contra infecções, evitando que se tornem bots para agentes de ameaças mal-intencionados.
Proteções Fortinet
O malware descrito neste relatório é detectado e bloqueado pelo FortiGuard Antivirus como:
BASH/Mirai.AEH!tr.dldr
ELF/Mirai.A!tr
ELF/Mirai.BSC
!tr ELF/Mirai.CDB!tr
ELF/Mirai.GG!tr
ELF/Mirai.L!tr
ELF/Moobot.A! tr
Linux/Mirai.BSC!tr
Linux/Mirai.CEA!tr
Linux/Mirai.CJS!tr
Linux/Mirai.F!tr
Linux/Mirai.IZ1H9!tr
ELF/Mirai.AGIT!tr
ELF/Gafgyt.BJ!tr
ELF/Gafgyt.VE!tr
ELF/Gafgyt.WN!tr.bdr
Linux/Gafgyt.ARN!tr
Linux/Agent.AAO!tr
FortiGate, FortiMail, FortiClient e FortiEDR suportam o serviço FortiGuard AntiVirus. O mecanismo FortiGuard AntiVirus faz parte de cada uma dessas soluções. Como resultado, os clientes que possuem esses produtos com proteções atualizadas estão protegidos.
O FortiGuard Web Filtering Service bloqueia os servidores C2 e baixa URLs.
O FortiGuard Labs fornece assinaturas IPS contra ataques que exploram a seguinte vulnerabilidade:
CVE-2023-1389: TP-Link.Archer.AX21.Unauthenticated.Command.Injection
Sugerimos também que as organizações passem pelo módulo gratuito de treinamento em segurança cibernética da Fortinet : Fortinet Certified Fundamentals . Este módulo foi desenvolvido para ajudar os usuários finais a aprender como se identificar e se proteger contra ataques de phishing.
O serviço de reputação IP e segurança anti-botnet FortiGuard bloqueia proativamente esses ataques, agregando dados IP de fontes maliciosas da rede distribuída Fortinet de sensores de ameaças, CERTs, MITRE, concorrentes cooperativos e outras fontes globais que colaboram para fornecer inteligência atualizada sobre ameaças sobre fontes hostis.
Se você acredita que esta ou qualquer outra ameaça à segurança cibernética afetou sua organização, entre em contato com nossa equipe global de resposta a incidentes do FortiGuard .
COIs
C2
fjsnsinfinsf[.]ngcv[.]top
45[.]155[.]91[.]135
rooty[.]cc
bn[.]networkbn[.]clique
5[.]10[.]249[.]153
195 [.]62[.]32[.]227
URLs
hxxp://91[.]92[.]253[.]70
hxxp://94[.]156[.]8[.]244
hxxp://103[.]188[.]244[.] 189
hxxp://185[.]224[.]128[.]34
hxxp://5[.]10[.]249[.]153
hxxp://195[.]62[.]32[. ]227
arquivos
6104674bfa58ac11c697062d6068c568384f13037d1a146dbe25cd001104ca8b
f33a02781d60ca36f4ee56579c6d33846c2549ad7556bca499c73302cee17514
d02381634921d92358577c106180eba766b98a520c907870898b2c32d7de4547
0a3fbc79e742354c8fc82830fc3426f7f8d3b900260c06aa58e53547b48feaa6
475487bf7b96fe3da321dac0b5f59231651fc3d71f86bf9580bfa77e59b0f2c8
a3e8493f2fb38b7f2ba309809577281d3cc25bee9fb3b5c0053a6e89de1dbce7
5e6deba076cbe7b9833d0ddee7c8065e91d13f1fc2a5c7daf4db36da458d689a
29ef4c5d9172b09d6abc08da800a5a09b460b98aaadf1aa29edda81300fcc609
e7af5f1d5d68f75ee03a37ee8016695e35edaae528cdba4ab7b9a90570a1e4be
b45906c711ed4f109a10cfaffa0b4c18e56c6f6ddc8d100c87e0a0349a30293d
e9e8fc16c586f51eb2f86db5a60e54b46d66275fdd6df8fb72e96e50014a1290
b731fe97dc723d0d5a51fe8203b33f16a51183b3dab4c9c8ee7bd304462ad192
1ffc3c457eb84aa36cd4bc7f3d0dc9a6b8079d63c2bab03c3a646906152876c0
d8b4d8950ec1a3f812af69d261f452aae2b19d3bced8551f9178e40ca0c1bcf8
8562c9ad26ab3ad7d16ac43c9dcbf600d5319e5432d72dc684983cc5f64ff41e
092b3a57ee4ecd64591616da6ce0cfb9f01930dbeb179f05e1dbbdbc918098ac
092b3a57ee4ecd64591616da6ce0cfb9f01930dbeb179f05e1dbbdbc918098ac
c65f86d5917025a8674bf9758870decd923ea2662d6611a1365303f4fe55fa26
65f64b270a10255db1e55a158a02829a3af982cbcd4b56f14e58132cbb45e6a9
a383319a28d50e8c280646dc53a2f33fec62ad69ef4948dae76a4f1f6fe2f159
7ef190f05fe9be5d7f38bdb556fffdb7d9b5633ddf60cc43b98c09887a292c49
7322da39ce05e7496fcaef6602a15266943a59a5027e5ea97344133d42e0f6e3
a1c14e99cc8490a4d503ffd660e2d881fa5d766a4288eea328f73bd8ee99078d
a7d3ffbb3edff1956d7422dd04305d8c3ac16418e2eb190ed9a08a1c275c5e8e
1427deedaafd5345aa3c41d39b14b23a454ed894c73f3c9224cd0b51c88afcfa
f97c9802324eeb0ebdfc15ce3e390c8cca5a9062c3348f7d2b5b00d1efa49508
3307e4d1daefca1eeb1ee4a6dea7738594076aa04f3e7e470a8b2ae32b9e4893
86fe87891311228b58a606114a2d41d94b520c5c4be6ff6bc0add45f5b6250ef
b9962c3e066904cf8df05f60b9bd21d979466aca64596d2b7557be7fa4358c4d
a48807aaa7be63c41bbabcf55d40cba416bc23432f247e4038ed0cd32fd05519
4119530c4dba8a53ba081094ca163f28a51bd37c6ee40b4aa55097939ec1df38
2be7481bfec8fcbb370afa00e9befa97000e7aa987a17cd6c48fc9f2d0b60110
b605570db3158ba355552b5b638e7df4b0888d56d206004d9af6901c4770c75f
0dbf4c327df0159305ffc9776ad2fbdd655fe513712f75e360e211aa6686f69a
ae2d6b41150d61b828368847a0eba51d4562fa2bae4478c10940f5e3e3e46c6b
581adb7645ca54dbc3a043ee39a09037a7b5f572c1b8c137cb0c751b26ff9ebd
18753e0c31c2100889f0e085ba03eb1c616dcc50606d9733574b68e75be2ee7a
123a392cfa9114daeab28976f5ce740da4288d6ac516b5afbf1ea17e28eaada1
8317c084d08450a220fe7f38ce6b1a767b2e8776f8f4a436b84b912476b00cbc
94c9297951a48fcc0f22dac94da599bc2651c757d27cb94c9de16d00ea5af04f
fdcfaa03f99233d8aecc17098833d82860d68c12440c5ff7e898b50891cf65bf
045b8b9f7bb69e4450d49eb6197722b9b58a8f0e7af479640ea6f666553db4da
96c8ec9a54b0fef4bca739b47d943c295c766c7759d0f3a5a891585609019f42
1a6964f76f573dd50f41ee8dc4c5b29868807af6326faee92ad9ffaeba3dc5a3
e220a88f3c07a6ece0adcbeca93fd6024d9f63a971c4aa732ec90930e386b5aa
42deb408f0861891e49205fce2496cfe9a6c0cbf86f5d1c48bd88f9120631b1d
f19d69486f380f7f22482b17eab7343da36229a4e60b9f3938f7846002ff0fa2
8721dc3617731683a34eb7c8d9a688195d2db1efa8da3084edbe04f76cb0d047
7e8061fab5ad856312040a78674932dcd08b6926a8cc8a5de91252c590b4f6ba
9100bc0eb0bce4f5f7fc314fa820b4dee00db8d31892ec6fdb4fccca801a40d0
46d085e7c36ec4ada5f630c47b1ed418ceae077832d6fc2e7730af2715fb954d
cc197f92fb6564575d7bd64958bc96be9e0c09d06fa19449a0ad3dc50f09ddb6
4e94d9808d5c3c414100abb60233614fcbad2e884c2fd851cb9d694186165a4f
bfa195bd238473bfead86e74b796c4721d1f5281c284b96ff29d8806a82a6520
396b1e21260b374a45ba703239bc29b1345dea89ad9d54db0b7f312aa95c6984
1a1a8f9ccb66f37f14b5cf2a77e9e8d47400bdec957d9f20729e5c81bfc78be6
699d00adf4e8c070d2b955b23054e945c78267beb2ec9cc580130771200e5ea3
fdae7846f75c7b65130e73bafda28f442913e403534cb91657c21c2426869f2f
25f3558a2cdf5aca294254004954bb10d08a0ef0f913f3ddd1f8f3cc71f114dd
12273047ec3eb4e1318c26ec7c10b77e5d631738da126880e248d7f54dfa5718
F7faaadceebe69bec33096166a54ed9b593b1b690ba9594b4c353303f55101aa
e6d1df0621b10d051ebba4507ac3d14f4d206ab56bafbc3510db542d4c4470d9
4480d72a324f519d3a630bf2ef7b118f4e388c5bccdd0a5465bafd2253daa619
4509e84a9abcb732f0ee90bf27dd300247b23b6dac9b41cd01f59d6384b5348a
08166a0d2fe65a3ad8b289cb2714c3a150635e29664bff24e5befc6b48526899
ed85c3e25bac63b7e232ac3cfd91116bf7c64f1c4c96b933d5715bbe055ffc89
f0d62aec4a2a5353a6416bbd403969fc0617d08aeb8eb9e09de4d4068a2fd9f3
8cfdcaf4611fd855672ad561de196417deea97341f45efd02e97e26d4674291d
e73bbef9c7fcaf610c858be52a375b517bc62fd7e05dd867f928cd353536de16
c192146c8311694342f73a19cfe69ecc53f3f1d6cab006526d2daa5134846357
ab5ee18fd3df5a2d7f2d84c75b33fd2f73b76c8e0d2df278d9ded40943d16911
ef30bd34f8c11e042e2600c62cf702515c94290207cf72fad1ec0d277221bb70
0571c16d0f2d0267b354f81fdbfb49738f3cb867371b9ef0d3ffe1020fb9f9cf
bf5e6947f6829d17b8a8e5984366efcf5592d8f6bc7ec6d7e85b1872bebcb24a
549d3aac3b42f702f29ab27c653c0f239a51601a6aeb50564beda614f8f1f33e
Por Cara Lin e Vincent Li