CWE-Referenz › CWE-464: Addition of Data Structure Sentinel
CWE-464: Addition of Data Structure Sentinel
CWE ID: 464
Name: Addition of Data Structure Sentinel
Beschreibung
Die versehentliche Hinzufügung eines Data-Structure Sentinels kann zu schwerwiegenden Programmlogikproblemen führen.
Erweiterte Beschreibung
Data-Structure Sentinels werden häufig verwendet, um die Struktur von Daten zu kennzeichnen. Ein gängiges Beispiel hierfür ist das Nullzeichen am Ende von Strings oder ein spezieller Sentinel zur Markierung des Endes einer Linked List. Es ist gefährlich, diese Art von Kontrolldaten leicht zugänglich zu machen. Daher ist es wichtig, sich vor der Addition oder Modifikation von Sentinels zu schützen.
Risikominderungsmaßnahmen
Maßnahme (Implementation)
Effektivität: Unknown
Beschreibung: Die Interaktion des Benutzers mit Data Sentinels sollte gekapselt werden. Benutzer-Input sollte validiert werden, um sicherzustellen, dass keine Sentinels enthalten sind.
Maßnahme (Implementation)
Effektivität: Unknown
Beschreibung: Eine korrekte Fehlerprüfung kann das Risiko der unbeabsichtigten Einführung von Sentinel-Werten in Daten reduzieren. Beispielsweise könnte eine Parsing-Funktion, die fehlschlägt oder einen Fehler erfährt, einen Wert zurückgeben, der mit dem Sentinel identisch ist.
Maßnahme (Architecture and Design)
Effektivität: Unknown
Beschreibung: Nutzen Sie eine Abstraction Library, um risikobehaftete APIs zu abstrahieren. Dies ist keine vollständige Lösung.
Maßnahme (Operation)
Effektivität: Unknown
Beschreibung: Nutzen Sie präventive Funktionalitäten auf Betriebssystemebene. Dies ist keine vollständige Lösung.
Verwandte Schwachstellen
Ist Ihre IT-Infrastruktur betroffen?
Schwachstellen wie CWE-464: Addition of Data Structure Sentinel werden von Angreifern gezielt gesucht — meist automatisiert und ohne Rücksicht darauf, wie groß das betroffene Unternehmen ist. Ob eine solche Lücke bei Ihnen tatsächlich offen steht, lässt sich nur durch Prüfung feststellen:
- Schwachstellen-Scan — wiederkehrende Prüfung Ihrer Infrastruktur auf bekannte Lücken wie diese
- Penetrationstest — manuelle Prüfung eigener Software auf Schwachstellen, die kein Werkzeug findet
- Threat Modeling — Schwachstellenklassen im Entwurf vermeiden, statt sie später zu suchen