De acordo comum artigo rápido7existem alguns vulneráveisSambaversões que permitem a execução remota de código em sistemas Linux:
Enquanto oQuero chorarransomworm impactou os sistemas Windows e foi facilmente identificável, com etapas de correção claras, oSambaa vulnerabilidade afetará os sistemas Linux e Unix e poderá apresentar obstáculos técnicos significativos à obtenção ou implantação de soluções apropriadas.
Todas as versões do Samba a partir da versão 3.5.0 são vulneráveis a uma vulnerabilidade de execução remota de código, permitindo que um cliente mal-intencionado carregue uma biblioteca compartilhada para um compartilhamento gravável e, em seguida, faça com que o servidor a carregue e execute.
Possível cenário de ataque:
A partir dos dois fatores:
- A vulnerabilidade do Sambanão está consertadoainda em algumas distribuições Linux.
- Há uma vulnerabilidade de escalonamento de privilégios locais não corrigida em algumas versões do kernel Linux (por exemplo, CVE-2017-7308 no kernel Ubuntu genérico 4.8.0-41).
Um invasor pode acessar uma máquina Linux e elevar privilégios usando uma vulnerabilidade de exploração local para obter acesso root e instalar um possível ramsomware futuro, semelhante a esta maquete Ransomware WannaCry para Linux.
Atualizar
Um artigo mais recente"Atenção! Hackers começaram a usar a" falha SambaCry "para hackear sistemas Linux"demonstre como usar a falha Sambacry para infectar uma máquina Linux.
A previsão revelou-se bastante precisa, uma vez que os honeypots montados pela equipa de investigadores doLaboratório Kasperskycapturaram uma campanha de malware que explora a vulnerabilidade do SambaCry para infectar computadores Linux com software de mineração de criptomoedas.
Outro pesquisador de segurança, Omri Ben Bassat, descobriu de forma independente a mesma campanha e a nomeou"Eterno Mineiro".
De acordo com os pesquisadores, um grupo desconhecido de hackers começou a sequestrar PCs Linux apenas uma semana depois que a falha do Samba foi divulgada publicamente e a instalar uma versão atualizada do “CPUminer”, um software de mineração de criptomoeda que extrai a moeda digital “Monero”.
Depois de comprometer as máquinas vulneráveis usando a vulnerabilidade SambaCry, os invasores executam duas cargas nos sistemas visados:
INAebsGB.so — Um shell reverso que fornece acesso remoto aos invasores.
cblRWuoCc.so — Um backdoor que inclui utilitários de mineração de criptomoedas – CPUminer.
Relatório TrendLab publicado em 18 de julho de 2017:Usuários do Linux são incentivados a atualizar quando uma nova ameaça explora o SambaCry
Como posso proteger um sistema Linux para evitar ataques?
Responder1
Esta nova vulnerabilidade do Samba já está sendo chamada de “Sambacry”, enquanto o próprio exploit menciona “Eternal Red Samba”, anunciado no Twitter (sensacionalmente) como:
Bug do Samba, a linha única do metasploit a ser acionada é apenas: simple.create_pipe("/path/to/target.so")
As versões do Samba potencialmente afetadas vão do Samba 3.5.0 a 4.5.4/4.5.10/4.4.14.
Se a instalação do seu Samba atender às configurações descritas abaixo, a correção/atualização deverá ser feita o mais rápido possível, pois já existemexplorações, outroexplorar em pythone metasploitmódulos por aí.
O mais interessante é que já existem complementos para um honeypot conhecido dorede de melprojeto,dionaeatanto para WannaCry quantoPlug-ins do SambaCry.
O choro do samba parece já estar (ab)acostumadoinstale mais cripto-mineradores"EternalMiner" oudobrar como um conta-gotas de malware no futuro.
honeypots criados pela equipe de pesquisadores da Kaspersky Lab capturaram uma campanha de malware que explora a vulnerabilidade do SambaCry para infectar computadores Linux com software de mineração de criptomoedas. Outro pesquisador de segurança, Omri Ben Bassat, de forma independentedescobertoa mesma campanha e a chamou de "EternalMiner".
A solução alternativa recomendada para sistemas com Samba instalado (que também está presente no aviso CVE) antes de atualizá-lo é adicionar smb.conf
:
nt pipe support = no
(e reiniciando o serviço Samba)
Supõe-se que isso desative uma configuração que ativa/desativa a capacidade de fazer conexões anônimas com o serviço de pipes nomeados IPC do Windows. De man samba
:
Esta opção global é usada por desenvolvedores para permitir ou impedir que clientes Windows NT/2000/XP façam conexões com pipes IPC$ SMB específicos do NT. Como usuário, você nunca precisará substituir o padrão.
No entanto, pela nossa experiência interna, parece que a correção não é compatível com versões mais antigas? Versões do Windows (pelo menos alguns? Os clientes do Windows 7 parecem não funcionar com o nt pipe support = no
) e, como tal, a rota de correção pode ir em casos extremos para a instalação ou até mesmo a compilação do Samba.
Mais especificamente, esta correção desativa a listagem de compartilhamentos de clientes Windows e, se aplicada, eles precisam especificar manualmente o caminho completo do compartilhamento para poder usá-lo.
Outra solução alternativa conhecida é garantir que os compartilhamentos do Samba sejam montados com a noexec
opção. Isto impedirá a execução de binários residentes no sistema de arquivos montado.
O patch oficial do código-fonte de segurança éaquidepágina de segurança do samba.org.
O Debian já lançou ontem (24/5) uma atualização e o aviso de segurança correspondenteDSA-3860-1 samba
Para verificar se a vulnerabilidade foi corrigida no Centos/RHEL/Fedora e derivados, faça:
#rpm -q –changelog samba | grep -i CVE
– resolves: #1450782 – Fix CVE-2017-7494
– resolves: #1405356 – CVE-2016-2125 CVE-2016-2126
– related: #1322687 – Update CVE patchset
Agora existe um nmap
script de detecção:samba-vuln-cve-2017-7494.nse
para detectar versões do Samba, ou um nmap
script muito melhor que verifica se o serviço está vulnerável emhttp://seclists.org/nmap-dev/2017/q2/att-110/samba-vuln-cve-2017-7494.nse, copie-o /usr/share/nmap/scripts
e atualize o nmap
banco de dados ou execute-o da seguinte maneira:
nmap --script /path/to/samba-vuln-cve-2017-7494.nse -p 445 <target>
Sobre medidas de longo prazo para proteger o serviço SAMBA: O protocolo SMB nunca deve ser oferecido diretamente à Internet em geral.
Nem é preciso dizer que o SMB sempre foi um protocolo complicado e que esse tipo de serviço deveria ser protegido por firewall e restrito às redes internas [para as quais são servidos].
Quando for necessário acesso remoto, seja para redes residenciais ou especialmente para redes corporativas, esses acessos devem ser melhor realizados utilizando tecnologia VPN.
Como sempre, nestas situações o princípio Unix de apenas instalar e ativar os serviços mínimos necessários compensa.
Retirado da própria exploração:
Exploração Eterna do Samba Vermelho - CVE-2017-7494.
Faz com que o servidor Samba vulnerável carregue uma biblioteca compartilhada no contexto raiz.
As credenciais não são necessárias se o servidor tiver uma conta de convidado.
Para exploração remota, você deve ter permissões de gravação em pelo menos um compartilhamento.
O Eternal Red verificará o servidor Samba em busca de compartilhamentos nos quais possa gravar. Também determinará o caminho completo do compartilhamento remoto.For local exploit provide the full path to your shared library to load. Your shared library should look something like this extern bool change_to_root_user(void); int samba_init_module(void) { change_to_root_user(); /* Do what thou wilt */ }
Também é sabido que os sistemas com SELinux habilitado não são vulneráveis à exploração.
VerFalha no Samba de 7 anos permite que hackers acessem milhares de PCs Linux remotamente
De acordo com o mecanismo de busca de computadores Shodan, mais de 485 mil computadores habilitados para Samba expuseram a porta 445 na Internet e, de acordo com pesquisadores da Rapid7, mais de 104 mil terminais expostos à Internet pareciam estar executando versões vulneráveis do Samba, dos quais 92 mil são executando versões não suportadas do Samba.
Como o Samba é o protocolo SMB implementado em sistemas Linux e UNIX, alguns especialistas dizem que é a “versão Linux do EternalBlue”, usada pelo ransomware WannaCry.
...ou devo dizer SambaCry?
Tendo em mente o número de sistemas vulneráveis e a facilidade de exploração desta vulnerabilidade, a falha do Samba poderia ser explorada em larga escala com capacidades wormable.
Redes domésticas com dispositivos NAS (armazenamento conectado à rede) [que também executam Linux] também podem ser vulneráveis a essa falha.
Veja tambémUm bug wormable de execução de código está à espreita no Samba há 7 anos. Remende agora!
A falha de sete anos, indexada como CVE-2017-7494, pode ser explorada de forma confiável com apenas uma linha de código para executar código malicioso, desde que algumas condições sejam atendidas. Esses requisitos incluem computadores vulneráveis que:
(a) tornar a porta 445 de compartilhamento de arquivos e impressoras acessível na Internet,
(b) configurar arquivos compartilhados para terem privilégios de gravação e
(c) usar caminhos de servidor conhecidos ou adivinhados para esses arquivos.Quando essas condições são satisfeitas, os invasores remotos podem fazer upload de qualquer código de sua escolha e fazer com que o servidor o execute, possivelmente com privilégios de root irrestritos, dependendo da plataforma vulnerável.
Dada a facilidade e a confiabilidade das explorações, vale a pena tapar essa lacuna o mais rápido possível. Provavelmente é apenas uma questão de tempo até que os invasores comecem a atacá-lo ativamente.
TambémRapid 7 - Patching CVE-2017-7494 no Samba: É o Círculo da Vida
E maisSambaCry: a sequência Linux do WannaCry.
Fatos que você precisa saber
CVE-2017-7494 tem uma pontuação CVSS de 7,5 (CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H)3.
Escopo da ameaça
Uma consulta shodan.io de "port:445 !os:windows" mostra aproximadamente um milhão de hosts não Windows que têm tcp/445 aberto à Internet, mais da metade dos quais existem nos Emirados Árabes Unidos (36%) e no EUA (16%). Embora muitos deles possam estar executando versões corrigidas, tenham proteções SELinux ou não correspondam aos critérios necessários para executar a exploração, a possível superfície de ataque para esta vulnerabilidade é grande.
PS A correção de commit no projeto SAMBA github parece ser commit02a76d86db0cbe79fcaf1a500630e24d961fa149
Responder2
A maioria de nós que executa servidores Samba provavelmente o executa dentro de LANs, atrás de firewalls e não expõe suas portas diretamente ao mundo exterior.
Seria uma prática terrível se você fizesse isso, e indesculpável quando existem soluções VPN simples, eficazes e gratuitas (como na cerveja e na fala) como o OpenVPN. O SMB não foi projetado com a Internet aberta em mente (caramba, o TCP/IP até veio como uma reflexão tardia nesse protocolo) e deve ser tratado como tal. Uma sugestão adicional é executar regras de firewall no host de compartilhamento de arquivos real que coloque na lista de permissões apenas endereços de rede locais (e, eventualmente, VPN) em todas as portas SMB ( 139/TCP
, 445/TCP
, 137/UDP
e 138/UDP
).
Além disso, se o seu caso de uso permitir, você deve considerar executar o Samba sem privilégios (como, digamos, samba
um usuário que não seja o alias de root
). Eu entendo que não é tão fácil casar as limitações das ACLs NT com ACLs POSIX com esta configuração, mas se for possível fazer isso em sua configuração específica, é o caminho a seguir.
Finalmente, mesmo com esse "bloqueio", ainda é aconselhável aplicar um patch, se possível (porque existem caixas NAS por aí onde isso pode não ser possível) e testar se o seu caso de uso específico funciona com nt pipe support
set to no
.