ћерион Ќетворкс

12 минут чтени€

≈сли вы специалист по безопасности, то вам потребуетс€ часто анализировать хосты, если будет замечена подозрительна€ активность. „тобы дольше оставатьс€ незамеченными, злоумышленники зачастую используют совершенно легитимные инструменты и процессы, которые можно найти в любой ќ— Microsoft Windows.

ѕоэтому важно понимать, как Windows обрабатывает процессы и какие встроенные инструменты может использовать специалист по безопасности дл€ анализа активностей на хосте.


ѕроцессы, потоки и службы

¬ Windows, когда приложение запущено, оно создает процесс. ќбычно приложение может иметь один или несколько выделенных ему процессов. ѕроцесс - это все ресурсы, необходимые дл€ обеспечени€ возможности выполнени€/запуска приложени€ в операционной системе хоста. ѕредставьте, что вы открываете диспетчер задач, чтобы проверить производительность вашего компьютера. ќперационна€ система создаст процесс со всеми необходимыми ресурсами дл€ этого приложени€.

Ќа следующем рисунке показаны текущие процессы на компьютере с Windows 10:

ƒиспетчер задач

 ак показано на предыдущем рисунке, диспетчер задач - это служебна€ программа, котора€ предоставл€ет информацию о процессах, службах и производительности устройства. Ќа вкладке Ђѕроцессыї вы увидите список всех запущенных в данный момент приложений в операционной системе хоста, список фоновых процессов и ресурсы, которые выдел€ютс€ каждому приложению (÷ѕ, пам€ть).

‘оновые процессы в Windows выполн€ютс€ как службы. —лужба - это программа, котора€ выполн€етс€ в фоновом режиме операционной системы, обеспечива€ поддержку приложени€ и/или операционной системы. Ёти службы можно настроить на автоматический запуск при загрузке Windows. ¬ы можете запускать, останавливать и перезапускать службу вручную.

Ќа следующем снимке экрана показано окно панели управлени€ службами в операционной системе Windows 10:

ќкно панели управлени€ службами

Ќа предыдущем рисунке показан список служб в операционной системе хоста. «десь вы можете настроить свойства службы в Windows. ƒважды щелкнув на службу, откроетс€ окно свойств.

Ќа следующем рисунке показано окно свойств службы:

ќкно свойств службы

 ак показано на предыдущем рисунке, вы можете настроить тип запуска службы.

 аждое приложение создает родительский процесс с одним или несколькими дочерними процессами, иногда называемыми потоком.  аждый дочерний процесс или поток отвечает за функцию, обеспечивающую выполнение приложени€.  огда приложение выполн€етс€ в операционных системах Microsoft Windows, родительский процесс использует системный вызов fork(), который позвол€ет родительскому процессу дл€ запущенного приложени€ создать один или несколько дочерних процессов. ќднако имейте в виду, что у дочернего процесса может быть только один родительский процесс, а у родительского процесса может быть несколько дочерних процессов.

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

¬ажное примечание! ќперационна€ система Windows управл€ет выделением виртуальной пам€ти процессу.

»ногда, когда приложение закрываетс€, родительский процесс и все дочерние процессы завершаютс€, тем самым высвобожда€ ресурсы обратно операционной системе. ќднако родительский процесс может завершитьс€, пока дочерние процессы остаютс€ активными. ¬ этой ситуации виртуальна€ пам€ть и любые другие ресурсы по-прежнему выдел€ютс€ каждому дочернему процессу. ƒочерний процесс, у которого нет родительского процесса, называетс€ сиротским процессом (orphan process). ѕользователь может вручную завершить дочерний процесс в диспетчере задач или выполнить перезагрузку системы. ѕерезагрузка системы завершит все процессы и перезагрузит операционную систему.

Ќа следующем рисунке показан список всех запущенных процессов на вкладке Ђѕодробностиї в диспетчере задач:

Ќаблюдение за процессами в диспетчере задач

 ак показано на предыдущем снимке экрана, мы можем видеть все процессы, идентификатор процесса (PID) дл€ каждого процесса, статус, какой пользователь запускает процесс, и распределение ресурсов. “акже в Microsoft Windows существует утилита Resource Monitor ћонитор ресурсов предоставл€ет более подробную информацию обо всех процессах и о том, как они используют ÷ѕ, пам€ть диск и сеть на устройстве.

