Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.79/57: Рейтинг темы: голосов - 57, средняя оценка - 4.79
 Аватар для __bool
288 / 229 / 27
Регистрация: 13.06.2010
Сообщений: 744

Бессмертная программа, которую невозможно (насколько это возможно) убить

27.03.2012, 20:46. Показов 11464. Ответов 50
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток.
Необходимо! Создать программу, которую невозможно (насколько это возможно) убить!

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

Но вот убить простой процесс очень уж легко. Ставил программу TimeBoss, толку 0 (убивается Unlocker'ом очень успешно)
Разумеется очень хороший вариант - внедрять 2 программы, которые контролируют друг-друга, одну убили - другая возобновляет процесс, другую - первая возобновляет.

Но хочется максимально усложнить убийство процесса.
Какие мысли меня посещают:

1) Запустить как драйвер?(возможно?)
2) В антивирусах такое реализовано прекрасно, к примеру nod32 не дает себя убить. Выводит сообщение "операция не может быть завершена, отказано в доступе" (как?)
3) Скрыть процесс (в XP это было легко, есть ли способы для Windows Seven?)

Буду очень благодарен за дельные советы!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.03.2012, 20:46
Ответы с готовыми решениями:

Сократить Path, насколько это возможно
помогите ребята, как можно короче написать путь Bitmap image1 = new Bitmap("F://Baza//Resurce//load.gif");

Насколько максимально возможно совместить две системы, и как лучше это сделать?
хочу поставить на одну машину debian и убунту. можно ли совместить что-то кроме директории /home? может быть можно совместиь файлы...

Необходим "неубиваемый" (насколько это возможно) внешний жесткий диск
Всем доброго времени суток! _________________________ Хотелось бы услышать мнение бывалых экспертов перед серьезной покупкой -...

50
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
11.04.2012, 21:06
Студворк — интернет-сервис помощи студентам
У меня работает.
C++
1
Timer Interval = 1;
Миниатюры
Бессмертная программа, которую невозможно (насколько это возможно) убить  
1
18 / 34 / 2
Регистрация: 28.01.2012
Сообщений: 181
11.04.2012, 21:13
Samrisbe, у меня не работает, т.е. не скрывается у меня стоит Windows XP SP3
0
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
11.04.2012, 21:21
Цитата Сообщение от Dondok Посмотреть сообщение
Samrisbe, у меня не работает, т.е. не скрывается у меня стоит Windows XP SP3
C++
1
2
3
4
5
HWND MyHandle = FindWindow(0,"Диспетчер задач Windows");
   if (MyHandle)
   {
     SendMessage(MyHandle, WM_CLOSE, NULL, NULL);
  }
На XP может работать не стабильно, пробуй...
1
Эксперт С++
 Аватар для MikeSoft
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
11.04.2012, 21:46
Лучший ответ Сообщение было отмечено как решение

Решение

Как-то задавался подобным вопросом... поэтому, внесу свои "пять копеек"...

1. Обычный запуск от имени "SYSTEM" (или запуск сервиса от "SYSTEM" - не поможет).

2. Запуск несколько процессов-защитников идея хорошая, быстро реализуемая и также быстро прибиваемая. Когда столкнулся с таким впервые, мне понадобилось меньше минуты, чтобы понять что существует процесс-защитник... Дальше метод прост:
Code
1
taskkill /f /im:"mainprocess.exe" && "defender.exe"
Чуть сложнее дело обстоит со службами-защитниками...Их taskkill'ом не прибьёшь, однако, благо управление службами из командной строки тоже "открыто".
Code
1
2
sc stop "servicename"
sc delete "servicename"
и готово...

3. Скрыть процесс от диспетчера задач возможно ТОЛЬКО добравшись к ядру системы.
Можно повесить хук, подменить функцию отображения, но это не эффективно.
Командная строка + tasklist ... и в огород безопасности и скрытности снова летит огромная порция камней...
Поэтому, лезть нужно только в нулл-кольцо, так называемый Ring0...
Отличнейшая статья о нулевом кольце находится здесь: WASM: Секреты Win32 -Перехват API функций в Windows NT (часть 3). Нулевое кольцо.
3
 Аватар для BRcr
4043 / 2333 / 292
Регистрация: 03.02.2011
Сообщений: 5,066
Записей в блоге: 10
11.04.2012, 22:49
Статья и правда на отлично

Только вот доступ к ring0 через добавление дескриптора шлюза в GDT на семерке уже врятли сработает - почти уверен, что у администратора там оторвали права на модификацию ACL секции PhysicalMemory и отдали их учетке TrustedInstaller.
2
 Аватар для Vovik_0_1
