Как скрыть процесс в Linux. Итак, рассмотрим стандартные процессы.

Один из способов обнаружения вирусов на ПК - просмотр запущенных процессов в Диспетчере задач. Не всегда антивирусные программы справляются на 100% с возложенными на них задачами. Иногда приходится отлавливать вирусы вручную.

Многие вирусы скрывают своё присутствие в Диспетчере задач - они невидимы. В этом случае на помощь приходят, альтернативные диспетчера задач. Любой из них можно скачать в сети и пользоваться. Встроенный в Windows, собственный Диспетчер задач малоинформативен и скрытых процессов не показывает. Сторонние же, подобные утилиты, лишены этого недостатка и показывают скрытые процессы. Если в стандартном диспетчере нет процессов, которые отобразились в окне анализа альтернативной утилиты, то нужно уделить тщательное внимание этим процессам, возможно, это и есть вредоносные приложения. Нужно посмотреть изготовителя процесса, обычно он всегда указывается чётко и ясно, а также, сколько ресурсов потребляет этот процесс. Если много, по сравнению с другими, то это уже крайне подозрительно.

Подобный осмотр нужно делать при выключенных приложениях, что бы оставались стандартные процессы и вирусы, само собой. Лучше всего это сделать в Безопасном режиме . Очень хорошо, когда вы только установили Виндовс, сделать снимок страницы Диспетчера задач со стандартными процессами, что бы иметь возможность сравнить отличия. Снимок -имеется ввиду сохранённый файл со скрином, а не снимок фотокамерой (производится посредством нажатия кнопочки Print Screen на клавиатуре, кто не знает, как это делается, спрашивайте в комментариях).

Итак, рассмотрим стандартные процессы:

  1. Sistem - системные процессы без расширения ехе .Если такой процесс у вас с расширением - это вирус замаскировался под системный процесс.
  2. Smss.exe -процесс управляющий запуском учётных записей пользователей. Если у вас включен, в данный момент один сеанс учётной записи, а процессов Smss.exe больше - делайте соответствующие выводы.
  3. Csrss .exe . - процесс руководящий созданием окон, он должен быть, всегда один.
  4. Winlogon.exe. - отвечает за авторитарный вход пользователя в систему. Только один.
  5. Services.exe. - обеспечивает работу служб операционной системы, запускается от имени System, также один.
  6. Lsass.exe. - обеспечивает безопасность ОС, всегда один.
  7. Svchost.exe . - запуск Dll-файлов (динамически подключаемая библиотека, сюда относятся драйвера, элементы управления ActiveX ) имя пользователя: LOCAL SERVICE, NETWORK SERVICE и SYSTEM, должно быть максимум шесть.
  8. SYSTEM - отвечает за раскладку клавиатуры и языковую панель на панели задач. Должен быть один.
  9. Explorer.exe. - управляет рабочим столом (ярлыками, иконами и т.д), его интерфейсом. Запускается один раз.
  10. Spoolsv.exe. - ставит объекты в очередь на печать. Один. Нет принтера - можно и отключить, процесс не критический.
  11. Wdfmgr .exe . - отвечает за корректную работу драйвера медиа плейера, тоже не критичный процесс.
  12. Taskmgr.exe . - сам Диспетчер задач
  13. Ну и самый последний - Бездействие системы . Показывает свободные ресурсы.

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

Это дин из способов, более безопасный, чем скажем, экспериментировать с системным реестром.

Часто анонимность и скрытность играют ключевую роль в успешном выполнении каких-либо действий как в реальности, так и в виртуальности, в частности в операционных системах. В данной статье речь пойдет о том, как стать анонимным в OS Windows. Вся информация предоставлена лишь для цели ознакомления.

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

Суть метода: поиск окна Диспетчера Задач -> поиск в нем дочернего окна(списка), содержащего имена всех процессов -> удаление из списка нашего процесса.

