Lo Shimcache, chiamato anche AppCompatCache, è una funzione di compatibilità delle applicazioni di Windows. Windows lo usa per decidere se un programma necessita di una correzione di compatibilità, ma così facendo mantiene una registrazione dei programmi che ha elaborato, il che lo rende un noto artefatto di esecuzione. A differenza di Amcache, non è un file su disco: si trova nel registro, sotto HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatCache.
Ogni voce conserva principalmente il percorso completo del file e la data dell'ultima modifica del file, in ordine dal più recente, e su alcune versioni di Windows un flag che indica che il file è stato effettivamente eseguito. Ciò è sufficiente a dimostrare che un dato programma era presente sul PC, motivo per cui gli investigatori la esaminano. Pulirla rimuove questa traccia.
| Campo | Cosa rivela | Elaborazione da parte di PrivaZer |
|---|---|---|
| Percorso completo e nome del file | Dove era memorizzato un programma, anche su un'unità ormai scomparsa | Rimosso |
| Data dell'ultima modifica del file | Quando il file del programma è stato modificato l'ultima volta | Rimosso |
| Flag di esecuzione | Che il file sia stato effettivamente eseguito (alcune versioni) | Rimosso |
| Ordine & posizione | Sequenza approssimativa in cui i file sono stati elaborati | Rimosso |
| Dimensione del file | Dimensione del programma (formati precedenti) | Rimosso |
Lo Shimcache memorizza meno dati per voce rispetto ad Amcache: nessun hash SHA-1, nessun nome dell'editore. Ma il percorso unito alla data dell'ultima modifica del file resta comunque un solido artefatto di prova di presenza, e può persino elencare programmi che sono stati sfogliati ma mai avviati. PrivaZer rimuove queste voci in modo che la traccia non rimanga più nel registro.
Per evitare che ciò accada, PrivaZer non si limita a cancellare il valore di registro: svuota anche la copia in memoria della cache usando le stesse routine impiegate da Windows stesso, ShimFlushCache (in apphelp.dll) e BaseFlushAppcompatCache (in kernel32.dll). Con la copia attiva svuotata, non rimane alcuna cache obsoleta da riscrivere allo spegnimento. Poiché AppCompatCache si trova nell'hive SYSTEM attivo, sono richiesti diritti di amministratore.
Sì. PrivaZer rileva e cancella le voci di AppCompatCache come parte di una scansione, e può anche mirare a esse singolarmente. Svuota quindi la copia in memoria della cache (tramite ShimFlushCache e BaseFlushAppcompatCache) in modo che la pulizia rimanga effettiva, invece di ricomparire la prossima volta che spegni il PC. Sono richiesti diritti di amministratore.
Sì. Rimuovere il programma ed eliminarne i file non cancella la sua voce in AppCompatCache. Il percorso e la data dell'ultima modifica possono rimanere, mostrando che il programma era presente sul PC, anche dopo che il programma stesso è scomparso. Questo è esattamente il tipo di residuo che un esaminatore cerca, e pulire lo Shimcache è ciò che lo rimuove.
Sì. AppCompatCache è una cache che Windows mantiene per la compatibilità e ricostruisce automaticamente. Cancellarla non tocca i programmi installati, i file o la stabilità del sistema. Windows inizia semplicemente a ripopolare di nuovo la cache mentre continui a usare il PC.
Nuove voci si accumulano di nuovo per i programmi elaborati dopo la pulizia, ed è normale: la cache è una registrazione continua. La pulizia rimuove la traccia storica accumulata fino a quel momento, e poiché PrivaZer svuota la copia in memoria, i vecchi dati non vengono riscritti al successivo spegnimento. Esegui PrivaZer periodicamente per mantenere la traccia ridotta.
Sono due artefatti di compatibilità separati, solitamente puliti insieme. Lo Shimcache (AppCompatCache) si trova nel registro, memorizza principalmente il percorso e la data dell'ultima modifica, e viene scritto su disco allo spegnimento. Amcache è un file hive (Amcache.hve) con dati per programma molto più ricchi, incluso l'hash SHA-1 dell'eseguibile. Cancellarne solo uno lascia intatta l'altra traccia, quindi vale la pena pulire entrambi.
Per il lato Amcache e cosa contiene il suo hive, vedi: Come pulire Amcache su Windows.