информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Атака на InternetСтрашный баг в WindowsSpanning Tree Protocol: недокументированное применение
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
 Умер Никлаус Вирт 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
"Основное ее назначение - скрыть процесс из task manager-а :-)" Точна-а! 29.08.06 22:00  Число просмотров: 3157
Автор: Fighter <Vladimir> Статус: Elderman
Отредактировано 29.08.06 22:03  Количество правок: 1
<"чистая" ссылка>
Года 4 назад написал программку для удаленного управления машинами в сети. Недавно потребоволась снова но для машин под ХР. Клиентская часть отказалась запускаться с криками "RegisterServiceProcess не найдена в kernel32.dll!"
<programming>
А кто знает, что в ХР вместо RegisterServiceProcess можно использовать? 25.08.06 22:00  
Автор: Fighter <Vladimir> Статус: Elderman
<"чистая" ссылка>
Службы? Есть FAQ по ним, смотри в соотв. разделе тут на форуме. 26.08.06 18:38  
Автор: HandleX <Александр М.> Статус: The Elderman
<"чистая" ссылка>
Скорее всего нужны "скрытые" процессы. А вот их-то с помощью сервисов не создашь 28.08.06 14:00  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
Hint: искать в гугле примерно "NtQuerySystemInformation hooking"
Наврядли... Основное назначение этой функции — держать процесс запущенным, когда юзер разлогинивается... Хотя, это уже к топикстартеру. 28.08.06 14:59  
Автор: HandleX <Александр М.> Статус: The Elderman
<"чистая" ссылка>
Не-е-е. Основное ее назначение - скрыть процесс из task manager-а :-) 28.08.06 19:42  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
http://www.google.com/search?client=opera&rls=ru&q=RegisterServiceProcess&sourceid=opera&ie=utf-8&oe=utf-8
"Основное ее назначение - скрыть процесс из task manager-а :-)" Точна-а! 29.08.06 22:00  
Автор: Fighter <Vladimir> Статус: Elderman
Отредактировано 29.08.06 22:03  Количество правок: 1
<"чистая" ссылка>
Года 4 назад написал программку для удаленного управления машинами в сети. Недавно потребоволась снова но для машин под ХР. Клиентская часть отказалась запускаться с криками "RegisterServiceProcess не найдена в kernel32.dll!"
Ну в общем то сокрытие процессов под NT-ями такая избитая тема, что даже лень чего либо писать 29.08.06 23:54  
Автор: amirul <Serge> Статус: The Elderman
<"чистая" ссылка>
Вкратце: ЕДИНСТВЕННЫЙ способ получить из юзермоды список процессов - через функцию NtQuerySystemInformation (либо ее Zw аналог - в юзермоде они ничем не отличаются). Все psapi и прочие таскманагеры используют именно ее. Задача сводится к перехвату этой фукнции и фильтрации возвращаемых данных в соответствии с собственными пожеланиями. А уж способов перехвата придумано море. Самые популярные: патч прямо в юзерлевеле (ищи Джеффри Рихтер) и патч таблицы системных сервисов в нулевом кольце. Первый популярен среди людей, которые принципиально не хотят писать драйвера. Второй - среди остальных
Кхм... 30.08.06 02:39  
Автор: Killer{R} <Dmitry> Статус: Elderman
Отредактировано 30.08.06 02:42  Количество правок: 2
<"чистая" ссылка>
> Вкратце: ЕДИНСТВЕННЫЙ способ получить из юзермоды список
> процессов - через функцию NtQuerySystemInformation (либо ее
> Zw аналог - в юзермоде они ничем не отличаются). Все psapi
> и прочие таскманагеры используют именно ее. Задача сводится
> к перехвату этой фукнции и фильтрации возвращаемых данных в
> соответствии с собственными пожеланиями. А уж способов
Если делать по честному - тогда да. А если не совсм, так навскидку (чисто юзерспейс) ;) -
1)Если не перехывтывает ZwOpenProcess
for(DWORD i=0;i<0x10000;i+=2)
{
Handle prc= ::OpenProcess(...
}
Вариация - вместо OpenProcess - DebugActiveProcess, который благополучно работает через csrss.exe

2)Если имеет окна
EnumWindows/GetWindowThreadProcessId
3)Тот же NtQuerySystemInformation, но перечисляющий например хэндлы (и их процессы-владельцы)

> перехвата придумано море. Самые популярные: патч прямо в
> юзерлевеле (ищи Джеффри Рихтер) и патч таблицы системных
> сервисов в нулевом кольце. Первый популярен среди людей,
> которые принципиально не хотят писать драйвера. Второй -
> среди остальных
Насчет принципов и перехвата со стороны юзермода - не всегда есть права админа для загрузки драйвера. + к тому - вспомним мой фтпдрайв - тут неожиданный плюс вылез перехвата в юзермоде (проме того что он и из-под гостя запускается) - он под вистой прекрасно работает. И пофиг ему что там навороченная защита ядра, начиная с проверки сертификатов загружаемых драйверов и заканчивая периодической проверкой целостности KeServiceDescriptorTable, PsProcessList и иже с ними.
Принципиально надо скрывать процесс? Напиши службу в DLL, которую будет загружать svchost.exe, юзер не продыбает (скорее всего), где твоя служба, ибо svchost "хостит" множество виндовозных служб. 30.08.06 08:02  
Автор: HandleX <Александр М.> Статус: The Elderman
Отредактировано 30.08.06 08:02  Количество правок: 1
<"чистая" ссылка>
Нет, непринципиально. Главное, чтобы окошко перед глазами не болталась. 30.08.06 12:43  
Автор: Fighter <Vladimir> Статус: Elderman
<"чистая" ссылка>
Каюсь, программа была сделана через одно место (нужно было попроще, побыстрее) и поэтому основное назначение RegisterServiceProcess было не прятать ее от менеджера задач, а убирать окно с глаз и с таскбара. Собсно, щас требования не поменялись.
Ну, тогда юзай SrvAny.exe от M$, тип службы выставь как "Noninteractive", и окошко никогда не вылезет. Изменений минимум. 30.08.06 13:09  
Автор: HandleX <Александр М.> Статус: The Elderman
Отредактировано 30.08.06 13:11  Количество правок: 2
<"чистая" ссылка>
Но, поскольку всё равно перекомпилить прогу прийдётся во имя избавления от RegisterServiceProcess, то может стоит сделать её "настоящей" службой? Это будет незабываемый экспириенс. -))
Короче в FAQ по службам есть все эти темы, в том числе и про srvany.
Пасиба ишшо раз. FAQ я уже прочитал, разобрался, но народ-то интересовался "зачем" 30.08.06 13:13  
Автор: Fighter <Vladimir> Статус: Elderman
<"чистая" ссылка>
Ну нету в Win9x-ME нормального TaskManager'a, но это болезнь виндов, а не системных функций... Тот же Far, к примеру, с превеликим удовольствием покажет процесс, зарегистрированный как ServiceProcess в Win9x. 28.08.06 21:12  
Автор: HandleX <Александр М.> Статус: The Elderman
<"чистая" ссылка>
Пасиба, пошел смотреть. 27.08.06 09:18  
Автор: Fighter <Vladimir> Статус: Elderman
<"чистая" ссылка>
Посмотри еще HackerDefender 31.08.06 11:14  
Автор: TRESPASSER[CfK] Статус: Незарегистрированный пользователь
<"чистая" ссылка>


http://www.hxdef.org
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach