Grundlagen der SQL Server-Sicherheit
Der SQL-Datenbankserver ist wie andere Datenbankserver in den meisten Organisationen ein wichtiger Vermögenswert. Viele Datenverstöße, die heutzutage auftreten, sind auf schlecht gesicherte Datenbankserver zurückzuführen
Ohne die richtigen Sicherheitsmaßnahmen kann eine Datenbank leicht als Einfallstor für Cyberangriffe dienen. Eine einzige Fahrlässigkeit kann die Sicherheit der SQL-Datenbank Ihres Unternehmens gefährden. Angreifer können Schadcodes einschleusen und gefährden die Integrität, Vertraulichkeit und Verfügbarkeit der Datenbank.
Die Implementierung der richtigen Sicherheitsmaßnahmen trägt wesentlich dazu bei, Ihre Datenbankserver zu schützen und Ihre Gefährdung durch Geschäfts- und Sicherheitsrisiken zu minimieren. In diesem Artikel werden einige wesentliche Sicherheitsgrundlagen und Best Practices für SQL Server beschrieben, darunter einige der wichtigsten Tools zur Verwaltung der Sicherheit und Leistung von SQL Server.
Physische Sicherheit
Informationssicherheit kann ohne angemessene physische Sicherheit nicht vollständig erreicht werden. Physische Sicherheit sollte die erste Verteidigungslinie sein und die Verhinderung unbefugten Zugriffs auf die Einrichtung umfassen, in der der SQL Server gehostet wird. Die physische Sicherheit befasst sich mit Zugangskontrollen zu Einrichtungen und Personal, Mechanismen zum Schutz externer Grenzen, Einbrucherkennung und Korrekturmaßnahmen. Es schützt Ihr Vermögen unter anderem vor Eindringlingen, Diebstahl, Umweltbedrohungen und Sachschäden.
Physische Sicherheit sollte durch einen mehrschichtigen Verteidigungsansatz implementiert werden. Die Idee dahinter ist, dass, wenn ein Angreifer eine Kontrollschicht durchbricht, ihm viele andere im Weg stehen, bevor er vollen Zugriff erhält. Jede Verletzung der physischen Sicherheit Ihres Datenbankservers könnte zu einem Verlust der Produktivität, des Rufs und des Kundenvertrauens führen.
Um die physische Sicherheit des SQL Servers zu verbessern, empfiehlt Microsoft Folgendes:
- Stellen Sie den Server in einem Raum auf, der nur autorisierten Personen zugänglich ist.
- Platzieren Sie Computer, die eine Datenbank hosten, an einem physisch geschützten Ort, idealerweise in einem verschlossenen Computerraum mit überwachten Überschwemmungserkennungs- und Feuererkennungs- oder -unterdrückungssystemen.
- Installieren Sie Datenbanken in der sicheren Zone des Unternehmensintranets und verbinden Sie Ihre SQL Server nicht direkt mit dem Internet.
- Sichern Sie alle Daten regelmäßig und sichern Sie die Backups an einem externen Ort.
Netzwerksicherheit
Bei der Netzwerksicherheit geht es um den Schutz der zugrunde liegenden Netzwerkinfrastruktur Ihres Datenbankservers vor unbefugtem Zugriff. Es kombiniert mehrere Verteidigungsebenen, die Richtlinien und Kontrollen am Rande und im Netzwerk implementieren. Autorisierte Benutzer erhalten über das Netzwerk Zugriff auf die Datenbank, während unberechtigten Benutzern der Zugriff verwehrt bleibt. Eine auf Sicherheit ausgelegte Netzwerkinfrastruktur rund um Ihren Datenbankserver schützt die Datenbank vor Verlusten, die durch Netzwerksicherheitsvorfälle entstehen.
Die Implementierung der Netzwerksicherheit beginnt damit, unbefugte Benutzer vom Netzwerk fernzuhalten. Hier kommen Netzwerk-Firewalls ins Spiel. Firewalls spielen eine wichtige Rolle bei der Sicherung der SQL Server-Anwendung. Indem Sie Ihre Datenbank hinter eine Firewall stellen, schaffen Sie eine weitere Sicherheitsebene, die verhindert, dass bösartiger Datenverkehr Ihren Server erreicht. Firewalls können auch dazu beitragen, schädlichen ausgehenden Datenverkehr wie Datenexfiltration zu verhindern.
Firewalls sind am effektivsten, wenn Sie die folgenden empfohlenen Richtlinien von Microsoft befolgen:
- Setzen Sie eine Firewall zwischen dem Server und dem Internet. Aktivieren Sie Ihre Firewall. Wenn Ihre Firewall ausgeschaltet ist, schalten Sie sie ein. Wenn Ihre Firewall aktiviert ist, schalten Sie sie nicht aus.
- Teilen Sie das Netzwerk in durch Firewalls getrennte Sicherheitszonen auf. Blockieren Sie den gesamten Datenverkehr und lassen Sie dann selektiv nur das zu, was erforderlich ist.
- Verwenden Sie in einer Umgebung mit mehreren Ebenen mehrere Firewalls, um überwachte Subnetze zu erstellen.
- Wenn Sie den Server innerhalb einer Windows-Domäne installieren, konfigurieren Sie interne Firewalls, um die Windows-Authentifizierung zu ermöglichen.
- Wenn Ihre Anwendung verteilte Transaktionen verwendet, müssen Sie möglicherweise die Firewall so konfigurieren, dass der Datenverkehr des Microsoft Distributed Transaction Coordinator (MS DTC) zwischen separaten MS DTC-Instanzen fließen kann. Sie müssen außerdem die Firewall so konfigurieren, dass der Datenverkehr zwischen dem MS DTC und Ressourcenmanagern wie SQL Server fließen kann.
- Deaktivieren Sie alle unnötigen Ports und Protokolle, einschließlich NetBIOS und Server Message Block, auf Ihrem SQL Server, Ihren Webservern und dem Domain Name System (DNS), um die Angriffsfläche zu verringern. Lassen Sie nur Protokolle und Ports zu, die für die Funktion des SQL Servers unbedingt erforderlich sind, z. B. TCP 1433 (Datenbank-Engine), 2383 (Analysedienste), 4022 (Service Broker) und UDP 1343 (Browserzugriff).
Anwendungs- und Datensicherheit
Microsoft SQL Server bietet mehrere integrierte Funktionen, die die Sicherheit der Anwendung und der darin enthaltenen Daten gewährleisten. Der Datenbankadministrator kann diese Funktionen nutzen oder bei Bedarf zusätzliche Sicherheitsmaßnahmen nutzen, um den Sicherheitsanforderungen der SQL-Anwendung und -Daten gerecht zu werden.
Zu den zusätzlichen Sicherheitsmaßnahmen können unter anderem gehören:
- Schutz vor SQL- und anderen Injektionsangriffen Wie der Name schon sagt, handelt es sich bei der SQL-Injection um einen Angriff, bei dem schädlicher Code oder Befehle in Abfragezeichenfolgen eingeschleust werden. Diese Befehle können die Datenbank beschädigen oder zum Herausfiltern vertraulicher Daten verwendet werden. Sie können SQL-Injection-Angriffe verhindern, indem Sie alle Datenbankeingaben bereinigen, um sicherzustellen, dass sie keine Zeichen enthalten, die zum Ausführen von Code verwendet werden können. Es empfiehlt sich, gespeicherte Prozeduren und parametrisierte Befehle zu verwenden, dynamisches SQL zu vermeiden und die Berechtigungen aller Benutzer einzuschränken. Sie müssen sich auch vor Verbindungszeichenfolgeinjektionsangriffen schützen, die während der SQL Server-Anmeldung auftreten. Wenn eine SQL Server-Anmeldezeichenfolge nicht auf gültige Schlüsselwortpaare überprüft wird, kann ein Angreifer zusätzliche Zeichen hinzufügen, die nicht autorisierte Aktionen auf dem Server ausführen können. Sie können dieses Risiko mindern, indem Sie den SqlConnectionStringBuilder verwenden, um Verbindungszeichenfolgen zur Laufzeit zu erstellen und zu validieren, oder wenn möglich die sicherere Windows-Authentifizierung verwenden.
- Ausnutzung ausführlicher Fehler SQL Server generiert alle Arten von Protokollen, wie z. B. Fehlerprotokolle, Systemereignisprotokolle, Leistungsindikatordaten und andere. Sie müssen einen Weg finden, um sicherzustellen, dass diese Fehler nicht in die falschen Hände geraten. Andernfalls könnten Angreifer damit inhärente Schwachstellen identifizieren, die sie möglicherweise ausnutzen möchten. Stellen Sie sicher, dass der gesamte prozedurale Code eine Fehlerbehandlung verwendet, um zu verhindern, dass diese Standardfehlermeldungen von SQL Server den Benutzer erreichen.
- Angriffe zur Rechteausweitung Diese Angriffe treten auf, wenn Benutzer auf irgendeine Weise die Berechtigungen eines vertrauenswürdigen Kontos übernehmen, beispielsweise eines Kontoinhabers oder eines Administrators. Dies ermöglicht ihnen den unbefugten Zugriff auf Daten und Datenbankfunktionen. Um dieses Risiko zu mindern, führen Sie Benutzer immer als Konten mit den geringsten Privilegien aus, weisen Sie nur die erforderlichen Berechtigungen zu und blockieren Sie die Möglichkeit, Code über Administrator- oder Eigentümerkonten auszuführen. Dies begrenzt die Schadenshöhe, die bei einem erfolgreichen Angriff entstehen kann. Wenn ein Benutzer zum Ausführen einer Aufgabe zusätzliche Berechtigungen benötigt, verwenden Sie Zertifikate zum Signieren gespeicherter Prozeduren oder zum Identitätswechsel nur für die Dauer der Aufgabe.
- Distributed Denial of Service (DDoS)-Angriffe SQL Server-Produktionsdatenbanken können DDoS-Angriffen ausgesetzt sein, bei denen Angreifer die Datenbank mit gefälschten Abfragen überfluten, was die Leistung für legitime Benutzer verringert und schließlich zu Ausfallzeiten führt. Wenn Sie SQL Server in der Cloud ausführen, können Sie DDoS-Schutzdienste nutzen, die schädlichen Datenverkehr erfassen und von Ihrer Datenbank ableiten können.
Best Practices für die SQL Server-Sicherheit
Im Folgenden sind einige wichtige Best Practices für die SQL Server-Sicherheit aufgeführt, die die Sicherheit Ihrer SQL-Datenbank verbessern können:
- Sichern Sie regelmäßig Die Notwendigkeit einer regelmäßigen Sicherung Ihrer Datenbank kann nicht genug betont werden. Backups schützen die Verfügbarkeit von Daten und stellen sicher, dass Ihre Datenbank auch bei Datenschutzverletzungen, Ransomware oder Denial-of-Service-Angriffen widerstandsfähig bleibt. Erwägen Sie die Investition in eine gute SQL Server-Sicherungslösung als Teil Ihrer Sicherheitsstrategie. Dies bietet Ihnen eine Rettungsleine, um im Falle eines Angriffs geschäftskritische Daten wiederherzustellen.
- Regelmäßige Sicherheitsaudits Sicherheitsaudits sind für die meisten Branchen eine regulatorische Anforderung. Aber darüber hinaus tragen SQL Server-Sicherheitsüberprüfungen dazu bei, potenzielle Angriffe zu verhindern und eine fehlerfreie SQL-Datenbank aufrechtzuerhalten. Die Bemühungen sollten darauf ausgerichtet sein, fehlende Datenbankobjekte, wiederholte Fehler bei der Serveranmeldung sowie Berechtigungen oder Konfigurationsänderungen zu identifizieren. Microsoft stellt ein integriertes Tool namens SQL Server Audit zur Verfügung, mit dem Audits auf Server- und Datenbankebene erstellt werden können.
- Befolgen Sie das Prinzip der geringsten Privilegien Dies ist ein bewährtes Prinzip, das dazu beiträgt, das Risiko Ihres Vermögens zu verringern. Der Plan besteht darin, SQL Server-Diensten und -Benutzern nur die entsprechenden Rechte zu gewähren, die zum Ausführen einer Aufgabe erforderlich sind, und nicht mehr. Führen Sie für Dienstkonten SQL Server-Dienste aus und verknüpfen Sie sie mit den geringstmöglichen Berechtigungen und Privilegien.
- Haben Sie eine Richtlinie für sichere Passwörter Für die Sicherheit Ihrer Datenbank ist das Festlegen eines starken Passworts oder vorzugsweise einer schwer zu erratenden Passphrase von entscheidender Bedeutung. Erwägen Sie die Verwendung der Kerberos-Authentifizierung, der Windows-Authentifizierung für Verbindungen mit SQL Server und eines Passwort-Managers für eine bessere Passwortverwaltung.
- Wenden Sie regelmäßig Updates an Die Bedeutung regelmäßiger Updates kann nicht genug betont werden. Die Betriebssystem- und SQL Server-Updates enthalten wichtige Sicherheitsverbesserungen, die den Zustand und die Sicherheit Ihrer Datenbank gewährleisten. Testen Sie diese Updates und wenden Sie sie so schnell wie möglich auf Ihren Produktionsserver an.
- Verwenden Sie Verschlüsselung Das integrierte Verschlüsselungsprotokoll SSL/TLS und Windows Data Protection API (DPAPI) ermöglicht die Verschlüsselung von Daten während der Übertragung bzw. von Daten im Ruhezustand. Dies schützt die Vertraulichkeit Ihrer Datenbank.
- Verwenden Sie SQL-Überwachungstools SQL-Überwachungstools bieten eine automatisierte Möglichkeit zur Verwaltung der Sicherheit und Leistung Ihres Datenbankservers. Das Tool sollte in der Lage sein, Änderungen an Servereinstellungen zu scannen und zu erkennen.
Die Top-Tools für SQL Server-Sicherheit
Mehrere Tools auf dem Markt können die Verwaltung der Sicherheit und Leistung Ihres SQL Servers automatisieren. Nachfolgend finden Sie einen Überblick über einige der wichtigsten Tools zur Verwaltung der Sicherheit und Leistung von SQL Server. Wir hoffen, dass Ihnen dies dabei hilft, die richtige Lösung für Ihr Unternehmen auszuwählen.
1. SolarWinds Security Event Manager (KOSTENLOSE TESTVERSION)

