Software microsoft windows currentversion explorer userassist

Время на прочтение7 мин

Количество просмотров23K

Всем привет, Хабровчане!

Думаю ни у кого не возникает сомнений в важности грамотной работы специалистов ИБ и ИТ служб, учитывая события недавних дней с ТК СДЭК, а также другие крупные взломы/утечки, которых было немало за последние пару, тройку лет. Обеспечение грамотной работы включает в себя обычно комплекс мероприятий, да и в целом в работе служб ИБ есть множество направлений, где одним из интереснейших направлений, без которого, на мой взгляд, трудно обойтись, является компьютерная криминалистика (Forensic или форенсика).

Если говорить простым языком, то форенсика позволяет понять кто/что делал/делало в определённое время в компьютерной системе, а её методы можно применять как на этапе расследования уже случившегося инцидента, так и для целей мониторинга, предотвращения будущих инцидентов. Внутри направление форенсики тоже делится на отдельные поднаправления в зависимости от того, что мы исследуем. Можно выделить форенсику настольных ОС, мобильных ОС, форенсику компьютерных сетей и форенсику умных устройств IOT.

Мой интерес и выбор когда-то пал на семейство настольных ОС Windows поскольку в корпоративных инфраструктурах эта система очень распространена. Поэтому в данной статье хочу поделиться некоторыми наработками, связанными с форенсикой реестра ОС Windows 8-11 и показать какие сведения из него полезны для ИБ служб при мониторинге или расследовании, а также где в нём их искать.

Прежде чем перейти к рассмотрению полезных сведений из реестра давайте чуть-чуть поговорим о том, что представляет из себя сам реестр непосредственно.

Структурно реестр Windows это иерархическая организация (в документации MS применяется термин «system-defined database»), в которой размещены для хранения параметры системы/программ/железа, но здесь также можно найти много интересного и для ИБшника. В этой иерархии можно выделить следующие части:

  • Разделы/они же Ветки реестра (Hives).

  • Ключи реестра (Keys).

  • Вложенные ключи реестра (Sub-Keys).

  • Параметры ключей и их значения (Values).

Реестр в OC Windows 10

Реестр в OC Windows 10

Кроме того 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
(String Value)

Null-terminated строка в ASCII или Unicode

REG_MULTI_SZ
(Multi-String Value)

Последовательность из Null-terminated строк, например String\0String2\0String3\0LastStr\0\0

REG_DWORD
(DWORD (32 bit) Value)

Число длиной 32 бита

REG_BINARY
(Binary Value)

Бинарные данные

REG_QWORD
(QWORD (64 bit) Value)

Число длиной 64 бита

REG_EXPAND_SZ
(Expandable String Value)

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, то параметр в ключе реестра создан не будет. Этот артефакт позволяет узнать следующее:

  • На хосте точно запускалась та или иная программа определённым пользователем.

  • С помощью программы, возможно, по сети могли получить и сохранить файл, если у программы есть подобный функционал.

  • По какому конкретно пути был открыт файл (возможно для модификации) или сохранён. Название файла, к сожалению, получить нельзя.

Интерпретированные данные артефакта Last Visited MRU в Registry Explorer

Интерпретированные данные артефакта Last Visited MRU в Registry Explorer

Артефакт 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 опубликован здесь.

Данные артефакта User Assist в regedit

Данные артефакта User Assist в regedit

В операционных системах 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.

userassistv2a.PNG

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).
userassist_explain_1.png
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 — количество запуска программы

реестр-3.jpg

База данных совместимости приложений 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

ShimCacheParser.jpg

Примечание:

  • В 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

lnk-parse.jpg

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 ).

Рассмотрим все эти данные с помощью программ

Ссылка скрыта от гостей

и

Ссылка скрыта от гостей

LastActivityView1.jpg

ExecutedProgramsList2.jpg

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 command­line (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

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Тест компьютера на совместимость с windows 11
  • Smart life for windows
  • Учетная запись администратора windows vista
  • Установить windows 10 версия 1809
  • Inetres admx windows 7