Vulnerabilidade de RCE zero-day encontrada no CUPS (Common UNIX Printing System)
27 de setembro de 2024
0 minutos de leituraEm 27 de setembro de 2024, evilsocket.net (Simone Margaritelli) publicou informações sobre diversas vulnerabilidades no CUPS (Common UNIX Printing System), que podem permitir a execução remota arbitrária de código (RCE). Atualmente, há 4 CVEs associados a essas descobertas, e outros podem ser divulgados. Também há divergências sobre a gravidade dessas vulnerabilidades; no entanto, uma das CVEs recebeu inicialmente uma pontuação CVSS de 9,9. Atualizaremos este blog se novas informações forem divulgadas.
Observação importante: outras CVEs podem ser publicadas relacionadas a essas vulnerabilidades e a outras identificadas por Simone, o pesquisador original. Atualizaremos este blog com novas informações, se necessário.
O que sabemos até o momento
Foi identificada uma nova vulnerabilidade zero-day que afeta o Common UNIX Printing System (CUPS), um pacote popular de suporte a impressoras. Ela afeta os pacotes derivados cups-browsed, libcupsfilters, cups-filters e libppd. As vulnerabilidades permitem a execução remota de código (RCE) sem autenticação, e pelo menos uma recebeu uma pontuação CVSS de 9,9. No entanto, a exploração da vulnerabilidade se limita a servidores com o serviço CUPS ativado e exige acesso à porta UDP 631 (observe que é possível remapear o CUPS para outra porta), mais comum em acessos a redes externas, ou ao DNS-SD, mais comum em redes internas.
Há vários avisos de segurança relacionados a esta vulnerabilidade:
CVE-2024-47177: https://security.snyk.io/vuln/?search=CVE-2024-47177
CVE-2024-47176: https://security.snyk.io/vuln?search=CVE-2024-47176
CVE-2024-47076: https://security.snyk.io/vuln?search=CVE-2024-47076
CVE-2024-47175: https://security.snyk.io/vuln?search=CVE-2024-47175
No momento, a vulnerabilidade afeta todas as versões anteriores dos seguintes pacotes:
distrotech/cups-filters- todas as versõesOpenPrinting/cups-filters- todas as versõescups-browsed- todas as versõeslibcupsfilters- todas as versõeslibppd- todas as versões
O CUPS faz parte dos sistemas operacionais UNIX e Linux desde 1999 e é amplamente distribuído com várias distribuições UNIX e Linux, além de Apple, Windows e outros sistemas operacionais. O CUPS fornece serviços de impressão e, por isso, normalmente fica à escuta de solicitações de rede, tornando-se suscetível a vulnerabilidades e ataques de RCE.
Como se preparar para corrigir as vulnerabilidades
A Snyk detecta as vulnerabilidades com Snyk Open Source e Snyk Container, inclusive em pacotes C/C++ não gerenciados. Além disso, a Snyk e nossos parceiros de segurança em tempo de execução podem indicar se você tem contêineres em execução com a vulnerabilidade e, em muitos casos, determinar se os processos CUPS afetados estão carregados no contêiner durante a execução e se ele está configurado para acessar a rede.
Verifique o uso de contêineres e pacotes para avaliar sua exposição ao CUPS.
Verifique se você realmente precisa do CUPS e considere removê-lo ou desativá-lo caso não precise.
Se você tiver certeza de que o CUPS não é necessário, considere bloquear o acesso à porta UDP 631 a partir de redes externas. Você também pode considerar bloquear o tráfego DNS-SD em redes internas, mas lembre-se de que o DNS-SD é usado para mais do que o CUPS, então talvez seja necessário investigar melhor.
Snyk Open Source
Para detectar os pacotes afetados com Snyk Open Source, use o comando snyk test ou, se você tiver código e bibliotecas C/C++, use o comando snyk test --unmanaged. Os projetos que já foram analisados e estão sendo monitorados pelo Snyk Open Source serão testados novamente automaticamente. Você pode consultar esses projetos.
Ao importar seu projeto para a Snyk usando nossas integrações SCM compatíveis (GitHub, Bitbucket, GitLab, Azure Repos), um teste será iniciado automaticamente. Assim, você poderá usar a interface da Snyk para identificar, priorizar e corrigir essas vulnerabilidades nos seus projetos.
Integrações da Snyk CLI e de CI/CD:
snyk testpara a maioria das linguagens de programaçãosnyk test --unmanagedpara projetos em C/C++Você também pode usar
snyk monitorpara monitorar esses projetos continuamente.
Gerenciadores de código-fonte:
Detecção automática em novas importações
A nova verificação automática de projetos existentes está em andamento
Por padrão, os projetos existentes recebem atualizações diárias automaticamente
IDE:
Os plugins de IDE da Snyk usam a Snyk CLI e detectam essas vulnerabilidades durante uma análise.
Snyk Container
Para detectar imagens de contêiner afetadas com Snyk Container, use o comando snyk container test. Se você já tiver projetos analisados e monitorados pelo Snyk Container, eles serão testados novamente automaticamente. Você já pode consultar esses projetos.
Integrações da Snyk CLI e de CI/CD:
snyk container testverifica a imagem do contêiner e procura manifestos de linguagens (por exemplo, package.json) para detectar o uso.snyk container monitortambém analisa e detecta vulnerabilidades, além de monitorar continuamente as que surgirem no futuro.Registros de contêineres:
Contêineres analisados por integrações com registros são verificados automaticamente em busca dessas vulnerabilidades durante a importação.
Projetos de contêiner já importados alertarão sobre a presença dessa vulnerabilidade.
Gerenciadores de código-fonte:
O Snyk Container analisa Dockerfiles durante as importações SCM, mas verifica apenas a imagem base (o comando
FROM) e só informa vulnerabilidades em algumas imagens base certificadas pelo Docker. Se a imagem base estiver coberta e tiver essa vulnerabilidade, ela será reportada. No entanto, analisar as imagens reais dos contêineres após a compilação é o método mais confiável para detectá-la.
Priorização com a pontuação de risco da Snyk
É provável que você encontre vários problemas relacionados a cups nos seus projetos, o que pode dificultar a decisão sobre por onde começar a corrigi-los. A pontuação de risco dos problemas da Snyk considera vários fatores para ajudar você a identificar rapidamente quais problemas devem ser resolvidos primeiro. A pontuação inclui diversos sinais, como EPSS, maturidade da exploração, CVSS, tendências nas redes sociais e outros, permitindo filtrar rapidamente a lista de vulnerabilidades e priorizar as correções.
A pontuação aparece para cada problema detectado na página Projetos e também está disponível nos relatórios da Snyk.

