CVE-2026-81853 in ash_admin
Zusammenfassung
von VulDB • 31.08.2026
Eine Schwachstelle für die Umgehung der Autorisierung durch benutzerkontrollierte Schlüssel in ash-project ash_admin verwandelt eine URL zur Datensatzsuche in ein Gleichheitsorakel über sensible Attribute.
AshAdmin.Helpers.decode_primary_key/2 decodiert das Format des zusammengesetzten Primärschlüssels (Base64 plus ETF) und gibt die dekodierte Karte unverändert als Suchfilter zurück, ohne zu prüfen, ob deren Schlüssel den Primärschlüsselfeldern der Ressource entsprechen. Die Deserialisierungsschutzmaßnahmen begrenzen die Größe, blockieren neue Atome und Funktionen sowie verschachtelte Ausdrücke, doch schränkt keine davon ein, welche Felder zurückgegeben werden, und :safe erlaubt jeden bereits internisierten Attributnamen. Ein Angreifer kann daher %{api_token: "guess"} kodieren und es in den Suchfilter einklinken lassen, um einen Wert eines sensiblen Attributes (API-Token, Zurücksetzungs-Token) durch Brute-Force zu erraten, indem er bei jedem Schritt eine Gleichheitsvermutung anstellt; Map.to_list/1 akzeptiert zudem Strukturen, wodurch ein gefälschter __struct__-Schlüssel entsteht. Die Korrektur lehnt jeden dekodierten Schlüssel ab, der kein echtes Primärschlüsselfeld ist.
Dieses Problem betrifft ash_admin: von Version 0.1.0 bis vor 1.3.1.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.