Как видно, что с нашим процессом никаких манипуляций производиться не будет: он как работал, так и будет себе работать. Так как стандартный рядовой пользователь Windows, как правило, не использует никаких других тулз для просмотра запущенных процессов на его компьютере, то это лишь сыграет нам «на руку». Процесс в большинстве случаев обнаружен не будет.

Что использовалось для исследования:

1) Spy++ от Microsoft (для изучения иерархии дочерних окон Диспетчера задач)
2) OllyDBG для просмотра функций, используемых диспетчером для получения снэпшота процессов.
3) Собственно, сам taskmng.exe (Диспетчер задач)

Для написания кода будем использовать среду Delphi. Скорее, Delphi будет удобнее в нашем случае, нежели C++. Но это лишь мое скромное мнение.

Что ж, первым делом попытаемся выяснить, что из себя представляет список процессов и как он работает. С полувзора понятно, что это обычное окно класса «SysListView32»(список), которое обновляется с частотой 2 кадра в секунду(раз в 0.5 секунд). Смотрим иерархию окон:

Как видим, список процессов, в самом деле, есть обычное окно класса «SysListView32», которое является дочерним по отношению к окну(вкладке) «Процессы», которое также является дочерним по отношению к главному окну Диспетчера задач. Имеем лишь двойной уровень вложенности. Кроме того у списка имеется одно дочернее окно класса «SysHeader32», которое, как не трудно догадаться является заголовком(маркером полей) для списка процессов.
Так как перед нами обычный список, то в нашем распоряжении целый набор макрокоманд для управления его содержимым. Их разнообразие, на первый взгляд, восхищает. Но многие из них работают лишь из родительского процесса, т.е чтобы их нам использовать, необходимо будет сымитировать, будто они выполняются в родительском процессе. Но таковым свойством обладают не все, в частности, макрокоманда ListView_DeleteItem , которая удаляет элемент из окна-списка(класс «SysListView32»).
Её мы и будем использовать в процессе нашего приложения. Данная функция вторым параметром получает индекс удаляемого элемента.
Теперь нам надо как-то выяснить, каким же индексом обладает элемент с лэйблом скрываемого процесса в диспетчере задач. Для этого нам нужно как-то вытащить из списка процессов в диспетчере задач все элементы(лэйблы с именами процессов) и последовательно их сравнивать с именем того процесса, который мы желаем скрыть.

Используя макрокоманды типа ListView_GetItemText наши действия были бы примерно следующими:

1) Выделение участка памяти в процессе диспетчера задач (VirtualAllocEx)
2) Посылка дочернему окну-списку Диспетчера задач сообщения LVM_GETITEMTEXT (SendMessage)
3) Запись в выделенную область памяти Диспетчера задач информации об элементе списка (WriteProcessMemory)
4) Чтение из памяти диспетчера той информации, которая нас интересует о процессе (ReadProcessMemory)

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

В Microsoft решили особо не парится по поводу тулзы, именуемой «Диспетчер Задач», и использовали обычные функции WinAPI для получения всех процессов в системе. Поверхностно смотрим taskmng.exe под отладчиком:


Видим использование WinAPI функции CreateToolHelp32SnapShot .
Всем известно, что "эту функцию можно использовать не только для получения снэпшота процессов, но и потоков процесса или модулей, например. Но в данном случае это маловероятно. Вряд ли здесь будут использовать что- то в роде енумератора процессов (EnumProcesses).
Мы остановились на том, что хотим сформировать свой список процессов и искать наш процесс в нем. Для этого воспользуемся той функцией, что обнаружили в отладчике. Если откроем диспетчер задач на вкладке «Процессы», то заметим, что все процессы отсортированы по алфавиту для удобства поиска. Следовательно, нам нужно получить список имен всех процессов в системе и отсортировать их по возрастанию в алфавитном порядке . Приступим к написанию кода в Delphi.

Для начала создадим демонстрационное оконное приложение с двумя таймерами: первый будет переформировывать список с процессами с той же частотой, с которой это делает Диспетчер задач Windows(раз в две секунды); второй будет срабатывать 1000 раз в секунду и будет служить для отслеживания обновления списка процессов в диспетчере и, следовательно, появления нашего скрываемого процесса. Также добавим на форму кнопку.

Код:
var ind:integer; h:Thandle; last_c:integer; procedure UpdateList(); var th:THandle; entry:PROCESSENTRY32; b:boolean; i,new_ind:integer; plist:TStringList; begin // Список процессов plist:=TStringList.Create; // Формируем список процессов th:= CreateToolHelp32SnapShot(TH32CS_SNAPPROCESS,0); entry.dwSize:=sizeof(PROCESSENTRY32); b:=Process32First(th,entry); while(b) do begin plist.Add(entry.szExeFile); b:=Process32Next(th,entry); end; // Сортируем его, чтобы индексы элементов // совпадали с теми, что в диспетчере задач plist.Sort; last_c:=plist.Count; // Поиск индекса нашего процесса "explorer.exe" for i:=1 to plist.Count-1 do if(LowerCase(plist[i])="explorer.exe") then new_ind:=i-1; // Удаление объекта из списка if(new_ind<>ind) then ListView_DeleteItem(h,ind); ind:=new_ind; plist.Free; // Запускаем таймер отслеживания обновлений в списке процессов if(Form1.Timer2.Enabled=false) then Form1.Timer2.Enabled:=true; end; procedure TForm1.HideProcessButton(Sender: TObject); begin // Ищем дочернее окно класса "SysListView32" h:=FindWindow(nil,"Диспетчер задач Windows"); h:=FindWindowEx(h,0,nil,"Процессы"); h:=FindWindowEx(h,0,"SysListView32",nil); // Запускаем таймер переформирования списка процессов Timer1.Enabled:=true; end; procedure TForm1.Timer1Timer(Sender: TObject); begin UpdateList(); end; procedure TForm1.Timer2Timer(Sender: TObject); begin // Поиск изменений в списке if(ListView_GetItemCount(h)>last_c) then ListView_DeleteItem(h,ind); last_c:=ListView_GetItemCount(h); end;

Вот, собственно, и весь код.
Скроем, например, в Диспетчере задач процесс самого Диспетчера задач:

Вот он есть:


И по нажатию на кнопку «Скрыть процесс» процесс исчезает из списка:


Все следы присутствия в системе стерты, а сам он спокойно выполняется в обычном режиме где-то в глубинах процессора:)

Outro
Что ж, думаю, такой способ заслуживает существовать, правда он требует небольших доработок. Да, конечно же с его помощью нельзя скрыть процесс от самой системы, но сокрытие в стандартной тулзе Windows, которой пользуется львиная доля всех пользователей, это тоже неплохо.
Надеюсь, мне удалось вас хоть немножечко заинтересовать данной темой.

До скорого! И да пребудет с вами сила анонимности…

Метки:

    Добавить метки

    Шпион скрывает своё местонахождение, скрывает свой процесс и скрывает свою службу в системе. Но это ещё не все сюрпризы. Он умеет и защищаться, блокируя все возможные способы завершения своих процессов и удаления файлов. Шпионская программа делает это на тот случай, если вы их обнаружите. Однако простыми способами обнаружить наличие шпиона в системе невозможно. По этой причине многие пользователи теряют личную информацию, даже не подозревая об этом.

    Для того, чтобы выяснить — ведётся ли за вами слежка с помощью этого шпиона или нет, бесполезно просматривать стандартные мониторы, пытаясь искать его вручную или с помощью сканирования системы. При тестировании, антивирусы не обнаруживают шпионскую программу, поэтому у пользователя создается впечатление, что все в порядке.

    Для обнаружения слежки, зайдите в монитор «Процессы системы». Затем откройте «Монитор скрытых процессов», нажав на кнопку «Скрытые процессы». В открывшемся окне красным цветом выделяются процессы, которые скрывают себя от системы.


    All In One Keylogger обнаружен. Добавьте имя процесса в базу угроз через контекстное меню программы. В разных тестируемых системах шпион имел различные имена процессов и файлов. При попытке завершить скрытый процесс, вы получите сообщение об ошибке. Попасть в папку с приложением шпиона можно через пункт в контекстном меню, другим способом войти не получится. Воспользоваться его деинсталлятором тоже не получится — шпион защищает себя от удаления, значит, в системе есть другие процессы, контролирующие ситуацию с работой шпиона. Откройте “Монитор скрытых служб” (только в версиях Pro) в окне “Службы системы”. Любой, скрывающий себя от системы сервис, будет выделен красным цветом. В стандартном варианте списка служб системы эту слежку выявить нельзя.


    Скрытая служба от шпиона All In One Keylogger тоже обнаружена. Данный сервис и процесс защищают себя и не позволяют остановить. Добавьте его в базу угроз через контекстное меню. Первая задача выполнена — слежка выявлена. Теперь вы точно знаете, что находитесь под наблюдением.

    Для удаления шпиона All In One Keylogger, зайдите в платформу защиты COVERT, нажав на кнопку с надписью: “Вход в платформу защиты”.
    В окне “Процессы системы” вы увидите процессы, выделенные красным цветом. Через контекстное меню завершите их. В платформе защиты шпион не сможет себя скрывать и защищать.


    Далее откройте окно “Службы системы”. В стандартном списке “Активные службы”, через контекстное меню остановите и удалите сервис, выделенный красным цветом (или в списке “Все службы” он может быть выделен желтым цветом). В платформе защиты шпион не может себя скрывать и защищать.


    После произведённых действий, выйдите из платформы защиты и удалите папку шпиона с файлами. Она уже не будет скрыта и защищена.

    Если у вас установлена версия COVERT Base или COVERT USB, которые не имеют функции “Монитор скрытых служб”, для маскировки своих действий от шпиона All In One Keylogger зайдите в платформу защиты COVERT и работайте с любыми приложениями. Шпионская программа не сможет получить данные о вашей деятельности, пока вы находитесь внутри платформы любой версии программы COVERT.

    Программы, которые находятся в активном состоянии на компьютере, всегда можно просмотреть, открыв «Диспетчер задач ». Однако иногда может случиться так, что понадобится сделать исполнение какой-то программы невидимым. Если у вас тоже возникло такое желание, вы наверняка начнёте искать ответ на вопрос, как скрыть процесс в Диспетчере задач Windows.

    Узнайте, как скрыть процесс Диспетчер задач Windows

    Безусловно, анонимность исполнения некоторых программ позволит отслеживать тех, кто чрезмерно захламляет персональный компьютер. Особенно такая слежка важна, когда доступ к ПК имеют несколько пользователей.

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

    Любое выполнение программы является процессом, который нуждается в определённой части оперативной памяти . Процессы подразделяются на:

    • системные;
    • анонимные;
    • пользовательские;
    • связанные с интернетом.

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


    Научиться скрывать какие-либо пользовательские программы можно, при этом не понадобится прилагать огромные усилия, достаточно внимательно ознакомиться с нашими рекомендациями. Мы акцентируем ваше внимание, что даже продвинутый инженер, не подозревающий о ваших «творческих деяниях» не заметит просто так «левый» процесс.

    Алгоритм действий

    Если вам потребовалось скрыть программное приложение, сначала нужно разобраться, а является ли оно простым, не запускает ли оно дополнительные процессы, которые способны просто выдать её, как бы вы не попытались программу скрыть.

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

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

    Шаг 1

    Первоначально следует зайти в папку, где размещается файл исполнения конкретной программы. Если вы знаете, где он размещён, то воспользуйтесь привычным для вас «маршрутом», открыв окно «Компьютер», перейдя в системный диск C , а далее проследовав в его корневую папку.

    Если же вы не знаете, где скрывается файл исполнения, не беда, вам достаточно найти этот процесс в списке, отображаемом в Диспетчере задач, кликнуть по нему правой клавишей мышки, а затем в открывшемся окне выбрать строку «Открыть место хранения файла».


    Шаг 2

    После таких ваших действий откроется вами разыскиваемая папка, в ней остаётся вам найти файл исполнения. Искать будет несложно, поскольку этот файл имеет точно такое же название, как и в списке процессов в Диспетчере задач. Кроме этого, этот файл имеет расширение «exe».

    Шаг 3

    Чтобы переименовать файл, кликните по нему вновь правой клавишей мышки, а затем выберите строку «Переименовать». Теперь, когда вы сумели присвоить новое имя вашему программному приложению, откройте «Диспетчер задач », посмотрите, что это переименование отобразилось и там.


    Конечно, от того, какое название вы придумаете, будет зависеть, насколько ваша программа станет «завуалированной» для остальных пользователей ПК. Незнакомый процесс с новым именем ещё быстрее вызовет подозрение и заставит технического инженера разобраться, что за программа работает на ПК.

    По этой причине многие опытные пользователи рекомендуют придумывать названия, которые с первого взгляда не вызывают никаких подозрений.

    В частности, открытый браузер Chrome создаёт одновременно несколько процессов, так же, как Windows. Желательно взять такое же название процесса, но поскольку система не позволит функционировать двум одноимённым процессам одновременно, рекомендуется при переименовании применить небольшую хитрость. Вместо некоторых английских букв в названии как будто случайно прописать русские. Внешне отличить русские буквы от английских невозможно, а система различит, поэтому позволит работать программам с условно одинаковыми именами.

    Итоги

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

    Открыв «Диспетчер задач», пользователь Windows может увидеть протекающие в системе процессы и закрыть те, что покажутся ему подозрительными. Чтобы защитить свои программы от обнаружения, авторы троянских программ и ad-aware стараются всеми возможными способами скрыть их процессы .

    Инструкция

    Чтобы максимально использовать возможности «Диспетчера задач», следует правильно его настроить. Откройте утилиту (Ctrl + Alt + Del), выберите «Вид» - «Выбрать столбцы». Отметьте птичками: «Идентификатор процесса», «Загрузка ЦП», «Память – использование», «Объекты USER», «Имя пользователя». Вы не сможете видеть скрытые процессы , но более подробная информация о видимых тоже бывает очень полезна. Например, многие простые троянские программы маскируются под процесс svchost.exe. Оригинальный процесс в графе «Имя пользователя» отмечен как SYSTEM. Процесс трояна будет иметь статус Admin, то есть запущен от имени администратора.

    Скрывать свое присутствие от «Диспетчера задач» сейчас способна практически любая грамотно написанная троянская программа. Можно ли ее обнаружить в этом случае? Здесь на помощь приходят специальные утилиты, позволяющие выявить скрытые процессы . Очень удобна программа AnVir Task Manager, позволяющая выявить многие опасные программы. Программа имеет русский интерфейс, ее можно бесплатно скачать в интернете.

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

    Одной из лучших программ для поиска скрытых процессов является Spyware Process Detector, ее триальную 14-дневную версию можно скачать по ссылке в конце статьи. Программа имеет широкий спектр механизмов поиска скрытых процессов, что выгодно отличает ее от многих других подобных утилит.

    Полезным подспорьем в борьбе с троянскими программами может стать небольшая утилита HijackThis. Утилита рассчитана на достаточно опытных пользователей. Руководство по ее использованию вы можете посмотреть ниже, в списке источников.



    Понравилась статья? Поделиться с друзьями: