PDA

View Full Version : TrID - File Identifier / Ricerca collaborazione


Mark0
10-05-2003, 12:46
Sto sviluppando un programma per l'identificazione di binary files, ovvero qualcosa che possa dire che un certo file è un eseguibile e con che compilatore è stato creato, piuttosto che un file JPEG, o una traccia audio OGG Vorbis, etc. etc.

Qualcosa di questo tipo:
D:\Trid>trid tridscan.exe

TrID - File Identifier v0.25b - (C) 2003 By M.Pontello

Checking pattern definitions files...
Files found: 82. Loading...
Collecting data from file: tridscan.exe
Analyzing...

58% EXE CIL (.Net, Mono, etc.) (480/52)
20% Windows OCX File (167/37)
13% EXE Win32 Generic (113/49)
6% DLL Win16 PowerBASIC/DLL-16 (55/8)

Rispetto ad altri programmi del genere, non ha nessun regola hard-coded, ma base le sue analisi su una serie di files di definizioni, per ogni tipologia di file riconosciuta.
In questo modo è facilmente (e autonomamente) estensibile, in maniera da supportare nuovi formati (es. gli EXE generati da un compilatore nuovo).

In sostanza, basta mettere insieme un tot di files del tipo per cui interessa "addestrare" TrID, e farli esaminare da TrIDScan, ovvero lo scanner che si occupa di localizzare i patterns ricorrenti/caratterizzanti per quella tipologia di files.

Io ho provveduto, con la collaborazione di qualche volonteroso, a mettereinsieme già un'ottantina di queste definizioni (per i più comuni formati bitmap, audio, EXE creati con vari compilatori, etc. etc.).

Naturalmente però, l'idea sarebbe di raccoglierne un numero decisamente più grande, in maniera da aumentare l'accuratezza e quindi l'utilità del programma.

Quindi se qualcuno vuole giocare un po' con TrID & TrIDScan, e poi inviarmi le defs create, ci sarebbe la possibilità di tirarne fuori qualcosa di veramente interessante. Nelle definizioni (in formato XML) c'è anche lo spazio per il nome/nick e l'homepage del contributore, in modo che ci possa essere una sorta di riconoscimento per il contributo offerto! :)
L'idea infatti sarebbe quella di raccogliere le varie definizioni ricevute, e riunirle in modo da metterle a disposizione di tutti dall'home page del programma (un po' quello che si fa con i files per il Syntax Hilighting con i vari editor per programmatori come SourceEdit, ConText, etc.)

Se avete a disposizione un tot di EXE creati con un certo compilatore, oppure un certo numero di modelli 3D fatti con 3D Studio Max, etc. etc., è sarà tutto materiale molto ben accetto! :)

Ovviamente l'utility è assolutamente freeware!

Se interessa, all'URL http://mark0.ngi.it/software-net-trid.html ho messo qualche screenshots è un po' di info in più.

TrID & TrIDScan richiedono il .NET Framework installato. Ho però fatto anche una versione per DOS di TrIDScan, in maniera che sia utilizzabile un po' dappertutto. Per adesso si tratta di 2 tool separati (scanner e identificazione) a linea di comando, ma prossimamente farò qualcosa di integrato con un GUI "degna"! :)

Grazie,

Bye!

Mark0
06-06-2003, 12:22
Ecco una lista dei tipi di files fin'ora supportati. Quelli ottenuti con la scansione di un basso numero di files (diciamo sotto i 10), sono ovviamente passibili di ulteriore affinamento.

http://mark0.ngi.it/download/TrID2HTML.html

Bye!