Как запустить программу невидимой для системы?

Тема в разделе "Borland C++ Builder & Kylix", создана пользователем Glorius, 23 июн 2007.

Статус темы:
Закрыта.
  1. Glorius

    Glorius Гость

    Как запустить программу невидимой для системы? Чтобы в диспетчере задач на закладке "Приложения" моя программа была не видна.
     
  2. Barmutik

    Barmutik Гость

    Сделайте её сервисом .. если необходимо скрыть только на закладке Приложения...
     
  3. Glorius

    Glorius Гость

    А как это сделать?
     
  4. Barmutik

    Barmutik Гость

    Создавайте не обычное Windows приложение а service-приложение
     
  5. Glorius

    Glorius Гость

    А как это сделать в Builder?
     
  6. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    Для: Glorius
    Меню
    New -> Other -> Sevice Application -> Ok
     
  7. shisik

    shisik Well-Known Member

    Регистрация:
    26 авг 2007
    Сообщения:
    154
    Симпатии:
    0
    Может это уже и неактуально, но всё равно напишу. Вдруг, кому-то ещё понадобится...
    Самый лучший способ невидимого запуска - это присоединение своей DLL к чужому процессу. Для этого нужно использовать функцию CreateRemoteThread, отличающуюся от CreateThread лишь первым параметром - HANDLE процесса, к которому мы хотим подключиться. HANDLE можно получить через ToolHelp32 - функции.
    В функции этого потока (расположенной в EXE) нужно написать LoadLibrary с именем нашей DLL. А дальше пишем как обыкновенное приложение, где вместо входной функции main (WinMain) будет DllMain.
    Всё. После завершения EXE, подключающего нашу DLL к другому процессу, DLL остаётся работать и уже никто и ничто не способно её обнаружить ;)
    Жаль, таким способом нельзя к winlogon.exe подключаться :unsure:
     
  8. Barmutik

    Barmutik Гость

    Для: shisik

    Насчёт никто это громко сказано .. все известные антивирусные\спайварные проги перехватывают эти команды и как минимум логируют такие действия .. так что при желании достаточно просто её найти.

    Опять же перехват LoadLibrary даст возможность отследить какие библиотеки (не системные) груились в процесс и соотнеся этих два факта можно отследить несанкционированную работу чужого кода.
     
  9. zubr

    zubr Гость

    Согласен с Barmutik
    Гораздо надежнее в таких случаях (имеется в виду не умение антивирусами определять подобные действия) это перехват API-функций, причем на уровне ядра (из драйвера). Но в любом случае для установки на компе подобной хрени потребуются привелегии админа в системе.
     
  10. shisik

    shisik Well-Known Member

    Регистрация:
    26 авг 2007
    Сообщения:
    154
    Симпатии:
    0
    <!--QuoteBegin-Barmutik+29:08:2007, 07:06 -->
    <span class="vbquote">(Barmutik @ 29:08:2007, 07:06 )</span><!--QuoteEBegin-->Насчёт никто это громко сказано .. все известные антивирусные\спайварные проги перехватывают эти команды и как минимум логируют такие действия .. так что при желании достаточно просто её найти.[/quote]
    Какие такие действия? CreateRemoteThread? Так обычный CreateThread реализован в Win 2k через CreateRemoteThread(GetCurrentProcess(), ...). Они запарятся отлавливать и логировать все вызовы этой функции ;)
    Кстати говоря, LoadLibrary это тоже касается, т.к. функция довольно широко применяется.
    <!--QuoteBegin-zubr+29:08:2007, 08:49 -->
    <span class="vbquote">(zubr @ 29:08:2007, 08:49 )</span><!--QuoteEBegin-->Но в любом случае для установки на компе подобной хрени потребуются привелегии админа в системе.[/quote]
    К сожалению, большинство пользователей с этими самыми привилегиями и сидят ;) Мало кто утруждает себя созданием пользователей с ограниченными правами...

    Хотя, про "никто и ничто" я действительно погорячился ;)
     
Загрузка...
Похожие Темы - Как запустить программу
  1. cyber23
    Ответов:
    3
    Просмотров:
    89
  2. Amfion
    Ответов:
    20
    Просмотров:
    1.100
  3. Sibiria
    Ответов:
    4
    Просмотров:
    1.428
  4. grenot
    Ответов:
    0
    Просмотров:
    894
  5. mike
    Ответов:
    24
    Просмотров:
    5.599
Статус темы:
Закрыта.

Поделиться этой страницей