Jump to content

Режим управления системой

Режим управления системой ( SMM , иногда называемый кольцом −2 в отношении защитных колец ) [1] [2] — это режим работы (ЦП) x86 центральных процессоров , в котором все нормальное выполнение, включая операционную систему , приостанавливается. компьютера Альтернативная система программного обеспечения, которая обычно находится во встроенном ПО , или аппаратный отладчик , затем запускается с высокими привилегиями.

Впервые он был выпущен вместе с Intel 386SL . [3] [4] Хотя изначально для SMM требовались специальные версии SL, в 1993 году Intel включила SMM в свои основные процессоры 486 и Pentium. AMD реализовала SMM Intel с процессорами Am386 в 1991 году. [5] Он доступен во всех более поздних микропроцессорах x86 с архитектурой . [ нужна ссылка ]

В архитектуре ARM режим исключения 3 (EL3) также называется режимом безопасного мониторинга или режимом управления системой. [6]

Операция

[ редактировать ]

SMM — это специальный режим работы, предназначенный для управления общесистемными функциями, такими как управление питанием, управление аппаратным обеспечением системы или собственный код, разработанный OEM. Он предназначен для использования только системной прошивкой ( BIOS или UEFI ), а не прикладным программным обеспечением или системным программным обеспечением общего назначения. Основное преимущество SMM заключается в том, что он предлагает отдельную и легко изолируемую процессорную среду, которая работает прозрачно для операционной системы или исполнительных и программных приложений. [ нужна ссылка ]

Чтобы добиться прозрачности, SMM налагает определенные правила. Ввод SMM возможен только через SMI (прерывание управления системой). Процессор выполняет код SMM в отдельном адресном пространстве (SMRAM), которое должно быть сделано недоступным для других режимов работы ЦП прошивкой . [7]

Режим управления системой может адресовать до 4 ГБ памяти в реальном режиме . В процессорах x86-64 SMM может адресовать память >4 ГБ в режиме реальной адресации. [8]

Использование

[ редактировать ]

Первоначально режим управления системой использовался для реализации функций управления питанием и аппаратного обеспечения, таких как Advanced Power Management (APM). Однако производители BIOS и OEM-производители полагаются на SMM для создания новых функций, таких как расширенная конфигурация и интерфейс питания (ACPI). [9] [10]

Некоторые варианты использования режима управления системой:

Режим управления системой также можно использовать для запуска руткитов с высоким уровнем привилегий , как было продемонстрировано на Black Hat 2008. [14] и 2015. [15]

Вход в СММ

[ редактировать ]

Ввод SMM осуществляется через SMI (прерывание управления системой), которое вызывается:

  • Сигнализация оборудования материнской платы или набора микросхем через назначенный контакт SMI# чипа процессора. [16] Этот сигнал может быть независимым событием.
  • Программный SMI, запускаемый системным программным обеспечением через доступ ввода-вывода к месту, которое логика материнской платы считает особым (порт 0B2h является обычным). [17]
  • Запись ввода-вывода в место, которое микропрограмма запросила для обработки чипом процессора.

Вводя SMM, процессор ищет первую инструкцию по адресу SMBASE (содержимое регистра SMBASE) + 8000h (по умолчанию 38000h), используя регистры CS=3000h и EIP=8000h. Значение регистра CS (3000h) обусловлено использованием процессором адресов памяти реального режима в режиме SMM. В этом случае к CS внутри добавляется 0h на крайнем правом конце.

Проблемы

[ редактировать ]

По своей конструкции операционная система не может переопределить или отключить SMI. В связи с этим он является мишенью для вредоносных руткитов. [18] [19] включая «имплантаты» АНБ , [20] которые имеют индивидуальные кодовые имена для конкретного оборудования, например SOUFFLETROUGH для межсетевых экранов Juniper Networks , [21] SCHOOLMONTANA для роутеров J-серии той же компании, [22] DEITYBOUNCE для DELL, [23] или IRONCHEF для серверов HP Proliant . [24]

Неправильно спроектированный и недостаточно протестированный код SMM BIOS может делать неверные предположения и работать неправильно при прерывании некоторых других режимов работы x86, таких как PAE или 64-битный длинный режим . [25] Согласно документации ядра Linux , примерно в 2004 году такие глючные реализации функции поддержки наследства USB были частой причиной сбоев, например, на материнских платах на базе чипсета Intel E7505 . [11]

Поскольку код SMM (обработчик SMI) устанавливается системной прошивкой ( BIOS ), ОС и код SMM могут иметь несовместимые ожидания относительно настроек оборудования, например, разные представления о том, как усовершенствованный программируемый контроллер прерываний должен работать (APIC). настраивать.

Операции в SMM отнимают время ЦП у приложений, ядра операционной системы и гипервизора , причем эффект усиливается для многоядерных процессоров, поскольку каждый SMI заставляет все ядра переключать режимы. [26] Существуют также некоторые накладные расходы, связанные с переключением SMM и выходом из него, поскольку состояние ЦП должно сохраняться в памяти (SMRAM), а все кэши обратной записи должны быть очищены. Это может нарушить поведение в реальном времени и привести тактов часов к потере . Ядра Windows и Linux определяют параметр «Тайм-аут SMI» — период, в течение которого обработчики SMM должны вернуть управление операционной системе, иначе она « зависнет » или « зависнет ».

