1

Тема: VBS : «calc.exe» - должен умереть

Задача:
не допустить (хочется сказать «любой ценой») запуск «calc.exe»

Условие: 
Решение должно быть простое и гениальное .. ведь эту тему не раз подымали

Решение:

Proc_Name = "calc.exe" 
  
Set oWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2") 
  
Set oMonitoredProc = oWMIService.ExecNotificationQuery("select * from __instancecreationevent " & " within 1 where TargetInstance isa 'Win32_Process'") 
Do While True 
    Set oLatestProcess = oMonitoredProc.NextEvent 
    If oLatestProcess.TargetInstance.Name = Proc_Name Then oLatestProcess.TargetInstance.Terminate 
Loop

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

Размышления:
Может, есть вариант не допустить запуск приложения (exe, cmd…), проанализировать его (пути запуска, ключи.. дочерние процесы) , и решить надо ли его запускать и как его запускать
Точно знаю, в винде  такой алгоритм применяется, как пример - блокирование или  разрешение приложений (реестр)….

Возможно ли это вообще через VBS?
Искать библиотеки , АПИ .. подскажите правильное направление

В одной шелке встречал что-то подобное там даже контрольную сумм файлов подбивали (параноики чтоли? .. хотя может их просто это все достало  .. ), у меня же проблема что шелку ставить нельзя, юзеры(бухи, и  другие импы) не понимают .. им все кнопочку пуск подавай

2

Re: VBS : «calc.exe» - должен умереть

Image File Execution Options
…и, помнится, что-то было в групповой политике такое.

testtt пишет:

В одной шелке встречал что-то подобное там даже контрольную сумм файлов подбивали (параноики чтоли? .. хотя может их просто это все достало  .. )

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

3

Re: VBS : «calc.exe» - должен умереть

Почему бы просто не убрать права на файл?

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

4 (изменено: testtt, 2009-05-14 16:37:33)

Re: VBS : «calc.exe» - должен умереть

The gray Cardinal пишет:

Почему бы просто не убрать права на файл?

вариант рассматривался, от него отказались

5

Re: VBS : «calc.exe» - должен умереть

OFF: Опять гланды через ж… ?

6

Re: VBS : «calc.exe» - должен умереть

alexii пишет:

Image File Execution Options
…и, помнится, что-то было в групповой политике такое.

testtt пишет:

В одной шелке встречал что-то подобное там даже контрольную сумм файлов подбивали (параноики чтоли? .. хотя может их просто это все достало  .. )

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

в принципе я таки работаю но это немного не удобно, к примеру у меня два "..\prog.exe"  но разные пути " d:\ c:\"
c:\"..\prog.exe"  - запускать от users
d:\"..\prog.exe" - - запускать как админс
или временные параметры,..  да куча всяких параметров эх

короче надо сделать:
1. перехват запуска (отменить запуск получить дескриптор приложения, dll... )
2. разобрать откуда ноги
3. выполнить задачу , или сообщить пользователю что он не прав
(помнишь времена когда вирусы охотились на вирусов )) ..  все больше склоняюсь к полноценному проекту на с++ и библиотеками на асме для быстрого сканирования)

7

Re: VBS : «calc.exe» - должен умереть

да и что мешает пользователю переименовать total в notpad .. хош не хош параноиком станешь

8

Re: VBS : «calc.exe» - должен умереть

вроде пункт 2 и 3 .. разобрал а вот с 1 пока облом

склоняюсь к методу на писания dll методом….  выдирания  модуля из Касперского (а че за одно и на виусы проверим ) серавно он постоянно сканит так пусть хоть на благо меня родимого…

9

Re: VBS : «calc.exe» - должен умереть

testtt
Слушай, давай пиши как следует, не нарушай Правила форума. Точки и заглавные. И осмысленность писанины. Я, например, пост #4 вообще не понимаю — это белиберда какая-то, на нерусском языке .

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

10

Re: VBS : «calc.exe» - должен умереть

The gray Cardinal   - был, неправ исправлюсь.

Нарыл кучу, материал пока буду думать.

Тему, считаю закрытой, так как сам не знаю, чего хочу.

11

Re: VBS : «calc.exe» - должен умереть

testtt пишет:

The gray Cardinal   - был,

Он и сейчас есть.

12

Re: VBS : «calc.exe» - должен умереть

2testtt, это интересно

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

13

Re: VBS : «calc.exe» - должен умереть

Можно запретить запуск калькулятора через реестр винды.

Главное - желание

14

Re: VBS : «calc.exe» - должен умереть

Можно на АНК написать скрипт, который будет сканить процессы и закрывать calc.exe...

Я не Мастер, я только учусь...

15

Re: VBS : «calc.exe» - должен умереть

Лучше это через "Локальные параметры безопасности" сделать, а не мудрить со скриптами.
Secpol.msc
Политики ограниченного использования программ->Дополнительные правила
Создаем правило для хеша, в котором указываем нужный исполняемый файл и Безопасность ставим Не разрешено

16

Re: VBS : «calc.exe» - должен умереть

2VitAliS: Во-во . Спасибо, что напомнили.

17 (изменено: tater, 2009-07-30 17:18:11)

Re: VBS : «calc.exe» - должен умереть

Тема уже постарела, но отпишусь)

Есть еще вариант запрета. Через реестр.

Нужно создать раздел с именем файла в

   HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\

и в нем создать строковой параметр "debugger".
Значение этого параметра указывает на файл, который будет запущен вместо "убиваемого".

Если указать значение "" или null, то при запуске calc.exe будет выдана ошибка что файл не найден.
Если указать значение "cmd.exe /C exit" то на экране просто промелькнет окошко командной строки.

Минус у этого метода есть:
если переименовать calc.exe в, например calc2.exe то он запустится.

А если пользоваться политикой безопасности, то не запустится.