Chertenok.ru - все о программировании
Вход  |  Регистрация  |  Поиск 
Праздник
Сегодня :

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


как защитить процесс?
На страницу 1, 2  След.

Новая тема  Ответить  Печать Предыдущая тема  Следующая тема
Автор Сообщение
juriy
Гость







СообщениеПт, 05-Дек-2003 13:16    Заголовок сообщения: как защитить процесс?
Цитата

Здравствуйте!
Написал тут программку,
запретил в меню "Закрыть", а из диспетчера
задач-то она всеравно убивается...
Подскажите пож. может есть какой вариант защиты от "убийства" Счастлив
и через Диспетчер Задач Виндоуз
как например процесс "Винлогон"?
В начало
Пол:Муж Gelios
Oracle-вый маньяк, Админ


Возраст: 37
Знак зодиака: Водолей
Зарегистрирован: 10.03.2005
Сообщения: 6141
Откуда: Яблочный рай
СообщениеПт, 05-Дек-2003 13:26 
Цитата

пиши обработчик OnCloseQuery
_________________
нельзя давать всем всего, ибо всех много, а всего мало
В начало
Посмотреть профиль Отправить личное сообщение
DrPass
Знающий :)
/Почетный Модератор/


Возраст: 31
Знак зодиака: Лев
Зарегистрирован: 02.05.2002
Сообщения: 5709
Откуда: Донецк
СообщениеСб, 06-Дек-2003 14:02 
Цитата

Не поможет - функция TerminateProcess грохает любой процесс, на который есть права у запустившего его юзера
Улавливаете мысль? Процесс должен быть запущен либо администратором (а юзер - обычным юзером), либо системой. Системная служба вообще не может быть грохнута никем. Но, увы, она не может и работать с GUI

_________________
Да пребудет с вами Сила!
В начало
Посмотреть профиль Отправить личное сообщение
juriy
Гость







СообщениеПн, 08-Дек-2003 11:09 
Цитата

comp Вот-вот и я о том же
на счет системного процесса,
однако, ребята подскажите пож., как процесс(или прогу лучше сказать) запустить как системный.
может нужно что-то координально в самом проекте сменить-при создании проги, или как-то реестр поправить а?
В начало
DrPass
Знающий :)
/Почетный Модератор/


Возраст: 31
Знак зодиака: Лев
Зарегистрирован: 02.05.2002
Сообщения: 5709
Откуда: Донецк
СообщениеПн, 08-Дек-2003 21:52 
Цитата

Да нет - можно просто написать его в виде службы, и указать тип старта System - тогда она будет грузиться под системой. Хорошо, но тогда в ней (я уже говорил) не должно быть ни одной GDI-функции, от CreateWindow до MessageBox
_________________
Да пребудет с вами Сила!
В начало
Посмотреть профиль Отправить личное сообщение
juriy
Гость







СообщениеСр, 10-Дек-2003 10:47 
Цитата

Да уж!
дело в том, что этих модалов в проге хватает.
а сам процесс от диспетчера в WinXP ни как не спрятать?
я помню, что в Win98 это вроде практиковалось. :(
В начало
Пол:Муж Gelios
Oracle-вый маньяк, Админ


Возраст: 37
Знак зодиака: Водолей
Зарегистрирован: 10.03.2005
Сообщения: 6141
Откуда: Яблочный рай
СообщениеСр, 10-Дек-2003 11:16 
Цитата

ну если назовешь его под именем системного процесса :)
_________________
нельзя давать всем всего, ибо всех много, а всего мало
В начало
Посмотреть профиль Отправить личное сообщение
DrPass
Знающий :)
/Почетный Модератор/


Возраст: 31
Знак зодиака: Лев
Зарегистрирован: 02.05.2002
Сообщения: 5709
Откуда: Донецк
СообщениеЧт, 11-Дек-2003 20:21 
Цитата

Цитата:
ну если назовешь его под именем системного процесса

В Win9x - хорошая жизнь была когда-то :)

Цитата:
а сам процесс от диспетчера в WinXP ни как не спрятать?

Задачка нетривиальная и довольно интересная. Обычно знающие люди говорят, что нельзя... На самом деле, я думаю, можно (опять же, при условии , что у твое проги есть права на процесс, в котором она будет ковыряться). Хотя с запущенным юзером Диспетчером эта проблема не стоит
Тебе нужно
1. Отследить запуск Диспетчера задач
2. Закинуть в него через WriteProcessMemory кусок своего кода. Цель кода - вызов функции NTQueryInformation и обработка выдаваемой ей структуры TProcessInformation на предмет удаления инфы о твоей проге.
3. Заменить в коде Диспетчера вызовы NtQueryInformation на вызовы твоего добавленного кода. Опять тем же WriteProcessMemory

