Door cluc-cluc: Erik, je kunt ook "hashdeep.exe" (met zijn hele scala aan opties) gebruiken i.p.v. de afzonderlijke executables.
Weet ik, maar goed dat je het noemt want andere lezers weten dat misschien niet.
Inderdaad kun je de hashdeep tools als een "poor mans IDS" (Intrusion Detection System) gebruiken door regelmatig van zoveel mogelijk bestanden op een computer een cryptografische hash te berekenen en het resultaat op een veilige plaats te bewaren (niet op de computer zelf). Door een vorig met een nieuw resultaat te vergelijken heb je een goede indicatie wat er in de tussentijd veranderd is (actieve rootkits en andere stealth malware kunnen je echter voor de gek houden).
Een van de eerste tools die zoiets deed (meen ik) was Tripwire.
Misschien wel grappig om te vermelden in het kader van hash collisions is het volgende. In
http://www.mscs.dal.ca/~selinger/md5collision/, onder "An evil pair of executable programs", laat Peter Selinger zien dat het mogelijk is dat twee programma's, die iets verschillends doen, dezelfde MD5 hash hebben.
Een tikkie flauw, maar ook ik kan twee programma's maken die iets verschillends doen en dezelfde MD5 hash hebben. Sterker, ik kan het zo maken dat ze
ook dezelfde SHA1 hash hebben! Om het lekker ingewikkeld te maken noem ik die programma's niet "hello.exe" en "erase.exe", maar "md5deep64.exe" en "sha1deep64.exe".
Eerst stellen we vast dat zowel de MD5 als de SHA1 hashes van md5deep64.exe en sha1deep64.exe identiek zijn:
g:\Temp>md5sum md5deep64.exe
1d90637d5fcf5c09c59fc3fade0bc79b *md5deep64.exe
g:\Temp>md5sum sha1deep64.exe
1d90637d5fcf5c09c59fc3fade0bc79b *sha1deep64.exe
g:\Temp>sha1sum md5deep64.exe
0149c8dce4132161cbaaf5b4a6ff0e31eb68a26d md5deep64.exe
g:\Temp>sha1sum sha1deep64.exe
0149c8dce4132161cbaaf5b4a6ff0e31eb68a26d sha1deep64.exe
Vervolgens gebruiken we die programma's met
dezelfde parameters en constateren dat de output VERSCHILLEND is:
g:\Temp>md5deep64.exe -b test.txt
9e107d9d372bb6826bd81d3542a419d6 test.txt
g:\Temp>sha1deep64.exe -b test.txt
2fd4e1c67a2d28fced849ee1bb76e7391b93eb12 test.txt
En dit gaat zover dat niet alleen de MD5 en SHA1 hashes overeenkomen, maar ook SHA256:
g:\Temp>sha256sum md5deep64.exe
4994759f3750764ec0b55956de7c4f6d2003eac22a40cc4f82bc25da3b26a112 *md5deep64.exe
g:\Temp>sha256sum sha1deep64.exe
4994759f3750764ec0b55956de7c4f6d2003eac22a40cc4f82bc25da3b26a112 *sha1deep64.exe
En als bonus (mocht je nog twijfelen ;)
g:\Temp>fc /b md5deep64.exe sha1deep64.exe
Comparing files md5deep64.exe and SHA1DEEP64.EXE
FC: no differences encountered
Als je me niet gelooft: kopieer md5deep64.exe naar sha1deep64.exe en herhaal wat ik hierboven laat zien.
PS ik Googlede even naar 9e107d9d372bb6826bd81d3542a419d6 en vond o.a. deze page:
http://pastebin.com/8GvcJfKw.
Daar heb ik
geen verklaring voor... Iemand? Of zou het een geintje zijn?
En nog bedankt Erik voor je vorige reactie(s). Altijd een genoegen om even wat kennis met je uit te wisselen,
en laat een ieder op security.nl er ook zijn/haar voordeel mee doen.
Insgelijks!