Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как не дать завершить свой процесс? 
:(
    Опции темы
nod3264
Дата 9.2.2010, 21:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 68
Регистрация: 2.8.2009

Репутация: нет
Всего: 1



В прошлой теме я хотел спрятать процесс, но сделать это удалось только для xp. 
Но у нас на работе стоят компы с Windows 7. 

Поэтому хочу сделать не убиваемый процесс(хотя бы из диспетчера задач).

Сейчас приложение работает как сервис, но его процесс спокойно убивается, не смотря на то, что в диспетчере он помечен как системный.
Подскажите что сделать чтобы работники не могли убить процесс диспетчером?

Это сообщение отредактировал(а) nod3264 - 9.2.2010, 21:11
PM MAIL   Вверх
bems
Дата 9.2.2010, 21:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 21
Всего: 88



Работники же под ограниченными юзерами у вас?


--------------------
Обижено школьников: 8
PM MAIL   Вверх
kami
Дата 9.2.2010, 21:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1806
Регистрация: 25.8.2007
Где: Санкт-Петербург

Репутация: 15
Всего: 72



Цитата(nod3264 @  9.2.2010,  21:10 Найти цитируемый пост)
Подскажите что сделать чтобы работники не могли убить процесс диспетчером?

Не давать пользователям права администратора.
PM MAIL WWW   Вверх
nod3264
Дата 9.2.2010, 21:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 68
Регистрация: 2.8.2009

Репутация: нет
Всего: 1



У них нормальные права, не ограниченные.

Не давать права не получается. Они нужным им. 
PM MAIL   Вверх
Данкинг
Дата 9.2.2010, 22:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: нет
Всего: 130



Отключи диспетчер задач. smile 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
nod3264
Дата 9.2.2010, 22:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 68
Регистрация: 2.8.2009

Репутация: нет
Всего: 1



Кроме диспетчера инет завален всякими прогами для мониторинга процессов
PM MAIL   Вверх
kami
Дата 9.2.2010, 22:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1806
Регистрация: 25.8.2007
Где: Санкт-Петербург

Репутация: 15
Всего: 72



Цитата(nod3264 @  9.2.2010,  22:18 Найти цитируемый пост)
Кроме диспетчера инет завален всякими прогами для мониторинга процессов

В общем случае не дать обнаружить/прервать процесс безумно сложно.
Взять к примеру ProcessHunter, позволяющий использовать кучу методов обнаружения процессов (на счет удаления - не скажу, не знаю).
PM MAIL WWW   Вверх
bartram
Дата 9.2.2010, 22:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1606
Регистрация: 22.2.2004
Где: Russia, Samara

Репутация: 3
Всего: 29



nod3264, у вас в конторе Домен используется?


--------------------
В каждом из нас спит гений, но с каждым днем все крепче ;-)
bartram.ru
Twitter
user posted image 

PM MAIL ICQ   Вверх
nod3264
Дата 10.2.2010, 00:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 68
Регистрация: 2.8.2009

Репутация: нет
Всего: 1



Что за Домен?
PM MAIL   Вверх
bartram
Дата 10.2.2010, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1606
Регистрация: 22.2.2004
Где: Russia, Samara

Репутация: 3
Всего: 29



Цитата(nod3264 @  10.2.2010,  02:09 Найти цитируемый пост)
Что за Домен? 

Домен



--------------------
В каждом из нас спит гений, но с каждым днем все крепче ;-)
bartram.ru
Twitter
user posted image 

PM MAIL ICQ   Вверх
nod3264
Дата 10.2.2010, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 68
Регистрация: 2.8.2009

Репутация: нет
Всего: 1



нет
PM MAIL   Вверх
Riply
Дата 14.2.2010, 02:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Комодератор
Сообщений: 572
Регистрация: 27.3.2007
Где: St. Petersburg

Репутация: 21
Всего: 32



Цитата(nod3264 @  9.2.2010,  21:10 Найти цитируемый пост)
Сейчас приложение работает как сервис, но его процесс спокойно убивается, не смотря на то, что в диспетчере он помечен как системный.
Подскажите что сделать чтобы работники не могли убить процесс диспетчером?


Не искаверков систему - imho, никак.
Можно попробовать сделать так, чтобы процесса (или подгружаемой DLL-ки)
не было в принципе (например, код "размазан" по разным нитям разных процессов). 
Тогда и уничтожать будет нечего  smile
Правда останется слабое место - активизация. 
PM MAIL   Вверх
morpheyushka
Дата 15.2.2010, 16:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Зеленый человек
**


