• CWE-649: Reliance on Obfuscation or Encryption of Security-Relevant Inputs without Integrity Checking

Das Produkt verwendet Obfuskation oder Verschlüsselung für Eingaben, die von externen Akteuren nicht veränderbar sein sollten. Es werden jedoch keine Integrity Checks implementiert, um festzustellen, ob diese Eingaben manipuliert wurden.

CWE-649: Reliance on Obfuscation or Encryption of Security-Relevant Inputs without Integrity Checking

CWE ID: 649
Name: Reliance on Obfuscation or Encryption of Security-Relevant Inputs without Integrity Checking

Beschreibung

Das Produkt verwendet Obfuskation oder Verschlüsselung für Eingaben, die von externen Akteuren nicht veränderbar sein sollten. Es werden jedoch keine Integrity Checks implementiert, um festzustellen, ob diese Eingaben manipuliert wurden.

Erweiterte Beschreibung

Wenn eine Anwendung sich auf Obfuskation oder fehlerhaft angewendete/schwache Verschlüsselung verlässt, um client-kontrollierbare Tokens oder Parameter zu schützen, die Auswirkungen auf den Benutzerstatus, den Systemstatus oder eine serverseitige Entscheidung haben können, kann dies erhebliche Konsequenzen haben. Ohne Schutz der Tokens/Parameter hinsichtlich ihrer Integrität ist die Anwendung anfällig für einen Angriff, bei dem ein Angreifer den Wertebereich des Tokens/Parameters durchsucht, um einen Vorteil zu erlangen. Das Ziel des Angreifers ist es, einen anderen zulässigen Wert zu finden, der seine Privilegien im System erhöht, Informationen preisgibt oder das Verhalten des Systems in einer dem Angreifer vorteilhaften Weise verändert. Wenn die Anwendung diese kritischen Tokens/Parameter nicht hinsichtlich ihrer Integrität schützt, kann sie nicht feststellen, ob diese Werte manipuliert wurden. Maßnahmen, die zum Schutz von Daten hinsichtlich der Vertraulichkeit eingesetzt werden, sollten nicht als Integritätsdienst betrachtet werden.

Risikominderungsmaßnahmen

Maßnahme (Architecture and Design)

Effektivität: Unknown
Beschreibung: Schützen Sie wichtige, client-kontrollierbare Tokens/Parameter hinsichtlich ihrer Integrität mithilfe von PKI-Methoden (d.h. digitale Signaturen) oder anderen geeigneten Mitteln und führen Sie Integritätsprüfungen serverseitig durch.

Maßnahme (Architecture and Design)

Effektivität: Unknown
Beschreibung: Wiederholte Anfragen von einem bestimmten Benutzer, die ungültige Werte von Tokens/Parametern enthalten (d.h. solche, die nicht manuell von Benutzern verändert werden sollten), sollten zu einer Sperrung des Benutzerkontos führen.

Maßnahme (Architecture and Design)

Effektivität: Unknown
Beschreibung: Tokens/Parameter auf der Client-Seite sollten nicht so gestaltet sein, dass es einfach oder vorhersehbar wäre, einen anderen gültigen State zu erraten.

Maßnahme (Architecture and Design)

Effektivität: Unknown
Beschreibung: Die Verwendung von Obfuscation sollte nicht als alleinige Sicherheitsmaßnahme betrachtet werden. Sollte Verschlüsselung eingesetzt werden, ist diese ordnungsgemäß anzuwenden (d.h. bewiesener Algorithmus und Implementierung, Verwendung von Padding, Verwendung eines zufälligen Initialization Vector, Verwendung eines geeigneten Encryption Mode). Selbst bei korrekter Verschlüsselung, bei der der Ciphertext keine Informationen über den Plaintext preisgibt oder dessen Struktur offenlegt, ist die Kompromittierung der Integrität möglich (wenn auch weniger wahrscheinlich), sofern kein Integritätsservice bereitgestellt wird.