SolarWinds Security Event Manager (SEM)ermöglicht Datenbankadministratoren die Überwachung von Serverprotokollen, die Verfolgung von Datenbankfehlerraten, die Prüfung von SQL-Benutzeranmeldungen, die Aufrechterhaltung der SQL Server-Sicherheit und die Erkennung von Cyberangriffen. Mit SEM können Sie bestimmte Ereignisse in einer SQL-Datenbank, die auf potenzielle Bedrohungen hinweisen können, verfolgen, Berichte erstellen und entsprechende Warnmeldungen senden und zu Compliance-Zwecken SQL Server-Überwachungsprotokollberichte erstellen. SEM bietet vorkonfigurierte Ereigniskorrelationsregeln, die Datenbanktransaktionen untersuchen, bekannte Bedrohungen erkennen und böswillige und nicht vertrauenswürdige Aktivitäten verfolgen.
SEM unterstützt verschiedene Sicherheitsbewertungsprotokolle und -anwendungen, um Sie bei der Abwehr von SQL-Injection-Angriffen und der Aufrechterhaltung einer sicheren Datenbank zu unterstützen. SEM nutzt seine vorgefertigten SQL-Injection-Regeln und Warnungen, um Sie auf dem Laufenden zu halten. Es kann böswillige Benutzer und Prozesse erkennen und deaktivieren sowie andere automatisierte Bedrohungsreaktionen durchführen, um Ihre Datenbank zu schützen, wenn SQL-Injection-Indikatoren erkannt werden. Eine kostenlose Testversion steht zum Download zur Verfügung, damit Sie feststellen können, ob sie für Ihr Unternehmen geeignet ist.
VersuchenSolarWinds Security Event Manager (SEM)mit einer voll funktionsfähigen 30-tägigen kostenlosen Testversion.
SolarWinds Security Event Manager (SEM) Laden Sie die 30-tägige KOSTENLOSE Testversion herunter
2. Paessler PRTG Network Monitor (KOSTENLOSE TESTVERSION)