40 / 40 / 6
Регистрация: 28.07.2011
Сообщений: 431
12.04.2012, 15:43
Цитата Сообщение от Samrisbe Посмотреть сообщение
C++
1
2
3
4
5
HWND MyHandle = FindWindow(0,"Диспетчер задач Windows");
 if (MyHandle)
 {
 SendMessage(MyHandle, WM_CLOSE, NULL, NULL);
 }
У меня этот код глушит диспетчер задач.

Добавлено через 5 минут
Цитата Сообщение от MikeSoft Посмотреть сообщение
Дальше метод прост:
А как же дерево процессов?
1
Эксперт С++
 Аватар для MikeSoft
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
12.04.2012, 16:53
Цитата Сообщение от Vovik_0_1 Посмотреть сообщение
А как же дерево процессов?
Всё то же самое, плюс аргумент "/t".
1
18 / 34 / 2
Регистрация: 28.01.2012
Сообщений: 181
14.04.2012, 18:19
Samrisbe, у вас какая ОС?

Добавлено через 1 минуту
Samrisbe, у меня XP SP 3 и C++ Builder 2006. и не работает код скрытия процесса из диспетчера задач
0
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
14.04.2012, 19:01
Цитата Сообщение от Dondok Посмотреть сообщение
Samrisbe, у вас какая ОС?
win 7, 64
0
18 / 34 / 2
Регистрация: 28.01.2012
Сообщений: 181
14.04.2012, 23:30
Samrisbe, не подскажете как на Windows XP, SP 3 и 32-разряда реализовать скрытие процессов и приложений в диспетчере задач
0
 Аватар для Samrisbe
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,069
15.04.2012, 07:41
Цитата Сообщение от Dondok Посмотреть сообщение
Samrisbe, не подскажете как на Windows XP, SP 3 и 32-разряда реализовать скрытие процессов и приложений в диспетчере задач
У меня на XP тоже работает, интересно как мне студенту понять почему у тебя не работает...
0
4 / 4 / 0
Регистрация: 10.01.2012
Сообщений: 43
15.04.2012, 12:13
Цитата Сообщение от __bool Посмотреть сообщение
Всем доброго времени суток.
Необходимо! Создать программу, которую невозможно (насколько это возможно) убить!
Всё очень просто в XP на других не знаю.
Делаем прогу с командой: shutdown -t 21600 -s -c "Играй подонок пока есть время"
-t xxx (время в секундах)
Ты можешь вызвать её в командной строке, и убить её не сможешь никак!
кроме как вызвать: shutdown -a
А чтобы этого не случилось нужно открыть этот файл посредством API команды CreateFile, с защитными параметрами, отключив другим доступ.
shutdown находится в C:\WINDOWS\system32
Когда чел включит комп второй раз таймер должен быть уже взведен на 2 минуты. За это время ты должен сделать посредством своей скрытой кнопки команду shutdown -a
Вот так всё просто.

И ни в коем случае не удаляй понту не будет, она воссоздается. Хотя если ты не осилил CreateFile. Удалить shutdown можно так:
одновременно удаляешь сначала
C:\WINDOWS\system32\dllcache\shutdown.ex e
потом
C:\WINDOWS\system32\shutdown.exe

Всё. Скопируй куда нибудь к себе в скрытое место и пользуйся.
1
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
15.04.2012, 12:18
Цитата Сообщение от _engineer_ Посмотреть сообщение
Как вариант: написать сервис, который запускается в контексте администратора, а братьев позадить на учетку пользователя.
И как же он запустится то?
0
 Аватар для Vovik_0_1
