O MalwareHunterTeam e o site BleepingComputer descobriram que o ransomware Qilin para Linux concentra-se no VMware ESXi.
Uma amostra do criptografador VMware ESXi da gangue de ransomware Qilin foi encontrada e pode ser um dos criptografadores Linux mais avançados e personalizáveis já vistos.
As empresas estão cada vez mais migrando para máquinas virtuais para hospedar seus servidores, pois elas permitem um melhor uso da CPU, memória e recursos de armazenamento disponíveis.
Devido a esta adoção, quase todas as gangues de ransomware criaram criptografadores VMware ESXi dedicados para atingir esses servidores.
Embora muitas operações de ransomware utilizem o código-fonte vazado do Babuk para criar seus criptografadores, algumas, como Qilin, criam seus próprios criptografadores para direcionar servidores Linux.
Ransomware Qilin para Linux concentra-se no VMware ESXi
No mês passado, o pesquisador de segurança MalwareHunterTeam encontrou um criptografador Linux ELF64 para a gangue de ransomware Qilin e o compartilhou com o BleepingComputer para análise.
Embora o criptografador possa ser usado em servidores Linux, FreeBSD e VMware ESXi, ele se concentra fortemente na criptografia de máquinas virtuais e na exclusão de seus instantâneos.
O criptografador do Qilin é construído com uma configuração incorporada que especifica a extensão dos arquivos criptografados, os processos a serem encerrados, os arquivos a serem criptografados ou excluídos e as pastas a serem criptografadas ou excluídas.
No entanto, também inclui vários argumentos de linha de comando que permitem ampla personalização dessas opções de configuração e de como os arquivos são criptografados em um servidor.
Esses argumentos de linha de comando incluem opções para ativar um modo de depuração, executar uma simulação sem criptografar nenhum arquivo ou personalizar como as máquinas virtuais e seus instantâneos são criptografados.
A lista completa de opções de linha de comando está listada abaixo:
OPTIONS:
-d,--debug Enable debug mode (logging level set to DEBUG, disables backgrounding)
--dry-run Perform scan for files to be processed, do not modify them
-h,--help This help
-l,--log-level Set logging level. Values are from 0 for FATAL up to 5 for DEBUG
--no-df Ignore configured white-/black- lists of directories
--no-ef Ignore configured white-/black- lists of extensions
--no-ff Ignore configured white-/black- lists of files
--no-proc-kill Disables process kill
-R,--no-rename Disables rename of completed files
--no-snap-rm Disables snapshot deletion
--no-vm-kill Disables VM kill
-p,--path Specifies top-level directory for files search
--password Password for startup
-r,--rename Enables rename of completed files (default)
-t,--timer Enabled timed delay before encryption (seconds)
-w,--whitelist Use whitelists for inclusion instead of blacklists for exclusion (later is default behavior)
-y,--yes Assume answer 'yes' on all questions (script mode)
Na amostra analisada pelo site BleepingComputer.com, o criptografador é configurado por padrão com as seguintes exclusões e critérios de segmentação:
Processos para não encerrar:
"kvm", "qemu", "xen"
Diretórios a serem excluídos da criptografia:
"/boot/", "/proc/", "/sys/", "/run/", "/dev/", "/lib/", "/etc/", "/bin/", "/ mbr/", "/lib64/", "/vmware/lifecycle/", "/vdtc/", "/healthd/"
Arquivos a serem excluídos da criptografia:
"initrd", "vmlinuz", "basemisc.tgz", "boot.cfg", "bootpart.gz", "features.gz", "imgdb.tgz", "jumpstrt.gz", "onetime.tgz", "estado.tgz", "useropts.gz"
Extensões de arquivo a serem excluídas da criptografia:
"v00", "v01", "v02", "v03", "v04", "v05", "v06", "v07", "v08", "v09", "b00", "b01", "b02 ", "b03", "b04", "b05", "b06", "b07", "b08", "b09", "t00", "t01", "t02", "t03", "t04", "t05", "t06", "t07", "t08", "t09"
Diretórios a serem direcionados para criptografia:
"/home", "/usr/home", "/tmp", "/var/www", "/usr/local/www", "/mnt", "/media", "/srv", "/ dados", "/backup", "/var/lib/mysql", "/var/mail", "/var/spool/mail", "/var/vm", "/var/lib/vmware", " /opt/virtualbox", "/var/lib/xen", "/var/opt/xen", "/kvm", "/var/lib/docker", "/var/lib/libvirt", "/var /run/sr-mount", "/var/lib/postgresql", "/var/lib/redis", "/var/lib/mongodb", "/var/lib/couchdb", "/var/lib/ neo4j", "/var/lib/cassandra", "/var/lib/riak", "/var/lib/influxdb", "/var/lib/elasticsearch"
Arquivos a serem alvo de criptografia:
"3ds", "3g2", "3gp", "7z", "aac", "abw", "ac3", "accdb", "ai", "aif", "aiff", "amr", "apk", "app", "asf", "asx", "atom", "avi", "bak", "bat", "bmp", "bup", "bz2", "cab", "cbr", "cbz", "cda", "cdr", "chm", "class", "cmd", "conf", "cow", "cpp", "cr2", "crdownload", "cs", "csv", "cue", "cur", "dat", "db", "dbf", "dds", "deb", "der", "desktop", "dmg", "dng", "doc", "docm", "dot", "dotm", "dotx", "dpx", "drv", "dtd", "dvi", "dwg", "dxf", "eml", "eps", "epub", "f4v", "fnt", "fon", "gam", "ged", "gif", "gpx", "gz", "h264", "hdr", "hpp", "hqx", "htm", "html", "ibooks", "ico", "ics", "iff", "image", "img", "indd", "iso", "jar", "java", "jfif", "jpe", "jpeg", "jpf", "jpg", "js", "json", "jsp", "key", "kml", "kmz", "log", "m4a", "m4b", "m4p", "m4v", "mcd", "mdbx", "mht", "mid", "mkv", "ml", "mobi", "mov", "mp3", "mp4", "mpa", "mpeg", "mpg", "msg", "nes", "numbers", "odp", "ods", "odt", "ogg", "ogv", "otf", "ova", "ovf", "pages", "parallels", "pcast", "pct", "pdb", "pdf", "pds", "pef", "php", "pkg", "pl", "plist", "png", "pptm", "prproj", "ps", "psd", "ptx", "py", "qcow", "qcow2", "qed", "qt", "r3d", "ra", "rar", "rm", "rmvb", "rtf", "rv", "rw2", "sh", "shtml", "sit", "sitx", "sketch", "spx", "sql", "srt", "svg", "swf", "tar", "tga", "tgz", "thmx", "tif", "tiff", "torrent", "ttf", "txt", "url", "vdi", "vhd", "vhdx", "vmdk", "vmem", "vob", "vswp", "vvfat", "wav", "wbmp", "webm", "webp", "wm", "wma", "wmv", "wpd", "wps", "xhtml", "xlsm", "xml", "xspf", "xvid", "yaml", "yml", "zip", "zipx"
Também é possível configurar uma lista de máquinas virtuais que não devem ser criptografadas.
Ao executar o criptografador, um agente de ameaça deve especificar o diretório inicial para criptografia e uma senha específica vinculada ao criptografador.
Quando executado, o ransomware determinará se está sendo executado em servidores Linux, FreeBSD ou VMware ESXi.
Se detectar VMware ESXi, ele executará os seguintes comandos esxcli e esxcfg-advcfg, que não vimos em outros criptografadores ESXi no passado.
for I in $(esxcli storage filesystem list |grep 'VMFS-5' |awk '{print $1}'); do vmkfstools -c 10M -d eagerzeroedthick $I/eztDisk > /dev/null; vmkfstools -U $I/eztDisk > /dev/null; done
for I in $(esxcli storage filesystem list |grep 'VMFS-5' |awk '{print $1}'); do vmkfstools -c 10M -d eagerzeroedthick $I/eztDisk; vmkfstools -U $I/eztDisk; done
for I in $(esxcli storage filesystem list |grep 'VMFS-6' |awk '{print $1}'); do vmkfstools -c 10M -d eagerzeroedthick $I/eztDisk > /dev/null; vmkfstools -U $I/eztDisk > /dev/null; done
for I in $(esxcli storage filesystem list |grep 'VMFS-6' |awk '{print $1}'); do vmkfstools -c 10M -d eagerzeroedthick $I/eztDisk; vmkfstools -U $I/eztDisk; done
esxcfg-advcfg -s 32768 /BufferCache/MaxCapacity
esxcfg-advcfg -s 20000 /BufferCache/FlushInterval
A especialista da VMware, Melissa Palmer, disse ao BleepingComputer que esses comandos provavelmente foram copiados dos boletins de suporte da VMware para resolver um bug conhecido de esgotamento de heap de memória da VMware e aumentar o desempenho ao executar comandos ESXi no servidor.
Antes de criptografar qualquer máquina virtual detectada, o ransomware primeiro encerrará todas as VMs e excluirá seus instantâneos usando os seguintes comandos:
esxcli vm process list
vim-cmd vmsvc/getallvms
esxcli vm process kill -t force -w %llu
vim-cmd vmsvc/snapshot.removeall %llu > /dev/null 2>&1
Todos os arquivos de destino serão criptografados e terão a extensão configurada anexada ao nome do arquivo.
Em cada pasta, será criada uma nota de resgate chamada [extensão]_RECOVER.txt que contém links para o site de negociação Tor da gangue de ransomware e as credenciais de login necessárias para acessar a página de bate-papo da vítima.
BleepingComputer recebeu pedidos de resgate que variam de US$ 25.000 a milhões de dólares.
A operação de ransomware Qilin foi inicialmente lançada como “Agenda” em agosto de 2022. No entanto, em setembro, foi renomeada sob o nome de Qilin, que continua a operar até hoje.
Como outras operações de ransomware voltadas para empresas, o Qilin violará as redes de uma empresa e roubará dados à medida que eles se espalham lateralmente para outros sistemas.
Quando terminam a coleta de dados e a obtenção de credenciais de administrador do servidor, os agentes da ameaça implantam o ransomware para criptografar todos os dispositivos na rede.
Os dados roubados e os arquivos criptografados são então usados como alavanca em ataques de dupla extorsão para coagir uma empresa a pagar um pedido de resgate.
Desde o seu lançamento, a operação de ransomware teve um fluxo constante de vítimas, mas registou um aumento da atividade no final de 2023.
Um ataque recente de Qilin foi contra a gigante de autopeças Yanfeng.