Paessler PRTGist ein agentenloses Netzwerküberwachungstool, mit dem Sie Ihr Netzwerk, Ihre Router, Switches und Server überwachen können. Mit PRTG können Sie die Zeit, die eine SQL-Abfrage für ihre gesamte Anfrage benötigt, inklusive Verbindungsaufbau, Ausführung der Abfrage, Abwicklung der Transaktion und Beendigung der Verbindung, messen und visualisieren das PRTG-Dashboard. Das PRTG-Lizenzmodell basiert auf Sensoren (Parameter, die auf einem Gerät überwacht werden können, wie z. B. CPU-Auslastung, Portstatus oder Netzwerkverkehr); und verfügt über vorkonfigurierte Sensoren für alle wichtigen Datenbanken. Für Microsoft SQL bietet PRTG den Microsoft SQL v2 Sensor an, der sowohl die Antwortzeit einer gesamten Anfrage als auch die Antwortzeit einer individuell definierten Anfrage überwacht.
PRTG gibt es in verschiedenen Editionen und Varianten wie zum Beispiel:
- PRTG Enterprise Monitor – für große Netzwerke mit Tausenden von Geräten und Systemen an mehreren Standorten.
- Von PRTG gehosteter Monitor – acloudbasierte OptionSo können Sie aus der Cloud überwachen
- PRTG Desktop – ermöglicht Ihnen die Verwaltung mehrerer PRTG-Server.
- PRTG Mobile App – ermöglicht Ihnen die Überprüfung Ihres Netzwerks, Ihrer Geräte und Sensoren von unterwegs.
Akostenlose 30-Tage-Testversionmit vollem Zugriff auf alle Funktionen steht zum Download bereit.
Paessler PRTG starten Sie die 30-tägige KOSTENLOSE Testversion
3. Microsoft Defender für SQL

