Löschen eingefügter Inhalte in mehreren Dateien auf einem Linux-Server

Löschen eingefügter Inhalte in mehreren Dateien auf einem Linux-Server

Ich habe oft Probleme mit Websites, die gehackt werden. Normalerweise enden sie mit eingefügten Skripten in verschiedenen Dateien. Gibt es unter Linux eine Möglichkeit, nach diesem Inhalt zu suchen und ihn automatisch zu löschen? Normalerweise beginnt und endet dieser Inhalt mit etwas wie diesem.

<!--2d3965--><script type="text/javascript" language="javascript">
</script><!--/2d3965-->

Wäre es möglich, eine Art Kombination aus grep zu verwenden, um nach Dateien mit diesem Inhalt zu suchen und diese dann an sed weiterzuleiten, um alles von zu löschen

?

Antwort1

Ich habe ein solches Skript geschrieben, es könnte nützlich sein.

#!/usr/bin/env python
import os
import sys


for infile in sys.argv[1:]:
    print infile
    filetmp=infile+'.tmp'
    BEGIN='<!--2d3965-->'
    END='<!--/2d3965-->'
    f = open(infile, 'r')
    ftmp = open(filetmp, 'w')
    skip=False


    for line in f:
        if BEGIN in line:
            #print line.partition(BEGIN)[0]
            ftmp.write(line.partition(BEGIN)[0])
            skip=True
        if END in line:
           #print line.partition(END)[2]
            ftmp.write(line.partition(END)[2])
            skip=False
        else:
            if not skip:
                ftmp.write(line)
    #you can add save restrictions here
    os.rename(filetmp, infile)

Sie sollten angeben:

  1. Dateiname mit Virus
  2. Zeichenfolge, die markiertViren beginnenSchnur
  3. Zeichenfolge, die markiertVirusende

    Vergessen Sie nicht, die Berechtigungen wieder zu ändern, wenn die Datei dies erfordert. Übrigens, ich glaube, dies gilt nur für Textdateien.

Bitte testen Sie es und erstellen Sie vor der Verwendung eine Sicherungskopie.

Verwenden Sie es folgendermaßen:

python cleaner.py index.html js/jquery.js

Antwort2

Ich würde diese Dateien in Subversion oder Git einfügen und die offizielle Version dieser Dateien regelmäßig automatisch mit den Dateien auf den Websites vergleichen. Wenn Sie einen Unterschied sehen, wissen Sie, dass Sie gehackt wurden und können nach dem Leck suchen. In der Zwischenzeit können Sie die Originaldatei aus dem Versionierungstool wiederherstellen.

verwandte Informationen