Профиль
Группа: Участник
Сообщений: 563
Регистрация: 26.2.2008
Где: Киев

Репутация: 2
Всего: 8



Может сделать так, что бы процесс оповещал сервер, что мол я такой-то, с таким ip адресом работаю. А потом смотреть, кто из умников его валит. У нас есть похожий механизм, который работает для синхронизации времени.
Также можно попробовать сделать, что бы он перезапускался и оповещал сервер, что "меня тут один нехороший человек попытался завалить".
Ну а сотрудникам объяснить, что это должно работать постоянно!


--------------------
user posted image
Спасибо делается вот так!!!
PM MAIL WWW   Вверх
yeputons
Дата 29.4.2010, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 77
Регистрация: 1.4.2009
Где: Санкт-Петербург

Репутация: нет
Всего: 5



можно сделать системный сервис с галочкой "перезапускать при падении". Но не уверен, что будет работать не при ошибках, а при TerminateProcess
PM MAIL ICQ Skype   Вверх
RinOSpro
Дата 22.6.2010, 12:25 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Ой и не люблю я троянописатеям помогать smile

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

Еще где то у меня завалялся пример там драйвер прячет процесс, да так что даже ProcessExplorer-ом не видно.
  Вверх
kami
Дата 22.6.2010, 12:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1806
Регистрация: 25.8.2007
Где: Санкт-Петербург

Репутация: 15
Всего: 72



Цитата(RinOSpro @  22.6.2010,  12:25 Найти цитируемый пост)
там драйвер прячет процесс, да так что даже ProcessExplorer-ом не видно.

На wasmе MS-Rem писал. Далеко не везде работает, роняя систему в BSOD. В исходники не лазил - не соображаю в них :(
PM MAIL WWW   Вверх
blackjack74
Дата 23.8.2010, 00:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 23.8.2010

Репутация: нет
Всего: нет



как вариант могу посоветовать внедрить код в какой нибудь системный процесс, который (код) будет перезапускать вашу программу.
PM MAIL   Вверх
drkot
Дата 24.8.2010, 01:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ищущий
***


Профиль
Группа: Завсегдатай
Сообщений: 1042
Регистрация: 5.5.2006

Репутация: нет
Всего: 8



однако какия писссссча для антивирусных лаборатория...

единственное онрмальное решение (разумеется имхо) это перехват TerminateProcess на уровне драйвера
именно это и делают антивири и прочие притворяющиеся хорошими
и делают это только с целью того, чтоб хитрый вирь не грохнул втихаря монитор касперыча пока тот пребывает в нирване.

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


Цитата(RinOSpro @  22.6.2010,  12:25 Найти цитируемый пост)
два процесса которые мониторят друг друга

для таких умных есть "завершить дерево прооцессов"

Цитата(RinOSpro @  22.6.2010,  12:25 Найти цитируемый пост)
драйвер прячет процесс

ага, и все антивири будут просто в восторге поймав этот злобный вирус  smile  даже если он не такой  smile 


--------------------
Ошибка не становится истиной по причине широкого распространения,
как и Истина не становится Ошибкой из-за того, что никто её не видит.
PM   Вверх
bartram
Дата 24.8.2010, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1606
Регистрация: 22.2.2004
Где: Russia, Samara

Репутация: 3
Всего: 29



drkot, я не думаю, что тут вопрос о реакции антивирусов. Тут скорее вопрос  реализации. Просто нужно решение. Поиск по форуму легко эту задачу решает.


--------------------
В каждом из нас спит гений, но с каждым днем все крепче ;-)
bartram.ru
Twitter
user posted image 

PM MAIL ICQ   Вверх
RinOSpro
Дата 25.8.2010, 15:40 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата(drkot @  24.8.2010,  01:09 Найти цитируемый пост)
для таких умных есть "завершить дерево прооцессов"

Если запускать через смежный процесс, а потом смежный процесс убивать то Parent PID будет невалидный, и "завершить дерево процессов" не поможет.

Цитата(drkot @  24.8.2010,  01:09 Найти цитируемый пост)
ага, и все антивири будут просто в восторге поймав этот злобный вирус    даже если он не такой   

Когда то проверял на virustotal.com не палился.

Это сообщение отредактировал(а) RinOSpro - 25.8.2010, 15:43
  Вверх
Markus13
Дата 28.8.2010, 02:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 27.8.2010
Где: ring0