Microsoft Defender für SQList ein SQL Server-Sicherheitstool, das dabei hilft, potenzielle Schwachstellen in der SQL-Datenbank und anomale Aktivitäten, die eine Bedrohung für Ihre Datenbank darstellen, zu erkennen und zu mindern.
Microsoft Defender für SQL umfasst zwei separate Microsoft Defender-Pläne:
- Microsoft Defender für Azure SQL-Datenbankserver: Dieser Plan dient dem Schutz der Azure SQL-Datenbank, der verwalteten Azure SQL-Instanz und des dedizierten SQL-Pools in Azure Synapse.
- Microsoft Defender für SQL Server auf Maschinen: Dieser Plan erweitert den Schutz für Ihre Azure-nativen SQL Server, um Hybridumgebungen vollständig zu unterstützen und in Azure und anderen Cloud-Umgebungen gehostete SQL Server und sogar lokale Maschinen zu schützen: einschließlich SQL Server auf virtuellen Maschinen und lokale SQL Server:
Sie können diese Pläne auf Abonnementebene aktivieren (ab Microsoft Defender für Cloud oder über die REST-API, Azure CLI, PowerShell oder Azure Policy), oder Sie können es auf Ressourcenebene aktivieren. Wenn Sie einen dieser Pläne aktivieren, sind alle unterstützten Ressourcen, die innerhalb des Abonnements vorhanden sind (einschließlich zukünftiger Ressourcen, die im selben Abonnement erstellt werden), geschützt.
4. Datenhund