Как видишь, это типичная вирусная вивисекция Диспетчера. Поверь мне, довольно геморное дело, к тому же требующее достаточной квалификации.

_________________
Да пребудет с вами Сила!
В начало
Посмотреть профиль Отправить личное сообщение
juriy
Гость







СообщениеВт, 13-Янв-2004 11:11    Заголовок сообщения: Ого-го!
Цитата

Даже не знаю чего сказать,
короче мне сперва прийдется на бананах в Африке порепетировать наверное Счастлив
В начало
potkin
Гость







СообщениеСр, 14-Янв-2004 13:23    Заголовок сообщения: Как заблокировать клаву и мыш ??????
Цитата

1) Подскажите товарищи (или господа) программеры как заблокировать клаву и мыш средствами ДЕЛФИ !!!

Была такая фишка как EnableHardwareInput(Enable:Boolean) или, что-то в этом роде, но она не работает в 7 ДЕЛФЕ ...

2) Как отправить файл по Электронной почте скажем на мой e-mail .


Зарание Благодарин !!!
В начало
Пол:Муж Gelios
Oracle-вый маньяк, Админ


Возраст: 37
Знак зодиака: Водолей
Зарегистрирован: 10.03.2005
Сообщения: 6141
Откуда: Яблочный рай
СообщениеСр, 14-Янв-2004 14:48 
Цитата

1.что значит не работает?
2. см indy

_________________
нельзя давать всем всего, ибо всех много, а всего мало
В начало
Посмотреть профиль Отправить личное сообщение
Пол:Муж dogma
aka Достоевский


Возраст: 27
Знак зодиака: Телец
Зарегистрирован: 20.12.2004
Сообщения: 1702
Откуда: Холмск
СообщениеПт, 12-Авг-2005 3:56 
Цитата

Цитата:
задачка нетривиальная и довольно интересная. Обычно знающие люди говорят, что нельзя... На самом деле, я думаю, можно (опять же, при условии , что у твое проги есть права на процесс, в котором она будет ковыряться). Хотя с запущенным юзером Диспетчером эта проблема не стоит
Тебе нужно
1. Отследить запуск Диспетчера задач
2. Закинуть в него через WriteProcessMemory кусок своего кода. Цель кода - вызов функции NTQueryInformation и обработка выдаваемой ей структуры TProcessInformation на предмет удаления инфы о твоей проге.
3. Заменить в коде Диспетчера вызовы NtQueryInformation на вызовы твоего добавленного кода. Опять тем же WriteProcessMemory

Круто! Вот решил что-то эдакое выдернуть из DRKB и выставить на обозрение.
Зааттачил библиотеку и приложение, которое не видимо в TaskMeneger.



inVisible_under_XP.zip
 Описание:
второй параметр функции HideProcess определяет нужно ли прятать процесс только от TaskManager'а, или же от остальных программ, использующих для получения списка процессов функцию NtQuerySystemInformation из ntdll.dll.

Скачать
 Имя файла:  inVisible_under_XP.zip
 Размер:  47.85 KB
 Загружен:  550 раз(а)


_________________
Bonum initium est dimidium facti
SQL-задачи (on-line)
В начало
Посмотреть профиль Отправить личное сообщение
Пол:Муж Ktf
Администратор


Возраст: 32
Знак зодиака: Рак
Зарегистрирован: 15.05.2005
Сообщения: 1502
Откуда: localhost
СообщениеПт, 12-Авг-2005 5:52 
Цитата

хм, nthide.dll - известная и весьма неплохая библиотека.
однако и ее легко можно обойти.
в свое время для себя я написал альтернативный диспетчер задач, специально для обнаружения пытающихся скрыться программ.
функция NtQuerySystemInformation вызывается не из программы-диспетчера, а из некой защищенной службы. :)
при обновлении информации о процессах диспетчер шлет запрос службе, та получает необходимую информацию и передает ее диспетчеру.
В начало
Посмотреть профиль Отправить личное сообщение
psa247
Гость







СообщениеЧт, 01-Сен-2005 11:00 
Цитата

Как выход - параллельно запускать сторожевой процесс. Стартовать нужно не из реестра Run, а использовать COM, ну а дальше - дело техники.
В начало
Серж
Гость







СообщениеСр, 14-Сен-2005 15:32 
Цитата

А чего дохтор веб кричит что в nthide.dll присутствует троян?
В начало
Показать сообщения:   
Страница 1 из 2 На страницу 1, 2  След.
Перейти:  
Новая тема  Ответить  Печать

Вы можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете присоединять файлы в этом форуме
Вы можете скачивать файлы в этом форуме
хостинг от .masterhost 
Rambler's Top100