Ќа следующем рисунке показан интерфейс монитора ресурсов на компьютере с Windows 10:

»нтерфейс монитора ресурсов

≈ще одним инструментом, который поможет вам определить адресное пространство и распределение пам€ти в Microsoft Windows, €вл€етс€ инструмент RAMMap, который входит в набор инструментов Windows Sysinternals от Microsoft.

Ќа следующем рисунке показан сводный список и список подкачки на хосте, использующем RAMMap:

RAMMap

 ак показано на предыдущем снимке экрана, RAMMap показывает сводную информацию о выделении виртуальной пам€ти и ее использовании.  роме того, вкладка ѕроцессы содержит полный список всех процессов:

¬кладка Ђѕроцессыї RAMMap

 ак показано на предыдущем рисункеа, на этой вкладке вы можете увидеть каждый запущенный процесс и распределение виртуальной пам€ти. Ётот инструмент действительно полезен дл€ демонстрации того, как ваша операционна€ система распредел€ет физическую пам€ть и сколько пам€ти используетс€ в качестве кэша дл€ данных на устройстве.


‘айл подкачки Windows

=

ѕо мере того, как в пам€ть загружаетс€ больше приложений, операционна€ система выдел€ет части физической пам€ти (ќ«”) каждому процессу, использу€ виртуальную пам€ть.  аждый родительский процесс и его дочерние процессы выполн€ютс€ в одном виртуальном адресном пространстве в операционной системе хоста.  ак уже упоминалось, за выделение пам€ти отвечает операционна€ система, однако есть некоторые приложени€, которым дл€ бесперебойной работы требуетс€ намного больше пам€ти, чем другим, и это может создать нехватку доступной пам€ти дл€ других приложений.

ќперационна€ система Windows использует часть пам€ти из другой области, с жесткого диска или SSD. Windows берет небольшую часть пам€ти с локального диска и преобразует ее в виртуальную пам€ть. Ёто называетс€ файлом подкачки.

‘айл подкачки позвол€ет операционной системе хоста использовать эту часть пам€ти дл€ загрузки приложений и, следовательно, снижает нагрузку на физическую пам€ть (ќ«”) в системе.

„тобы получить доступ к настройкам файлов подкачки, выполните следующие действи€:

  • ўелкните значок Windows в нижнем левом углу экрана и выберете —истема. ќткроетс€ окно Ђ—истемаї. —лева выберите пункт Ђƒополнительные параметры системыї.
  • ќткроетс€ окно Ђ—войства системыї. ¬ыберите пункт Ђƒополнительної и нажмите Ђѕараметрыї в разделе ЂЅыстродействиеї, как показано ниже:

    ќкно свойств системы

  • ќткроетс€ окно параметров быстродействи€. „тобы изменить размер файла подкачки, нажмите Ђ»зменитьЕї:

    ѕараметры файла подкачки

¬ам будет предоставлена возможность настроить размер файла подкачки дл€ всех дисков в локальной системе. –азмер файла подкачки по умолчанию зависит от объема оперативной пам€ти хост-системы. ќперационна€ система Windows 10 автоматически управл€ет размером файла подкачки в зависимости от конфигурации хоста и объема оперативной пам€ти в системе.

Windows использует файл подкачки в качестве виртуальной пам€ти в случае, если в ќ«” недостаточно физической пам€ти.


–еестр Windows

¬с€ информаци€ о конфигураци€х и настройках операционной системы Windows и ее пользователей хранитс€ в базе данных, известной как реестр (registry). —амый высокий уровень реестра известен как куст. ¬ реестре Windows есть п€ть кустов, и каждое значение данных хранитс€ в разделе или подразделе куста. ƒрево (куст) реестра Ч это подмножество разделов, подразделов и параметров реестра, которому сопоставлен набор вспомогательных файлов, содержащих резервные копии этих данных. „асто дл€ обозначени€ конкретных путей в реестре примен€ют термин ветка. Ќапример ветка реестра HKEY_LOCAL_MACHINE\SYSTEM.

