Windows process explorer command

Process Explorer v16.32

By Mark Russinovich

Published: April 28, 2020

Download Process Explorer (2.5 MB)
Run now from Sysinternals Live.

Introduction

Ever wondered which program has a particular file or directory open? Now you can find out. Process Explorer shows you information about which handles and DLLs processes have opened or loaded.

The Process Explorer display consists of two sub-windows. The top window always shows a list of the currently active processes, including the names of their owning accounts, whereas the information displayed in the bottom window depends on the mode that Process Explorer is in: if it is in handle mode you’ll see the handles that the process selected in the top window has opened; if Process Explorer is in DLL mode you’ll see the DLLs and memory-mapped files that the process has loaded. Process Explorer also has a powerful search capability that will quickly show you which processes have particular handles opened or DLLs loaded.

The unique capabilities of Process Explorer make it useful for tracking down DLL-version problems or handle leaks, and provide insight into the way Windows and applications work.

  • Windows Internals Book The official updates and errata page for the definitive book on Windows internals, by Mark Russinovich and David Solomon.
  • Windows Sysinternals Administrator’s Reference The official guide to the Sysinternals utilities by Mark Russinovich and Aaron Margosis, including descriptions of all the tools, their features, how to use them for troubleshooting, and example real-world cases of their use.

Download

Download Process Explorer (2.5 MB)
Run now from Sysinternals Live.

Runs on:

  • Client: Windows Vista and higher (Including IA64).
  • Server: Windows Server 2008 and higher (Including IA64).

Installation

Simply run Process Explorer (procexp.exe).

The help file describes Process Explorer operation and usage. If you have problems or questions please visit the Process Explorer forum on Technet.

Note on use of symbols

When you configure the path to DBGHELP.DLL and the symbol path uses the symbol server, the location of DBGHELP.DLL also has to contain the SYMSRV.DLL supporting the server paths used. See SymSrv documentation or more information on how to use symbol servers.

Learn More

Here are some other handle and DLL viewing tools and information available at Sysinternals:

  • The case of the Unexplained. In this video, Mark describes how he has solved seemingly unsolvable system and application problems on Windows.
  • Handle — a command-line handle viewer
  • ListDLLs — a command-line DLL viewer
  • PsList — local/remote command-line process lister
  • PsKill — local/remote command-line process killer
  • Defrag Tools: #2 — Process Explorer In this episode of Defrag Tools, Andrew Richards and Larry Larsen show how to use Process Explorer to view the details of processes, both at a point in time and historically.
  • Windows Sysinternals Primer: Process Explorer, Process Monitor and More Process Explorer gets a lot of attention in the first Sysinternals Primer delivered by Aaron Margosis and Tim Reckmeyer at TechEd 2010.

—>

Использование Process Explorer для устранения неполадок и диагностики

Серия уроков по пакету утилит SysInternals

3. Использование Process Explorer для устранения неполадок и диагностики

Понимание того, как работают диалоговые окна и параметры Process Explorer, — это прекрасно, но как насчёт их использования для реального устранения неполадок или диагностики проблемы? Сегодняшний урок попытается помочь вам узнать, как это сделать.

Читайте также:  Как удалить python с компьютера windows

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

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

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

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

А затем мы завершим это ещё одним взглядом на то, как некоторые рекламные программы в наши дни прячутся за процессами Microsoft, чтобы они выглядели легитимными в Process Explorer или диспетчере задач, хотя на самом деле таковыми не являются.

Исследование вредоносного ПО

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

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

Conduit не только перенаправит все ваши поисковые запросы на свою собственную страницу Bing, но и установит её в качестве вашей домашней страницы. Можно было бы предположить, что Microsoft платит им за весь этот трафик в Bing, поскольку они также передают в строке запроса некоторые аргументы типа?pc=conduit.

Забавный факт: компания, стоящая за этим куском мусора, стоит 1,5 миллиарда долларов, и JP Morgan вложил в неё 100 миллионов долларов. Быть злом выгодно.

Conduit захватывает страницу новой вкладки… Но как?

Взлом вашей поисковой и домашней страницы тривиален для любого вредоносного ПО — именно здесь Conduit вступает в бой и каким-то образом переписывает страницу новой вкладки, чтобы заставить её отображать Conduit, даже если вы измените все настройки.

Вы можете удалить все свои браузеры или даже установить браузер, который у вас не был установлен раньше, например Firefox или Chrome, и Conduit все равно сможет захватить страницу быстрого доступа.

Кто-то должен сидеть в тюрьме, но он наверняка на яхте.

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

Но как именно он это делает? Ни в один из браузеров не установлены надстройки или расширения. Нет никаких плагинов. Реестр чистый. Как они это делают?

Здесь мы обращаемся к Process Explorer, чтобы провести некоторое расследование. Во-первых, мы найдём в списке процесс Search Protect, который достаточно прост, потому что он правильно назван, но если вы не уверены, вы всегда можете открыть окно и использовать маленький значок в виде яблочка рядом с биноклем, чтобы выяснить, какой процесс принадлежит окну.

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

Читайте также:  Ошибка защитника windows 0x800704ec

Теперь, когда вы выбрали процесс, вы можете использовать сочетания клавиш CTRL+H или CTRL+D, чтобы открыть представление Handles или представление DLLs, или вы можете использовать для этого меню View → Lower Pane View.

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

DLL или библиотеки динамической компоновки — это общие части скомпилированного кода, которые хранятся в отдельном файле для совместного использования несколькими приложениями. Например, вместо того, чтобы каждое приложение создавало свои собственные диалоговые окна открытия/сохранения файла, все приложения могут просто использовать общий код диалогового окна, предоставленный Windows в файле comdlg32.dll.

Просмотр списка дескрипторов в течение нескольких минут немного приблизил нас к тому, что происходит, потому что мы нашли дескрипторы для Internet Explorer и Chrome, которые в настоящее время открыты в тестовой системе. Мы определённо подтвердили, что Search Protect что-то делает с открытыми окнами браузера, но нам нужно провести дополнительное исследование, чтобы точно выяснить, что именно.

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

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

Каждый раз, когда вы хотите узнать, используется ли файл DLL в настоящее время каким-либо приложением в вашей системе воспользуйтесь поиском. Чтобы открыть панель поиска, перейдите в меню Find («Поиск»), нажав CTR+F или просто кликните значок бинокля на панели инструментов. Теперь введите часть имени DLL или даже полное имя, если хотите.

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

Щелчок по одному из элементов в списке и переход на страницу Threads («Потоки») подтвердили наши опасения. И Chrome, и Internet Explorer запускали потоки с использованием файлов SPVC32.dll или SPVC64.dll из вредоносного ПО Search Protect, и именно так они захватывали нашу новую вкладку — не путём изменения настроек, а путём перехвата браузера изнутри.

Примечание. В Windows thread (поток) — это то, для чего операционная система выделяет процессорное время. Обычно мы думаем о процессах, но технически в Windows работают только потоки, а не процессы. У некоторых процессов может быть только один поток выполнения, но у других может быть много потоков, которые все работают отдельно друг от друга, обычно управлясь с каким-либо механизмом межпроцессного взаимодействия.

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

Вам может быть интересно, как приложению Search Protect удалось заставить Google Chrome загрузить эту DLL, и ответ заключается в том, что Windows предоставляет функцию под названием DLL Injection. Процесс может внедрить DLL в другой процесс, а затем перехватить определённые функции API. Таким образом некоторые приложения переопределяют функции Windows или функции других приложений. Это очень сложный предмет, который мы определённо не сможем раскрыть на этом уроке, но если вы действительно хотите узнать больше, вы можете ознакомиться с этим руководством.

Читайте также:  Running dvd on windows 10

Также стоит отметить, что вы можете увидеть использование ЦП на поток, углубившись в детали этого уровня, что может быть очень полезно при устранении неполадок в приложении, в котором есть плагины. Вы можете использовать это, чтобы выяснить, какой конкретный файл DLL занимает слишком много времени процессора, а затем провести некоторое исследование того, к чему этот компонент принадлежит.

Работа с заблокированными файлами или папками

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

Когда вы получаете ошибку «уже используется», просто перейдите в Process Explorer, откройте поиск с помощью CTRL+F или значка, а затем введите имя проблемной папки или файла (или полный путь, если имя очень расплывчатое).

Вы очень быстро увидите в списке процесс, в котором открыт ваш файл или папка, и можете дважды щёлкнуть по нему, чтобы идентифицировать процесс в списке.

В первую очередь на ум приходит просто закрыть этот процесс, но делать это не обязательно. Вы также можете щёлкнуть правой кнопкой мыши файл или папку в списке дескрипторов (используйте сочетание клавиш CTRL+H, чтобы открыть список дескрипторов) и выбрать опцию «Закрыть дескриптор». Этот ресурс теперь разблокирован!

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

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

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

Проблема заключается в утилите Windows rundll32.exe, которую можно использовать для произвольного запуска функций из файлов DLL. Поскольку эта утилита подписана Microsoft, она отображается в списке как полностью законный процесс, но на самом деле они просто перемещают весь свой вредоносный/рекламный код в файл .DLL вместо файла .EXE, а затем вместо этого загружается вредоносное ПО с помощью rundll32.exe. Фактически, если вы видите, что rundll32.exe запущен как «собственный процесс» и обозначен голубым цветом, показанным ниже, это почти всегда что-то, что не должно выполняться.

В приведённом ниже примере вы можете видеть, что, хотя мы использовали функцию Verified Signer для проверки этого элемента, когда мы наводим на него курсор и смотрим на полный путь, на самом деле загружается DLL, которая оказывается частью adware (рекламного ПО).

Примечание: прежде чем вы начнёте кричать о запуске антивирусной проверки, отметим, что мы это сделали, и она ни чего не нашла. Большая часть этого нежелательного, рекламного и шпионского ПО игнорируется антивирусными утилитами.

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

Внутри этого каталога мы обнаружили ряд файлов, которые постоянно обновлялись в фоновом режиме.

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

Важным моментом здесь является то, что вредоносное ПО способно прятаться за законными исполняемыми файлами Windows, поэтому обязательно следите за чем-либо подобным.

Оцените статью