SQL Server im Internet

SQL Server im Internet

Ich habe eine Desktop-Anwendung, die direkt mit SQL Server verbunden ist. Ich sehe viele Beiträge, in denen steht, dass man SQL Server nicht direkt dem Internet aussetzen sollte, aber keiner sagt, warum. Einige Hintergrundinformationen:

  • Skalierbarkeit, Lastausgleich und andere Leistungskriterien sind für mein Szenario kein Problem
  • Meine App muss lokal (mit lokalem SQL Server) oder mit einem Remote-Repository funktionieren, damit mehrere Benutzer Daten gemeinsam nutzen können (gehosteter SQL Server, das ist meine Frage).

Mir ist aufgefallen, dass die Verbindung zu SQL Azure einem Standard-Remote-SQL-Server sehr ähnlich ist (http://www.windowsazure.com/en-us/develop/net/how-to-guides/sql-database/#using-sql-server)

Ich verstehe, dass das Öffnen beliebiger Ports eine inhärente Schwachstelle darstellt, aber das kann nicht der einzige Grund sein. Ich muss etwas übersehen haben, bin mir aber nicht sicher, was?

Was ist eine echte Alternative, außer die untere Hälfte meiner Anwendung als Webdienst bereitzustellen?

Antwort1

Hierfür gibt es mehrere Gründe. Der wichtigste ist jedoch, dass jemand, der weder mit SQL Server noch mit Netzwerksicherheit vertraut ist, wahrscheinlich einen oder mehrere häufige Fehler macht.

Sie könnten beispielsweise für die Verbindung den SQL-Login „sa“ verwenden. Dabei handelt es sich um das standardmäßige Sysadmin-Konto, mit dem Sie die vollständige Kontrolle über den SQL-Server haben.

Oder Sie verwenden einen anderen SQL Server-Anmeldenamen mit einem schwachen Kennwort, sodass ein Angreifer mit einem Brute-Force-Angriff seine Berechtigungen erhöhen könnte.

Oder Sie haben ein standardmäßiges schreibgeschütztes Benutzerkonto aktiviert gelassen (für diese oder eine andere Anwendung), das von Angreifern aktiv gesucht wird und Skripte ausnutzt, damit sie Daten aus Ihrer Datenbank abrufen können.

Einige gute Maßnahmen zum Schutz vor den grundlegendsten Remote-Angriffen:

  • Beschränken Sie die Konnektivität auf die IPs und Clients, denen Sie vertrauen
  • Verwenden Sie nach Möglichkeit die integrierte Windows-Authentifizierung und deaktivieren Sie Anmeldungen mit schwachen Passwörtern.
  • Wenn Sie die SQL Server-Authentifizierung verwenden müssen, benennen/deaktivieren Sie die SA-Anmeldung und legen Sie sichere Passwörter (>10 Zeichen) für alle Anmeldungen fest.

verwandte Informationen