TGViewer
Violent_Maid Violent_Maid @dxe_0x0 · 1.41K subscribers
Post #341 3.14K
Violent_Maid Another industry-wide knife fight. - AMD Advisory - CVE - BDU -
Из вырезанного контента (перефразировано в угоду блога, без "статейного флёра"):

У APCB есть группа, конфигурирующая чипсет — FCHG, исходя из данных из OpenSIL (спасибо, что у них открыт AGCL-R), он (тип) содержит в себе конфигурации для интерфейса eSPI (Enhanced Serial Peripheral Interface). В середине структуры типа есть массив MMIO адресов. Эти адреса могут быть пустыми, а могут быть и не пустыми (очень классно завёрнул, да?). Собственно, на материнке для отлома ASP они были заполнены. На скринах вы видите их содержимое.

Так как речь была про eSPI, я подумал, что оно как-то связано с LPC/ISA Bridge, с регистром SPI BASE ADDR (Bus 0, Device 0x14, Function 3, Offset 0xA0) оттуда (31:6 биты в регистре — это Spi_eSpi_BaseAddr), но позже вспомнил, что на современных чипсетах LPC/ISA Bridge содержит только 0xFFFFFFFF значения.

В какой-то момент, в голову пришла спонтанная идея дампа ACPI, и, да, это сработало, надо сказать. Адреса 0xFEDD8300 и 0xFEDD8B00 упомянуты только в таблице DSDT, в то время как адрес 0xFEDD8500 упомянут и в DSDT и в SSDT25. Все они "регистрировали" области операций (Operation Region), выглядит следующим образом:

OperationRegion(EURM, SystemMemory, 0xFEDD8500, 0x40)
OperationRegion(ERAM, SystemMemory, 0xFEDD8300, 0x100)
OperationRegion(ERM2, SystemMemory, 0xFEDD8B00, 0x100)
OperationRegion(ERM3, SystemMemory, 0xFEDD8500, 0x100)


Если я правильно всё понял в своё время из спеки ACPI (а я с ней знаком только по режимам энергопотребления и термальной зоне), то области операций — это области в некотором пространстве, содержащие аппаратные регистры, предназначенные для исключительного использования методами управления ACPI.

Регион EURM находился в описании девайса UBTC — USB Type-C. Здесь только вопрос к названию самой области операций. Я смог это сопоставить только с ACPI UCM-UCSI, который должен управлять USB-C, как минимум, в винде.

Остальные регионы описаны в _SB.PCI0.SBRG, то есть System Bus Bridge. Находятся в описании EC0, видимо речь про Embedded Controller. В моей логике, области с именами ERAM, ERM2 и ERM3 относятся к Embedded Controller RAM, то есть, в эти области отображается содержимое EC RAM, и, по-видимому, предназначена для обмена между EC и ОС.

А, ну и если вы внимательны, то области ERAM и ERM3 имеют одинаковый адрес. Я не знаю с чем это связано, может, какая-то ошибка, а может регионы совмещены.

Адрес 0xFEDD8E00 был в массиве, но я не нашёл его упоминания нигде.

Так было на моей плате, на ваших может быть по другому, вплоть до того, что MMIO адресов не будет в APCB.
  • 🤓 19
More from @dxe_0x0
  1. Sep 10, 2026Дарова!!1 Если вы вдруг будете на ZeroNights, то я, это, буду на Heap Stage рассказывать п…
  2. Aug 28, 2026Вообще, SMN (System Management Network) штука интересная, так как каким-то неведомым мне о…
  3. Aug 26, 2026System Management Network (SMN) - это шина для коммуникации между ASP/PSP и другими МК (по…
  4. Aug 17, 2026Доводилось ли вам, мои маленькие интернет-друзья, интересоваться тем, что происходит внутр…
  5. Jul 27, 2026Даров! Вообще, оказывается, у меня есть данный аниме-канал. Только сейчас вспомнил. И поче…
  6. Apr 15, 2026Another industry-wide knife fight. - AMD Advisory - CVE - BDU -
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →