• Home
  • Help
  • Register
  • Login
  • Home
  • Help

 
  • 0 Bewertung(en) - 0 im Durchschnitt

Wie konfigurierst du das Modul zur Anforderungsfilterung, um SQL-Injection-Angriffe in IIS zu blockieren?

#1
08-02-2024, 15:01
Wenn es darum geht, unsere Webanwendungen zu schützen, ist einer der Hauptaspekte, über den wir nachdenken müssen, SQL-Injection-Angriffe. Nachdem ich an verschiedenen Projekten gearbeitet habe und mit diesen Arten von Bedrohungen konfrontiert wurde, kann ich nicht genug betonen, wie wichtig es ist, sicherzustellen, dass unsere Webserver, insbesondere beim Einsatz von IIS, sicher sind. Eines der wichtigsten Werkzeuge, das wir zur Verfügung haben, ist das Modul für die Anforderungsfilterung. Es ist extrem effektiv, um unerwünschte Anfragen zu blockieren, und ich möchte dir zeigen, wie du es konfigurieren kannst, um gegen SQL-Injection-Angriffe zu verteidigen.

Zunächst einmal solltest du sicherstellen, dass du Zugriff auf deinen IIS-Manager hast. Sobald du ihn öffnest, siehst du deinen Server und alle Sites, die du verwaltest. Wähle die Site aus, für die du die Anforderungsfilterung konfigurieren möchtest. Nachdem du auf deine Site geklickt hast, suche im mittleren Panel nach der Ansicht "Features". Dort solltest du das Symbol für die Anforderungsfilterung finden. Wenn du darauf klickst, gelangst du in einen Abschnitt, in dem du deine Filter einrichten kannst.

Kommen wir nun zum Wesentlichen. Um SQL-Injektionen zu blockieren, musst du dich darauf konzentrieren, welche Arten von Anfragen dein Server akzeptiert. SQL-Injektion beinhaltet oft das Senden von manipuliertem Input, der SQL-Befehle oder Zeichen enthält, die nicht typisch für Benutzereingaben sind, wie beispielsweise Semikolons, Anführungszeichen und sogar bestimmte Schlüsselwörter wie "UNION" oder "SELECT". Der erste Schritt, den du hier unternehmen musst, besteht also darin, diese Zeichen und Muster zu identifizieren, die auf einen Angriff hindeuten könnten.

Sobald du in der Anforderungsfilterungsfunktion bist, suche nach den Abschnitten "Anforderungsgrenzen" und "URL". Hier kannst du Regeln hinzufügen. Eine gute Praxis ist es, zu beginnen, indem du spezifische Zeichenfolgen oder Muster blockierst, die häufig in SQL-Injection-Versuchen vorkommen. Du kannst dies tun, indem du einen neuen Filter hinzufügst, um diese spezifischen Sequenzen zu blockieren. Beispielsweise könntest du Anfragen blockieren, die "SELECT", "UNION", "INSERT", "DELETE" und andere SQL-Schlüsselwörter enthalten.

Wenn du diese Zeichenfolgenblockierungen hinzufügst, finde ich es hilfreich, wie ein Hacker zu denken. Überlege dir, was ein böswilliger Akteur deiner Anwendung zumuten könnte. Du musst an alle Variationen denken, die sie verwenden könnten, von Codierungsangriffen bis hin zu Angriffen, die Leerzeichen ausnutzen. Achte also darauf, dass du beim Hinzufügen von Blockierungen auch Variationen einbeziehst, die die grundlegenden Filter umgehen könnten.

In diesem Abschnitt von IIS musst du auf die Registerkarte "URL" klicken. Hier kannst du Regeln erstellen, um bestimmte URL-Muster zu verweigern. Trendige Angriffe basieren oft darauf, wie URLs konstruiert sind. Wenn du weißt, welche Arten von URL-Strukturen deine Anwendung verwendet, kannst du andere Muster blockieren, die davon abweichen. Zum Beispiel, wenn deine URLs niemals ein ";" oder ein "--" enthalten sollten, ist dies der Ort, an dem du diese Muster zur Blockierung hinzufügen möchtest.

Nachdem du diese Filter hinzugefügt hast, musst du angeben, ob diese Regeln auch für Abfragezeichenfolgen gelten. SQL-Injection-Angriffe beinhalten oft das Manipulieren von Abfragezeichenfolgen, daher ist es entscheidend, dort ebenfalls strenge Kontrollen vorzunehmen. Je nach deiner Umgebung kannst du sogar in Betracht ziehen, bestimmte Dateierweiterungen zu blockieren, die für deine Anwendung nicht benötigt werden. Wenn deine Anwendung keine SQL-Dateien oder andere potenziell gefährliche Formate bereitstellt, ziehe auch in Betracht, diese zu blockieren.

Eine Sache, die ich betonen möchte, ist, wie du blockierte Anfragen behandeln und protokollieren solltest. Dieser Teil der Konfiguration kann dir während Audits und Fehlersuche sehr hilfreich sein. Wenn du Anfragen blockierst, musst du darauf achten, was abgefangen wird. Dies ist nicht nur wichtig, um deine Filter zu verbessern, sondern auch um das Verhalten von Benutzern und potenziellen Angreifern zu verstehen. Du kannst das Protokollieren über die Funktion "Protokollierung" in IIS verwalten, die du so konfigurieren kannst, dass Datenbankeinträge erstellt werden, wenn Anfragen durch die Anforderungsfilterung blockiert werden.