Relatórios da Snyk
Há um novo relatório disponível na lista de relatórios “Featured Zero-Day” da Snyk para esse conjunto de vulnerabilidades. Se você tem um plano Enterprise, pode acessar o relatório clicando em “Reports” no menu à esquerda (há relatórios nos níveis de grupo e organização). Por padrão, é exibido o relatório “Issues Detail”, mas você pode clicar no menu suspenso “Change Report”, ao lado do título do relatório, e selecionar “Featured Zero-Day”. Na tela seguinte, selecione o relatório do CUPS na lista suspensa Zero-Day.

Você também pode combinar CVEs com outros filtros nos relatórios Issues Detail, Issues Summary, Vulnerabilities Detail e SLA Management para criar, salvar e compartilhar relatórios personalizados e acompanhar essa vulnerabilidade em todas as detecções do Snyk Open Source e/ou Snyk Container. Filtre relatórios e outras páginas pelas CVEs: CVE-2024-47177, CVE-2024-47176, CVE-2024-47076 e CVE-2024-47175.
O vídeo abaixo mostra como filtrar por uma CVE, mas você pode incluir quantas quiser de uma só vez:

Filtragem no painel
O funil de Insights na tela Issues identifica instâncias de aplicações em execução que apresentam essas vulnerabilidades e também têm acesso a redes externas. Você também pode adicionar um filtro para se concentrar apenas nesses problemas.

O que a Snyk está fazendo?
Os especialistas em segurança da Snyk acompanham de perto as atualizações de versões, informações sobre vulnerabilidades, conversas nas redes sociais e outros dados para manter nossos clientes informados. Além disso, estamos pesquisando outros pacotes derivados que possam ser afetados. Atualizaremos este blog conforme necessário. Se tiver dúvidas sobre essas vulnerabilidades, fale conosco pelo Snyk Community Discord ou inscreva-se para uma avaliação gratuita e descubra se você foi afetado.
Comece a usar o Snyk gratuitamente
Não é necessário informar um cartão de crédito.
Crie uma conta com Bitbucket e veja mais opções
Ao usar o Snyk, você concorda em cumprir nossas políticas, incluindo os Termos de Serviço e a Política de Privacidade.

