JarTee – shutterstock.com
Forscher von Varonis haben herausgefunden, dass eine Schwachstelle in der beliebten Workflow-Automatisierungs-Plattform von ServiceNow vertrauliche Informationen offenlegt. Nachdem die Security-Experten den Anbieter bereits im vergangenen Jahr über die Softwarelücke informiert hatten, wurde die Plattform stillschweigend gepatcht und im Mai 2025 ein Sicherheits-Update für seine Kunden veröffentlicht. Am 8. Juli gab ServiceNow dann eine CVE-Nummer (CVE-2025-3648) mit einer Beschreibung des Problems heraus.
„Das Update von ServiceNow behebt eine Schwachstelle, die es Benutzern mit geringen Berechtigungen ermöglicht hätte, auf eingeschränkte Daten zuzugreifen“, erklärte Crawford Del Prete, Präsident von IDC, gegenüber CIO.com. „Angesichts der Art der Daten, mit denen ServiceNow umgeht, sind solche Situationen immer potenziell schwerwiegend.“
Zur Behebung des Problems müssten Administratoren sicherstellen, dass die Zugriffskontrolllisten (ACLs) ordnungsgemäß konfiguriert und gut verwaltet werden, betont der IDC-Experte. „Positiv ist, dass mit den jüngsten Patches die Standardkonfiguration auf ‚Standardmäßig ablehnen‘ geändert wurde, um ein versehentlichen Zugriff für nicht privilegierte Benutzer zu verhindern.“
Del Prete fügt hinzu: „ServiceNow-Umgebungen sind (wie viele andere auch) sehr dynamisch, da sich Benutzer und Rechte häufig ändern.“ Es sei daher von entscheidender Bedeutung, dass Änderungen ordnungsgemäß verwaltet werden.
Yogev Madar, Manager der Sicherheitsforschungsgruppe von Varonis, rät ServiceNow-Administratoren, die ACLs in ihrer Umgebung zu überprüfen und neue Zugriffsmechanismen zu nutzen, um sicherzustellen, dass die Schwachstelle nicht ausgenutzt werden kann.
Dazu gehöre Madar zufolge, dass
die ACLs nicht ausschließlich von Daten oder Skriptbedingungen abhängen, die zu Missbrauch führen könnten,
dass der neue ACL-Mechanismus „Deny else“ verwendet wird, der eine bessere Zugriffskontrolle bietet, und
dass die neue Query-ACL-Regel verwendet wird, um die Operatoren, die in Abfragen verwendet werden können, zu beschränken und Aufzählungsversuche zu begrenzen.
Selbst authentifizierte Benutzer können den Fehler ausnutzen
Die Schwachstelle in der Zugriffskontrolle ermöglicht es nicht authentifizierten und sogar authentifizierten Benutzern, unter bestimmten Bedingungen, über Abfragen auf nicht für sie legitimierte Daten zuzugreifen. Um diese Bedrohung abzuwenden, hat ServiceNow in den Versionen Xanadu und Yokohama der Plattform zusätzliche Frameworks für Zugriffskontrolllisten eingeführt.
„Diese Schwachstelle war relativ einfach auszunutzen und erforderte nur minimalen Tabellenzugriff, beispielsweise ein schwaches Benutzerkonto innerhalb der Instanz oder sogar einen selbst registrierten anonymen Benutzer, wodurch die Notwendigkeit einer Berechtigungserweiterung umgangen werden konnte und sensible Daten offengelegt wurden“, erklärte Varonis in seinem Blog.
Dem Unternehmen sind keine Fälle bekannt, in denen diese Schwachstelle vor der Veröffentlichung des Patches durch ServiceNow im Mai ausgenutzt wurde.
Plattform kann riesige Mengen sensibler Daten speichern
Als Cloud-basierte Plattform bietet ServiceNow eine Vielzahl von Funktionen, darunter IT-Servicemanagement, IT-Betriebsmanagement, Kundenservicemanagement, Personalwesen, Governance, Risiko und Compliance, Gesundheitswesen und Life Sciences sowie Servicemanagement und vieles mehr. Damit kann die Plattform eine Vielzahl sensibler personenbezogener Daten speichern.
Laut Varonis organisiert ServiceNow praktisch alle Informationen in Tabellen. Dazu zählen Elemente wie Vorfälle und Anfragen, Eigenschaften und Konfigurationen von Instanzen, Benutzerdaten oder, Anmeldedaten für Anwendungen. Jedes dieser Elemente wird als Datensatz in einer entsprechenden Tabelle gespeichert.
Die Plattform erstellt mithilfe von Referenzfeldern Verbindungen zwischen Tabellen, über die Informationen zwischen verschiedenen Tabellen ausgetauscht werden können. Ein Referenzfeld in der Tabelle „Vorfälle” kann beispielsweise mit einem bestimmten Benutzerdatensatz in der Tabelle „Benutzer” verknüpft sein, sodass die zugehörigen Daten in mehreren Tabellen angezeigt werden können.
Der Zugriff auf diese Tabellen wird hauptsächlich über Zugriffskontrolllisten (ACL) geregelt, die festlegen, auf welche Daten Benutzer zugreifen können und wie sie mit diesen interagieren dürfen.
Eine ServiceNow-Instanz kann laut Varonis Zehntausende von ACL-Regeln enthalten.
Die wichtigsten Komponenten einer ACL-Regel in ServiceNow sind die Ressourcen, die der Administrator schützen möchte (eine Tabelle, ein Feld oder ein Datensatz), die Operation, die die Art des zu kontrollierenden Zugriffs angibt (Lesen, Schreiben, Erstellen oder Löschen), und die Bedingungen, die erfüllt sein müssen, damit die Regel angewendet wird.
Vier Bedingungen für den Zugriff
Vier Bedingungen in jeder ACL legen fest, ob ein Benutzer die Anforderungen für den Zugriff auf eine bestimmte Ressource erfüllt:
Erforderliche Rollen: Diese Bedingung legt die Rollen fest, die für den Zugriff auf eine bestimmte Ressource erforderlich sind. Wenn ein Anwender über eine der in der ACL aufgeführten Rollen verfügt, erhält er Zugriff.
Security Attribute Condition: Dabei werden Sicherheitsattribute verwendet, um den Zugriff zu bestimmen.
Datenbedingung: Diese Bedingung bewertet bestimmte Kriterien in Bezug auf die Daten selbst. Sie können beispielsweise eine Bedingung festlegen, die den Zugriff auf Datensätze mit einem bestimmten Status oder innerhalb eines bestimmten Datumsbereichs beschränkt.
Skriptbedingung: Diese Bedingung ermöglicht die Ausführung benutzerdefinierter Logik. Administratoren können Skripte schreiben, um komplexe Sicherheitsregeln zu implementieren, die über einfache Rollen- oder Datenbedingungen hinausgehen. Ein Skript kann so geschrieben werden, dass der Zugriff nur gewährt wird, wenn eine bestimmte Konfiguration in der Instanz festgelegt ist oder wenn ein Benutzer authentifiziert ist.
Diese vier ACL-Bedingungen für den Zugriff werden von ServiceNow in dieser Reihenfolge ausgewertet.
Varonis hat festgestellt, dass ServiceNow den Zugriff je nachdem, welche ACL-Bedingungen nicht erfüllt sind, verweigert. Wenn der Zugriff auf eine Ressource aufgrund einer der ersten beiden Bedingungen – „Erforderliche Rollen“ oder „Sicherheitsattributbedingung“ – blockiert ist, wird der Zugriff verweigert.
Wird der Zugriff jedoch aufgrund einer nicht erfüllten „Datenbedingung“ oder „Skriptbedingung“ verweigert, öffnet sich dem Benutzer eine Seite, auf der die Gesamtzahl der von der Abfrage zurückgegebenen Datensätze angezeigt wird, auch wenn keine Datensätze sichtbar sind. Ein Cyberkrimineller kann dann die Abfrageparameter der Anwendung verwenden, um durch Aufzählung detaillierte Daten abzuleiten. Schlimmer noch: Ein Angreifer könnte diesen Prozess automatisieren, indem er ein einfaches Skript für die Aufzählung schreibt, so Varonis, und so die vollständigen Datensätze aus der Tabelle abrufen. Anschließend kann er die Ergebnisse aus der HTML-Quelle abrufen.
„Es sind keine besonderen Konfigurationen oder Plug-ins erforderlich“, betonen die Security-Forscher. Ein Angreifer bräuchte lediglich ein Benutzerkonto in der ServiceNow-Instanz mit teilweisem Zugriff auf Tabellen oder Spalten.
Neue ACL-Regeln können erstellt werden
Varonis wies darauf hin, dass auch selbst registrierte Benutzer diesen Angriff nutzen könnten. Die Selbstregistrierung ist eine Funktion, mit der Benutzer Konten erstellen und mit minimalen Berechtigungen auf die Instanz zugreifen können, die dennoch für Angriffe genutzt werden können.
„Obwohl es selten vorkommt, dass Instanzen eine anonyme Registrierung und einen anonymen Zugriff zulassen, wurde diese Konfiguration in den ServiceNow-Systemen mehrerer Fortune-500-Unternehmen gefunden“, so die Sicherheitsspezialisten.
Anfällig für den Angriff sind Tabellen mit ACLs, deren Abschnitte „Requires Roles“ (Erforderliche Rollen) und „Security Attribute Condition“ (Sicherheitsattributbedingung) leer oder zu weit gefasst sind. „Das bedeutet, dass jede Tabelle, die nur durch Daten- oder Skriptbedingungen geschützt ist, vollständig für den Angriff offen ist“, führt Varonis aus.
Um die Schwachstelle zu beheben, hat ServiceNow mehrere neue ACL-Regeln erstellt, die Administratoren implementieren können. Eine davon heißt „Query ACL“ und fügt Einschränkungen für die Abfragen hinzu, die ein Anwender an einer Tabelle ausführen kann, um Datensätze abzurufen. Neue Sicherheitsdatenfilter können den Zugriff auf Datensätze auch basierend auf Rollen oder Sicherheitsattributen im Zusammenhang mit Assertions einschränken.
ServiceNow bietet Anleitungen zur Verwaltung von Zugriffskontrolllisten sowie Ratschläge für Administratoren und Entwickler.
„Diese Schwachstelle in ServiceNow ist eine eindringliche Erinnerung daran, dass selbst etablierte Plattformen gefährliche Schwachstellen in Bezug auf die Zugriffskontrolle aufweisen können“,
„Was diese Schwachstelle besonders besorgniserregend macht, ist die Leichtigkeit, mit der sie ausgenutzt werden kann“, erklärt Gal Nakash, Chief Product Officer bei Reco, einem Anbieter von SaaS-Sicherheitslösungen. „Es sind weder eine Ausweitung der Berechtigungen noch tiefgreifende technische Kenntnisse erforderlich, sondern lediglich falsch konfigurierte ACLs und die geschickte Verwendung von Abfragefiltern. Das ist eine niedrige Hürde für potenziell schwerwiegende Datenexfiltration.“
„Für Unternehmen, insbesondere in regulierten Branchen wie dem Gesundheitswesen, dem Finanzwesen oder der Regierung, ist dies ein Weckruf. Zugriffskontrolllisten (ACLs) müssen nach dem Prinzip der geringsten Berechtigungen konfiguriert werden, Rollen und Sicherheitsattribute dürfen niemals leer oder zu weit gefasst sein“, ergänzt der SaaS-Experte.
Die neuen Abfrage-ACLs und Sicherheitsdatenfilter von ServiceNow würden zwar leistungsstarken Schutz bieten, so Nakash weiter, aber sie funktionierten nur, wenn sie aktiv genutzt und getestet werden. „Administratoren sollten kontinuierlich auf Anomalien wie ungewöhnliche Abfragemuster oder Zugriffe durch Benutzer mit geringen Berechtigungen achten und Berechtigungsänderungen in Tabellen und Rollen überprüfen.“ (jm)
No Responses