Просмотр истории установки и удаления программ в Windows

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

Для просмотра журнала установки приложений:

  1. Откройте консоль журнала событий Event Viewer ( eventvwr.msc )
  2. Перейдите в раздел Windows Logs -> Application
  3. Щелкните правой кнопкой по журналу и включите фильтр ( Filter current log )
  4. В качестве источника событий выберите MsiInstaller . События с EventID 11707 содержат информацию об успешной установке программы ( Installation completed successfully ).
    EventID 11724 – события успешного удаления пакета ( Removal completed successfully ).

    В этом журнале будут фиксироваться только события установки приложений, упакованных в MSI/MSP пакеты (или в EXE файлы, которые фактически запускают установку MSI пакета с помощью msiexec.exe ). Для установки MSI пакетов используется служба установки Windows Installer ( msiserver ), которая позволяет выполнить корректную установку удаление или откат установки приложения. Некоторые приложения, распространяемые через EXE файлы не используют службу msiserver и соответственно не пишут такие события.

  5. Если вы хотите определить, какой конкретно пользователь удалил или установил программу, перейдите на вкладку Details в свойствах события. Переключитесь в режим XML view . SID пользователя указан в значении атрибута Security UserID. Скопируйте его.
  6. Чтобы конвертировать SID пользователя в имя учетной записи , выполните команду:
    wmic useraccount where sid='S-1-5-21-506968642-4209078585-1781862235-1001' get name

Команда вернет имя пользователя, который инициировал установку или удаление программы.

Если нужно извлечь события установки/удаления программ из журнала событий с помощью PoweShell, воспользуйтесь командлетом Get-WinEvent . Например, вывести журнал успешных установок программ:

Get-WinEvent -FilterHashtable @{LogName="Application";ID=11707;ProviderName='MsiInstaller'} | Select TimeCreated,Message

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

В Windows есть еще более удобный инструмент, который позволяет в одном окне показать историю установки/удаления/обновления программ, включай приложения Microsoft Store, а также историю установки обновлений Windows . Речь о Мониторе стабильности системы ( Reliability Monitor ).

Reliability Monitor – это отдельный апплет в классической панели управления Windows, который в графическом виде отображает индекс стабильности системы и подробные сведения о событиях, которые могли повлиять на стабильность ОС (сбои в программах, установка/удаление приложений и прочее).

Чтобы открыть Reliability Monitor, перейдите в панель управления -> Security and Maintenance, нажмите на ссылку View reliability history в разделе Maintenance (или просто выполните команду ( perfmon /rel ).

Здесь в разрезе по дням/неделям можно посмотреть какие обновления, программы и UWP приложения устанавливались или удалялись. Подробную информацию о событии можно получить, нажав на кнопку View technical retails .

Для построения отчетов об установке/удалении приложений из монитора стабильности можно использовать PowerShell. Следующий скрипт выведет в графическую таблицу Out-GridView все события установки, удаления и обновления программ, Windows Updates, APPX/MSIX на компьютере за последние 7 дней.

$DaysAgo = (Get-Date).AddDays(-7)
$RealiabilityFilter= "TimeGenerated > '$DaysAgo' and (SourceName='Microsoft-Windows-WindowsUpdateClient' or SourceName='MsiInstaller')"
Get-CimInstance -ClassName Win32_ReliabilityRecords -filter $RealiabilityFilter|Select TimeGenerated,ProductName,User,message |Out-GridView

С помощью встроенных фильтров Out-GridView можно отфильтровать все связанные события по конкретному приложению, определенному событию или пользователю.

Если вы хотите дополнительно отслеживать историю использования (запуска) программ в Windows , можно настроить политику аудита процессов ( Audit process tracking ).
admin

Share
Published by
admin

Recent Posts

Настройка Mercurial по HTTPS

Иногда mercurial, при скачивании и комитах ругается на https. Особенно на самоподписанные сертификаты. Чтобы заработал…

3 дня ago

Компиляция libvirt в Ubuntu

Компиляция libvirt Подробнее

3 дня ago

Ошибка libvirt permission denied: решение

Если возникает ошибка libvirt destroy lxc permission denied , при попытке остановить контейнер: _x000D_# virsh…

3 дня ago

Настройка редиректа в NGINX

Файлы с примерами редиректа для nginx Подробнее

3 дня ago

Включение gzip в NGINX

Как включить gzip сжатие в Nginx ? Подробнее

3 дня ago

Удаление postinst-скрипта в Linux

Иногда возникает ситуация, когда криво настроенные пакеты не устанавливаются в системе. У меня это произошло…

3 дня ago