Suchen Sie die Quelle einer wiederkehrenden Massen-SQL-Bearbeitung auf einem Server


7

Ich werde versuchen, mein Problem so klar wie möglich zu erklären.

Auf dem Server eines von mir unterstützten Unternehmens werden viele Websites ausgeführt. Auf diesem Server wird Windows Server 2012 mit Microsoft SQL Server 2014 ausgeführt.

Auf fast allen Websites wird eine proprietäre Webanwendung ausgeführt, die von derselben Firma erstellt wurde.

Nur einige der Websites sind von einer regelmäßigen Massenbearbeitung (fast) aller TEXT-, NTEXT- und NVARCHAR-Felder (MAX) in ihren jeweiligen Datenbanken betroffen.

HTML mit schädlichen oder Spam-Links wird jedem Datensatz der Tabelle nur in dem Feld mit dem oben angegebenen Typ hinzugefügt.

Der Server wurde bereits mit mehreren Tools gescannt und das Hauptkennwort (Administrator, sa von SQL Server) wurde geändert. Ich habe auch versucht, den SQL Profiler auszuführen, um die Massenaktualisierungsabfrage zu identifizieren, aber ohne Erfolg.

Wie ich mir vorerst vorstellen kann, handelt es sich möglicherweise um einen SQL Injection-Angriff, bei dem eine Sicherheitsanfälligkeit in der Software verwendet wird, mit der diese Websites ausgeführt werden. Warum jedoch nur einige davon? Andere Websites mit derselben Version haben dieses Problem nie bekommen.

Wie Sie wissen, kann ich noch etwas ausprobieren oder ich vermisse es? Antworten Sie ohne Probleme, wenn Sie andere Daten benötigen.


3
Um zu antworten: "Warum nur einige von ihnen [Websites]?" Es könnte einfach sein, dass der Angreifer nicht alle Websites kannte, nur einige.
TTT

Antworten:


6

SQL Injection ist von SQL Server-Seite schwer zu verfolgen . Anstatt sich den SQL Server anzusehen, sollten Sie sich die IIS-Protokolle Ihres Webservers ansehen.

Verwenden Sie den Protokollparser , um Ihre IIS-Protokolle zu analysieren und die Quelle der SQL-Injektion zu ermitteln . z.B

logparser.exe -i: iisw3c -o: Datagrid -rtp: 100 “Datum, Uhrzeit, c-ip, cs-uri-Stamm, cs-uri-Abfrage, Zeitaufwand, sc-Status aus C: \ wwwlogs \ auswählen W3SVCXXX \ u_ex1207 * .log wobei cs-uri-Abfrage wie '% deklariert%' ”

Lesen Sie weiter


1
Vielen Dank für Ihre Antwort. Log Parser hat mich möglicherweise in die richtige Richtung gelenkt. Es gibt eine wiederkehrende URL, die die Ursache des Problems sein könnte. Ich habe es gemeldet und sobald ich ein Feedback habe, werde ich hier berichten.
RandomITGuy

Schön, dass Sie nützlich fanden.
Kin Shah

IIS-Protokolle können nur hilfreich sein, wenn es sich bei der Anforderung um ein GET handelt, bei dem die Nutzdaten in der cs-uri-Abfrage angezeigt werden.
Ross Presser

Am Ende befand sich das Problem in einer schlechten schriftlichen Abfrage der gehosteten Site, und dank dieses Ratschlags konnte ich die Ursache des Problems finden. Die Entwickler des Unternehmens haben den Fehler behoben. Nochmals vielen Dank, dass Sie mich in die richtige Richtung weisen!
RandomITGuy

3

Der Server wurde bereits mit mehreren Tools gescannt und das Hauptkennwort (Administrator, sa von SQL Server) wurde geändert.

Wenn der Benutzer des SQL Server-Dienstkontos ein Administrator auf dem lokalen Computer ist, müssen Sie einen neuen Computer von Grund auf erstellen, um ihn durch lange (mehr als 14 Zeichen) kryptografisch zufällige Kennwörter zu ersetzen, und dann die Festplatten von den alten entfernen Maschine; Es ist nicht abzusehen, welche Malware darauf installiert wurde.

Wenn der Benutzer des SQL Server-Dienstkontos ein Domänenadministrator ist, wenden Sie sich an einen professionellen Sicherheitsspezialisten.

Wenn beides nicht zutrifft und Sie es nicht von Grund auf neu erstellen möchten (Sie sollten es von Grund auf neu erstellen), schalten Sie den SQL Server offline, löschen Sie jeden Benutzer, löschen Sie jedes Login, ändern Sie das SA-Kennwort und erstellen Sie dann jedes sorgfältig neu Login und Benutzer mit langen (mehr als 14 Zeichen) kryptografisch zufälligen Passwörtern.

Löschen Sie dann jeden Agentenjob und erstellen Sie sie von Grund auf neu. Erstellen Sie dabei (vorzugsweise) jedes Wort neu, das jeder Agent-Job aufruft, neu oder gehen Sie jedes Wort durch ... und jedes Datenelement, wenn Sie über dynamisches oder verkettetes SQL verfügen und Probleme mit SQL zweiter Ordnung haben Injektion .


0

Wie aus der Antwort von Anti-Schwachkennwörtern hervorgeht , kann es vorkommen , dass Ihr Computer in einem Agentenjob oder einer von Windows geplanten Aufgabe ausgeführt wird, wenn Ihr Computer wirklich pwned wurde und der Austausch wiederholt erfolgt!

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.