МЕНЮ

Разбор системы безопасности Windows 10/11 и как её отключить?

В наше время мало кто из среднестатистических пользователей компьютера на Винде задумывается об операциях, совершаемых в момент процесса входа в систему. А 99% ITшников никак не касаются дискрецинной модели разграничения доступа. Но тем не менее, все эти вещи существуют и работают под капотом данной ОС, что называется в штатном режиме. Zip File, мамкины хаЦкеры. С вами Денчик. И, кажется, настала пара выпустить вторую часть нашумевшего ролика про Архитектуру Винды. Нынче мы с вами сделаем упор на ключевые компоненты безопасности.

Поговорим про существующие стандарты, SRM, LSASS, реестр, SAM, ADшку и ещё массу всего интересного.

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

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

Но прежде, чем мы начнём, мне бы хотелось рассказать вам о новой, 14 версии межсетевого экрана Ideco UTM от моих друзей из одноимённой компании.

В обновлении основной упор был сделан на создании правил по GeoIP. Т.е. теперь вы сможете фильтровать трафик из разных стран буквально в несколько кликов.

Также была добавлена возможность создания агрегированных интерфейсов (LACP), отчётность по срабатываниям WAF и отправка логов IPS по syslog.

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

Нововведения позволили значительно увеличить скорость обработки трафика за счёт использования новейших алгоритмов ядра и собственных, авторских разработок Ideco.

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

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

В ней можно неспешно протестить все возможности UTM, и даже установить себе это дело на 40 дней совершенно бесплатно. Так что переходите скорее, чтобы к началу закупок уже иметь для начальства железобетонные аргументы.

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

Денчик рекомендует. Кликай скорей

Стандарты безопасности

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

Известно, что любая операционная система априори должна поддерживать базовые элементы безопасности, а это само собой подразумевает наличие каких-то стандартов. ISO или ГОСТов.

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

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

Объектом применения стандарта являются не технологии, как таковые в целом, а конкретные технологии, например ОС Windows 7 или СУБД MS SQL или конкретное приложение.

Давайте рассмотрим общую схему. Профиль ФСТЭК. Наша любимая федеральная служба тех-эксперт контроля. Видим тут разделение на пользователей без каких-либо прав.

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

В конечном итоге всё сводится к тому, что то, что мы делаем в системе, порождает какой-то субъект доступа.

Т.е. процесс, который мы с вами запускаем для получения доступа к объекту в виде каких-то данных.

Если у нас есть права, то мы получаем доступ. Если нет – соответственно не получаем. В любом случае, вам из этого важно понять, что субъект — это то, что относится к пользователю, а объект – то, что мы хотим получить.

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

Окей. С этим разобрались. В операционной системе Виндовс с каждый обновлением выходит сертификат соответствия требованиям безопасности. Из этой информации мы можем понять установлена ли лицензионная копия на машине или пиратка.

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

Учитывая, что любые права доступа находятся в подсистеме, сертификаты дают понимание каким уровнем безопасности в системе какой компонент обладает.

На практике это выглядит следующим образом. Первые 4 компонента идут в аудите. Конкретнее, аудит-генераторы и селективный аудит. Это какое-то расследование инцидентов или мониторинг состояния инфраструктуры.

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

Ниже следует User Data Protection. Это организация доступов. Разграничение файлов по уровням доступа. Чтение или запись. Всё это прописывается именно здесь.

Далее по списку идентификация и аутентификация. Здесь больше половины это x509 сертификаты. Т.е. всё что связано с сетями. Опять же WLAN. Ниже Security Management (FNT). Он позволяет организовывать безопасность самой системы.

Protection TSFа. Это защита от изменений BOOTа. Обновления из внешних источников. Всё записывается здесь. Эдакая защита от внедрения всего лишнего и не штатного. Вируса, левой флешки. И прочих вещей.

Следом мы видим доступ к сетям и контроль передачи пакетов. В конце FTP. Они же отдельные доверенные каналы передачи. Тут в основном готовые протоколы.

Зачем спрашивается это всё вообще нужно? Благодаря сертификатам можно понять подходит вам операционка или нет, ещё до её непосредственной установки.

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