Ќиже перечислены п€ть кустов и их функции в Windows:

  • HKEY_CLASSES_ROOT (HKCR): этот куст отвечает за правильное выполнение всех текущих приложений в проводнике Windows.  роме того, этот куст содержит сведени€ о €рлыках и правилах перетаскивани€ в операционной системе хоста.
  • HKEY_CURRENT_USER (HKCU): этот куст хранит информацию о текущей учетной записи пользовател€ в локальной системе. Ёта информаци€ будет включать настройки панели управлени€, настройки папок и настройки персонализации пользовател€.
  • HKEY_LOCAL_MACHINE (HKLM): этот куст отвечает за хранение специфичных дл€ оборудовани€ деталей операционной системы, таких как конфигураци€ системы и подключенные диски.
  • HKEY_USERS (HKU): содержит данные конфигурации профилей пользователей в локальной системе.
  • HKEY_CURRENT_CONFIG (HKCC): содержит подробную информацию о текущих конфигураци€х системы.

ƒл€ доступа к реестру используйте Registry Editor (regedit) в строке поиска Windows.

Ќа следующем рисунке показан редактор реестра Windows:

–едактор реестра

 ак показано на предыдущем рисунке, вы можете видеть, что каждый куст находитс€ в верху своего уровн€. ≈сли вы развернете куст, вы увидите папки, а в каждой папке есть ключи, которые содержат сведени€ о конкретной функции или конфигурации в операционной системе.

–еестр может предоставить ценную информацию во врем€ расследовани€. ¬ каждом реестре есть значение, известное как LastWrite, которое просто указывает врем€ последнего изменени€ объекта или файла. Ёта информаци€ может использоватьс€ дл€ определени€ времени инцидента или событи€, св€занного с безопасностью. ¬ реестре также содержатс€ сведени€ о приложени€х, которые запускаютс€ автоматически со стартом системы - AutoRun. ƒл€ закреплени€ в системе, злоумышленники часто модифицируют ветки реестра, которые отвечают за автоматический запуск процессов и сервисов и добавл€ют в них ссылки на вредоносные программы, чтобы они каждый раз запускались со стартом системы и могли пережить перезагрузку.

