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-2020-25867 — Proof-of-Concept-Exploit für CVE-2020-25867, der PHP-Type-Juggling-Umgehung der SoPlanning-Kalenderfreigabe-Schlüsselauthentifizierung demonstriert. | Kitploit
Tools/GitHubGitHub/thomasfady/cve-2020-25867
SchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsLernen & Bildung
GitHubthomasfady/cve-2020-25867

CVE-2020-25867

Proof-of-Concept-Exploit für CVE-2020-25867, der PHP-Type-Juggling-Umgehung der SoPlanning-Kalenderfreigabe-Schlüsselauthentifizierung demonstriert.

Repository anzeigen
1vor 4 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

CVE-2020-25867: SoPlanning Umgehung des Sharing-Keys

Informationen

  • Betroffene Version: 1.46.01
  • Behobene Version: 1.47 und höher
  • CVE: CVE-2020-25867

Zeitleiste

  • 26/06/2020: Dieser Schwachstellenbericht wurde an den Hersteller gesendet
  • 21/07/2020: Die Schwachstelle wurde behoben

Risiken

Das Sharing-Key-System ist anfällig für Angriffe durch PHP Type Juggling, die es einem Angreifer ermöglichen, auf den Inhalt des Kalenders zuzugreifen, ohne den Sharing-Key zu kennen.

Voraussetzungen

Um anfällig zu sein, muss der Sharing-Key des Kalenders aktiviert sein.

EnableSharingKey

Sobald diese Freigabe aktiviert ist, kann ein Benutzer ohne Authentifizierung über den Sharing-Key auf den Kalender zugreifen.

NormalBehavior

Natürlich wird der Zugriff verweigert, wenn der Schlüssel falsch ist.

Ausnutzung

Die Validierung des Schlüssels erfolgt in der Datei "includes/header.inc"

root@kitploit:~
if ( CONFIG_SOPLANNING_OPTION_ACCES == 2 && isset($_GET['public']) && isset($_GET['cle']))
{
  if (strcmp($_GET['cle'],CONFIG_SECURE_KEY)==0)
  {
    $_SESSION['public']=1;
    $_SESSION['user_id']='publicspl';
  }
}

Die strcmp-Funktion wird mit einem nicht-strikten Vergleich verwendet. Das Ergebnis dieses Vergleichs hängt von Folgendem ab: PHP-Typvergleichstabellen

Das Ergebnis der strcmp-Funktion wird in der Dokumentation beschrieben: [strcmp]'https://www.php.net/manual/en/function.strcmp.php)

Gibt < 0 zurück, wenn str1 kleiner als str2 ist; > 0, wenn str1 größer als str2 ist, und 0, wenn sie gleich sind.

Diese Funktion gibt "NULL" zurück, wenn einer der Parameter ein Array ist.

Gemäß den PHP-Typvergleichstabellen ist der nicht-strikte Vergleich zwischen "NULL" und 0 true

Wenn $_GET['cle'] also ein Array ist, ist das Ergebnis der Bedingung true und der Zugriff wird gewährt.

Dieser Link definiert $_GET['cle'] als Array: https://demo.soplanning.org/planning.php?public=1&cle[]=

Exploit

Der Zugriff wird als "Invité" gewährt

Behebung

Um diese Schwachstelle zu beheben, kann ein strikter Vergleich verwendet werden:

root@kitploit:~
if ( CONFIG_SOPLANNING_OPTION_ACCES == 2 && isset($_GET['public']) && isset($_GET['cle']))
{
  if (strcmp($_GET['cle'],CONFIG_SECURE_KEY)===0)
  {
    $_SESSION['public']=1;
    $_SESSION['user_id']='publicspl';
  }
}

Oder der Vergleich kann ohne die strcmp-Funktion durchgeführt werden.

root@kitploit:~
if ( CONFIG_SOPLANNING_OPTION_ACCES == 2 && isset($_GET['public']) && isset($_GET['cle']))
{
  if ($_GET['cle'] === CONFIG_SECURE_KEY)
  {
    $_SESSION['public']=1;
    $_SESSION['user_id']='publicspl';
  }
}
Tool herunterladen