Санкции, знаете ли. Заставляют айтишников шевелиться. Так вот не всякая версия Windows и уж тем более не всякая Линь соответствует всем требованиям безопасности крупной компании или корпорации с мировым именем.

Так что будьте готовы шерстить интернет изучая, что ж там за сертификаты внутри такие внутри. Для саморазвития, конечно, полезно, но дико уныло и скучно пздц. Не понимаю, как вообще в здравом уме люди идут учиться на безопасников. Я б лучше спился ещё до поступления в ВУЗ.

Ключевые компоненты безопасности

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

SRM, он же Security Reference Monitor отвечает за организацию доступов, управление привилегиями и генерацию сообщений аудита, говорящие о том, что здесь пользователь не может ничего сделать.

А Executive это уже непосредственно выполнение это истории. В верхней левой части у нас LogonUI и Winlogon. Они отвечают за вход в систему. Winlogon - процесс, отвечающий за интерактивные сессии аутентификации.

А LogonUI – это пользовательский интерфейс для авторизации. Для аутентификации он использует Credentials Provider'ы (например: пара логин/пароль, отпечаток пальца, Face Id, пин-код, токены и прочие вещи, позволяющие пользователю заламываться в ОС).

Netlogon - процесс, отвечающий за взаимодействие с AD при аутентификации. Netlogon требуется для работы политик в Active Directory. Данные компоненты успешно работают между собой, но оба так или иначе ведут в SRM.

Большой квадрат по середине, LSASS, отвечает за локальную политику безопасности (разрешение на вход, парольные политики, права пользователей и групп, настройки аудита и прочее).

Далее Active Directory. Это служба каталогов, содержащая информацию о домене. Домен в свою очередь представляет собой - группу компьютеров и связанных параметров безопасности, обеспечивающая возможность централизованного управления

ADшка позволяет вам в офисе на несколько десятков, сотен или даже тысяч компьютеров установить определённые сертификаты. Настроить VPN, доступы к сетевым файлам на шаре и т.д.

LSA – это локальные политики. Рядом видим соответствующую базу данных, хранящую настройки безопасности. Находится она в реестре в ветке HKLM\Security.

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

Для её редактирования можно воспользоваться инструментом regedit. Либо задействовать для этого утилиту PsExec от уже знакомого нам Марка Русиновича.

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

Для этого понадобится ввести ключ -s и -i. B ваши локальные привилегии будут повышены. Ну и отдельно есть ещё SAM. Security Accounts Manager. Сервис, отвечающий за управление базой данных с именами пользователей и группами.

Соответственно SAM Database – база данных, хранящая имена пользователей и пароли от ветки SAM. В современных версиях для хэширования паролей используется NTLM.

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

Ко всему прочему, в последних версиях Windows внедрена поддержка онлайн-аккаунта Microsoft, пароль от которого хранится на облачных серверах Мелкомягких, а не в локальном хранилище.

Event Logger записывает элементы в журнал аудита для проверок и затем несёт это дело прямиком в Kernel Mode. Как-то так. Вроде бы ничего не забыл. Если обобщить всё вышесказанное, то вам важно запомнить главное.

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

Причём данная процедура всегда выполняется только в таком порядке.

Запомните эту суть. А технические моменты всегда можно прогуглить или вспомнить быстро прощёлкав данный видос.

Logon

Давайте чуть более подробно остановимся на Logon’е. Интерактивный процесс входа происходит следующим образом. Сначала Winlogon запускает LogonUI (который как мы помним использует Credential Provider).

Далее пользователь вводит, к примеру связку логин/пароль. Затем Winlogon'ом эта история передаётся в LSASS, для попытки аутентификации.

И если аутентификация проходит успешно, Winlogon запускает userinit от лица текущего пользователя.

Ничего сложного. Сам же Winlogon запускается SMSS при загрузке системы.

Дискреционная модель разграничения доступа

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

Объект в свою очередь — это информация, помещения, устройства, к которым регулируется доступ (т.е. любая сущность, которая является предметом регулирования доступа).

Ну а доступ - операции чтения, записи, создания, удаления, модификации и т.д. Ключевое заблуждение многих юных ИБшников, это думать, что доступ — это исключительно про чтение.

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

В первую очередь разграничивается доступ к объектам, предоставляемым в User Mode. К слову, внутри ядра доступ почти не разграничивается. За предоставление объектов отвечает так называемый Object Manager.

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

Теперь касаемо дискреционной модели. Дискреционный метод доступа функционирует на основе идентификационной информации субъекта.

Т.е. для каждого объекта – списка, содержащего набор субъектов и ассоциированных с ними типов доступа. Например, доступ к этим файлам должен быть у Иванова на чтение, у Петрова на чтение и запись.

Процесс получения доступа происходит следующим образом. Сначала поток сообщает Object Manager'у, какой тип действий он собирается выполнять.

Затем Object Manager отправляет запрос SRM. SRM принимает решение о предоставлении доступа. И поток получает объект для совершения операций.

Вот так это выглядит на практике. Если смотреть через Process Monitor, то можно увидеть, что у пользователя Teacher просто куча запретов.

Ему даже файл открывать не положено. Вот такое вот отношение у нас к педагогам в стране. Никакого уважения и почитания. То ли дело в Совке. Мм. Говорят, преподам разрешалось по рукам всех линейкой х*ярить и никакого спроса за сиё поведение не было.

Окей. Далее на очереди у нас SID.  Windows использует Security Identifier для идентификации субъектов. SID'ы есть у компьютеров, пользователей, групп пользователей, доменов и сервисов.

Наиболее популярные SIDы собраны в подборке Well Known SID's. Если не забуду – оставлю ссылочку в описании. Но если вдруг проипусь – то не ленитесь и гуглите.

Мне же ещё хочется рассказать вам про так называемые Access Tokens. LSASS создаёт специальный токен (объект), которые содержит в себе информацию о контексте безопасности.

Сам токен назначается Userinit и дальше каждому порождённому процессу передаётся лишь копия этого токена.

Т.е. если Userinit запускает Explorer, то у Explorer будет копия токена пользователя.

По умолчанию потоки используют Access Token процесса. Но могут использовать и другие. Визуально это выглядит следующим образом.

Тут очень чётко прослеживаются нюансы дочерне-родительских отношений Thread’ов.

Объекты, к которым предоставляются доступ, содержат информацию о том, кто и какие действия может осуществлять с ними. Эта информация называется Security Descriptor.

Он состоит из Owner SID – т.е. SIDа владельца. DACLа - списка доступа. И SACLа - списка, определяющего пользователей, действия которых должны попадать в журнал аудита.

Да, в дескрипторе есть конечно и другие поля, но для нас они особого интереса не представляют.

Помимо этого, есть Access Control Entry - одна запись в ACL, содержащая набор разрешений и SID, для которого доступ должен разрешаться (allow), запрещаться (deny) или логироваться.

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

Secpol.msc: позволяет включить аудит доступа (журналироваться будет доступ только для тех объектов, для которых установлен SACL).

Event Viewer позволяет детально анализировать информацию о событиях. Короче инструментов хватает.

Но главное, что нужно запомнить касательно доступов. Если встречается хотя бы одно запрещающее правило (например, пользователь состоит в 2х группах и одной группе разрешён доступ, а второй - запрещён), то в доступе данному пользователю будет отказано. Т.е. запрет всегда превыше всего.

Окей, друзья. Нынче мы рассмотрели две ключевые темы, касающиеся операционной системы Windows. Процедуру Logon и процесс предоставления доступа и аудита.

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

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

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

Да, вы не получите именитую корочку ТОПового россиянского института, но знания у вас по итогу будут ничуть не хуже, чем у выпускников встратых ВУЗов.

Если не лучше. Ведь вы не пердите 5 лет за партой, потому что мамочка с папочкой решили, что это перспективная профа, а самостоятельно развивиетесь и учитесь по велению сердца.

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

Не забудь поблагодарить меня лайком, оставить комментарий и оформить подписочку на канал, если ещё по каким-то причинам не сделал этого раньше. Давай исправляйся. Жмякай на колокол. Ну а я пошёл дальше пилить для тебя контент. Не скучай.

 

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

telegram chanel

Хочешь больше контента? Подписывайся на YouTube-канал!

Курс «Диплом за неделю»

Пособие «Библия вардрайвинга»

Курс Cisco «CCNA: Introduction to Networks»

© 2024. IT-спец. Денис Курец.