Platform
java
Component
jad-java-decompiler
Opgelost in
1.5.9
CVE-2017-20227 beschrijft een stack-based buffer overflow kwetsbaarheid in JAD Java Decompiler versie 1.5.8e. Deze kwetsbaarheid kan misbruikt worden door aanvallers om willekeurige code uit te voeren. De impact is het uitvoeren van code. Er is geen officiële patch beschikbaar.
CVE-2017-20227 in JAD Java Decompiler (versies 1.5.8e-1kali1 en eerder) vormt een aanzienlijk risico vanwege een stack-gebaseerde buffer overflow kwetsbaarheid. Een aanvaller kan deze fout uitbuiten door overmatig lange invoer aan de jad opdracht te leveren, waardoor de buffer zijn grenzen overschrijdt. Dit maakt de uitvoering van willekeurige code mogelijk, waardoor de aanvaller mogelijk een return-oriented programming (ROP) keten kan uitvoeren om toegang te krijgen tot een shell van het systeem. De CVSS score is 9,8, wat een kritieke impact aangeeft. De kwetsbaarheid treft voornamelijk systemen die JAD gebruiken om Java-bestanden te decompileren, met name in omgevingen waar gebruikersinvoer het decompilerproces kan beïnvloeden. Het ontbreken van een bekende oplossing verergert de situatie, waardoor een zorgvuldige beoordeling en mitigatie vereist is.
De exploitatie van CVE-2017-20227 vereist dat een aanvaller in staat is om de invoer te controleren die aan de jad opdracht wordt verstrekt. Dit kan voorkomen in scenario's waarin de decompiler wordt gebruikt om door de gebruiker aangeleverde bestanden te verwerken of in omgevingen waar een aanvaller de systeemconfiguratie kan manipuleren. De aanvaller kan een speciaal ontworpen Java-bestand met overmatige lengte maken, dat wanneer het door JAD wordt gedecompileerd, de buffer overflow en de uitvoering van kwaadaardige code triggert. De ROP-keten stelt de aanvaller in staat om beveiligingsbeschermingen te omzeilen en de controle over het systeem te krijgen. Het ontbreken van een oplossing betekent dat systemen die kwetsbare versies van JAD gebruiken, gevoelig zijn voor deze aanval totdat mitigatiemaatregelen zijn geïmplementeerd.
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.
Exploit Status
EPSS
0.09% (25% percentiel)
CISA SSVC
CVSS-vector
Aangezien er geen officiële oplossing is voor CVE-2017-20227, richt de mitigatie zich op het vermijden van het gebruik van kwetsbare versies van JAD Java Decompiler. De meest effectieve maatregel is om te upgraden naar een nieuwere versie als die beschikbaar is (hoewel er geen wordt genoemd in de verstrekte informatie). Beperk als alternatief de toegang tot de jad opdracht en controleer zorgvuldig alle invoer die aan de decompiler wordt verstrekt. Het implementeren van invoervalidatiecontroles om de lengte van de te decompileren bestanden te beperken, kan helpen om de buffer overflow te voorkomen. Overweeg het gebruik van alternatieve decompiler tools die minder vatbaar zijn voor dit type kwetsbaarheid. Netwerksegmentatie en het principe van minimale privileges kunnen ook helpen om de impact van een mogelijke exploitatie te beperken. Continue waakzaamheid en risicobeoordeling worden ten zeerste aanbevolen.
Werk bij naar een gepatchte versie of overweeg alternatieven voor Java-decompilers. Er is geen gepatchte versie beschikbaar, dus het wordt aanbevolen om een andere decompiler te gebruiken.
Kwetsbaarheidsanalyses en kritieke waarschuwingen direct in uw inbox.
JAD is een command-line tool die wordt gebruikt om Java-bestanden te decompileren naar leesbare broncode.
Deze kwetsbaarheid maakt de uitvoering van willekeurige code mogelijk, wat een aanvaller de volledige controle over het systeem kan geven.
Momenteel is er geen officiële oplossing beschikbaar.
Gebruik geen kwetsbare versies van JAD, beperk de toegang tot de opdracht en valideer de invoer.
Een ROP-keten is een exploitatietechniek waarmee een aanvaller willekeurige code kan uitvoeren door bestaande codefragmenten in het systeemgeheugen te hergebruiken.
Upload je dependency-bestand en kom direct te weten of deze en andere CVEs jou raken.
Upload je pom.xml-bestand en we vertellen je direct of je getroffen bent.