Jetzt ist das Testen hier entscheidend. Sobald du das eingerichtet hast, möchtest du selbst einige Penetrationstests durchführen. Wirf einige SQL-Injection-Payloads gegen deine Anwendung und schau, ob sie blockiert werden. Es ist sehr wichtig, sicherzustellen, dass alles wie erwartet funktioniert. Manchmal könntest du unbeabsichtigt legitime Anfragen blockieren, wenn die Regeln zu streng sind oder nicht speziell auf deinen Anwendungsfall zugeschnitten sind. Diese zu justieren kann ein Balanceakt sein, aber dieses Hin und Her kann deine Sicherheitslage erheblich verbessern.

Als Nächstes würde ich empfehlen, die "Benutzerdefinierten Fehlerseiten" zu aktivieren. Obwohl dies nicht direkt mit der Anforderungsfilterung zu tun hat, wenn du Dinge blockierst und jemand eine blockierte URL aufruft, möchtest du, dass sie eine nützliche Nachricht sehen und nicht nur einen Standardfehler. Ich habe es als nützlich empfunden, eine benutzerdefinierte 403-Fehlerseite zu erstellen, die klar angibt, dass die Anfrage nicht den Erwartungen entsprochen hat. Du kannst es einfach, aber informativ halten, sodass die Benutzer nicht raten müssen, was schiefgelaufen ist.

Vergiss nicht, deine Regeln zur Anforderungsfilterung regelmäßig zu überprüfen und zu aktualisieren. Die Sicherheitslandschaft entwickelt sich weiter, und während neue Techniken und Angriffsvektoren auftreten, möchtest du sicherstellen, dass sich deine Filter ebenfalls anpassen. Gewöhne dir an, Protokolle regelmäßig zu überprüfen, nicht nur auf Sicherheitsereignisse, sondern auch auf potenzielle Fehlalarme, die deine legitimen Benutzer behindern könnten.

Manchmal sehe ich, dass Leute hier aufhören, weil sie denken, sie hätten alles perfekt eingerichtet. Aber hier ist ein Tipp: Integriere deine Filterung mit anderen Sicherheitsmaßnahmen. Die Anforderungsfilterung ist nur eine Schicht in deiner Verteidigung. Stelle sicher, dass du auch Praktiken wie parametrische Abfragen anwendest, die eine zusätzliche Verteidigungslinie gegen SQL-Injection bieten. Während die Anforderungsfilterung schädliche Anfragen am Eingang blockieren kann, sollte dein Anwendungscode so verstärkt sein, dass er unerwartete Eingaben ordnungsgemäß behandelt.

Für zusätzlichen Schutz ziehe in Betracht, die AntiXSS-Bibliotheken zu verwenden, die Microsoft anbietet. Diese Bibliotheken konzentrieren sich darauf, Ausgaben richtig zu codieren und von Benutzern generierte Inhalte zu bereinigen, um Skripting-Injektionen zu verhindern. SQL-Injektion kann sich durch von Benutzern generierte Inhalte manifestieren, deshalb ist es sinnvoll, einen robusten Prozess zu haben, der nicht nur eingehende Anfragen filtert, sondern auch sicherstellt, dass alles, was an deine SQL-Anweisungen übergeben wird, sicher ist.

Vergiss auch nicht die Wartung des Servers. Aktualisiere regelmäßig deinen IIS und das zugrunde liegende Betriebssystem. Microsoft veröffentlicht häufig Patches, die Sicherheitsanfälligkeiten adressieren, einschließlich einiger, die sich auf Sicherheitspraktiken im Zusammenhang mit SQL-Injektionen beziehen. Deine Systeme aktuell zu halten, ist entscheidend für die Aufrechterhaltung der Sicherheit.

Am Ende ist die Konfiguration des Moduls zur Anforderungsfilterung in IIS ein unschätzbarer Skill für IT-Profis wie uns. Sie bietet eine erste Verteidigungslinie gegen SQL-Injection-Angriffe, wenn sie korrekt implementiert wird. Denk daran, dass dies Teil einer breiteren Sicherheitsstrategie ist. So sehr ich mich auch für die Anforderungsfilterung engagiere, du solltest sicherstellen, dass deine gesamte Webanwendungsinfrastruktur solide und anpassungsfähig an neue Bedrohungen ist, die auftreten.

Nimm dir also Zeit für diese Konfiguration, teste alles gründlich und halte Ausschau nach neuen Entwicklungen in der Websicherheit. Du und ich wissen beide, dass es dazu gehört, den Angreifern immer einen Schritt voraus zu sein. Viel Erfolg bei der Konfiguration!

Ich hoffe, du fandest meinen Beitrag nützlich. Übrigens, hast du eine gute Backup-Lösung für Windows Server implementiert? In diesem Beitrag erkläre ich, wie man Windows Server richtig sichert.
Markus
Offline
Registriert seit: Jun 2018
« Ein Thema zurück | Ein Thema vor »

Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste



Nachrichten in diesem Thema
Wie konfigurierst du das Modul zur Anforderungsfilterung, um SQL-Injection-Angriffe in IIS zu blockieren? - von Markus - 08-02-2024, 15:01

  • Thema abonnieren
Gehe zu:

Backup Sichern Windows Server IIS v
« Zurück 1 2 3 4 5 6 7 8 9 10 11 Weiter »
Wie konfigurierst du das Modul zur Anforderungsfilterung, um SQL-Injection-Angriffe in IIS zu blockieren?

© by FastNeuron

Linearer Modus
Baumstrukturmodus