Shimcache, nazywany też AppCompatCache, to funkcja zgodności aplikacji w Windows. Windows wykorzystuje ją do ustalenia, czy program wymaga poprawki zgodności, ale przy okazji przechowuje zapis przetworzonych programów, co czyni ją dobrze znanym artefaktem uruchamiania. W przeciwieństwie do Amcache nie jest to plik na dysku: znajduje się w rejestrze, pod HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatCache.
Każdy wpis przechowuje głównie pełną ścieżkę pliku i datę jego ostatniej modyfikacji, w kolejności od najnowszych, a w niektórych wersjach Windows również flagę wskazującą, że plik został faktycznie uruchomiony. To wystarczy, aby wykazać obecność danego programu na komputerze, dlatego śledczy to analizują. Wyczyszczenie usuwa ten ślad.
| Pole | Co ujawnia | Przetwarzanie przez PrivaZer |
|---|---|---|
| Pełna ścieżka & nazwa pliku | Gdzie program był przechowywany, nawet jeśli dysk już nie istnieje | Usuwane |
| Data ostatniej modyfikacji pliku | Kiedy plik programu został ostatnio zmieniony | Usuwane |
| Flaga uruchomienia | Że plik został faktycznie uruchomiony (niektóre wersje) | Usuwane |
| Kolejność & pozycja | Przybliżona kolejność przetwarzania plików | Usuwane |
| Rozmiar pliku | Rozmiar programu (starsze formaty) | Usuwane |
Shimcache przechowuje mniej danych na wpis niż Amcache: brak skrótu SHA-1, brak nazwy wydawcy. Jednak ścieżka wraz z datą ostatniej modyfikacji pliku wciąż stanowi solidny dowód obecności i może nawet wymieniać programy, do których jedynie przechodzono, ale nigdy ich nie uruchomiono. PrivaZer usuwa te wpisy, dzięki czemu ślad nie pozostaje już w rejestrze.
Aby temu zapobiec, PrivaZer nie tylko czyści wartość rejestru: dodatkowo zapisuje kopię pamięci podręcznej znajdującą się w pamięci, korzystając z tych samych procedur, których używa sam Windows: ShimFlushCache (w apphelp.dll) oraz BaseFlushAppcompatCache (w kernel32.dll). Po zapisaniu aktywnej kopii nie pozostaje nieaktualna pamięć podręczna, którą można by zapisać z powrotem przy wyłączaniu. Ponieważ AppCompatCache znajduje się w aktywnej gałęzi SYSTEM, wymagane są uprawnienia administratora.
Tak. PrivaZer wykrywa i czyści wpisy AppCompatCache w ramach skanowania, a także może wyczyścić je osobno. Następnie zapisuje kopię pamięci podręcznej znajdującą się w pamięci (za pomocą ShimFlushCache i BaseFlushAppcompatCache), aby czyszczenie utrzymało się, zamiast pojawić się ponownie przy następnym wyłączeniu komputera. Wymagane są uprawnienia administratora.
Tak. Usunięcie programu i jego plików nie czyści jego wpisu AppCompatCache. Ścieżka i data ostatniej modyfikacji mogą pozostać, pokazując, że program był obecny na komputerze, nawet gdy sam program już zniknął. To dokładnie ten rodzaj pozostałości, którego szuka śledczy, a czyszczenie Shimcache jest tym, co ją usuwa.
Tak. AppCompatCache to pamięć podręczna, którą Windows utrzymuje na potrzeby zgodności i odbudowuje automatycznie. Jej wyczyszczenie nie dotyka zainstalowanych programów, plików ani stabilności systemu. Windows po prostu zaczyna ponownie zapełniać pamięć podręczną w miarę dalszego korzystania z komputera.
Nowe wpisy ponownie się gromadzą dla programów przetworzonych po czyszczeniu, co jest normalne: pamięć podręczna to bieżący zapis. Czyszczenie usuwa historyczny ślad sprzed tego momentu, a ponieważ PrivaZer zapisuje kopię z pamięci, stare dane nie zostaną zapisane z powrotem przy następnym wyłączeniu. Uruchamiaj PrivaZer regularnie, aby ślad pozostawał krótki.
To dwa odrębne artefakty zgodności, zwykle czyszczone razem. Shimcache (AppCompatCache) znajduje się w rejestrze, przechowuje głównie ścieżkę i datę ostatniej modyfikacji oraz jest zapisywany na dysk przy wyłączaniu. Amcache to plik gałęzi rejestru (Amcache.hve) z dużo bogatszymi danymi dla każdego programu, w tym skrótem SHA-1 pliku wykonywalnego. Wyczyszczenie tylko jednego pozostawia nienaruszony drugi ślad, więc warto wyczyścić oba.
Więcej o Amcache i zawartości jego gałęzi rejestru: Jak wyczyścić Amcache w Windows.