Il runtime hashing è una tecnica di offuscamento in cui un programma non memorizza i nomi delle API o delle funzioni in testo in chiaro. Al loro posto, conserva un valore hash per ogni nome di destinazione e calcola gli hash durante l'esecuzione finché non trova la funzione esportata corrispondente. Il malware usa questo approccio per nascondere stringhe ovvie ed evitare una normale tabella di importazione, rendendo più difficile l'analisi statica.
Questo è importante nella sicurezza informatica perché riduce ciò che scanner e analisti possono apprendere da un file prima che venga eseguito. Negli attacchi reali, il runtime hashing viene spesso usato per risolvere le API di Windows per l'accesso ai file, il controllo dei processi, il networking o l'injection senza lasciare nomi di funzioni leggibili nel binario. I difensori cercano il comportamento che lo sottende: cicli insoliti sulle tabelle di esportazione, caricamento dinamico di librerie, stringhe in memoria che compaiono solo per poco tempo e chiamate API scoperte solo a runtime. Emulazione, sandboxing e monitoraggio comportamentale possono esporre queste ricerche anche quando le firme statiche non ci riescono.


