1

Тема: Ведение лога запускаемых программ

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

Ну и вкратце алгоритм, если можно.

Заранее благодарю.

Нас невозможно сбить с пути, нам пофигу куда идти.

2

Re: Ведение лога запускаемых программ

OFF: DnsIs, проще всего — на Process Monitor (Process Monitor) с установленным фильтром «Operation = Process Create+Process Start+Process Exit». А при установленном параметре «Enable Boot logging» покажет и всё, что происходит при загрузке.

3

Re: Ведение лога запускаемых программ

Хотелось бы прогу-невидимку.

Нас невозможно сбить с пути, нам пофигу куда идти.

4

Re: Ведение лога запускаемых программ

DnsIs пишет:

…невидимку.

Таких не бывает .

5

Re: Ведение лога запускаемых программ

Ну без ГУЕв. Которая бы просто писала себе по-тихонечку и все

Нас невозможно сбить с пути, нам пофигу куда идти.

6

Re: Ведение лога запускаемых программ

Ну, тогда примерно так:

Option Explicit

Const ForAppending = 8
Const TristateTrue = -1


Dim strComputer

Dim objSWbemLocator
Dim objSWbemServicesEx
Dim objSWbemEventSource
Dim objSWbemObjectEx

Dim objFSO
Dim objTS


strComputer = "."

Set objSWbemLocator     = WScript.CreateObject("WbemScripting.SWbemLocator")
Set objSWbemServicesEx  = objSWbemLocator.ConnectServer(strComputer, "root\cimv2")
Set objSWbemEventSource = objSWbemServicesEx.ExecNotificationQuery( _
    "SELECT * FROM __InstanceCreationEvent WITHIN 1 " & _
    "WHERE TargetInstance ISA 'Win32_Process'")

Set objFSO              = WScript.CreateObject("Scripting.FileSystemObject")

Do
    Set objSWbemObjectEx = objSWbemEventSource.NextEvent()
    
    Set objTS = objFSO.OpenTextFile("c:\MyLog.txt", ForAppending, True, TristateTrue)
    
    With objSWbemObjectEx.TargetInstance
        objTS.WriteLine Now() & " " & _
            .Name & " " & _
            .ProcessID & " " & _
            .ParentProcessID & " " & _
            .ExecutablePath & " " & _
            .CommandLine
    End With
    
    objTS.Close
    
    Set objTS = Nothing
Loop

Set objFSO             = Nothing

Set collSWbemObjectSet = Nothing
Set objSWbemServicesEx = Nothing
Set objSWbemLocator    = Nothing

WScript.Quit 0

7

Re: Ведение лога запускаемых программ

alexii - тогда уж постоянного получателя один раз и все

автор - есть такая оснастка "мастер настройки безопасности", там аудит настраивается и в том числе сабжа

Я конечно далек от мысли... (с)

8

Re: Ведение лога запускаемых программ

smaharbA, знать бы, что автору нужен именно постоянный. Лично я предпочитаю такого плана — быстрее и проще перенастроить, если что.