93578
16.06.2012, aktualisiert um 19:48:02 Uhr
5991
17
0
MD5 , fciv, Hashliste und andere Probleme...
Kann mir jemand helfen? Das Problem: einer von unseren Büro-PC-Freaks hat mal wieder trotz Verbot ein Spielprogramm auf dem Firmenrechner installiert. Aber nicht nur das - um die Routine-Prüfung umzugehen, hat er auch der Name der Start-Datei (z.B.DukeIII.exe in Taskmanage.exe) geändert und in einem anderem Verzeichnis (als Standard) installiert.
Nun da unser Script regelmäßig nur die standarte Installationsverzeichnisse von "verbotenen" Progs überprüft + nur die originale Dateinamen sucht, kann ich dieses Programm nicht mehr finden. Chef ist sauer...
Da kam mir die Idee mit MD5-Hashes - ich habe mir eine Liste von MD5-Hashes von allen "verbotenenen" Progs erstellt und als eine TXT-UTF8-Datei gespeichert. Die Datei sieht so aus (nur als Beispiel):
md5
rr2rt456j3bj3bj34ghg
tjwjg3ejng5i5i43ufri
rtzetzertrrzutrzuttz
erzruttiizlkfkjmnrtzm
Nun will ich den kompletten Laufwerk nach *.exe und *.dll Dateien untersuchen, diese hashen und den Hashwerte mit meiner Liste vergleichen. Danach sollten 2 Arten von Meldungen kommen:
1) Das Programm ist installiert (und Pfad woe sie sich befindet).
2) Keine Installationsdateien gefunden.
Das ganze sollte per Batch realisierbar sein.
Mit fciv hat es nicht geklappt - das Programm kann die Liste ohne Pfaden nicht überprüfen. Und wenn der Installationspfad vom User geändert wurde findet fciv die vorhandene Dateien auch nicht. Was kann ich da noch tun?
Grüße,
takitano
Nun da unser Script regelmäßig nur die standarte Installationsverzeichnisse von "verbotenen" Progs überprüft + nur die originale Dateinamen sucht, kann ich dieses Programm nicht mehr finden. Chef ist sauer...
Da kam mir die Idee mit MD5-Hashes - ich habe mir eine Liste von MD5-Hashes von allen "verbotenenen" Progs erstellt und als eine TXT-UTF8-Datei gespeichert. Die Datei sieht so aus (nur als Beispiel):
md5
rr2rt456j3bj3bj34ghg
tjwjg3ejng5i5i43ufri
rtzetzertrrzutrzuttz
erzruttiizlkfkjmnrtzm
Nun will ich den kompletten Laufwerk nach *.exe und *.dll Dateien untersuchen, diese hashen und den Hashwerte mit meiner Liste vergleichen. Danach sollten 2 Arten von Meldungen kommen:
1) Das Programm ist installiert (und Pfad woe sie sich befindet).
2) Keine Installationsdateien gefunden.
Das ganze sollte per Batch realisierbar sein.
Mit fciv hat es nicht geklappt - das Programm kann die Liste ohne Pfaden nicht überprüfen. Und wenn der Installationspfad vom User geändert wurde findet fciv die vorhandene Dateien auch nicht. Was kann ich da noch tun?
Grüße,
takitano
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 186581
Url: https://administrator.de/forum/md5-fciv-hashliste-und-andere-probleme-186581.html
Ausgedruckt am: 23.12.2024 um 04:12 Uhr
17 Kommentare
Neuester Kommentar
Moin.
Es gibt verschiedene Lösungsansätze. Ich beschreib mal einige andere als Deinen zuerst.
-nicht-technischer Ansatz: Lass die Kollegen etwas unterschreiben, was beschreibt, welche nicht-arbeitsrelevanten Tätigkeiten (z.B. priv. Mails lesen) erlaubt sind und welche nicht. Wer sich nicht daran hält, wird bestraft bis zur Abmahnung. Wie gut die technischen Überwachungsmöglichkeiten dann noch sein müssen, kann ich nicht beurteilen, ich schätze, eher gering.
-applocker (windows7) oder software restriction policies (vista und xp): definiere eine Liste von startbaren Anwendungen. Alle anderen werden geblockt.
-Dein Ansatz: habe ich auch schon gemacht. Ich benutze dafür ein Programm names jacksum http://www.jonelo.de/java/jacksum/index_de.html
Damit kannst Du das komplette Laufwerk hashen und Unterschiede zum vorigen Scan auflisten. Aber Vorsicht: das artet in Arbeit aus. Windows verändert ja nicht nur bei Windowsupdates ständig Dateien. Es ist aber denkbar, dass Du es auf eine Liste loslässt, die zuvor über ausführen von dir *.exe *.dll /s /b (z.B. unter c: ausführen) gewonnen hast.
Edit: achja... haben Eure Nutzer Adminrechte?
Es gibt verschiedene Lösungsansätze. Ich beschreib mal einige andere als Deinen zuerst.
-nicht-technischer Ansatz: Lass die Kollegen etwas unterschreiben, was beschreibt, welche nicht-arbeitsrelevanten Tätigkeiten (z.B. priv. Mails lesen) erlaubt sind und welche nicht. Wer sich nicht daran hält, wird bestraft bis zur Abmahnung. Wie gut die technischen Überwachungsmöglichkeiten dann noch sein müssen, kann ich nicht beurteilen, ich schätze, eher gering.
-applocker (windows7) oder software restriction policies (vista und xp): definiere eine Liste von startbaren Anwendungen. Alle anderen werden geblockt.
-Dein Ansatz: habe ich auch schon gemacht. Ich benutze dafür ein Programm names jacksum http://www.jonelo.de/java/jacksum/index_de.html
Damit kannst Du das komplette Laufwerk hashen und Unterschiede zum vorigen Scan auflisten. Aber Vorsicht: das artet in Arbeit aus. Windows verändert ja nicht nur bei Windowsupdates ständig Dateien. Es ist aber denkbar, dass Du es auf eine Liste loslässt, die zuvor über ausführen von dir *.exe *.dll /s /b (z.B. unter c: ausführen) gewonnen hast.
Edit: achja... haben Eure Nutzer Adminrechte?
Moin:
mit cygwin/gnu-toolchain köntne das so gehen:
lks
Nachtrag: Abmahnungen/Sanktionen sind ein probates Mittel gegen solche Eigenmächtigkeiten. Vorraussetzung ist allerdigns, daß vorher schrifich geklärt was der Mitarbeiter darf und was nicht.
mit cygwin/gnu-toolchain köntne das so gehen:
#/bin/bash
find /cygwindir/ -type f -exec md5sum {} \; | tee aktuelle-md5liste.txt
grep -f verbotene-md5.txt aktuelle-md5liste.txt | tee verbotene -dateien.txt
lks
Nachtrag: Abmahnungen/Sanktionen sind ein probates Mittel gegen solche Eigenmächtigkeiten. Vorraussetzung ist allerdigns, daß vorher schrifich geklärt was der Mitarbeiter darf und was nicht.
Hallo takitano!
- das wird natürlich etwas dauern ... [Edit] - daher im Zweifelsfall zuerst den Ansatz von weiter unten testen [/Edit]
Grüße
bastla
Mit fciv hat es nicht geklappt - das Programm kann die Liste ohne Pfaden nicht überprüfen
Na dann eben umgekehrt - ungetestet etwa:@echo off & setlocal
set "Liste=C:\Scripts\MD5-Liste.txt"
set "Gefunden=C:\Scripts\Installiert.txt"
del "%Gefunden%" 2>nul
for /f "delims=" %%i in ('dir /s/b/a-d C:\') do
echo Untersuche: %%i
for /f "skip=3" %%a in ('fciv "%%i"') do findstr /i %%a "%Liste%">nul && >>"%Gefunden%" echo %%a;%%i
)
Grüße
bastla
Hallo takitano!
Sollte aber so besser gehen:
- wobei ich allerdings nicht getestet habe, wie "
Die "MD5-Liste.txt" sollte übrigens nur die Hashes enthalten - die erste Zeile mit "md5" vorweg entfernen, da sie ansonsten auch als Suchbegriff verwendet wird.
Grüße
bastla
Sollte aber so besser gehen:
fciv C:\ -r>C:\Scripts\Hashes.txt
findstr /ibg:C:\Scripts\MD5-Liste.txt C:\Scripts\Hashes.txt>C:\Scripts\Installiert.txt
findstr
" mit ein paar Millionen zu durchsuchenden Zeilen zurechtkommt ...Die "MD5-Liste.txt" sollte übrigens nur die Hashes enthalten - die erste Zeile mit "md5" vorweg entfernen, da sie ansonsten auch als Suchbegriff verwendet wird.
Grüße
bastla
Hallo takitano!
Ansonsten noch eine Anmerkung: "Blacklisting" setzt natürlich voraus, dass Du weißt, wonach Du suchen musst - insofern solltest Du die Hinweise von DerWoWusste nochmals überdenken und dabei auch gleich das Thema "Adminrechte" hinterfragen ...
Grüße
bastla
alle *.exe- und *.dll-Dateien ... zu finden
würde mir im Fall des Falles aber nicht genügen (wenn etwa aus der "DukeIII.exe" eine "Bericht_2012-04-04.pdf" geworden ist)Ansonsten noch eine Anmerkung: "Blacklisting" setzt natürlich voraus, dass Du weißt, wonach Du suchen musst - insofern solltest Du die Hinweise von DerWoWusste nochmals überdenken und dabei auch gleich das Thema "Adminrechte" hinterfragen ...
Grüße
bastla
Zitat von @bastla:
Hallo takitano!
Sollte aber so besser gehen:
- wobei ich allerdings nicht getestet habe, wie "
zurechtkommt ...
Die "MD5-Liste.txt" sollte übrigens nur die Hashes enthalten - die erste Zeile mit "md5" vorweg
entfernen, da sie ansonsten auch als Suchbegriff verwendet wird.
Grüße
bastla
Hallo takitano!
Sollte aber so besser gehen:
fciv C:\ -r>C:\Scripts\Hashes.txt
> findstr /ibg:C:\Scripts\MD5-Liste.txt C:\Scripts\Hashes.txt>C:\Scripts\Installiert.txt
>
findstr
" mit ein paar Millionen zu durchsuchenden Zeilenzurechtkommt ...
Die "MD5-Liste.txt" sollte übrigens nur die Hashes enthalten - die erste Zeile mit "md5" vorweg
entfernen, da sie ansonsten auch als Suchbegriff verwendet wird.
Grüße
bastla
Hallo Bastla,
du hast auch mir fast damit geholfen! Aber wie überprüfe ich mehrere Laufwerke von c: bis z:? Eine Art Schleife?
fciv c:\...
fciv d:\...
fciv e:\... - funktioniert nämlich nicht. Es werden nur die Ergebnisse vom Laufwerk C: gespeichert. Unterstützt fciv überhaupt gleichzeitige Suche in mehreren Laufwerken?
Grüße aus Mosklau,
Eduard
Genau dafür gibt es ein kleines praktisches Programm namens MD5 FILE HASHER von Digital-Tronic.
Mit dem Programm können vollautomatische Prüfdurchläufe erstellt werden, um in zeitgesteuerten Abständen beliebige Dateien, Dateitypen und ganze Ordner zu überwachen. Dabei stehen umfangreiche Filterfunktionen und Ausnahmeregeln zur Verfügung, um beispielsweise alle EXE, SYS und DLL Dateien des Windowsordners stündlich auf Manipulationen zu untersuchen. Geänderte, gelöschte und neu erstelle Dateien werden auf Wunsch als PopUp-Meldung mitgeteilt und können zusätzlich als TXT-Datei abgespeichert werden. Das Programm erstellt von jeder Datei einen Hashwert und vergleicht diesen bei spätere Untersuchungen - absolut sichere Sache.
Das Programm gibts auf digital-tronic.de und ist in Deutsch und Englisch verfügbar. Auf YouTube sind auch Videos bzw. Tutorials online.
Mit dem Programm können vollautomatische Prüfdurchläufe erstellt werden, um in zeitgesteuerten Abständen beliebige Dateien, Dateitypen und ganze Ordner zu überwachen. Dabei stehen umfangreiche Filterfunktionen und Ausnahmeregeln zur Verfügung, um beispielsweise alle EXE, SYS und DLL Dateien des Windowsordners stündlich auf Manipulationen zu untersuchen. Geänderte, gelöschte und neu erstelle Dateien werden auf Wunsch als PopUp-Meldung mitgeteilt und können zusätzlich als TXT-Datei abgespeichert werden. Das Programm erstellt von jeder Datei einen Hashwert und vergleicht diesen bei spätere Untersuchungen - absolut sichere Sache.
Das Programm gibts auf digital-tronic.de und ist in Deutsch und Englisch verfügbar. Auf YouTube sind auch Videos bzw. Tutorials online.
Hallo takitano!
Grüße
bastla
Was ist wenn man NUR lokale Laufwerke und USB-Laufwerke, aber keine Netzwerklaufwerke untersuchen will (also man weiß es vorher nicht welches Buchstabe für welchen Laufwerk steht)?
Dann würde ich mir die passenden Laufwerksbuchstaben mit einem VBScript wie zB hier gezeigt holen ...Grüße
bastla