SMM может нарушить работу приложений реального времени с ограниченными требованиями к времени.

Логический анализатор может потребоваться, чтобы определить, вошел ли ЦП в режим SMM (проверка состояния контакта SMIACT# ЦП). [16] Восстановление кода обработчика SMI для анализа его на наличие ошибок, уязвимостей и секретов требует использования логического анализатора или дизассемблирования прошивки системы.

См. также

[ редактировать ]
  1. ^ Домас, Кристофер (20 июля 2015 г.). «Воронка памяти» (PDF) . Черная шляпа . Проверено 22 августа 2015 г.
  2. ^ Терешкин, Александр; Войчук, Рафаль (29 июля 2009 г.). «Представляем руткиты Ring-3» (PDF) . Лаборатория невидимых вещей , Блэк Хэт, США . п. 4 . Проверено 22 августа 2015 г.
  3. ^ «SMI — это ЗЛО (Часть 1)» . msdn.com . Майкрософт. 17 июля 2020 г.
  4. ^ Эллис, Симсон К., «Микропроцессор 386 SL в ноутбуках», Intel Corporation, Microcomputer Solutions, март/апрель 1991 г., стр. 20
  5. ^ «Техническое описание AMD Am386SX/SXL/SXLV» (PDF) . АМД.
  6. ^ https://documentation-service.arm.com/static/5ed11e40ca06a95ce53f905c?token= [ пустой URL PDF ]
  7. ^ «Руководство разработчика архитектур Intel 64 и IA-32: Том 3B» (PDF) . Интел.
  8. ^ Руководство по разработке программного обеспечения Intel 64 и IA-32, Vol. 3. Режим управления системой.
  9. ^ «SMI — это ЗЛО (Часть 2)» . msdn.com . Майкрософт.
  10. ^ «Режим управления системой — OSDev Wiki» . wiki.osdev.org . Проверено 12 сентября 2020 г.
  11. ^ Jump up to: а б Войтех Павлик (январь 2004 г.). «Документация ядра Linux: поддержка USB Legacy» . ядро.орг . Проверено 6 октября 2013 г.
  12. ^ Google Tech Talks – Coreboot – 00:34:30 .
  13. ^ Спецификация инициализации платформы UEFI .
  14. ^ Роберт Макмиллан (10 мая 2008 г.). «Хакеры нашли новое место, где можно спрятать руткиты» . Инфомир .
  15. ^ Роб Уильямс (07 августа 2015 г.). «Исследователи обнаружили руткит-эксплойт в процессорах Intel, появившийся в 1997 году» . HotHardware.com .
  16. ^ Jump up to: а б Режим управления системой Intel, Роберт Р. Коллинз
  17. ^ US 5963738 , «Компьютерная система для чтения/записи конфигурации системы с использованием инструкций ввода/вывода»   .
  18. ^ Шон Эмблтон; Шерри Спаркс; Клифф Цзоу (сентябрь 2008 г.). «Руткиты SMM: новое поколение вредоносных программ, независимых от ОС» (PDF) . АКМ . Проверено 6 октября 2013 г.
  19. ^ «Хакеры нашли новое место, где можно спрятать руткиты» . Мир ПК. 9 мая 2008 г. Проверено 6 октября 2013 г.
  20. ^ Источник №1 утечек во всем мире! (30 декабря 2013 г.). «Каталог эксплойтов подразделения ANT АНБ практически для всех основных программных/аппаратных средств/прошивок | LeakSource» . Leaksource.wordpress.com. Архивировано из оригинала 2 января 2014 г. Проверено 13 января 2014 г. {{cite web}}: CS1 maint: числовые имена: список авторов ( ссылка )
  21. ^ «Шнайер о безопасности: СУФФЛЕТРО: эксплойт дня АНБ» . Шнайер.com. 30 декабря 2013 г. Проверено 13 января 2014 г.
  22. ^ «Шнайер о безопасности: ШКОЛА МОНТАНА: Эксплойт дня АНБ» . Шнайер.com. 30 мая 2008 г. Проверено 16 января 2014 г.
  23. ^ «Шнайер о безопасности» . schneier.com .
  24. ^ «Шнайер о безопасности: IRONCHEF: эксплойт дня АНБ» . Шнайер.com. 03 января 2014 г. Проверено 13 января 2014 г.
  25. ^ http://images0.cnitblog.com/cnitblog_com/yuhensong/mode.JPG [ файл изображения с пустым URL-адресом ]
  26. ^ Брайан Дельгадо и Карен Л. Караваник, «Влияние режима управления системой на производительность», Международный симпозиум IEEE 2013 г. по характеристике рабочей нагрузки, 22–24 сентября, Портленд, Орегон, США.

Дальнейшее чтение

[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 14621995311a60003b809c92b8f6f7d6__1721924640
URL1:https://arc.ask3.ru/arc/aa/14/d6/14621995311a60003b809c92b8f6f7d6.html
Заголовок, (Title) документа по адресу, URL1:
System Management Mode - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)