Звіт про запуск програм на комп'ютерах користувачів
Якщо мова йде про звіт про запуск програм на комп'ютерах користувачів, то ймовірно мова про моніторинг використання програм на комп'ютерах працівників у компанії або організації. Такий моніторинг може бути корисним для керівництва компанії або організації, щоб зрозуміти, які програми використовують працівники, як вони впливають на продуктивність, чи не порушуються правила користування комп'ютерами та програмами.
Звіт про запуск програм на комп'ютерах користувачів може містити такі елементи:
Дату та час запуску програми;
Назву програми, що була запущена;
Користувача, який запустив програму;
Тривалість використання програми;
Кількість запусків програми.
Такі дані можуть бути зібрані за допомогою спеціального програмного забезпечення, що встановлюється на комп'ютери працівників. Звіти можуть бути автоматично згенеровані та відправлені на електронну пошту керівництва компанії або організації або збережені у спеціальній базі даних для подальшого аналізу.

Звіт про запуск програм на комп'ютерах користувачів може бути корисним інструментом для керівництва компанії або організації, щоб збільшити продуктивність працівників, запобігти використанню нелегального програмного забезпечення, а також забезпечити безпеку комп'ютерних систем та даних. Проте, при використанні такого моніторингу, необхідно дотримуватись принципів приватності та конфіденційності даних користувачів.
Windows*, Системне адміністрування*, Інформаційна безпека*
Всім привіт!
Звіт про те, що користувач запускає на своєму комп'ютері, вкрай важливий. З багатьох поглядів. Особливо з погляду інформаційної безпеки.
Інформація про запуск програм на комп'ютерах користувачів зберігається в журналі безпеки. Звісно, розглядається середовище Windows. В Інеті готового рішення не знайшов, тож зробив свою реалізацію.
Скрипт запускається на сервері. На виході маємо набір файлів зі звітами про запуск програм.
Картинка для привернення уваги:
Основна ідея така. Поточні події журналу безпеки зберігаються в evt-файлі клієнтського комп'ютера. Файл копіюється на сервер, де інформація завантажується на SQL Server. Потім SQL-запитом формується звіт та зберігається у файл.
Тепер як це реалізовано.
Необхідно створити папки Log, Logs, CheckComps, Logi_ForReports та Computer. У мене є папки на диску F. У папці Log створити файл list.txt зі списком комп'ютерів, які необхідно перевірити. Кожне ім'я комп'ютера з нового рядка. Я створив два файли list.txt і list7.txt для XP і сімок відповідно. У папці Computer створити файл is_computer_online_listComps.vbs
Вміст файлу is_computer_online_listComps.vbs:
Запускається процедура перевірки bat-файлом. Посилання на нього можна зробити, наприклад, на робочому столі.
bat-файл
Основний скрипт is_computer_online_listComps.vbs читає список комп'ютерів із текстового файлу і для кожного запускає bat-файл формування звіту. Для XP це файл is_computer_online.bat, для 7 — is_computer_online7.bat.
Примітка.
На сервері потрібно встановити logparser.
Все описане має запрацювати на комп'ютері адміністратора. Тільки потрібно встановити Microsoft SQL Server 2008 NATIVE CLIENT і Microsoft SQL Server 2008 Command Line Utilities. Але я не перевіряв.
Блок роботи з комп'ютерами XP
Bat-файл:
is_computer_online.bat
Bat файл запускає скрипт. Скрипт виконує збереження подій журналу безпеки в evt-файл та запускає основний батник mo2csv.bat.
is_computer_online.vbs
mo2csv.bat робить наступне:
— Забирає evt-файл із віддаленого комп'ютера на сервер.
— Перетворює evt-файл на evtx.
— Вивантажує лише події запуску/зупинки програм з evtx-файлу до текстового файлу CSV.
— Інформацію із текстового файлу закачує на SQL Server.
— Бекапіт оригінальний evt-файл до папки Logi_ForReports (раптом користувач зітре свій журнал, а у нас копія є).
— Видаляє тимчасовий evtx-файл.
— Формує та виконує sql-запит до SQL Server'у.
— Видаляє тимчасові файли (у разі налагодження або вивчення роботи скрипта, цей розділ можна закоментувати).
— Переміщує звіти до папки CheckComps.
mo2csv.bat
get_info_from_log.sql
get_info_from_log_2SQL.sql
update_csvFile_forSQLCheck.vbs
create_SQL_full.vbs
template-short.sql
update_result_file.vbs
Блок роботи з комп'ютерами із сімкою
Bat-файл:
is_computer_online7.bat
Bat файл запускає скрипт. Скрипт виконує збереження подій журналу безпеки в evt-файл та запускає основний батник mo7.bat.
is_computer_online7.vbs
mo7.bat робить наступне:
— Забирає evt-файл із віддаленого комп'ютера на сервер.
— Перетворює evt-файл на evtx.
— Інформація з evtx-файлу закачує на SQL Server.
— Бекапіт оригінальний evt-файл до папки Logi_ForReports (раптом користувач зітре свій журнал, а у нас копія є).
— Видаляє тимчасовий evtx-файл.
— Формує та виконує sql-запит до SQL Server'у.
— Видаляє тимчасові файли (у разі налагодження або вивчення роботи скрипта, цей розділ можна закоментувати).
— Переміщує звіти до папки CheckComps.
mo7.bat
get_info_from_log7.sql
create_SQL_full7.vbs
template-short7.sql
update_result_file7.vbs
На SQL Server'і треба створити функцію FU_GET_FULL_QTY_TEST:
FU_GET_FULL_QTY_TEST
Архів зі скриптами можна завантажити тут.
Знаю, здається багато батників та скриптів. Але досить один раз налаштувати та користуватися потім.
Update.
Налаштування журналу безпеки для збереження подій запуску/зупинення програм та номера подій
Для XP
EventID 592 для створення процесу, 593 для завершення.
Налаштування аудиту.
````
secedit /configure /cfg c:\XP\secsetup.inf /db secsetup.sdb /verbose /overwrite /quiet
````
Шматок із файлу secsetup.inf:
````
[Event Audit]
; 0 - Выключено
; 1 - Только успех
; 2 - Только отказ
; 3 - Успех и отказ
AuditSystemEvents = 3
AuditLogonEvents = 3
AuditObjectAccess = 3
AuditPrivilegeUse = 3
AuditPolicyChange = 3
AuditAccountManage = 3
AuditProcessTracking = 3
AuditAccountLogon = 3
````
Для 7
EventID 4688 для создания процесса, 4689 для завершения.
Настройки аудита.
Для русской:
auditpol.exe /set /category:"Подробное отслеживание" /subcategory:"Создание процесса" /success:enable /failure:enable
auditpol.exe /set /category:"Подробное отслеживание" /subcategory:"Завершение процесса" /success:enable /failure:enable
Для английской:
auditpol.exe /set /category:"Detailed Tracking" /subcategory:"Process Creation" /success:enable /failure:enable
auditpol.exe /set /category:"Detailed Tracking" /subcategory:"Process Termination" /success:enable /failure:enable
auditpol.exe /set /category:«Детальне відстеження» /subcategory:«Створення процесу» /success:enable /failure:enable
auditpol.exe /set /category:«Детальне відстеження» /subcategory:«Завершення процесу» /success:enable /failure:enable
````
Для англійської:
````
auditpol.exe /set /category:«Detailed