SQL Server-Sicherheit: Verschlüsselung und SQL Injection

SQL Server verfügt über eingebaute Verschlüsselungsmechanismen zum Schutz unterschiedlicher Arten vertraulicher Daten. In einigen Fällen ist die Verschlüsselung für den Anwender vollständig transparent: Daten werden beim Speichern verschlüsselt und beim Zugriff automatisch wieder entschlüsselt. In anderen Fällen kann man selbst entscheiden, ob die Daten verschlüsselt werden sollen oder nicht. SQL Server kann die folgenden Komponenten verschlüsseln:

  • Passwörter
  • Definitionen gespeicherter Prozeduren, Ansichten, Trigger, benutzerdefinierte Funktionen, Defaultwerte und Regeln
  • Daten, die zwischen Server und Client ausgetauscht werden

Passwort-Verschlüsselung

SQL Server verschlüsselt automatisch alle Passwörter, die man für Logins und Anwendungsrollen festlegt. Selbst der direkte Blick in die Systemtabellen der Master-Datenbank enthüllt keine Passwörter. Diese Funktion muss man nicht erst aktivieren – im Gegenteil, man kann sie nicht deaktivieren.

Definitions-Verschlüsselung

In einigen Fällen enthalten die Definitionen von Objekten Informationen, die man nicht unbedingt mit anderen Anwendern teilen möchte. So könnte eine gespeicherte Prozedur z. B. vertrauliche Geschäftslogik enthalten, die nicht für alle Benutzer zugänglich sein sollte, selbst wenn diese die Systemtabellen öffnen und die Objekt-Definitionen anschauen können. Aus diesem Grund ermöglicht SQL Server die Verschlüsselung von Objekt-Definitionen, wenn man ein Objekt erstellt. Zur Verschlüsselung einer gespeicherten Prozedur verwendet man die Anweisung CREATE PROCEDURE wie folgt:

Interessant ist hier nur das optionale WITH-Argument: Man kann entweder RECOMPILE oder ENCRYPTION oder beide gemeinsam verwenden. Das Schlüsselwort ENCRYPTION verhindert, dass SQL Server die Prozedur öffentlich zugänglich macht. Daher wird die gespeicherte Systemprozedur sp_helptext ignoriert, wenn ENCRYPTION aktiviert ist. Diese spezielle gespeicherte Prozedur zeigt den zur Erstellung der Prozedur verwendeten Text an. Falls man die Verschlüsselung einmal deaktivieren will, kann man ALTER PROCEDURE zur Neuerstellung der gespeicherten Prozedur verwenden, wobei man die WITH ENCRYPTION-Klausel weglässt.

Page: 1 2 3 4

ZDNet.de Redaktion

Recent Posts

CopyRhadamantys greift weltweit Unternehmen an

Ausgeklügelte Phishing-Kampagne verwendet eine weiterentwickelte Version der Rhadamanthys-Stealer-Malware.

23 Stunden ago

Facebook Marketplace: EU verhängt Geldbuße von fast 800 Millionen Euro gegen Meta

Die EU-Kommission kritisiert die Verknüpfung von Facebook und dem hauseigenen Online-Kleinanzeigendienst. Sie sieht darin einen…

1 Tag ago

Umfrage: Angestellte in Deutschland unterschätzen NIS-2-Richtlinie

Fast zwei Drittel halten jedoch eine Umsetzung aller Vorgaben von NIS 2 bis Jahresende für…

1 Tag ago

Kostenloser Dekryptor für ShrinkLocker

Mit dem Dekryptor von Bitdefender können Opfer von Attacken mit der Shrinklocker-Ransomware Dateien wiederherstellen.

2 Tagen ago

Malwarebytes warnt vor Betrugsmaschen beim Weihnachtseinkauf

In der Vorweihnachtszeit ist vor allem Malvertising auf dem Vormarsch. Cyberkriminelle locken Nutzer über schädliche…

2 Tagen ago

Bedrohungsindex: Deutliche Zunahme von Infostealern im Oktober

Dazu trägt unter der Infostealer Lumma-Stealer bei. Hierzulande dominiert der Infostealer Formbook die Malware-Landschaft.

3 Tagen ago