USD 66.42 ЕВРО 75.22

Обезопасьте себя от DMA-атак

Аналитика

Путешествуете по странам-очагам кибершпионажа? Тогда остерегайтесь хакерских взломов своей системы посредством DMA-атак

Киберпреступность Прямой доступ к памяти (DMA) является функцией контроллера, которая стала доступна, по крайней мере начиная с оригинального IBM PC. Она может быть использована хакерами для взлома даже сильно защищенного компьютера. К счастью, есть шаги, которые можно предпринять, чтобы минимизировать риск DMA-атаки.

Хотя DMA-атаки были возможны в течение десятилетий, широкую известность они получили в 2009 году, когда исследователи обнаружили, что DMA может быть использован для взлома технологии шифрования диска BitLocker от Microsoft, согласно документу из Принстонского университета. Исследователи безопасности смогли восстановить закрытые ключи в нескольких популярных системах шифрования, в том числе BitLocker, FileVault, m-crypt и TrueCrypt, используя общедоступные компоненты.

Несмотря на то, что DMA атаки относительно редки, их легко как выполнить, так и защититься от них.

Как работает DMA

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

В Windows, вы можете проверить наличие контроллера DMA, открыв Диспетчер устройств и найдя Контроллер прямого доступа к памяти в Системных устройствах. Вы также можете увидеть драйверы устройств, названия которых содержат текст «OHCI-совместимый».

Вы можете определить — включён или выключен DMA на жестком диске в компьютерах с Linux/Unix/BSD, запустив команду: hdparm -d /dev/hda, где hda — имя вашего жесткого диска (или другого устройства, для которого вы проверяете функциональность DMA). Даже если вы думаете, что у вас нет устройства с поддержкой DMA, если у вас есть внешние порты, разрешающие использование DMA, такие как FireWire, PCI, PCI Express, Thunderbolt, ExpressCard, PCMCIA или Cardbus, весьма вероятно, что кто-то может подключить DMA-совместимое устройство к компьютеру и прочитать содержимое памяти.

Plug and play

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

Во время появления Windows Vista и BitLocker существовали (теперь обоснованные) слухи о том, как у руководителей воровали данные с ноутбуков во время посещения зарубежных стран и принятия душа в номере отеля.

Конечно, атака DMA должна быть первоочередным методом, используемым продвинутыми нападающими, такими как АНБ, и операционные системы Microsoft не являются единственными уязвимыми. Уязвимы все виды систем. Существует атака DMA против FileVault 2 на компьютере Apple, работающем на OSX Lion с помощью сценария Python.

Ответ Microsoft сначала был ограничен. Смягчение включало защиту компьютера от несанкционированного физического доступа, использование передовых (не TPM) методов защиты ключей разблокировки BitLocker, отказ от спящего режима, при котором данные остаются в памяти (вместо него рекомендовалось использование режима гибернации), предотвращение возможности загрузки с чего-либо, кроме основного жесткого диска и отключение ненужных устройств или драйверов DMA. Подобное смягчение должно быть ограничено: с таким количеством устройств и программ, зависящих от DMA, изменение спецификации повлечёт ухудшение производительности и взаимодействия.

Оценка рисков

Поскольку информация о DMA-атаках снова начала появляться в средствах массовой информации, люди, отвечающие за безопасность, были вынуждены спросить себя: Стоит ли отключать DMA и ухудшать производительность, учитывая относительно небольшой риск атак DMA? Реальность такова, что большинство взломов происходит чисто программно и имеют мало общего с аппаратными атаками (атаки заморозки памяти являются еще одним примером аппаратных атак).

К счастью, Microsoft отреагировала на эту информацию. Начиная с Windows 8.1 и Windows Server 2012 R2, Windows отказывает в DMA-доступе к памяти доступа внешним устройствам до момента разбора запросов DMA под контролем ОС Windows.

В Linux/Unix/BSD или Apple нет аналогичной защиты, но вы можете включать и выключать режим DMA для каждого устройства. Все еще хорошей идеей является ограничение загрузки с любого устройства, кроме основного жесткого диска, а также отключение ненужных портов DMA. Некоторые пользователи Unix могут создавать сценарии, отключать и включать DMA только при необходимости.

В любом случае, будьте в курсе легкости осуществления DMA-атаки (в ОС до Windows 8.1) и сведите к минимуму риск. Не стоит отключать DMA на всех компьютерах, но нужно рассмотреть дополнительные меры по смягчению для портативных компьютеров, содержащих важную информацию, особенно если их они путешествуют в страны, известные кибершпионажем.