Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
joomla-levels-api — Joomla 6.1.3 - Hoch - Remote - ACL - GET /api/v1/users/levels gibt Zugriffsebenen preis | Kitploit
Tools/GitHubGitHub/abraxas/joomla-levels-api
Authentifizierung & AutorisierungSchwachstellenanalyseExploitationWebanwendungs-ExploitationWebsicherheitPenetrationstestsAPI-SicherheitLabs & Praxis
GitHubabraxas/joomla-levels-api

joomla-levels-api

Joomla 6.1.3 - Hoch - Remote - ACL - GET /api/v1/users/levels gibt Zugriffsebenen preis

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

Abraxas Labs - joomla-levels-api

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  joomla-levels-api

joomla-levels-api

Klasse: Privilegien-Überrest Reichweite: Remote

Joomla CMS 6.1.3 (0f2d4de) - Open Source Matters

Administrator-Benutzer -> Zugriffsebenen anzeigen erfordert core.admin auf com_users (LevelController::allowSave und Löschen). Der Groups-Webservice macht bereits dasselbe (GroupsController, 6.1.1). LevelsController hat keine allowAdd-, allowEdit- oder delete-Überschreibung, sodass ApiController core.manage plus core.create durchlässt.

Ein API-Token der Manager-Klasse, dem core.login.api ohne core.admin gewährt wurde, kann Zugriffsebenen erstellen, die die UI verbietet.

IDnoch keine CVE
KlassePrivilegien-Überrest / Autorisierungsumgehung
ReichweiteRemote (API-Token mit core.login.api)
CWECWE-863
CVSSMittel: 6.1 CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N
ProduktJoomla CMS
Betroffen6.1.3 (0f2d4de4729eb951e0878fec98c7990da07915b2)
AuthAPI-Token für Manager (Gruppe 6) mit core.login.api und com_users manage/create/edit. Kein core.admin. Standardmäßig ist core.login.api nur für Super User.
LizenzGNU Affero GPL v3.0
Labnur 127.0.0.1

Was ein Angreifer tun kann

Verwenden Sie ein API-Token eines Nicht-Super-Users, um zu ändern, welche Gruppen welche Seiten sehen. Sie werden durch diesen Überrest allein nicht zum Super User. Dies ist Kontrolle über die Sichtbarkeit von Inhalten, keine Übernahme der Website.

PrivilegMethode / PfadArtIm Lab bewiesen oder abgeleitet
Eine Zugriffsebene erstellenPOST /api/index.php/v1/users/levels JSON title, rules (Gruppen-IDs)IntegritätIm Lab bewiesen. HTTP 200, #__viewlevels id=7, Titel poc-level-JOOMLA-LEVELS-API-WITNESS
Eine bestehende Ebene bearbeiten (Gruppenliste / Titel)PATCH /api/index.php/v1/users/levels/{id}IntegritätAbgeleitet. Derselbe Controller, kein allowEdit. Im Lab nur erstellt.
Eine Ebene löschenDELETE /api/index.php/v1/users/levels/{id}Integrität / Verfügbarkeit von ACL-ZeilenAbgeleitet. Dieselbe fehlende Überschreibung. Im Lab wurde kein DELETE durchgeführt.
Einen nur für Mitglieder bestimmten Artikel, ein Modul oder einen Menüeintrag offenlegenNeue oder gepatchte Ebene, deren rules Public / Guest / Registered enthaltenRecon (Inhaltssichtbarkeit)Abgeleitet aus #__viewlevels.rules. Im Lab wurde die Zeile eingefügt; es wurde kein Live-Artikel neu per ACL abgesichert.
Eine Seite vor Registered verbergen oder die Gruppe des Angreifers zu einer Special-Ebene hinzufügenDasselbe PATCH / ErstellenIntegritätAbgeleitet. Derselbe Speicher.
Benutzergruppen über die API verändernPOST /api/index.php/v1/users/groupsn/aIm Lab bewiesen geschlossen. HTTP 403 (GroupsController core.admin)
Benutzer -> Zugriffsebenen anzeigen im Administrator öffnenGET /administrator/index.php?option=com_users&view=levelsn/aIm Lab bewiesen geschlossen. HTTP 403
Eine Ebene über die UI speichernPOST ... task=level.saven/aIm Lab bewiesen geschlossen. HTTP 403 (LevelController::allowSave erfordert core.admin)
Die API mit einem Standard-Manager ansprechen (ohne core.login.api)Bearer-Token / X-Joomla-Tokenn/aAbgeleitet geschlossen. Standardmäßig ist core.login.api nur für Super User (Gruppe 8). Dieses Lab gewährt es zuerst Gruppe 6.
Super User / Installer RCEn/an/aGeschlossen. Manager bleibt Manager.

Wie ich es gefunden habe

Ich habe joomla/joomla-cms 6.1.3 nach der JSST-Welle 2026-07/08 gepinnt. Die Groups-API erfordert bereits core.admin. View levels fallen weiterhin durch ApiController (core.manage plus core.create / core.edit / core.delete). Die einzige zusätzliche Logik in LevelsController ist das PATCH-JSON-Dekodieren von rules.

Behobenes Groups-Gegenstück:

public function allowAdd($data = [])
{
    return $this->app->getIdentity()->authorise('core.admin', $this->option);
}

Administrator-UI:

protected function allowSave($data, $key = 'id')
{
    return $this->app->getIdentity()->authorise('core.admin', $this->option)
        && parent::allowSave($data, $key);
}

Bereits dokumentierte Irrwege: die Groups-API als weiterhin offen zu behandeln (sie liefert 403); die API als Standard-Manager anzusprechen, ohne zuvor core.login.api zu gewähren (Standard ist nur Super User, gleiches Setup wie CVE-2026-71574 / 72531 / 48904); UI-403 als die ganze Geschichte zu lesen (der Überrest ist die API). Theater: eine Reverse Shell. Das Orakel ist API 200 plus Groups 403 plus UI 403.

Überreste desselben Pins: menu items API, media override, articles catid.

Lab

python3 joomla-levels-api-Abraxas-Labs.py

oder

cd lab
./run.sh

Ziel nur http://127.0.0.1:19520. Image joomla:6.1.3-php8.3-apache plus mariadb:11.4.

SUCCESS joomla-levels-api api-http=200 level-id=7 groups-api=403 ui-view=403 ui-save=403 JOOMLA-LEVELS-API-WITNESS

Der Fix

Kopieren Sie GroupsController core.admin allowAdd / allowEdit / delete auf LevelsController. Behalten Sie das Administrator-UI-Gate bei.

Referenzen

  • github.com/joomla/joomla-cms Tag 6.1.3 (0f2d4de4729eb951e0878fec98c7990da07915b2)
  • LevelsController.php
  • In der Nähe gepatcht: Groups API core.admin (6.1.1) · CVE-2026-71574
  • Derselbe Tag: joomla-menu-items-api · joomla-media-override · joomla-articles-catid
  • CWE-863

Lizenz

GNU Affero GPL v3.0. Siehe LICENSE. Nur Loopback-Lab. Keine Gewährleistung.

Tool herunterladen