Репутация: нет
Всего: нет



Цитата(RinOSpro)

Если запускать через смежный процесс, а потом смежный процесс убивать то Parent PID будет невалидный, и "завершить дерево процессов" не поможет.

У меня, к примеру есть самописный менеджер процессов - в нем можно сразу несколько процессов завершать, не думаю что я один додумался добавить такую функцию...
Кроме того у меня есть маленькая утилитка которая вообще из текстового файла берет имена процесов для "убивания".

Цитата(drkot)

единственное нормальное решение (разумеется имхо) это перехват TerminateProcess на уровне драйвера

Я тоже так думаю...
PM MAIL WWW ICQ Skype   Вверх
bartram
Дата 28.8.2010, 13:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1606
Регистрация: 22.2.2004
Где: Russia, Samara

Репутация: 3
Всего: 29



Цитата(drkot @  24.8.2010,  03:09 Найти цитируемый пост)
единственное онрмальное решение (разумеется имхо) это перехват TerminateProcess на уровне драйвера

Даже простая реализация перехвата на User Mode уровне  от большинства неспециализированных прог поможет smile Когда-то делал такое, до сих пор исходники где-то лежат smile


--------------------
В каждом из нас спит гений, но с каждым днем все крепче ;-)
bartram.ru
Twitter
user posted image 

PM MAIL ICQ   Вверх
RinOSpro
Дата 30.8.2010, 09:06 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата(Markus13 @  28.8.2010,  02:41 Найти цитируемый пост)
У меня, к примеру есть самописный менеджер процессов - в нем можно сразу несколько процессов завершать, не думаю что я один додумался добавить такую функцию...


Тебе не нужна маленькая самописная прога, достаточно таких которые уже написаны. К примеру плагин в тотал командере.
Но зато диспетчер задач так не может, ведь автор просил простое решение!
  Вверх
v1m
Дата 2.9.2010, 19:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


v1mka



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 10.6.2010

Репутация: 1
Всего: 1



запускать две проги в каждой смотреть запущена ли другая если нет то опять ее запускать xD
знаю что бред но может поможет...
PM MAIL   Вверх
okkonst
Дата 6.9.2010, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 33
Регистрация: 5.9.2010
Где: Воронеж

Репутация: нет
Всего: 1



Я вижу несколько путей решения. 
1. Вспомнить, что права юзера - штука настраиваемая, можно сделать юзера, которому можно почти все, что и админу. 
2. Заинтересовать юзера в этом процессе. То есть:
2.1 Сделать работу в системе неудобной или невозможной без этого процесса. Один из вариантов реализации - патч важного пользовательского инструмента. Или замена какого-нибудь драйвера или сервиса самодельным, имеющим дополнительную функциональность. В простейшем варианте (от дураков) подойдет банальная подмена доверенного исполняемого файла своим, который будет запускать переименованный старый.
2.2 Сделать убиение процесса платным (как уже предлагалось) или анально чувствительным smile
3. Городить систему сторожей, сторожащих друг друга, в том числе - с нестандартной активацией (вроде запуска вместо winword).

Если честно, за пункты 2.1 или 3 - убил бы, буде кто такое на моей машине нагородит. Единственный легальный вариант (который я вижу), при котором эти пункты имеют смысл относительно  2.2 и 3 - комп используется студентами. Но даже в этом случае лучше настроить анальный каратель, т.к. отследить того, кто прибил процесс, в большинстве случаев, труда не составит. 
Предлагаю автору треда озвучить свои цели - что за процесс и почему его надо так сохранять и почему нельзя просто сказать юзеру "это не трожь", вполне вероятно, что они уже имеют готовое решение (либо нелегальны).

PM MAIL   Вверх
Beltar
Дата 16.10.2010, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 627
Регистрация: 11.1.2006

Репутация: нет
Всего: 7



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


--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. smile(с) я, хотя может и нет
Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере.
PM MAIL   Вверх
RinOSpro
Дата 28.10.2010, 13:41 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Недавно написал реально не убиваемую программу  smile Даже перезагрузки не происходило пока она висела)

В чем был прикол, прога работала с драйвером и когда она его освобождала происходило следующее: IRP_MJ_CLEANUP, IRP_MJ_CLOSE.
Так вот был глюк что на запрос IRP_MJ_CLOSE драйвер ни чего не отвечал и прога наглухо висла. Завершить ее не могла ни одна из известных мне утилит)) Одно плохо... она тоже висит smile 
  Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.1238 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.