Datenhund ist ein agentenbasierter On-Premise- und Cloud-Infrastrukturüberwachungsdienst für Cloud-Anwendungen, Server, Datenbanken, Tools und Dienste. Datadog nutzt seinen automatischen Erkennungsdienst, um Anwendungen, Geräte und Server in Ihrem Netzwerk zu erkunden und zu identifizieren. Sobald alle Geräte und Verbindungen identifiziert wurden, können Sie über das Datadog-Dashboard einen Überblick über alle Aktivitäten erhalten und alle Änderungen am Netzwerk können automatisch erkannt werden.
Datadog bietet durchgängige Einblicke in den Zustand und die Leistung Ihrer SQL Server-Instanzen. Es bietet Tools und Schlüsselmetriken für die SQL Server-Überwachung, einschließlich zwei sofort einsatzbereiter Dashboards für SQL Server:
- Ein Screenboard, das Ihnen einen Echtzeitüberblick über Ihre SQL Server-Instanzen gibt.
- Eine Zeittafel, die sich gut für die Korrelation von SQL Server-Metriken mit Systemmetriken und -ereignissen eignet.
A kostenlose 14-Tage-Testversion mit vollem Zugriff auf alle Funktionen steht zum Download bereit. Danach wird die Software im Allgemeinen über monatliche Abonnements verkauft, die auf Hosts, Ereignissen oder Protokollen basieren
5. ManageEngine Applications Manager (APM)

APMist eine agentenlose Lösung zur Überwachung der Anwendungs- und Serverleistung, die Unternehmen dabei hilft, die optimale Leistung ihrer geschäftskritischen Anwendungen wie SQL Server in physischen, virtuellen und Cloud-Umgebungen sicherzustellen. APM bietet sofort einsatzbereite Erkennung, Verfügbarkeit, Zustands- und Leistungsverfolgung sowie Berichterstellung für SQL Server und andere Anwendungen.
Mit APM können Datenbankadministratoren Einblick in SQL-Anwendungen erhalten, die Ressourcennutzung verfolgen, die Leistung von SQL-Servern optimieren, das Auftreten von Fehlern verhindern und den Gesamtzustand der Datenbankanwendung aufrechterhalten.
ManageEngine APM ist in den folgenden Editionen verfügbar:
- Die Free-Edition bietet mit einigen Einschränkungen die meisten Funktionen der Professional-Edition und unterstützt bis zu 5 Monitore.
- Die Professional-Edition: Sie umfasst Überwachungs-, Warn- und Berichtsfunktionen und richtet sich an KMUs, die bis zu 500 Anwendungen je nach Auslastung überwachen möchten.
- Enterprise Edition: Sie umfasst alle verteilten Überwachungs- und Failover-Funktionen der Professional Edition und richtet sich an große Unternehmen, die 500 oder mehr Anwendungen überwachen möchten.
A 30-tägige kostenlose Testversion steht zum Download bereit. Bei der Installation können Sie zwischen der Professional- und der Enterprise-Edition wählen.