Plataforma
java
Componente
jad-java-decompiler
Corrigido em
1.5.9
A vulnerabilidade CVE-2017-20227 refere-se a um estouro de buffer baseado em pilha no JAD Java Decompiler 1.5.8e–1.5.8e. Essa falha permite que invasores executem código arbitrário através do envio de entradas excessivamente longas que excedem os limites do buffer. Um atacante pode criar entradas maliciosas passadas para o comando 'jad' para explorar a vulnerabilidade. Não há correção oficial disponível para esta vulnerabilidade.
A vulnerabilidade CVE-2017-20227 no JAD Java Decompiler (versões 1.5.8e-1kali1 e anteriores) representa um risco significativo devido a um estouro de buffer baseado na pilha. Um atacante pode explorar essa falha fornecendo uma entrada excessivamente longa para o comando jad, fazendo com que o buffer exceda seus limites. Isso permite a execução de código arbitrário, potencialmente permitindo que o atacante execute uma cadeia de retorno orientada à programação (ROP) para obter acesso a um shell do sistema. A pontuação CVSS é 9.8, indicando um impacto crítico. A vulnerabilidade afeta principalmente sistemas que utilizam o JAD para descompilar arquivos Java, especialmente em ambientes onde a entrada do usuário pode influenciar o processo de descompilação. A falta de uma correção conhecida agrava a situação, exigindo uma avaliação e mitigação cuidadosas.
A exploração do CVE-2017-20227 requer que um atacante seja capaz de controlar a entrada fornecida ao comando jad. Isso pode ocorrer em cenários em que o descompilador é usado para processar arquivos fornecidos pelo usuário ou em ambientes em que um atacante pode manipular a configuração do sistema. O atacante pode criar um arquivo Java especialmente projetado com um comprimento excessivo, que, ao ser descompilado pelo JAD, aciona o estouro do buffer e a execução de código malicioso. A cadeia ROP permite que o atacante ignore as proteções de segurança e obtenha controle do sistema. A ausência de uma correção significa que os sistemas que usam versões vulneráveis do JAD são suscetíveis a este ataque até que medidas de mitigação sejam implementadas.
Developers and security researchers who use JAD Java Decompiler to analyze or reverse engineer Java code are at risk. Systems where JAD Java Decompiler is integrated into automated build or analysis pipelines are particularly vulnerable, as they may process a large volume of untrusted input.
• java / application: Monitor JAD Java Decompiler processes for unusual memory access patterns using memory debugging tools.
• java / application: Check for suspicious files being passed as input to the jad command.
Get-Process | Where-Object {$_.ProcessName -like '*jad*'} | Foreach-Object {Get-Process -Id $_.Id -IncludeChildren}• generic web: Monitor access logs for requests to decompile potentially malicious Java code. • generic web: Examine error logs for stack overflow exceptions related to JAD Java Decompiler.
Status do Exploit
EPSS
0.09% (percentil 25%)
CISA SSVC
Vetor CVSS
Considerando que não existe uma correção oficial para CVE-2017-20227, a mitigação se concentra em evitar o uso de versões vulneráveis do JAD Java Decompiler. A medida mais eficaz é atualizar para uma versão mais recente, se estiver disponível (embora nenhuma seja mencionada nas informações fornecidas). Como alternativa, restrinja o acesso ao comando jad e monitore cuidadosamente qualquer entrada fornecida ao descompilador. Implementar controles de validação de entrada para limitar o comprimento dos arquivos que estão sendo descompilados pode ajudar a prevenir o estouro do buffer. Considere o uso de ferramentas de descompilação alternativas que sejam menos suscetíveis a esse tipo de vulnerabilidade. A segmentação de rede e o princípio do menor privilégio também podem ajudar a limitar o impacto de uma possível exploração. A vigilância contínua e a avaliação de riscos são fortemente recomendadas.
Actualizar a una versión parcheada del descompilador Java JAD. Si no hay una versión parcheada disponible, considere usar un descompilador Java alternativo para evitar la vulnerabilidad de desbordamiento de búfer basada en pila.
Análise de vulnerabilidades e alertas críticos diretamente no seu e-mail.
JAD é uma ferramenta de linha de comando usada para descompilar arquivos Java em código fonte legível.
Esta vulnerabilidade permite a execução de código arbitrário, o que poderia dar a um atacante controle total sobre o sistema.
Atualmente, não há uma correção oficial disponível.
Evite usar versões vulneráveis do JAD, restrinja o acesso ao comando e valide a entrada.
Uma cadeia ROP é uma técnica de exploração que permite que um atacante execute código arbitrário reutilizando fragmentos de código existentes na memória do sistema.
Envie seu arquivo de dependências e descubra na hora se esta e outras CVEs te atingem.
Envie seu arquivo pom.xml e descubra na hora se você está afetado.