Время на прочтение7 мин
Количество просмотров23K
Всем привет, Хабровчане!
Думаю ни у кого не возникает сомнений в важности грамотной работы специалистов ИБ и ИТ служб, учитывая события недавних дней с ТК СДЭК, а также другие крупные взломы/утечки, которых было немало за последние пару, тройку лет. Обеспечение грамотной работы включает в себя обычно комплекс мероприятий, да и в целом в работе служб ИБ есть множество направлений, где одним из интереснейших направлений, без которого, на мой взгляд, трудно обойтись, является компьютерная криминалистика (Forensic или форенсика).
Если говорить простым языком, то форенсика позволяет понять кто/что делал/делало в определённое время в компьютерной системе, а её методы можно применять как на этапе расследования уже случившегося инцидента, так и для целей мониторинга, предотвращения будущих инцидентов. Внутри направление форенсики тоже делится на отдельные поднаправления в зависимости от того, что мы исследуем. Можно выделить форенсику настольных ОС, мобильных ОС, форенсику компьютерных сетей и форенсику умных устройств IOT.
Мой интерес и выбор когда-то пал на семейство настольных ОС Windows поскольку в корпоративных инфраструктурах эта система очень распространена. Поэтому в данной статье хочу поделиться некоторыми наработками, связанными с форенсикой реестра ОС Windows 8-11 и показать какие сведения из него полезны для ИБ служб при мониторинге или расследовании, а также где в нём их искать.
Прежде чем перейти к рассмотрению полезных сведений из реестра давайте чуть-чуть поговорим о том, что представляет из себя сам реестр непосредственно.
Структурно реестр Windows это иерархическая организация (в документации MS применяется термин «system-defined database»), в которой размещены для хранения параметры системы/программ/железа, но здесь также можно найти много интересного и для ИБшника. В этой иерархии можно выделить следующие части:
-
Разделы/они же Ветки реестра (Hives).
-
Ключи реестра (Keys).
-
Вложенные ключи реестра (Sub-Keys).
-
Параметры ключей и их значения (Values).
Кроме того Hives (ветки) реестра делятся на несколько групп и хранятся в виде файлов на системном диске (в основном в директории %systemdrive%\Windows\System32\config) вместе с ними находятся файлы транзакций .log (.log1, .log2 и т.д.) и файлы .sav для сохранения копий веток (здесь я просто упоминаю эти файлы, но на самом деле они достойны отдельной статьи и их разбора):
Ветка реестра |
Связанные файлы на диске |
HKEY_CLASSES_ROOT он же HKCR |
System, System.alt, System.log, System.sav |
HKEY_CURRENT_USER он же HKCU |
Ntuser.dat, Ntuser.dat.log (эти файлы лежат в папке пользователя), UsrClass.dat (находится в папке AppData\Local\Microsoft\Windows, которая внутри юзерской папки) |
HKEY_LOCAL_MACHINE он же HKLM |
Security, Security.log, Security.sav, Software, Software.log, Software.sav, System, System.alt, System.log, System.sav |
HKEY_USERS он же HKU |
Default, Default.log, Default.sav |
Для работы с реестром можно использовать стандартные средства самой системы. Это графическое приложение — %systemdrive%\Windows\regedit.exe или консольная утилита %systemdrive%\Windows\System32\reg.exe. Однако, это может быть не так уж удобно если требуется быстро интерпретировать данные, поэтому для более удобной работы могу порекомендовать использовать программу Eric’a Zimmerman’a — «Registry Explorer».
Параметры в реестре могут принимать следующие типы значений:
Наименование значения |
Описание |
REG_SZ |
Null-terminated строка в ASCII или Unicode |
REG_MULTI_SZ |
Последовательность из Null-terminated строк, например String\0String2\0String3\0LastStr\0\0 |
REG_DWORD |
Число длиной 32 бита |
REG_BINARY |
Бинарные данные |
REG_QWORD |
Число длиной 64 бита |
REG_EXPAND_SZ |
Null-terminated строка в ASCII или Unicode, которая представляет переменную окружения, например %PATH% |
Теперь имея общие представления о реестре перейдём к рассмотрению артефактов, т.е. интересных нам данных, их полезных значений, а также «пути» до них в реестре, где их можно достать «руками». Дополнительно следует учитывать, что у каждого ключа реестра есть штамп времени, когда крайний раз был изменен один из его параметров. Сами параметры, к сожалению, штампов времени не имеют (если они сами напрямую не содержат их в качестве значения), однако значения времени модификации ключей уже позволяют хотя бы на уровне гипотезы сузить временной разброс, когда происходило то или иное с набором параметров ключа. Штамп времени для ключа можно получить, например, после его экспорта в текстовый файл средствами regedit или через PowerShell.
Артефакт Last Visited MRU представляет из себя параметры вложенного ключа HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedPidlMRU и LastVisitedPidlMRULegacy. Эти значения описывают приложения, которые использовали стандартный диалог Windows для открытия, либо сохранения файлов. Если нажать правой кнопкой мыши по файлу в проводнике и выбрать «Открыть с помощью…», то предположительно для этой опции создаётся параметр со значением «OpenWith.exe». Если в приложении сохранение файла осуществляется в обход стандартного диалога Windows, то параметр в ключе реестра создан не будет. Этот артефакт позволяет узнать следующее:
-
На хосте точно запускалась та или иная программа определённым пользователем.
-
С помощью программы, возможно, по сети могли получить и сохранить файл, если у программы есть подобный функционал.
-
По какому конкретно пути был открыт файл (возможно для модификации) или сохранён. Название файла, к сожалению, получить нельзя.
Артефакт User Assist располагается в параметрах вложенного ключа реестра HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist. В нём нас будет интересовать ещё два вложенных ключа:
-
{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}\Count
-
{F4E57C4B-2036-45F0-A9AB-443BCFE33D9F}\Count
Они содержат информацию об открывавшихся пользователем программах и ярлыках. Параметры записаны с помощью сдвига ROT-13 (каждая буква алфавита сдвинута на 13 символов вправо от изначальной позиции в алфавите), которое не работает для кириллицы, она отображается как есть. Это позволяет узнать следующее:
-
Конкретный пользователь на хосте запускал ту или иную программу.
-
Путь до запускавшегося исполняемого файла, при чём часть этого пути может быть задана как GUID значение в фугируных скобках, это отображение «известных» директорий, список у Microsoft опубликован здесь.
В операционных системах Windows 10 (до версии 1803), есть аналогичный UserAssist ключ в реестре, показывающий, что пользователь открывал определённые программы. Этот ключ называется RecentApps, он расположен в: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Search\RecentApps. Различие с UserAssist в большей полноте предоставляемых данных, для RecentApps кроме имени самого приложения ещё можно получить время, когда последний раз выполнялось это приложение в формате UTC, и количество запусков этого приложения (соответственно это будут значения параметров AppID, LastAccessTime, LaunchCount).
Артефакты использования офисного пакета MS Office могут быть полезны чтобы понять какие документы офиса мог открывать пользователь. Это пригодится например, если произошёл иницидент с заражением ВПО, т.к. документы могли содержать вредоносное активное содержимое, которое и могло выполниться при открытии. Сведения о последних открывавшихся документах можно получить из вложенного ключа реестра, который зависит от версии Office, ниже таблица для некоторых версий.
Версия офисного пакета |
Ключ реестра |
MS Office 2013 |
HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Word\User MRU\<LiveId>\File MRU |
MS Office 2016 |
HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Word\User MRU\\<LiveId>\File MRU |
MS Office 2010 |
HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Word\User MRU\\<LiveId>\File MRU |
MS Office 2019 / Office 365 |
HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Word\User MRU\\<LiveId>\File MRU |
Артефакты использования USB дают понять какое внешнее оборудование могло подключаться. Можно выяснить имя устройства в системе, серийный номер, vendor ID, для определения производителя устройства (есть бесплатные сервисы, например этот), время последнего и первого подключения.
-
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\USB (любые устройства кроме принтеров и накопителей).
-
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\USBPRINT (подключавшиеся принтера).
-
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\USBSTOR (подключавшиеся накопители информации).
-
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Portable Devices\Devices (любые устройства кроме принтеров и накопителей).
-
HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices (подключавшиеся накопители информации).
-
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2 (подключавшиеся накопители информации).
-
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\KnownDevices (относится к опции AutoPlay, которая задаёт действия по умолчанию при подключении USB устройства. Параметр ContainerID относится скорее всего к вот этому, а параметр Label обычно даёт понять модель или производителя устройства).
Артефакты реестра называемые ShellBag дают понять какие папки открывались пользователем наиболее часто. Это полезно для анализа поведения пользователей при их работе в системе. ShellBag лежат во вложенном ключе реестра: HKEY_CURRENT_USER\Software\Classes\LocalSettings\Software\Microsoft\Windows\Shell\BagMRU или HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Bags.
Информацию связанная с историей выполнявшихся команд Win+R (Run) в ключе: HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RunMRU может пригодится, например, при анализе нарушений политики ИБ пользователями, хотя простым пользователям лучше бы вообще обладать минимально необходимыми привилегиями и не иметь возможности выполнять лишних команд.
Сведения об открывавшихся определённым пользователем файлах по их расширениям можно найти во вложенном ключе реестра: HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs
Полезными для анализа могут также быть следы, которая система сохраняет о взаимодействии пользователя с Проводником Windows. Можно узнать вводимые вручную пути и историю пользовательского поиска. За это отвечают следующие ключи:
-
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\WordWheelQuery (история поисковых запросов Проводника).
-
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths (вводившиеся вручную пути).
Продолжение следует…
The User Assist key contains settings and data of programs that were launched
via Windows Explorer (explorer.exe).
HKEY_CURRENT_USER\Software\Microsoft\Windows\Currentversion\Explorer\UserAssist
Sub keys:
Name | Description |
---|---|
{%GUID%} | The User Assist logged data |
Settings | Settings to control User Assist logging |
Note that the Settings sub key does not exist by default.
Known GUIDs
GUID | Windows Versions | Description |
---|---|---|
{0D6D4F41-2994-4BA0-8FEF-620E43CD2812} | XP, Vista | TODO assumed as: IE7 |
{5E6AB780-7743-11CF-A12B-00AA004AE837} | 2000, XP, 2003, Vista | Microsoft Internet Toolbar |
{75048700-EF1F-11D0-9888-006097DEACF9} | 2000, XP, 2003, Vista | ActiveDesktop |
{9E04CAB2-CC14-11DF-BB8C-A2F1DED72085} | 8, 10 | |
{A3D53349-6E61-4557-8FC7-0028EDCEEBF6} | 8, 10 | |
{B267E3AD-A825-4A09-82B9-EEC22AA3B847} | 8 | |
{BCB48336-4DDD-48FF-BB0B-D3190DACB3E2} | 8.1 | |
{CAA59E3C-4792-41A5-9909-6A6A8D32490E} | 8 | |
{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA} | 2008 (R2?), 7, 8, 10 | TODO assumed as: Application or Executable File Execution |
{F2A1CB5A-E3CC-4A2E-AF9D-505A7009D442} | 8, 10 | |
{F4E57C4B-2036-45F0-A9AB-443BCFE33D9F} | 2008 (R2?), 7, 8, 10 | TODO assumed as: Shortcut File Execution |
{FA99DFC7-6AC2-453A-A5E2-5E2AFF4507BD} | 8, 10 |
Note that the User Assist key does not seem to be present on NT4, therefore this
functionality was likely introduced in Windows 2000.
Sometimes more information about the GUID can be found in the key:
HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{%GUID%}\
GUID sub key
Sub keys:
Name | Description |
---|---|
Count | Contains the User Assist log entries |
Values:
Name | Data type | Description |
---|---|---|
Version | REG_DWORD | Indicates the User Assist log format version |
Version value data
Value | Windows Versions |
---|---|
3 | 2000, XP, 2003, Vista |
5 | 2008 (R2?), 7, 8 |
Count sub key
Values:
Name | Data type | Description |
---|---|---|
%NAME% | REG_SZ | Where %NAME% is obfuscated using a technique described below. |
Windows Versions | Obfuscation technique |
---|---|
2000, XP, 2003, Vista, 2008 (R2?), 7, 8 | ROT-13 of character values in the ASCII [A-Za-z] range. + |
Values outside of this range e.g. [0-9] and values outside the basic ASCII range (>= 0x80) are not obfuscated. |
|
7 beta | Vigenère cipher with key: BWHQNKTEZYFSLMRGXADUJOPIVC |
Named value
Value | Description |
---|---|
UEME_CTLSESSION | Session identifier |
UEME_CTLCUACount:ctor | |
UEME_RUNCPL | Executed control applets (.cpl) |
UEME_RUNPATH | Executed programs |
UEME_RUNPIDL | Programs started via a PIDL (shell item list) e.g. using a Shortcut |
UEME_RUNWMCMD | Programs started via a Run Command |
UEME_UIHOTKEY | Programs started via a Hotkey |
UEME_UIQCUT | Programs started via a Quick Launch menu shortcut |
UEME_UISCUT | Programs started via a Desktop shortcut |
UEME_UITOOLBAR | Programs started via Windows Explorer Toolbar buttons |
Note does UEME stand for User Experience Monitoring Element/Extension?
Note does CTL stand for client?
Note does CUA stand for current user (file) associations?
With the exception of the UEME_CTLSESSION value, these values appear to use
a similar data types. The structure of a data type depends on the Version value
of the GUID sub key. The following versions have been observed:
-
version 3, that is used by Windows 2000, XP, 2003 and Vista.
-
version 5, that is used by Windows 2008 (R2?), 7, 8.
UEME_CTLSESSION value data
UEME_CTLSESSION value data — version 3
The UEME_CTLSESSION value data — version 3 is 8 bytes of size and consists of:
Offset | Size | Value | Description |
---|---|---|---|
0 | 4 | Unknown | |
4 | 4 | Current session identifier |
UEME_CTLSESSION value data — version 5
The UEME_CTLSESSION value data — version 5 is 1612 bytes of size and consists of:
Offset | Size | Value | Description |
---|---|---|---|
0 | 4 | 1 | Unknown (version?) |
4 | 4 | Unknown | |
8 | 4 | Unknown | |
12 | 4 | Unknown | |
16 | … | Unknown (array of 3x records at offset 0x10, 0x224, 0x438) |
The UEME_CTLSESSION value data — version 5 record is 532 bytes of size and consists of:
Offset | Size | Value | Description |
---|---|---|---|
0 | 4 | Unknown | |
8 | 4 | Unknown | |
12 | 4 | Unknown | |
16 | … | Unknown (UTF-16 little-endian string with end-of-string character) | |
… | … | Unknown |
Other value data
Other value data — version 3
The other value data — version 3 is 16 bytes of size and consists of:
Offset | Size | Value | Description |
---|---|---|---|
0 | 4 | Session identifier | |
4 | 4 | Number of executions | |
8 | 8 | Last execution time, which contains a FILETIME |
Other value data — version 5
The other value data — version 5 is 72 bytes of size and consists of:
Offset | Size | Value | Description |
---|---|---|---|
0 | 4 | Unknown (Seen: 0, -1 (0xffffffff) or 1) | |
4 | 4 | Number or executions | |
8 | 4 | Unknown (sometimes referred to as number of application focuses) | |
12 | 4 | Unknown (sometimes referred to as application focus time, does its meaning differ per GUID?) | |
16 | 4 | Unknown (Contains a 32-bit floating point, 0.0 or -1.0 if not set ?) | |
20 | 4 | Unknown (Contains a 32-bit floating point, 0.0 or -1.0 if not set ?) | |
24 | 4 | Unknown (Contains a 32-bit floating point, 0.0 or -1.0 if not set ?) | |
28 | 4 | Unknown (Contains a 32-bit floating point, 0.0 or -1.0 if not set ?) | |
32 | 4 | Unknown (Contains a 32-bit floating point, 0.0 or -1.0 if not set ?) | |
36 | 4 | Unknown (Contains a 32-bit floating point, 0.0 or -1.0 if not set ?) | |
40 | 4 | Unknown (Contains a 32-bit floating point, 0.0 or -1.0 if not set ?) | |
44 | 4 | Unknown (Contains a 32-bit floating point, 0.0 or -1.0 if not set ?) | |
48 | 4 | Unknown (Contains a 32-bit floating point, 0.0 or -1.0 if not set ?) | |
52 | 4 | Unknown (Contains a 32-bit floating point, 0.0 or -1.0 if not set ?) | |
56 | 4 | Unknown, sometimes -1 (0xffffffff) | |
60 | 8 | Last execution time, contains a FILETIME or 0 if not set | |
68 | 4 | 0 | Unknown (empty value ?) |
Settings sub key
Values:
Name | Data type | Description |
---|---|---|
NoLog | REG_DWORD | Turn of logging. Set to 1 to disable logging of the User Assist information |
NoEncrypt | REG_DWORD | Turn of obfuscation of %NAME% values. Set to 1 to disable name obfuscation |
External links
-
UserAssist, by Didier Stevens
-
Windows 7 Beta: ROT13 Replaced With Vigenère? Great Joke!
-
Windows-userassist-keys
-
libfwsi: Known Folder Identifiers
The UserAssist utility displays a table of programs executed on a Windows machine, complete with running count and last execution date and time.
Windows Explorer maintains this information in the UserAssist registry entries. My program allows you to display and manipulate these entries.
I posted my program (source code and binaries) here. Download the ZIP file, you’ll have to extract UserAssist\UserAssist\bin\Release\UserAssist.exe to get my program. There is no setup, it’s just one executable. You’ll need the .NET Framework 2.0 runtime to run my program (download it only if you have a problem running my program, if you have an up-to-date version of Windows XP, the .NET 2.0 Framework will already be installed).
I also maintain a Windows Live CD plugin for my UserAssist utility.
Program features and operation is described in the About box:
The program UserAssist displays a list of the programs run by a user on Windows. Windows Explorer displays frequently used programs on the left side of the standard XP Start menu. The data about frequently used programs is kept in the registry under this key: HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerUserAssist This program decrypts and displays the data found in the registry under the UserAssist key. When started, the program retrieves the data for the current user and displays it. The display is not refreshed automatically when Windows Explorer updates the registry entries. To refresh the display, execute the 'Load from local registry' command. Columns in the listview: Key: this value is {5E6AB780-7743-11CF-A12B-00AA004AE837} or {75048700-EF1F-11D0-9888-006097DEACF9} those are the keys found under the UserAssist key, and are included in the list view to distinguish the entries. Index: a running counter, indicating the sequence of values in the registry At first, the entries are listed in the sequence they appear in the registry. You can sort columns by clicking on the header. To revert to the original sequence, sort the column Index and then the column Key Name: The name of the value registry entry. This references the program that was run. This key is ROT13 encrypted, the displayed name is decrypted. There is a registry setting to prevent encryption of the log, but this program does not support this setting. Unknown: a 4 byte integer, meaning unknown. It appears to be present only for session entries (UEME_CTLSESSION). Session: This is the ID of the session (a 4 byte integer). Counter: This is the number of times the program was ran (a 4 byte integer). Last: This is the last time the program was ran (a 8 byte datetime). The value is displayed with the timezone of the machine running this UserAssist tool. Watch out for time zone differences when importing a REG file from a system with different regional settings. Last UTC: This is the last time the program was ran (a 8 byte datetime) in UTC. Commands: 'Load from local registry' Displays the data for the current user. 'Load from REG file' Loads a REG file and imports the UserAssist key. This command doesn't check the full path of the UserAssist key, thus allowing the analysis of NTUSER.DAT hives loaded and exported with another path. Use this command if you cannot run the program on the machine you want to analyze. Loading the data from a REG file disables editing commands. 'Load from DAT file' Loads a registry hive file (a DAT file like NTUSER.DAT) and imports the UserAssist key. The DAT file is temporarily loaded in the registry under the USERSLoadedHive key. Be sure to have the local admin rights to access the file and load it. Use this command if you cannot run the program on the machine you want to analyze. Loading the data from a DAT file disables editing commands. 'Highlight' Allows you to type in a search string (a regular expression is accepted), each entry matching this string will be highlighted in red. The highlighting stays active during reloads. Type an empty string to disable the highlighting. 'Save' This saves the data as a CSV file or a HTML file (choose file type).
'Clear All' This deletes the {5E6AB780-7743-11CF-A12B-00AA004AE837} and {75048700-EF1F-11D0-9888-006097DEACF9} keys. All data is lost, and no new data is recorded until Windows Explorer is restarted. This will impact the frequently run program list on your Start Menu, and maybe other things. I had no other side-effects on my test machines. This command is disabled when a REG file is loaded. 'Logging Disabled' Enabling the 'Logging Disabled' toggle allows you to permanently disable the logging of user activity in the UserAssist keys by creating a value HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerUserAssistSettingsNoLog equal to 1. Disabling the 'Logging Disabled' removes the NoLog value (apparently, setting it to 0 doesn't prevent logging). This setting is only effective after Windows Explorer is restarted. This command is disabled when a REG file is loaded. Right-clicking an entry will display a menu: 'Clear' will delete the selected entries. The index field of the remaining entries is not changed, they only change after reloading the registry. This command is disabled when a REG file is loaded.
'Explain' will analyse the contents of the name field and try to explain its meaning (based on empirical data).
This program has been tested on Windows XP SP1, SP2, Windows 2003 and Windows Vista.
Microsoft doesn't publish official documentation for UserAssist data. I've found info on the WWW (google for UserAssist) and I discovered the meaning of the binary data through trial-end-error testing. In other words: use this program at your own risk. Ways to restart Windows Explorer: 1) Task Manager: kill the explorer.exe process and start a New Task explorer.exe 2) logoff / logon 3) reboot
Download:
UserAssist_V2_6_0.zip (https)
MD5: 04107FE15FC676B7A701760C9C6D2F81
SHA256: F6F73F4E00905A7727ED4136DE875DD1FBCF4B90FFEE4B93D4A46E58C0314D45
История запуска программ
Дополнение статьи Forensics Windows Registry — ntuser.dat
- [Начало] Forensics Windows Registry
- [Продолжение] Forensics Windows Registry — ntuser.dat
- [Дополнение] Forensics Windows Registry — расшифровка и отображение всех записей UserAssist (к второму пункту статьи «Forensics Windows Registry — ntuser.dat»)
- [Дополнение] Forensics Windows Registry — история запуска программ (дополнение к статье «Forensics Windows Registry — ntuser.dat»)
- Продолжение этих статей: Forensics Windows Registers all in one program
Теория:
Файл ntuser.dat его ветка HKEY_CURRENT_USER
именно значения этой ветки реестра и хранятся в указанном файле ntuser.dat (подробно Forensics Windows Registry — ntuser.dat).
Рассмотрим какие программы были запущены. Обратимся к реестру Windows.
Каждая запущенная GUI — программа Windows оставляет историю в ключе реестра
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\{GUID}\Count
Ключ содержит два подраздела GUID (запуск исполняемого файла CEBFF5CD, запуск файла ярлыков F4E57C4B):
каждый подраздел поддерживает список системных объектов, таких как программы, ярлыки и апплеты панели управления,
к которым пользователь обратился.
Значения реестра в этих подразделах зашифрованы.
Используется шифрование
Ссылка скрыта от гостей
, которое заменяет один символ другим, расположенным в 13 позиции от него в таблице ASCII.
Все значения кодируются ROT-13:
.exe = .RKR
.lnk = .YAX
Важно:
BAM — это служба Windows, которая контролирует активность фоновых приложений.
Эта служба существует только в новых версиях в Windows 10 начиная с обновления Fall Creators 1709.
HKEY_CURRENT_USER\SYSTEM\CurrentControlSet\Services\bam\UserSettings\{SID}
Важно: применимо для версий Win+R->WinVer до Windows Версия 1803 (не включительно), начиная с этой версии ключ реестра «RecentApps» отсутствует.
Запуск последних программ отслеживается и сохраняется в ключе RecentApps:
HKEY_CURRENT_USER\Software\Microsoft\Windows\Current Version\Search\RecentApps
Каждый ключ GUID — запущенное ранее приложение.
- AppID — название запущенного приложения
- LastAccessTime — время запуска в UTC
- LaunchCount — количество запуска программы
База данных совместимости приложений Windows используется операционной системой для определения возможных проблем совместимости приложений с исполняемыми файлами и отслеживает имя файла исполняемого файла, размер файла, время последнего изменения
Последние 1024 программы, выполненные в операционной системе Windows, можно найти в этом ключе:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\AppCompatCache
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatCache
более подробный анализ ShimCache возможен ShimCacheParser
пример
Код:
C:\Users\Toor\Downloads\ShimCacheParser-master\ShimCacheParser-master>python C:\Users\Toor\Downloads\ShimCacheParser-master\ShimCacheParser-master\ShimCacheParser.py -l -o codeby.csv
Примечание:
- В Windows 7/8/10 содержится не более 1024 записей
- LastUpdateTime не существует в системах Win7/8/10
Списки переходов, панель задач Windows 7-10 (список переходов) спроектирована таким образом, чтобы пользователи могли быстро получить доступ к элементам, которые они часто или недавно использовали.
данные, хранящиеся в папке:
%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Recent\AutomaticDestinations
где каждый будет иметь уникальный файл, добавленный с AppID связанного приложения.
Файлы списков переходов AutomaticDestinations представляют собой OLE Compound Files, содержащие несколько потоков, из которых:
- Шестнадцатеричное число, например. «1a»
- DestList
Каждый из шестнадцатеричных нумерованных потоков содержит данные, аналогичные данным Windows Shortcut: данные могут быть извлечены и проанализированы с помощью анализатора LNK, lnk-parse подробнее Форензика анализа артефактов ярлыков последних открытых файлов — artifacts lnk
пример
Код:
C:\Users\Toor\Downloads\lnk-parse-master\lnk-parse-master>perl lnk-parse.pl C:\Users\Toor\AppData\Roaming\Microsoft\Windows\Recent\dfir_cheat_sheet.pdf.lnk
Prefetch Файлы предварительной выборки Windows предназначены для ускорения процесса запуска приложения. Файлы Prefetch хранятся здесь»
%windir%\Prefetch
и содержит имя исполняемого файла, список DLL Unicode, используемый этим исполняемым файлом, количество попыток выполнения исполняемого файла и временную метку, указывающую на последний запуск программы.
В этой папке хранится информация для последних 128 исполняемых файлов на Win7 и 1024 на Windows8 и Windows 10.
Файл предварительной выборки может анализироваться и анализироваться с использованием таких инструментов, как PeCMD подробнее Форензика Prefetch в Windows
Данные о запущенных программах находятся в этих ветках реестра:
HKEY_CURRENT_USER\Classes\Local Settings\Software\Microsoft\Windows\Shell\MuiCache
HKEY_CURRENT_USER\Microsoft\Windows\ShellNoRoam\MUICache
HKEY_CURRENT_USER\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Persisted
HKEY_CURRENT_USER\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store
Windows Prefetch folder (C:\Windows\Prefetch)
(подробно Форензика Prefetch в Windows ).
Рассмотрим все эти данные с помощью программ
Ссылка скрыта от гостей
и
Ссылка скрыта от гостей
P:S
Данная статья будет дополняться и получать не значительные правки to by continued…
Description
Windows systems maintain a set of keys in the registry database (UserAssist keys) to keep track of programs that executed. The number of executions and last execution date and time are available in these keys.
The information within the binary UserAssist values contains only statistical data on the applications launched by the user via Windows Explorer. Programs launched via the commandline (cmd.exe) do not appear in these registry keys.
From a forensics perspective, being able to decode this information can be very useful.
Registry keys
Keys
Location
Userassist registry keys are saved in following locations:
- HKEY_USERS\{SID}\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\{GUID}\Count\
- HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\{GUID}\Count\
GUID for Windows XP
- {75048700-EF1F-11D0-9888-006097DEACF9}
- {5E6AB780-7743-11CF-A12B-00AA004AE837}
GUID for Windows 7
- {CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}
- {F4E57C4B-2036-45F0-A9AB-443BCFE33D9F}
Decoding keys
Decode names
ROT 13 encoding
- Names are ROT13 encoded: http://en.wikipedia.org/wiki/ROT13
- Notice that both logging and encoding can be prevented (refer to annex #2).
Windows XP
Key names associated to userassist keys are ROT13 encoded:
It’s easy to decode the names:
>>> s = "HRZR_EHACNGU:P:\Qbphzragf naq Frggvatf\haxabja\Ohernh\argjbex-gnfxznantre.rkr" >>> s.decode("rot13") u'UEME_RUNPATH:C:\\Documents and Settings\\unknown\\Bureau\x07etwork-taskmanager.exe'
Below is the explanation of common paths (seen here):
- UEME_CTLSESSION: This entry is for the session ID, it doesn’t hold data about executed programs
- UEME_UIQCUT: Counts the programs launched via a Quick Launch menu shortcut
- UEME_UISCUT: Counts the programs launched via a Desktop shortcut
- UEME_RUNCPL: This entry keeps data about executed control applets (.cpl)
- UEME_RUNPATH: This entry keeps data about executed programs
- UEME_RUNPIDL: This entry keeps data about executed PIDLs
- UEME_UITOOLBAR: This entry keeps data about clicks on the Windows Explorer Toolbar buttons
Windows 7
As for Windows XP, names are ROT13 encoded:
It’s easy to decode them in python:
>>> s = "\\iobkfei\gzc\QPbqr.rkr" >>> s.decode("rot13") u'\\vboxsrv\\tmp\\DCode.exe'
>>> s = "{7P5N40RS-N0SO-4OSP-874N-P0S2R0O9SN8R}\Benpyr\IveghnyObk Thrfg Nqqvgvbaf\IObkQeiVafg.rkr" >>> s.decode("rot13") u'{7C5A40EF-A0FB-4BFC-874A-C0F2E0B9FA8E}\\Oracle\\VirtualBox Guest Additions\\VB
Notice that Windows 7 uses special paths that need to be converted (refer to annex #1).
The path {7C5A40EF-A0FB-4BFC-874A-C0F2E0B9FA8E} is translated to %ProgramFiles% and the full path becomes:
%ProgramFiles%\Oracle\VirtualBox Guest Additions\VB
Decode values
Binary data
Binary values contained in each of these keys provide information close to the one provided by Windows prefetch files:
- number of executions
- focus time
- last execution date and time
The information contained in the keys depend on the versions:
- NT4, 95, 98: 8 bytes
- 2000, ME, XP: 16 bytes
- Vista, 7, 2008, 8: 72 bytes
Windows XP
As an example, let’s decode the value associated to following key: HRZR_EHACNGU:P:\\Qbphzragf naq Frggvatf\\haxabja\\Ohernh\\bffrp-ntrag-jva32-2.6.rkr (or UEME_RUNPATH:C:\Documents and Settings\unknown\Bureau\ossec-agent-win32-2.6.exe once decoded). Here is the binary value associated to the key:
0000 | 3D 00 00 00 06 00 00 00 0008 | B0 29 1C 28 17 38 CD 01
Following information is available:
- Session ID: unsigned int, 4 bytes
- counter: unsigned int, 4 bytes
- date time stamp: unsigned long long, 8 bytes
Here is how we could decrypt this binary string in python:
>>> from struct import unpack >>> data = "\x3D\x00\x00\x00\x06\x00\x00\x00" >>> data+= "\xB0\x29\x1C\x28\x17\x38\xCD\x01" >>> len(data) 16 >>> unpack('IIQ', data) (61, 6, 129821636371950000L)
It provides us with:
- Session ID: 61 (3d000000)
- Counter: 1 (06000000). We actually have to substract 5 to the value as the counter starts at 5
To convert the date time stamp, let’s use this function (found here):
>>> from datetime import datetime >>> def convert_windate(windate): ... # Converts 8-byte Windows DateTime stamps to Unix one ... date_format = '%Y/%m/%d %H:%M:%S UTC' ... no_nano = windate/10000000 # 10000000 - 100 nanosecond intervals in windows timestamp, remove them to get to seconds since windows epoch ... unix = no_nano - 11644473600 # number of seconds between 1/1/1601 and 1/1/1970 ... return datetime.fromtimestamp(int(unix)).strftime(date_format) ... >>> convert_windate(129821636371950000) '2012/05/22 14:33:57 UTC'
Now we also know when the program was last run:
- Last run: 2012/05/22 14:33:57 UTC (b0291c281738cd01)
Windows 7
Given following key: {Q65231O0-O2S1-4857-N4PR-N8R7P6RN7Q27}\pnyp.rkr (%windir%\system32\calc.exe once fully decoded). It has following binary value:
0000 | 00 00 00 00 11 00 00 00 0008 | 00 00 00 00 CC 42 0E 00 0010 | 00 00 80 BF 00 00 80 BF 0018 | 00 00 80 BF 00 00 80 BF 0020 | 00 00 80 BF 00 00 80 BF 0028 | 00 00 80 BF 00 00 80 BF 0030 | 00 00 80 BF 00 00 80 BF 0038 | FF FF FF FF C0 D0 66 17 0040 | D5 32 CE 01 00 00 00 00
Following information is available:
- Number of executions
- Focus count?
- Focus time
- Last execution
Let’s decode the information in python:
>>> data = "\x00\x00\x00\x00\x11\x00\x00\x00" >>> data+= "\x00\x00\x00\x00\xCC\x42\x0E\x00" >>> data+= "\x00\x00\x80\xBF\x00\x00\x80\xBF" >>> data+= "\x00\x00\x80\xBF\x00\x00\x80\xBF" >>> data+= "\x00\x00\x80\xBF\x00\x00\x80\xBF" >>> data+= "\x00\x00\x80\xBF\x00\x00\x80\xBF" >>> data+= "\x00\x00\x80\xBF\x00\x00\x80\xBF" >>> data+= "\xFF\xFF\xFF\xFF\xC0\xD0\x66\x17" >>> data+= "\xD5\x32\xCE\x01\x00\x00\x00\x00" >>> unpack("I", data[4:8]) # runcount (17,) >>> unpack("I", data[12:16]) # focus time (934604,) >>> unpack("Q", data[60:68]) # datetime (130097330042360000L,) >>> convert_windate(130097330042360000) '2013/04/06 16:43:24 UTC'
It provides us with:
- Number of executions: 17
- Focus time: 934604
- Last run: 2013/04/06 16:43:24 UTC
Tools
- From Volatility: userassist plugin
- Didier Stevens has written a nice tool to show userassist keys: UserAssist.
- UserAssistView (Nirsoft)
- RegistryDecoder project: https://code.google.com/p/registrydecoder/
Appendicies
Translation of directories
Key | Translation |
---|---|
{de61d971-5ebc-4f02-a3a9-6c82895e5c04} | Add or Remove Programs (Control Panel) |
{724EF170-A42D-4FEF-9F26-B60E846FBA4F} | %APPDATA%\Microsoft\Windows\Start Menu\Programs\Administrative Tools |
{a305ce99-f527-492b-8b1a-7e76fa98d6e4} | Installed Updates |
{9E52AB10-F80D-49DF-ACB8-4330F5687855} | %LOCALAPPDATA%\Microsoft\Windows\Burn\Burn |
{df7266ac-9274-4867-8d55-3bd661de872d} | Programs and Features |
{D0384E7D-BAC3-4797-8F14-CBA229B392B5} | %ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Administrative Tools |
{C1BAE2D0-10DF-4334-BEDD-7AA20B227A9D} | %ALLUSERSPROFILE%\OEM Links |
{0139D44E-6AFE-49F2-8690-3DAFCAE6FFB8} | %ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs |
{A4115719-D62E-491D-AA7C-E74B8BE3B067} | %ALLUSERSPROFILE%\Microsoft\Windows\Start Menu |
{82A5EA35-D9CD-47C5-9629-E15D2F714E6E} | %ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\StartUp |
{B94237E7-57AC-4347-9151-B08C6C32D1F7} | %ALLUSERSPROFILE%\Microsoft\Windows\Templates |
{0AC0837C-BBF8-452A-850D-79D08E667CA7} | (My) Computer |
{4bfefb45-347d-4006-a5be-ac0cb0567192} | Conflicts |
{6F0CD92B-2E97-45D1-88FF-B0D186B8DEDD} | Network Connections |
{56784854-C6CB-462b-8169-88E350ACB882} | %USERPROFILE%\Contacts |
{82A74AEB-AEB4-465C-A014-D097EE346D63} | Control Panel |
{2B0F765D-C0E9-4171-908E-08A611B84FF6} | %APPDATA%\Microsoft\Windows\Cookies |
{B4BFCC3A-DB2C-424C-B029-7FE99A87C641} | Desktop |
{5CE4A5E9-E4EB-479D-B89F-130C02886155} | %ALLUSERSPROFILE%\Microsoft\Windows\DeviceMetadataStore |
{7B0DB17D-9CD2-4A93-9733-46CC89022E7C} | %APPDATA%\Microsoft\Windows\Libraries\Documents.library-ms |
{374DE290-123F-4565-9164-39C4925E467B} | %USERPROFILE%\Downloads |
{1777F761-68AD-4D8A-87BD-30B759FA33DD} | %USERPROFILE%\Favorites |
{FD228CB7-AE11-4AE3-864C-16F3910AB8FE} | %windir%\Fonts |
{CAC52C1A-B53D-4edc-92D7-6B2E8AC19434} | Games |
{054FAE61-4DD8-4787-80B6-090220C4B700} | GameExplorer |
{D9DC8A3B-B784-432E-A781-5A1130A75963} | %LOCALAPPDATA%\Microsoft\Windows\History |
{52528A6B-B9E3-4ADD-B60D-588C2DBA842D} | Homegroup |
{BCB5256F-79F6-4CEE-B725-DC34E402FD46} | %APPDATA%\Microsoft\Internet Explorer\Quick Launch\User Pinned\ImplicitAppShortcuts |
{352481E8-33BE-4251-BA85-6007CAEDCF9D} | %LOCALAPPDATA%\Microsoft\Windows\Temporary Internet Files |
{4D9F7874-4E0C-4904-967B-40B0D20C3E4B} | The Internet |
{1B3EA5DC-B587-4786-B4EF-BD1DC332AEAE} | %APPDATA%\Microsoft\Windows\Libraries |
{bfb9d5e0-c6a9-404c-b2b2-ae6db6af4968} | %USERPROFILE%\Links |
{F1B32785-6FBA-4FCF-9D55-7B8E7F157091} | %LOCALAPPDATA% (%USERPROFILE%\AppData\Local) |
{A520A1A4-1780-4FF6-BD18-167343C5AF16} | %USERPROFILE%\AppData\LocalLow |
{2A00375E-224C-49DE-B8D1-440DF7EF3DDC} | %windir%\resources\0409 (code page) |
{4BD8D571-6D19-48D3-BE97-422220080E43} | %USERPROFILE%\Music |
{2112AB0A-C86A-4FFE-A368-0DE96E47012E} | %APPDATA%\Microsoft\Windows\Libraries\Music.library-ms |
{C5ABBF53-E17F-4121-8900-86626FC2C973} | %APPDATA%\Microsoft\Windows\Network Shortcuts |
{D20BEEC4-5CA8-4905-AE3B-BF251EA09B53} | Network |
{2C36C0AA-5812-4b87-BFD0-4CD0DFB19B39} | %LOCALAPPDATA%\Microsoft\Windows Photo Gallery\Original Images |
{69D2CF90-FC33-4FB7-9A0C-EBB0F0FCB43C} | %USERPROFILE%\Pictures\Slide Shows |
{A990AE9F-A03B-4E80-94BC-9912D7504104} | %APPDATA%\Microsoft\Windows\Libraries\Pictures.library-ms |
{33E28130-4E1E-4676-835A-98395C3BC3BB} | %USERPROFILE%\Pictures |
{DE92C1C7-837F-4F69-A3BB-86E631204A23} | %USERPROFILE%\Music\Playlists |
{76FC4E2D-D6AD-4519-A663-37BD56068185} | Printers |
{9274BD8D-CFD1-41C3-B35E-B13F55A758F4} | %APPDATA%\Microsoft\Windows\Printer Shortcuts |
{5E6C858F-0E22-4760-9AFE-EA3317B67173} | %USERPROFILE% (%SystemDrive%\Users\%USERNAME%) |
{62AB5D82-FDC1-4DC3-A9DD-070D1D495D97} | %ALLUSERSPROFILE% (%ProgramData%, %SystemDrive%\ProgramData) |
{905e63b6-c1bf-494e-b29c-65b732d3d21a} | %ProgramFiles% |
{6D809377-6AF0-444b-8957-A3773F02200E} | %ProgramFiles% |
{7C5A40EF-A0FB-4BFC-874A-C0F2E0B9FA8E} | %ProgramFiles% |
{F7F1ED05-9F6D-47A2-AAAE-29D317C6F066} | %ProgramFiles%\Common Files |
{6365D5A7-0F0D-45E5-87F6-0DA56B6A4F7D} | %ProgramFiles%\Common Files |
{DE974D24-D9C6-4D3E-BF91-F4455120B917} | %ProgramFiles%\Common Files |
{A77F5D77-2E2B-44C3-A6A2-ABA601054A51} | %APPDATA%\Microsoft\Windows\Start Menu\Programs |
{DFDF76A2-C82A-4D63-906A-5644AC457385} | %PUBLIC% (%SystemDrive%\Users\Public) |
{C4AA340D-F20F-4863-AFEF-F87EF2E6BA25} | %PUBLIC%\Desktop |
{ED4824AF-DCE4-45A8-81E2-FC7965083634} | %PUBLIC%\Documents |
{3D644C9B-1FB8-4f30-9B45-F670235F79C0} | %PUBLIC%\Downloads |
{DEBF2536-E1A8-4c59-B6A2-414586476AEA} | %ALLUSERSPROFILE%\Microsoft\Windows\GameExplorer |
{48DAF80B-E6CF-4F4E-B800-0E69D84EE384} | %ALLUSERSPROFILE%\Microsoft\Windows\Libraries |
{3214FAB5-9757-4298-BB61-92A9DEAA44FF} | %PUBLIC%\Music |
{B6EBFB86-6907-413C-9AF7-4FC2ABF07CC5} | %PUBLIC%\Pictures |
{E555AB60-153B-4D17-9F04-A5FE99FC15EC} | %ALLUSERSPROFILE%\Microsoft\Windows\Ringtones |
{2400183A-6185-49FB-A2D8-4A392A602BA3} | %PUBLIC%\Videos |
{52a4f021-7b75-48a9-9f6b-4b87a210bc8f} | %APPDATA%\Microsoft\Internet Explorer\Quick Launch |
{AE50C081-EBD2-438A-8655-8A092E34987A} | %APPDATA%\Microsoft\Windows\Recent |
{1A6FDBA2-F42D-4358-A798-B74D745926C5} | %PUBLIC%\RecordedTV.library-ms |
{B7534046-3ECB-4C18-BE4E-64CD4CB7D6AC} | Recycle Bin |
{8AD10C31-2ADB-4296-A8F7-E4701232C972} | %windir%\Resources |
{C870044B-F49E-4126-A9C3-B52A1FF411E8} | %LOCALAPPDATA%\Microsoft\Windows\Ringtones |
{3EB685DB-65F9-4CF6-A03A-E3EF65729F3D} | %APPDATA% (%USERPROFILE%\AppData\Roaming) |
{B250C668-F57D-4EE1-A63C-290EE7D1AA1F} | %PUBLIC%\Music\Sample Music |
{C4900540-2379-4C75-844B-64E6FAF8716B} | %PUBLIC%\Pictures\Sample Pictures |
{15CA69B3-30EE-49C1-ACE1-6B5EC372AFB5} | %PUBLIC%\Music\Sample Playlists |
{859EAD94-2E85-48AD-A71A-0969CB56A6CD} | %PUBLIC%\Videos\Sample Videos |
{4C5C32FF-BB9D-43b0-B5B4-2D72E54EAAA4} | %USERPROFILE%\Saved Games |
{7d1d3a04-debb-4115-95cf-2f29da2920da} | %USERPROFILE%\Searches |
{ee32e446-31ca-4aba-814f-a5ebd2fd6d5e} | Offline Files |
{98ec0e18-2098-4d44-8644-66979315a281} | Microsoft Office Outlook |
{190337d1-b8ca-4121-a639-6d472d16972a} | Search Results |
{8983036C-27C0-404B-8F08-102D10DCFD74} | %APPDATA%\Microsoft\Windows\SendTo |
{7B396E54-9EC5-4300-BE0A-2482EBAE1A26} | %ProgramFiles%\Windows Sidebar\Gadgets |
{A75D362E-50FC-4fb7-AC2C-A8BEAA314493} | %LOCALAPPDATA%\Microsoft\Windows Sidebar\Gadgets |
{625B53C3-AB48-4EC1-BA1F-A1EF4146FC19} | %APPDATA%\Microsoft\Windows\Start Menu |
{B97D20BB-F46A-4C97-BA10-5E3608430854} | %APPDATA%\Microsoft\Windows\Start Menu\Programs\StartUp |
{43668BF8-C14E-49B2-97C9-747784D784B7} | Sync Center |
{289a9a43-be44-4057-a41b-587a76d7e7f9} | Sync Results |
{0F214138-B1D3-4a90-BBA9-27CBC0C5389A} | Sync Setup |
{1AC14E77-02E7-4E5D-B744-2EB1AE5198B7} | %windir%\system32 |
{D65231B0-B2F1-4857-A4CE-A8E7C6EA7D27} | %windir%\system32 |
{A63293E8-664E-48DB-A079-DF759E0509F7} | %APPDATA%\Microsoft\Windows\Templates |
{9E3995AB-1F9C-4F13-B827-48B24B6C7174} | %APPDATA%\Microsoft\Internet Explorer\Quick Launch\User Pinned |
{0762D272-C50A-4BB0-A382-697DCD729B80} | %SystemDrive%\Users |
{5CD7AEE2-2219-4A67-B85D-6C9CE15660CB} | %LOCALAPPDATA%\Programs |
{BCBD3057-CA5C-4622-B42D-BC56DB0AE516} | %LOCALAPPDATA%\Programs\Common |
{f3ce0f7c-4901-4acc-8648-d5d44b04ef8f} | The user’s full name |
{A302545D-DEFF-464b-ABE8-61C8648D939B} | Libraries |
{18989B1D-99B5-455B-841C-AB7C74E4DDFC} | %USERPROFILE%\Videos |
{491E922F-5643-4AF4-A7EB-4E7A138D8174} | %APPDATA%\Microsoft\Windows\Libraries\Videos.library-ms |
{F38BF404-1D43-42F2-9305-67DE0B28FC23} | %windir% |
Prevent logging and/or ROT13 encoding
It’s possible to prevent both the encoding and the logging:
- Disable logging:
C:\>regwrite, REG_DWORD, HKCU, Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\Settings, NoLog, 1
- Disable ROT13 encoding:
C:\>regwrite, REG_DWORD, HKCU, Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\Settings, NoEncrypt, 1