Ќиже приведены основные ветки, отвечающие за автоматический старт приложений и сервисов:

  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce]
  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run]
  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices]
  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce]
  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit]
  • [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
  • [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce]
  • [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices]
  • [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce]
  • [HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows]

Ќапример, чтобы при каждом старте Windows запускалс€ блокнот, в ветку [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run] можно добавить новое значение и указать в нЄм ссылку на исполн€емый файл на компьютере - "Notepad"="c:\windows\notepad.exe"


Windows Management Instrumentation

”правл€ть несколькими компьютерами с ќ— Windows в небольшой сети очень просто. ќднако по мере роста сети и подключени€ все большего числа устройств на базе Windows управление политиками и службами на уровне приложений может стать сложной задачей. Windows Management Instrumentation (WMI) - это инструмент, встроенный в операционную систему Windows, который позвол€ет системному администратору или специалисту по безопасности управл€ть многими системами на базе Windows в корпоративной сети.

WMI - это функци€ администрировани€ Windows, котора€ обеспечивает единую среду дл€ локального и удаленного доступа к системным компонентам Windows, а также позвол€ет собирать статистическую информацию об удаленных компьютерах в вашей сети. ¬ы сможете собирать статистику как по оборудованию, так и по программному обеспечению и даже отслеживать состо€ние каждого устройства.

„тобы открыть WMI на компьютере с Windows, выполните следующие действи€:

  • ќткройте приложение Computer Management (управление компьютером) в Windows 10/Server 2019.
  • —лева разверните Ђ—лужбы и приложени€ї.
  • ўелкните правой кнопкой мыши элемент управлени€ WMI и выберите Ђ—войстваї.

Ќа следующем рисунке показан интерфейс свойств элемента управлени€ WMI:

ќкно свойств элемента управлени€ WMI

«лоумышленники могут использовать инструментарий управлени€ Windows (WMI) дл€ удаленного управлени€. WMI работает через протоколы SMB и службу удаленного вызова процедур (RPCS) дл€ удаленного доступа. RPCS работает через порт 135.

WMI управл€етс€ через утилиту командной строки WMI command-line (WMIC). ѕример команды - wmic process call create.

»спользование WMI должно быть ограничено и ограничиватьс€ только авторизованными пользовател€ми, внимательно след€ за его использованием.


»нструменты мониторинга

¬ операционной системе Windows существует множество инструментов мониторинга, которые специалист по безопасности может использовать дл€ мониторинга различных ресурсов и действий на устройстве. ќдним из таких инструментов €вл€етс€ Performance Monitor, который позвол€ет пользователю собирать более подробные данные, чем ранее упом€нутый Resource Monitor. ћонитор производительности (системный монитор) - это основной инструмент, используемый как в Windows 10, так и в Windows Server. —пециалист по безопасности может использовать этот инструмент дл€ сбора статистики о системе за различные периоды времени, например, часы или дни. «атем собранные данные можно проанализировать на предмет любых аномалий.

Ќа следующем рисунке показан монитор производительности в системе Windows 10/Server 2019:

»нструмент Performance Monitor

≈ще одним отличным инструментом, встроенным в Windows, €вл€етс€ ћонитор стабильности системы. ћонитор стабильности системы позвол€ет специалисту по безопасности просматривать историю проблем, возникших в основной системе в течение нескольких дней или недель. ѕользователь может нажать на событие в инструменте, чтобы получить подробную информацию о проблеме, и существует система оценок от 1 до 10, отражающа€ серьезность проблемы.

Ќа следующем рисунке показан ћонитор стабильности системы на компьютере с Windows 10:

ћонитор стабильности системы Windows

 ак показано на предыдущем рисунке, в системе произошел р€д критических событий за определенный период времени. ¬ыбрав событие, монитор покажет подробную информацию о службе или приложении, вызвавшем событие, сводку и врем€ его возникновени€. —пециалист по безопасности может использовать статистику и информацию, найденные здесь, чтобы лучше пон€ть, вызвало ли вредоносное ѕќ или неавторизованные приложени€ нарушение безопасности в хост-системе.


»нструменты мониторинга

 огда в системе Windows происходит какое-либо событие, создаетс€ сообщение журнала о данном событии. »нструмент, позвол€ющий анализировать данные событи€ - Event Viewer. Event Viewet содержит журналы безопасности, приложений и системных событий.

ѕредставьте, что злоумышленник пытаетс€ войти в учетную запись пользовател€ с неверными учетными данными. ƒл€ каждой попытки создастс€ событие сообщени€ журнала, и по этим данным можно будет обнаружить атаку. —уществует 4 основных журнала событий:

  • Security \ Ѕезопасность - хранит событи€ безопасности
  • Application \ ѕриложение - хранит журналы приложений в ситстеме и установленного ѕќ
  • Setup \ ”становка - хранит сведени€ об установке ќ—
  • System \ —истема - хранит сведени€ о работе самой системы

Ќа следующем рисунке показан инструмент просмотра событий в Windows (Event Viewer):

»нструмент просмотра событий

≈сли вы развернете категорию, такую как Ѕезопасность, вы увидите список всех журналов, св€занных с безопасностью. Ќа следующем снимке экрана показаны сведени€ в окне просмотра событий входа в систему безопасности:

∆урнал безопасности в средстве просмотра событий

»нформаци€, содержаща€с€ в сообщени€х журнала, помогает специалисту по безопасности определить, что, когда и как произошел инцидент в системе.

ќбратите внимание на код событи€ - 4624. Ётот код соответствует успешному входу в системе Windows. ¬ случае неуспешного входа сгенерируетс€ событие с кодом 4625. ƒанные событи€ также будут содержать другую полезную информацию, такую как: им€ пользовател€, осуществл€ющего вход, информацию о системе с которой осуществл€етс€ вход, тип входа (интерактивный, удаленный, сетевой, вход сервиса), процесс входа, ID входа и другое.

ƒругие важные коды событий в системах Windows, хран€щиес€ в журнале Ѕезопасности/Security (начина€ с версии 7):

  • 4725 - ќтключение ”четной записи
  • 4723 - »зменение парол€ учетной записи
  • 4724 - —брос парол€ дл€ учетной записи
  • 4720\4726 - —оздание\удаление пользовател€
  • 4648 - вход с €вным указанием учетных данных
  • 4698 - —оздание задачи через планировщик задач
  • 4697 - —оздание службы в системе
  • 4688\4689 - —оздание\завершение процесса

—кидки 50% в Merion Academy

¬ыбрать курс