- JavaScript 57.1%
- CSS 35.7%
- HTML 3.9%
- Python 3.3%
| glesn | ||
| glesnapp | ||
| staticfiles | ||
| .gitignore | ||
| compose.yaml | ||
| Dockerfile | ||
| manage.py | ||
| README.md | ||
| requirements.txt | ||
Die Web-Anwendung "Glesn" (bay. "gelesen", Anspielung auf "reddit", wiederum ein Wortspiel mit "read it" [reddit]) verspricht Anwendern Informationen innerhalb eines geschützten "Space" teilen zu können, dem andere Anwender nur auf Einladung beitreten können.
Jedoch lassen sich Meta-Daten der Informationen trotz fehlender Zugriffsberechtigung auslesen (CWE-200), wenn die Ressource an der GUI vorbei direkt angefragt wird (CWE-425). Aufgrund einer fehlenden Authorisationsprüfung (CWE-862) kann ein Angreifer andere Anwender oder sich selbst zu "Spaces" hinzufügen.
Zusätzlich existiert eine zweite Schwachstelle, die es erlaubt Administrationsrecht zu der Anwendung zu erhalten: Wie viele andere Anwendungen auch, bietet die Glesn-App einen Initial-Modus an, der dann aktiviert wird, wenn keine Anwender registriert sind. Der erste registrierte Account wird dann mit Administrationsrechten ausgestattet. Der Zugriff zu diesem initial-Modus ist nicht eingeschränkt (CWE-1188). In Kombination mit einem unsicheren Anwender-Verwaltungs-Endpunkt, der es ohne Autorisation (CWE-306) erlaubt Anwender zu löschen, kann ein Angreifer alle bestehenden Anwender, inklusive des bestehenden Administrations-Anwenders, löschen, um anschließend einen neuen Account anzulegen, dem nun von der Anwendung Administrationsrechte zugesprochen werden.
Diese Schwachstellen fallen in die Kategorie "Broken Access Control", der Top 1 der aktuellen OWASP "Top 10 Web Application Security Risks".