Hashadatbázis teszt

A múltkori hacktivitys bejegyzésben előkerült a National Software Reference Library (NSRL) Project. Most megnéztem kicsit közelebbről a letölthető hashadatbázist.

Az összesen négy, egyenként 360 megabájtos CD képfájl egy-két txt mellett tartalmaz egy-egy, majdnem ugyanekkora zipet. A zipekben vannak az ellenőrzőösszegek, amelyek egyenként 1,7 gigabájtos fájlmérettel büszkélkedhetnek. Így összesen 7 gigabájtnyi hasht kapunk.

Pontos adatmennyiség (idézet a read_me.txt-ből):

CD "A"    14,526,967 files,  4,373,310  unique SHA-1 values
CD "B"    14,577,858 files,  4,371,962  unique SHA-1 values
CD "C"    14,511,572 files,  4,375,127  unique SHA-1 values
CD "D"    14,656,439 files,  4,369,231  unique SHA-1 values
          -------------------------------------------------
  TOTAL   58,272,836 files, 17,489,630  unique SHA-1 values

A hashfájlok tartalma valami ilyesmi:

"SHA-1","MD5","CRC32","FileName","FileSize","ProductCode","OpSystemCode","SpecialCode"
"000000206738748EDD92C4E3D2E823896700F849","392126E756571EBF112CB1C1CDEDF926","EBD105A0","I05002T2.PFB",98865,3095,"WIN",""
"0000004DA6391F7F5D2F7FCCF36CEBDA60C6EA02","0E53C14A3E48D94FF596A2824307B492","AA6A7B16","00br2026.gif",2226,228,"WIN",""
"000000A9E47BD385A0A3685AA12C2DB6FD727A20","176308F27DD52890F013A3FD80F92E51","D749B562","femvo523.wav",42748,4887,"MacOSX",""
"00000142988AFA836117B1B572FAE4713F200567","9B3702B0E788C6D62996392FE3C9786A","05E566DF","J0180794.JPG",32768,16848,"358",""
"00000142988AFA836117B1B572FAE4713F200567","9B3702B0E788C6D62996392FE3C9786A","05E566DF","J0180794.JPG",32768,18266,"358",""
"00000142988AFA836117B1B572FAE4713F200567","9B3702B0E788C6D62996392FE3C9786A","05E566DF","J0180794.JPG",32768,2322,"WIN",""
"00000142988AFA836117B1B572FAE4713F200567","9B3702B0E788C6D62996392FE3C9786A","05E566DF","J0180794.JPG",32768,2575,"WIN",""

A fenti mintánál is látszik, hogy egy hash többször is szerepel különböző OpSystemCode, ProductCode vagy SpecialCode mezővel. Ezek feloldását a cédén mellékelt NSLROS.txt és NSLRProd.txt fájlok tartalmazzák. A 358-as azonosítójú operációs rendszer például a rejtélyes TBD névre hallgat.

Az utolsó négy sor ProductCode értékei (16848, 18266, 2322, 2575) a következőket fedik:

"ProductCode","ProductName","ProductVersion","OpSystemCode","MfgCode","Language","ApplicationType"
...
16848,"Microsoft Office XP Small Business","Version 2002","189","609","English","Operating System"
18266,"Microsoft Office XP","2002","190","609","Dutch","Office Suite"
18266,"Microsoft Office XP","2002","204","609","Dutch","Office Suite"
18266,"Microsoft Office XP","2002","224","609","Dutch","Office Suite"
18266,"Microsoft Office XP","2002","264","609","Dutch","Office Suite"
2322,"Office XP","Standard2002 NL","WIN","Microsoft","Dutch","Suite"
2575,"Publisher Deluxe with Photo Editing","2002","WIN","Microsoft","English","Publishing"
2575,"Publisher Deluxe with Photo Editing","2002","WIN2000","Microsoft","English","Publishing"
2575,"Publisher Deluxe with Photo Editing","2002","WIN98","Microsoft","English","Publishing"
2575,"Publisher Deluxe with Photo Editing","2002","WINME","Microsoft","English","Publishing"
2575,"Publisher Deluxe with Photo Editing","2002","WINNT","Microsoft","English","Publishing"
2575,"Publisher Deluxe with Photo Editing","2002","WINXP","Microsoft","English","Publishing"

A teljes hashadatbázis 58 millió sorából 1,4 millióban szerepel a Linux szó, szóval nem csak windowsos fájlokról van szó. Ezen kívül van még itt Solaris, MacOS, mindenféle DOS-ok, OpenVMS, Palm OS stb. Az NSRLProd.txt majdnem 26 ezer sora 8500 különböző nevű terméket tartalmaz.

A teszteléshez első körben egy pár hónapos (XpHun#1) és egy valamivel régebben frissített magyar Windows XP mentést használtam (XpHun#2). Aztán szereztem egy md5 fájlt egy magyar Vista, valamint egy SP3-as angol XP (XpEng) C:\Windows könyvtárának tartalmáról is. Végül egy Debian Lenny-t is megnéztem (/bin, /sbin, /usr, /var).

Eredmények a következő táblázatban:

Néhány elterjedtebb operációs rendszer rendszerfájljainak megtalálhatósági statisztikája az NSRL hashadatbázisában
XpHun#1 XpHun#2 Vista XpEng Debian Lenny
Összes különböző fájl darabszáma a rendszeren 16268 10149 53274 7323 204290
Hashadatbázisban megtalált fájlok száma 5069 4669 20363 3915 21205
Találatok aránya 31% 46% 38% 53% 10%

Az ugyanolyan hash értékkel rendelkező fájlok csak egyszer szerepelnek az összegekben.

A legjobb eredmények is éppen csak 50 százalék felettiek. Az angol XP magas találati arányának oka lehet, hogy régen volt frissítve (csak a két és fél éve kiadott SP3-at tartalmazta), másrészt talán az angol Windows fájljai nagyobb eséllyel kerülhetnek be a NSRL adatbázisába, mint a magyarok.

Látszik az eredményekből, hogy nem mindenható eszközről van szó (legalábbis jelenlegi állapotában semmiképp sem), a felismert fájlok eltávolítása után még bőven marad átnéznivaló, ha alaposak akarunk lenni. Ettől függetlenül mindenképp segítséget jelent, az a néhány ezer-tízezer megtalált fájl sem elhanyagolható könnyebbség egy ilyen feladatnál.

(Technikai részletek: 2010/06/01 - RDS Version 2.29)

Tartalom átvétel