Что нового

[Процессы] Как запретить закрытие процесса

Статус
Закрыто для дальнейших ответов.

_Lexa98_

Осваивающий
Сообщения
551
Репутация
25
Нужно запретить закрытие процесса таким образом, чтобы при попытке закрытия, появлялась ошибка как в антивирусах (Отказано в доступе). Это нужно для того, чтобы предотвратить попытки вирусов закрыть защитника, которого мы делаем с Ganibal95.
Скриншот одного из недоделанных пунктов программы:

Всё это нужно для хороших целей :smile:
 

DarWiM

Продвинутый
Сообщения
527
Репутация
90
наверное запустить процесс от имени системы?
 

DarWiM

Продвинутый
Сообщения
527
Репутация
90
Ganibal95
А вот этого я не знаю..)

Не это ли?
http://forum.ru-board.com/topic.cgi?forum=62&topic=22241
 

Ganibal95

GreenBytes
Сообщения
877
Репутация
240
DarWiM
Возможно, как дизайн закончу буду дальше копать...
 

Arei

Скриптер
Сообщения
938
Репутация
115
OffTopic:
Новый говно антивирусник-защитник?
Желаю удачи.
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Писать "антивирус" на AutoIT глупая затея.
1 причина уже известна. Вторая заключается в том что Вам не хватит знаний ASM написать драйвер защищающий Вашу программу. А так же добавить его в "Нулевое кольцо" (Ring0)

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

Ganibal95

GreenBytes
Сообщения
877
Репутация
240
Medic84
Никто не говорит что это антивирус. Это защитник... Захотелось мне написать!!!
А все-же тема не о проекте, а о защите процесса хотя -бы от ProcessClouse()
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Ganibal95
Защитник, который даже не может защитить самого себя? Тогда даже продолжать не стоит.

P.S. Полезняшку поставлю только за дизайн ( и то баннер сбоку совсем не вписывается).
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
на первых порах, пока вирусописатели и знать не будут об этой программе, я думаю ей нечего не угрожает ;D
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Ganibal95 [?]
А все-же тема не о проекте, а о защите процесса хотя -бы от ProcessClouse()
Для тех кто в танке объясняю:
Антивирусы не защищают сами себя! Их защищают их драйвера-ядра. Пока ты такое не напишешь - все остальное бессмысленно. И мало того написать, его нужно будет защитить запуская драйвер из нулевого кольца (или в драйвере открывать поток нулевого кольца, не вдавался в особые подробности)

Обязательно к прочтению:
http://en.wikipedia.org/wiki/Ring_(computer_security)
 

Ganibal95

GreenBytes
Сообщения
877
Репутация
240
Medic84
Поздравляю!!! Закрывай тему!!! Достали!!! Я по просил помочь форум, а мне плохо -плохо!!! Ну х*р с вами... Меня все равно не кто не остановит!!! :mad:
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Ganibal95
На здоровье. Тебе говорят не терять время, советуют как лучше, а ты тут всех х*ми обкладываешь. Не хорошо.
Неужели ты не понимаешь что помочь тебе НЕРЕАЛЬНО в данной ситуации... Кроме того что я сказал.

Все то что я тебе сказал я взял не с потолка. Я поинтересовался у золотого бета-тестара Касперского, я не особо удивился на то что он ответил...

P.S. Учи ASM, универсальный язык :smile: А так сейчас буду думать над твоим поведением.
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
TO ALL
На будующее:
Код:
.386p 
 .model    flat 
 .radix 16 

 Ring_0_CS_32 = 28 
 Ring_0_DS_32 = 30 

 public CALLRING0PROC 

 _TEXT segment dword public use32 'CODE' 

 CALLRING0PROC proc  near 
     ; Get the LDT's address first 
 push ebp 
 mov ebp,esp 
 sub esp,8 
 push edi 
 sgdt [ebp-8] 
 mov edi,[ebp-6] 
 sldt ax 
 and ax,0fff8 
 movzx eax,ax 
 add edi,eax 
 mov eax,[edi+2] 
 mov [ebp-8],eax 
 mov al,[edi+7] 
 mov [ebp-5],al ; EBP-8 now contains LDT's address 
 mov ax,[edi] 
 and al,0f8 
 movzx eax,ax 
 mov [ebp-4],eax ; EBP-4 contains LDT's Limit 
     ; Then allocate a descriptor 
     mov edi,[ebp-8] 
 Search :cmp dword ptr [edi+eax],0 
 jne Search_Next_Desc 
 cmp dword ptr [edi+eax+4],0 
 je Found_Unused_Desc 
 Search_Next_Desc  : 
 sub ax,8 
 jns Search 
 mov eax,0fffffffe ; Return -2 if error 
 jmp Done 
 Found_Unused_Desc : 
 add edi,eax ; EDI contains the Descriptor's address 
 add al,7 ; AX contains the selector 
     ; Create the call gate 
 mov [ebp-4],ax 
 mov dword ptr [edi],offset DGROUP:Shell 
 mov eax,Ring_0_CS_32+0ec000000 
 xchg eax,[edi+2] 
 mov [edi+6],ax 
     ; Call the gate and transfer to Shell 
 call fword ptr [ebp-8] 
     ; Free the selector 
 mov dword ptr [edi],0 
 mov dword ptr [edi+4],0 
 Done   :pop edi 
 mov esp,ebp 
 pop ebp 
 ret 4 ; Clean up parameter 
 CALLRING0PROC endp 

 Shell proc far 
 push ds 
 push es 
 push edi 

         MOV ECX,[ESI] 
 ADD ESI,4 
 push 0f12ff34f 
 PUSHARG: 
         PUSH DWORD PTR [ESI] 
 ADD ESI,4 
 LOOP PUSHARG 

 mov ax,Ring_0_DS_32 
 mov ds,ax 
 mov es,ax 
 call dword ptr [ebp+8] 

          
 POPARG: 
         POP ESI 
 CMP ESI,0f12ff34f 
 JNE POPARG 
 pop edi 
 pop es 
 pop ds 
 ret 
 Shell endp 

 _TEXT ends 

 end

Можете делать с этим кодом все что захотите. Выдрано из: "Как получить привелегию Ring 0"
Относится к антивирусмейкерам...
 
Статус
Закрыто для дальнейших ответов.
Верх