40 / 40 / 6
Регистрация: 28.07.2011
Сообщений: 431
15.04.2012, 13:51
Цитата Сообщение от chuvak2008f Посмотреть сообщение
Всё очень просто в XP на других не знаю.
Делаем прогу с командой: shutdown -t 21600 -s -c "Играй подонок пока есть время"
-t xxx (время в секундах)
Ты можешь вызвать её в командной строке, и убить её не сможешь никак!
кроме как вызвать: shutdown -a
А чтобы этого не случилось нужно открыть этот файл посредством API команды CreateFile, с защитными параметрами, отключив другим доступ.
shutdown находится в C:\WINDOWS\system32
Когда чел включит комп второй раз таймер должен быть уже взведен на 2 минуты. За это время ты должен сделать посредством своей скрытой кнопки команду shutdown -a
Вот так всё просто.
И ни в коем случае не удаляй понту не будет, она воссоздается. Хотя если ты не осилил CreateFile. Удалить shutdown можно так:
одновременно удаляешь сначала
C:\WINDOWS\system32\dllcache\shutdown.ex e
потом
C:\WINDOWS\system32\shutdown.exe
Всё. Скопируй куда нибудь к себе в скрытое место и пользуйся.
А пример реализации можно? Честно говоря непонял причем тут программа которую я напишу. Ведь её нужно защитить. А тут речь про какойто shutdown.
0
Эксперт С++
 Аватар для MikeSoft
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
15.04.2012, 14:05
Цитата Сообщение от taras atavin Посмотреть сообщение
И как же он запустится то?
Молча, в основном. Почитайте о сервисах. И на всякий случай, об интерактивной работе с рабочим столом.
Цитата Сообщение от chuvak2008f Посмотреть сообщение
Делаем прогу с командой: shutdown -t 21600 -s -c "Играй подонок пока есть время"...
Когда чел включит комп второй раз таймер должен быть уже взведен на 2 минуты.
Бред, пардон И кто мешает прибить такую программу в течении этих двух минут?
1
18 / 34 / 2
Регистрация: 28.01.2012
Сообщений: 181
15.04.2012, 14:55
в приложениях скрываю вот так:
C++
1
2
ShowWindow(Application->Handle, SW_HIDE);
Application->ShowMainForm = false;
в процессах как скрыть приложение? использую код, который Samrisbe привел:
C++
1
2
3
4
5
6
7
8
9
10
11
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
HWND MyHandle = FindWindow(0,"Диспетчер задач Windows");
   if (MyHandle)
   {
      HWND  hProcess = FindWindowEx(MyHandle,0,0,"Процессы"),
            hApplication = FindWindowEx(MyHandle,0,0,"Приложения");
      ShowWindow(hProcess,SW_HIDE);
      ShowWindow(hApplication,SW_HIDE);
   }       
}
но не получается у меня скрыть. У меня C++ Builder 2006 и Windows XP SP3
1
 Аватар для BRcr
4043 / 2333 / 292
Регистрация: 03.02.2011
Сообщений: 5,066
Записей в блоге: 10
15.04.2012, 15:30
Dondok, зачем вам это? Ну, скроете в диспетчере задач, да, но ведь только в нем. Берем любой другой менеджер процессов и сводим на нет все это "скрытие".

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

Создать текстовый файл, вписать строки которые ниже, и переименовать в ***.reg и запустить файл. Для разблокировки диспетчера, поменять 00000001 на 00000000 и снова запустить.
Code
1
2
3
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System]
"DisableTaskMgr"=dword:00000001
На семерке иначе маленько, но ничуть не труднее.
2
Эксперт С++
 Аватар для MikeSoft
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
15.04.2012, 15:41
BRcr, вот это точно!
Dondok, если вы не хотите копаться глубже, то советую прислушаться к BRcr.
Посредством локальных политик можно также ограничить использование командной строки и доступ к реестру.
1
18 / 34 / 2
Регистрация: 28.01.2012
Сообщений: 181
15.04.2012, 17:05
BRcr, сам диспетчер задач мне не надо скрывать хотелось бы программу во вкладке "процессы" скрыть

Добавлено через 1 минуту
Цитата Сообщение от BRcr Посмотреть сообщение
[HKEY_CURRENT_USER\Software\Microsoft\Win dows\CurrentVersion\Policies\System]
"DisableTaskMgr"=dword:00000001
нету такого пути в реестре
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
15.04.2012, 17:09
Dondok, вы его создаете этим самым файлом ***.reg .
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.04.2012, 17:09

Рекурсивная программа. Составить пары из группы, если это возможно
Ребят, срочно нужна помощь! Не прошу делать что-то за меня, просто подскажите способ реализации?

немогу убить DLL ку , которую использовал в ASP проекте, заявляет что ее все еще кто-то пользует.
посоветуйте пож-та! немогу убить DLL ку , которую использовал в ASP проекте, заявляет что ее все еще кто-то пользует. нужно сделать...

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

Возможно ли программно убить компьютер на аппаратном уровне?
По-моему звучит глупо, и я всегда считал, что программами можно убить только ОС (то бишь, на программном уровне), но недавно столкнулся с...

Насколько сложно (или действительно невозможно?.) сделать связанные списки в ТАБЛИЧНОЙ форме?
Всем добрый день) Опять я в своих изысканиях наткнулся на, по всей видимости, одну из больных тем Access. Здесь на форуме я уже видел...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет Новости компьютерного мира и их обсуждение (4) Салют, шампанское, овации! :drink:
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр. Дословно, отклонённая. . .
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2. Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru