Что можно украсть в атаках на память и при чем тут hiberfil.sys?
Недавно в популярном менеджере паролей KeePass устранили дефект — мастер-пароль, защищающий все остальные пароли в зашифрованной базе,
Разработчики KeePass быстро нашли довольно оригинальное решение проблемы, но в большинстве других приложений пароли в памяти хранятся в открытом виде, поэтому она всегда является «слабым местом» в общей системе безопасности.
Атака на память кажется экзотической и сложной, но на практике осуществить ее достаточно легко, если администраторы компьютера не предпримут специальных мер защиты.
Еще один вариант того, как можно добраться до памяти работающего компьютера, —
Таких файлов в Windows несколько:
Чтобы изучить один из этих файлов, как правило, нужно иметь физический доступ к компьютеру, но при этом не обязательно знать реквизиты доступа и вообще включать машину. Можно просто вытащить жесткий диск и считать его на другом компьютере.
Внедрите принцип наименьших привилегий. Все пользователи должны работать без прав администратора. Даже сами администраторы должны получить необходимые привилегии только на время выполнения процедур обслуживания.
Используйте системы защиты на каждом физическом и виртуальном компьютере. Компании обязательно нужны
Своевременно обновляйте ОС и все ключевые приложения.
Убедитесь, что компьютеры загружаются в режиме UEFI, а не BIOS. Поддерживайте прошивки UEFI на всех компьютерах в актуальном состоянии.
Установите безопасные настройки UEFI. Отключите Input/Output Memory Management Unit (IOMMU), что позволит исключить DMA-атаки. Поставьте пароль на UEFI и определите верный порядок загрузки ОС — это позволит снизить риски запуска системы с вредоносного носителя и изменения настроек на небезопасные. Функции Secure Boot и Trusted Boot также предотвращают запуск непроверенного кода ОС.
Аппаратное хранение ключей на базе TPM0. Trusted Platform Module позволяет обезопасить аутентификацию в ОС, использовать биометрию для входа в учетную запись и усложняет извлечение ключей. TPM значительно усиливает защиту, которую дает полнодисковое шифрование, поскольку его ключи тоже хранятся в модуле TPM.
Полнодисковое шифрование — защита от простейшего копирования данных с забытого или украденного компьютера, защита от
Недавно в популярном менеджере паролей KeePass устранили дефект — мастер-пароль, защищающий все остальные пароли в зашифрованной базе,
Для просмотра ссылки необходимо нажать
Вход или Регистрация
, где он был доступен в открытом виде. Таким же образом из памяти можно извлекать фрагменты другой важной информации, например тексты недавней переписки или цифры из корпоративных баз данных.Разработчики KeePass быстро нашли довольно оригинальное решение проблемы, но в большинстве других приложений пароли в памяти хранятся в открытом виде, поэтому она всегда является «слабым местом» в общей системе безопасности.
Атака на память кажется экзотической и сложной, но на практике осуществить ее достаточно легко, если администраторы компьютера не предпримут специальных мер защиты.
Как можно изучить память компьютера?
Участки оперативной памяти, используемые разными приложениями, в значительной мере изолированы друг от друга средствами ОС и гипервизора. Поэтому просто вдруг прочитать фрагмент памяти, в котором работает постороннее приложение, не получится. Впрочем, на это способны процессы с привилегиями ядра (system в Windows, root в *nix). А способов
Для просмотра ссылки необходимо нажать
Вход или Регистрация
до нужного уровня существует немало — чаще всего для этого используются различные уязвимости в ОС или
Для просмотра ссылки необходимо нажать
Вход или Регистрация
.Еще один вариант того, как можно добраться до памяти работающего компьютера, —
Для просмотра ссылки необходимо нажать
Вход или Регистрация
. Они основаны на том, что высокоскоростные интерфейсы (USB 4.0, Thunderbolt, Firewire и другие) ради ускорения процессов ввода-вывода имеют прямой доступ к памяти. Специально спроектированное устройство может злоупотреблять этой особенностью для считывания любых фрагментов памяти. Это не гипотетическая угроза, известны реальные случаи подобных атак (
Для просмотра ссылки необходимо нажать
Вход или Регистрация
).Таких файлов в Windows несколько:
- временный файл подкачки (pagefile.sys);
- файл сохранения для режима гибернации (hiberfil.sys);
- аварийные и отладочные дампы памяти (memory.dmp, minidump). Генерацию таких файлов можно запустить
Для просмотра ссылки необходимо нажать Вход или Регистрация.
Чтобы изучить один из этих файлов, как правило, нужно иметь физический доступ к компьютеру, но при этом не обязательно знать реквизиты доступа и вообще включать машину. Можно просто вытащить жесткий диск и считать его на другом компьютере.
Как можно предотвратить атаку на память?
Поскольку существует несколько способов извлечения памяти, то и защищаться нужно по разным направлениям одновременно. Обдумайте сценарии использования каждого компьютера в организации и взвесьте риски — некоторые меры защиты будут неудобными для пользователей. Начнем с относительно простых мер, которые рекомендованы в ста процентах случаев.Внедрите принцип наименьших привилегий. Все пользователи должны работать без прав администратора. Даже сами администраторы должны получить необходимые привилегии только на время выполнения процедур обслуживания.
Используйте системы защиты на каждом физическом и виртуальном компьютере. Компании обязательно нужны
Для просмотра ссылки необходимо нажать
Вход или Регистрация
. Убедитесь, что политики защиты предотвращают запуск сотрудниками легитимных, но потенциально опасных программ, которые могут использоваться для эскалации привилегий и снятия дампов памяти (утилиты sysinternals, powershell, лишние или устаревшие драйверы и тому подобное).Своевременно обновляйте ОС и все ключевые приложения.
Убедитесь, что компьютеры загружаются в режиме UEFI, а не BIOS. Поддерживайте прошивки UEFI на всех компьютерах в актуальном состоянии.
Установите безопасные настройки UEFI. Отключите Input/Output Memory Management Unit (IOMMU), что позволит исключить DMA-атаки. Поставьте пароль на UEFI и определите верный порядок загрузки ОС — это позволит снизить риски запуска системы с вредоносного носителя и изменения настроек на небезопасные. Функции Secure Boot и Trusted Boot также предотвращают запуск непроверенного кода ОС.
Неоднозначные меры
Все меры, перечисленные в этом разделе, значительно повышают безопасность системы, но иногда негативно влияют на производительность компьютера, удобство пользователя или возможности восстановления данных после аварий. Каждая из них требует тщательного обдумывания в контексте конкретных ролей в организации, а внедрение нуждается в аккуратности и поэтапном развертывании с детальным тестированием.Аппаратное хранение ключей на базе TPM0. Trusted Platform Module позволяет обезопасить аутентификацию в ОС, использовать биометрию для входа в учетную запись и усложняет извлечение ключей. TPM значительно усиливает защиту, которую дает полнодисковое шифрование, поскольку его ключи тоже хранятся в модуле TPM.
- Возможные «подводные камни»: отсутствие на некоторых компьютерах модуля TPM, несовместимые комбинации ОС и оборудования, сложности централизованного управления ключами (из-за разных систем и версий TPM).
Полнодисковое шифрование. Эта мера радикально снижает риски утечки данных, особенно с забытых или украденных ноутбуков, поэтому она рекомендуется даже тем, кто не очень боится атак на память. Штатная реализация от Microsoft —Для просмотра ссылки необходимо нажать Вход или Регистрация, но есть и сторонние решения. В Linux-системах FDE (full disk encryption) также стало частью ОС (например, вДля просмотра ссылки необходимо нажать Вход или Регистрация), во многих дистрибутивах оно основано наДля просмотра ссылки необходимо нажать Вход или Регистрация. Наиболее надежно использовать комбинацию TPM и FDE.
- Подводные камни: при серьезных сбоях на компьютере с диска невозможно вытащить ничего. Поэтому критически важно наличие отлаженной системы резервного копирования. Иногда заметно снижение производительности дисковых операций, особенно при запуске компьютера.
Отключение спящего режима (sleep, standby). Если запретить «сон» и оставить только «гибернацию», ситуация, когда загруженный и частично расшифрованный компьютер доступен злоумышленникам для DMA-атак и прочих упражнений, станет крайне редкой.
- Недостаток решения тоже очевиден, ведь спящий режим — это самый быстрый и удобный способ «выключить» компьютер после рабочего дня или при смене дислокации в офисе. Если вы решите пойти по этому пути для части пользователей, важно внедрить полнодисковое шифрование, иначе файл гибернации будет беззащитен для атак.
Отключение режима гибернации. Если отключить гибернацию, то образ памяти нельзя будет скопировать из файла с выключенного компьютера. Для самых важных компьютеров можно запретить и гибернацию, и сон, их можно будет только полностью выключить. В комбинации с полнодисковым шифрованием, TPM и прочими мерами это оставляет очень мало места для атак на память, но неудобства для пользователей будут значительны, поэтому стоит серьезно задуматься, в каких случаях это оправданно.
Разговор начистоту
Если вы решите, что безопасность стоит того, чтобы отключить спящий режим или гибернацию, тщательно продумайте, каким именно пользователям нужно внедрять такую политику. Вряд ли это будет 100% сотрудников, скорее речь пойдет о тех, кто работает с критически важной информацией. Важно объяснить им, что кража паролей и других данных возможна многими способами, поэтому недостаточно «просто антивируса» или «просто не ходить на всякие там сайты», чтобы предотвратить серьезные инциденты безопасности.Про каждую из защитных мер имеет смысл сказать несколько слов, объясняя их смысл.
Полнодисковое шифрование — защита от простейшего копирования данных с забытого или украденного компьютера, защита от
Для просмотра ссылки необходимо нажать
Вход или Регистрация
, то есть от посторонних с физическим доступом к компьютеру. Отключение сна и гибернации продолжает и усиливает эти защитные меры, поэтому лишние 5 минут на включение и выключение компьютера внесут важный вклад в то, чтобы сотрудник потом не стал «крайним», если его паролем воспользуются для кибератаки.
Для просмотра ссылки необходимо нажать
Вход или Регистрация