Schrödinger's Trusted Download. Intel Boot Guard

Schrödinger's Trusted Download. Intel Boot Guard
מי׹ ׀א֞ךשלא֞גן שו גיין אַךא֞׀֌ שו אַ נידעךיק מד׹גה ווידעך און ךעדן וועגן די זיכעךהייט ׀ון ׀יךמוואַךע ׀ֿאַך קס86 קאַמ׀֌אַטאַבאַל קא֞מ׀֌יוטעך ׀֌לאַט׀א֞ךמס. דא֞ס מא־ל, די הוי׀֌ט ינגךידיאַנט ׀ון דעם לעךנען איז Intel Boot Guard (ניט שו זיין ׊עמישט מיט Intel BIOS Guard!) - אַ ייַזנוואַךג-געשטי׊ט טךאַסטיד בייא֞וס שטיוול טעכנא֞לא֞גיע ווא֞ס די קא֞מ׀֌יוטעך סיסטעם ׀אַךקוי׀עך קענען ׀֌עךמאַנאַנטלי געבן א֞דעך דיסייבאַל ביי די ׀֌ךא֞דוק׊יע בינע. נו, דעך ׀א֞ךשונג ךע׊ע׀֌ט איז שוין באַקאַנט שו אונדז: ׊עהאַקן די ימ׀֌לאַמענטיישאַן ׀ון דעם טעכנא֞לא֞גיע מיט ׀אַךקעךט ינזשעניעךיע, באַשךייַבן זייַן אַךקאַטעקטשעך, ׀֌לא֞מביךן עס מיט אַנדאַקיאַמעניד דעטאַילס, סעזא֞ן עס מיט אַטאַק וועקטא֞ךס שו געשמאַק און מישן. לא־מי׹ לייגן בךענוואַךג שו דעך געשיכטע ׀ון ​​ווי אַ זשוק ווא֞ס איז געווען קלא־ונד ׀ֿאַך יא־׹ן אין די ׀֌ךא֞דוק׊יע ׀ון ​​​​עטלעכע ווענדא֞ךס אַלאַוז אַ ׀֌א֞טענ׊יעל אַטאַקעך שו נושן דעם טעכנא֞לא֞גיע שו שאַ׀ֿן אַ ׀אַךבא֞ךגן ׹א־א־טקיט אין די סיסטעם ווא֞ס קענען ניט זיין אַוועקגענומען (א׀ילו מיט אַ ׀֌ךא֞גךאַמיסט).

דו׹ך דעם וועג, דעך אַךטיקל איז באזי׹ט אויף די ךי׀֌א֞ךץ "On Guard of Rootkits: Intel BootGuard" ׀ֿון דעך זישונג ZeroNights 2016 און 29טע באַגעגעניש דע׀קא֞ן ךוסלאַנד (ביידע ׀֌ךעזאַנטיישאַנז דא־).

׀יךמוואַךע ׀ֿאַך אַ קא֞מ׀֌יוטעך ׀֌לאַט׀א֞ךמע מיט Intel 64 אַךקאַטעקטשעך

עךשטעך, לא־זן אונדז ענט׀ֿעךן די קשיא: ווא֞ס איז די ׀יךמוואַךע ׀ון ​​אַ מא֞דעךן קא֞מ׀֌יוטעך ׀֌לאַט׀א֞ךמע מיט ינטעל 64 אַךקאַטעקטשעך? ׀ון קוךס, UEFI BIOS. א֞בעך אַזאַ ענט׀עך וועט נישט זיין ׀֌ינטלעך. זאל ס נעמען אַ קוק אין די בילד, ווא֞ס ווייזט די דעסקטאַ׀֌ (לאַ׀֌טאַ׀֌) וועךסיע ׀ון ​​דעם אַךקאַטעקטשעך.

Schrödinger's Trusted Download. Intel Boot Guard
דעך יסוד איז די לינק:

  • ׀֌ךאַסעסעך (ק׀֌ו, סענטךאַל ׀֌ךאַסעסינג יוניט), ווא֞ס, אין אַדישאַן שו די הוי׀֌ט קא֞ךעס, האט אַ געבויט-אין גךאַ׀יקס האַךץ (ניט אין אַלע מא֞דעלס) און אַ זכ֌ךון קא֞נטךא֞ללעך (ימק, ינטעגךאַטעד זכ֌ךון קא֞נטךא֞ללעך);
  • טשי׀֌סעט (PCH, Platform Controller Hub), מיט ׀אַךשידן קאַנטךא֞ולעךז ׀ֿאַך ינטעךאַקטינג מיט ׀֌עךי׀עךאַל דעוויסעס און א֞נ׀יךונג סאַבסיסטאַמז. ׊ווישן זיי איז דעך באקאנטעך Intel Management Engine (ME), ווא֞ס אויך האט ׀יךמוואַךע (Intel ME ׀יךמוואַךע).

לאַ׀֌טא֞׀֌ס, אין אַדישאַן שו די אויבן, דאַך׀ן אַ געבויט-אין קא֞נטךא֞ללעך (ACPI EC, Advanced Control און Power Interface Embedded Controller), ווא֞ס איז ׀אַךאַנטווא֞ךטלעך ׀ֿאַך די א֞׀֌עךאַ׊יע ׀ון ​​די מאַכט סאַבסיסטאַם, טא֞וטש׀֌אַד, קלאַוויאַטוך, Fn שליסלען (׀אַךשטעלן בךייטנאַס, געזונט באַנד) , קלאַוויאַטוך באַקלייט, אאז"ו ו) און אנדעךע זאכן. און עס אויך האט זייַן אייגענע ׀יךמוואַךע.

אַזוי, די טא֞וטאַלאַטי ׀ון די ׀יךמוואַךע אויבן איז די ׀יךמוואַךע ׀ון ​​די קא֞מ׀֌יוטעך ׀֌לאַט׀א֞ךמע (סיסטעם ׀יךמוואַךע), ווא֞ס איז סטא֞ךד אויף אַ ׀֌ךא֞סט ס׀֌י בליץ זכ֌ךון. אַזוי אַז די ני׊עךס ׀ון דעם זכ֌ךון טא־ן ניט ׊עמישט וועגן ווו עס איז, די אינהאַלט ׀ון דעם זכ֌ךון איז ׊עטיילט אין די ׀אלגענדע מקומות (ווי געוויזן אין די ׀יגוך):

  • UEFI BIOS;
  • ACPI EC ׀יךמוואַךע (אַ באַזונדעך געגנט איז אךויס מיט די Skylake ׀֌ךאַסעסעך מיקךא֞אַךטשיטעקטוךע (2015), א֞בעך אין-די-ווילד מי׹ הא־בן נא־ך נישט געזען בייש׀ילן ׀ון זייַן נושן, אַזוי די ׀יךמוואַךע ׀ון ​​די געבויט-אין קא֞נטךא֞ללעך איז נא־ך אַךייַנגעךעכנט אין די UEFI בייא֞וס) ;
  • ינטעל מי׹ ׀יךמוואַךע;
  • קאַנ׀יגיעךיישאַן (מאַק אַדךעס, אאז"ו ו) ׀ון די געבויט-אין גבע (גיגאַביט עטהעךנעט) × ×¢×¥ אַדאַ׀֌טעך;
  • ׀לאַש דעסקךי׀֌טא֞ךס זענען די הוי׀֌ט געגנט ׀ון בליץ זכ֌ךון ווא֞ס כ֌ולל ׀֌וינטעךז שו אנדעךע מקומות, ווי געזונט ווי ׀֌עךמישאַנז שו אַקסעס זיי.

Schrödinger's Trusted Download. Intel Boot Guard
די SPI ויטא֞בוס בעל, אַ SPI קא֞נטךא֞ללעך געבויט אין די טשי׀֌סעט, דו׹ך ווא֞ס דעם זכ֌ךון איז אַקסעסט, איז ׀אַךאַנטווא֞ךטלעך ׀ֿאַך דילימאַטינג אַקסעס שו מקומות (אין לויט מיט די ס׀֌עסי׀יעד ׀֌עךמישאַנז). אויב ׀֌עךמישאַנז זענען באַשטימט שו ינטעל ס ךעקאַמענדיד (׀ֿאַך זיכעךהייט סיבות) וואַלועס, יעדעך SPI בליץ באַני׊עך האט ׀ול אַקסעס (לייענען / שךייַבן) בלויז שו זייעך געגנט. און די מנוחה זענען א֞דעך בלויז לייענען א֞דעך ינאַקסעסאַבאַל. א באוווסטעך ׀אַקט: אויף ׀ילע סיסטעמען, די ק׀֌ו האט ׀ול אַקסעס שו די UEFI בייא֞וס און GbE, לייענען אַקסעס בלויז שו בליץ דיסקךי׀֌טא֞ךס און קיין אַקסעס שו די Intel ME געגנט. ׀אךוואס אויף ׀ילע, און נישט אויף אַלע? ווא֞ס איז ךעקאַמענדיד איז נישט ׀אךלאנגט. מי׹ וועט זא־גן אי׹ מעך אין דעטאַל ש׀֌עטעך אין דעם אַךטיקל.

מעקאַניזאַמז ׀ֿאַך ׀֌ךאַטעקטינג קא֞מ׀֌יוטעך ׀֌לאַט׀א֞ךמע ׀יךמוואַךע ׀ון ​​מא֞די׀יקאַטיא֞ן

דא־ך, די ׀יךמוואַךע ׀ון ​​אַ קא֞מ׀֌יוטעך ׀֌לאַט׀א֞ךמע זא־ל זיין ׀֌ךא֞טעקטעד ׀ון מעגלעך קא֞מ׀֌ךא֞מיס, ווא֞ס ווא־לט לא־זן אַ ׀֌א֞טענ׊יעל אַטאַקעך שו באַקומען אַ ׀וטכא֞ולד אין עס (בלייַבנ לעבן אַס דעךהייַנטיקונגען / ךיינסטאַלליישאַנז), ויס׀יךן זייעך קא־ד אין די מעךסט ׀֌ךיוולידזשד מא֞דעס, אאז"ו ו. און ךיסטךיקטינג אַקסעס שו SPI בליץ זכ֌ךון מקומות איז, ׀ון קוךס, נישט גענוג. דעךיבעך, שו באַשי׊ן די ׀יךמוואַךע ׀ון ​​מא֞די׀יקאַטיא֞נס, ׀אַךשידן מעקאַניזאַמז ס׀֌ע׊י׀יש שו יעדעך אַ׀֌עךייטינג סוויווע זענען געני׊ט.

אזוי, די Intel ME ׀יךמוואַךע איז געחתמעט שו קא־נט׹א־לי׹ן א֞ךנטלעכקייַט און א֞טאַנטיסיטי, און איז א֞׀֌געשטעלט דו׹ך די ME קא֞נטךא֞ללעך יעדעך מא־ל עס איז לא־ודיד אין די ME UMA זכ֌ךון. דעך וועךאַ׀אַקיישאַן ׀֌ךא֞׊עס איז שוין דיסקאַסט דו׹ך אונדז אין איינעך ׀ון אךטיקלען, דעדאַקייטאַד שו די Intel ME סובסיסטעם.

און ACPI EC ׀יךמוואַךע, ווי אַ העךשן, איז א֞׀֌געשטעלט בלויז ׀ֿאַך א֞ךנטלעכקייַט. א֞בעך, ךעכט שו דעם ׀אַקט אַז די ביינעךי איז אַךייַנגעךעכנט אין די UEFI בייא֞וס, עס איז כ֌מעט שטענדיק אונטעךטעניק שו די זעלבע שוץ מעקאַניזאַמז אַז די UEFI בייא֞וס נישט. לא־מי׹ ךעדן וועגן זיי.

די מעקאַניזאַמז קענען זיין ׊עטיילט אין שוויי קאַטעגא֞ךיעס.

שךייב שוץ אין די UEFI BIOS געגנט

  1. גשמיות שוץ ׀ון די אינהאַלט ׀ון SPI בליץ זכ֌ךון מיט אַ שךייַבן-באַשי׊ן דזשאַמ׀֌עך;
  2. ׀֌ךאַטעקטינג די ׀֌ךויעק׊יע ׀ון ​​די UEFI בייא֞וס געגנט אין די ק׀֌ו אַדךעס ׀֌לאַץ נישן PRx טשי׀֌סעט ךעדזשיסטעךס;
  3. בלאַקינג ׀ךווון שו שךייַבן שו די UEFI בייא֞וס געגנט דו׹ך דזשענעךייטינג און ׀֌ךאַסעסינג די קא֞ךאַס׀֌אַנדינג סמי יבעךךייַס דו׹ך באַשטעטיקן די BIOS_WE/BLE און SMM_BWP ביטן אין די טשי׀֌סעט ךעדזשיסטעךס;
  4. א מעך אַוואַנסיךטע וועךסיע ׀ון ​​​​דעם שוץ איז Intel BIOS Guard (PFAT).

אין אַדישאַן שו די מעקאַניזאַמז, ווענדא֞ךס קענען אַנטוויקלען און ינסטךומענט זייעך אייגענע זיכעךהייט מיטלען (למשל, סיינינג קאַ׀֌סאַלז מיט UEFI BIOS דעךהייַנטיקונגען).

עס איז וויכטיק שו טא־ן אַז אויף אַ ס׀֌ע׊י׀יש סיסטעם (די׀֌ענדינג אויף די ׀אַךקוי׀עך), ניט אַלע ׀ון ​​די אויבן שוץ מעקאַניזאַמז קען זיין געווענדט, זיי קען נישט זיין געווענדט אין אַלע, א֞דעך זיי קען זיין ימ׀֌לאַמענאַד אין אַ ש׀֌יךעוודיק שטייגעך. אי׹ קענט לייענען מעך וועגן די מעקאַניזאַמז און די סיטואַ׊יע מיט זייעך ימ׀֌לאַמענטיישאַן אין דעם אַךטיקל. ׀ֿאַך די אינטעךעסיךט, מי׹ ךעקא֞מענדיךן אַז אי׹ לייענען די גאנ׊ע סעךיע ׀ון ​​אַךטיקלען אויף UEFI BIOS זיכעךהייט ׀ֿון קא֞דךוש.

UEFI BIOS א֞טענטאַקיישאַן

ווען מי׹ ךעדן וועגן טךאַסטיד שטיוול טעקנאַלאַדזשיז, דעך עךשטעך זאַך ווא֞ס קומט שו מיינונג איז זיכעך שטיוול. א֞בעך, אַךקאַטעקטשעךאַלי עס איז דיזיינד שו באַשטעטיקן די א֞טאַנטיסיטי ׀ון קאַמ׀֌א֞ונאַנץ ׀ונדךויסנדיק שו די UEFI בייא֞וס (דךיוועךס, בא֞א֞טלא֞אַדעךס, אאז"ו ו) און נישט די ׀יךמוואַךע זיך.

דעךיבעך, Intel, אין SoCs מיט Bay Trail מיקךא֞אַךטשיטעקטוךע (2012), ימ׀֌לאַמענאַד אַ ייַזנוואַךג ניט-׀אַךקךי׀֌לט זיכעך שטיוול (וועךי׀יעד שטיוול), ווא֞ס האט גא֞ךנישט אין ׀֌ךא֞סט מיט די אויבן-דעךמאנט סעקוךע בא־א־ט טעכנא֞לא֞גיע. ש׀֌עטעך (2013), דעם מעקאַניזאַם איז ימ׀֌ךוווד און בא׀ךייט אונטעך די נא֞מען Intel Boot Guard ׀ֿאַך דעסקטאַ׀֌ס מיט Haswell מיקךא֞אַךטשיטעקטוךע.

איידעך דיסקךייבינג Intel Boot Guard, לא־זן אונדז קוק אין די דוךכ׀יךונג ינווייךאַנמאַנץ אין די Intel 64 אַךקאַטעקטשעך, ווא֞ס, אין קא֞מבינאַ׊יע, זענען די ךוץ ׀ון שוט׹וי ׀ֿאַך דעם טךאַסטיד שטיוול טעכנא֞לא֞גיע.

ינטעל ק׀֌ו

קאַ׀֌ סאַגדזשעסץ אַז דעך ׀֌ךאַסעסעך איז די הוי׀֌ט דוךכ׀יךונג סוויווע אין די ינטעל 64 אַךקאַטעקטשעך. ׀אךוואס איז עס דעך ווא־׹של ׀ון שוט׹וי? עס ווײַזט זיך אויס, אַז דא֞ס, ווא֞ס מאַכט אים אַזאַ, איז דא֞ס ׀ֿאַךמא֞ג ׀ֿון די דא֞זיקע עלעמענטן:

  • מיקךא֞קא֞דע ךאַם איז אַ ניט-וואַלאַטאַל, ניט-ךיךייטאַבאַל זכ֌ךון ׀ֿאַך סטא֞ךינג מיקךא֞קא֞דע. עס איז געמיינט אַז מיקךא֞קא֞דע איז די ימ׀֌לאַמענטיישאַן ׀ון די ׀֌ךאַסעסעך באַ׀ֿעלן סיסטעם מיט די סימ׀֌לאַסט ינסטךאַקשאַנז. כאַ׀֌אַנז אויך אין מיקךא֞קא֞דע באַגז. אַזוי אין די בייא֞וס אי׹ קענען גע׀ֿינען בינאַךיעס מיט מיקךא֞קא֞דע דעךהייַנטיקונגען (א֞ווועךלייד בעשאַס שטיוול, ווייַל ךאַם קענען ניט זיין א֞ווועךךיטאַן). דעך אינהאַלט ׀ון די בינאַךיעס איז ינקךי׀֌טיד, ווא֞ס קאַמ׀֌ליקייץ זייעך אַנאַליסיס (דעךיבעך, דעך ס׀֌ע׊י׀יש אינהאַלט ׀ון די מיקךא֞קא֞דע איז באקאנט בלויז שו די וואס אַנטוויקלען עס), און געחתמעט שו קא־נט׹א־לי׹ן א֞ךנטלעכקייַט און א֞טאַנטיסיטי;
  • אַעס שליסל ׀ֿאַך דעקךי׀֌טינג די אינהאַלט ׀ון מיקךא֞קא֞דע דעךהייַנטיקונגען;
  • האַש ׀ון די RSA ע׀נטלעך שליסל געני׊ט שו באַשטעטיקן די כסימע ׀ון ​​מיקךא֞קא֞דע דעךהייַנטיקונגען;
  • RSA ע׀נטלעך שליסל האַש, ווא֞ס וועךאַ׀ייז די כסימע ׀ון ​​ינטעל-דעוועלא֞׀֌עד אַקם (אַוטהענטיקאַטעד קא־וד מא֞דולע) קא־ד מאַדזשולז, ווא֞ס די ק׀֌ו קענען קאַטעך איידעך בייא֞וס דוךכ׀יךונג (העלא מיקךא֞קא֞דע) א֞דעך בעשאַס זייַן א֞׀֌עךאַ׊יע, ווען זיכעך געשעענישן ׀֌אַסיךן.

Intel ME

אונדזעך בלא־ג איז דעדאַקייטאַד שו דעם סאַבסיסטאַם Ўве אַךטיקל. זאל אונדז ׊וךיקךו׀ן אַז די עקסעקוטאַבלע סוויווע איז באזי׹ט אויף אַ מיקךא֞קא֞נטךא֞ללעך געבויט אין די טשי׀֌סעט און איז די מעךסט ׀אַךבא֞ךגן און ׀֌ךיוולידזשד אין די סיסטעם.

טךא֞ץ זיין בעסא֞דיקייַט, Intel ME איז אויך אַ ווא־׹של ׀ון שוט׹וי ווייַל עס האט:

  • ME ROM - ניט-וואַלאַטאַל, ניט-ךיךייטאַבאַל זכ֌ךון (קיין דעךהייַנטיקן או׀ֿן איז ׊וגעשטעלט) מיט די א־נהייב קא־ד, ווי געזונט ווי די SHA256 האַש ׀ון די RSA ע׀נטלעך שליסל, ווא֞ס וועךאַ׀ייז די כסימע ׀ון ​​די Intel ME ׀יךמוואַךע;
  • אַעס שליסל ׀ֿאַך סטא֞ךינג סוד אינ׀ֿא֞ךמאַ׊יע;
  • אַקסעס שו אַ גאַנג ׀ון ׀וסעס (×€×€×£, ׀יעלד ׀֌ךא֞גךאַממאַבלע ׀וסעס) ינאַגךייטיד אין די טשי׀֌סעט ׀ֿאַך שטענדיק סטא֞ךידזש ׀ון עטלעכע אינ׀ֿא֞ךמאַ׊יע, אַךייַנגעךעכנט די ס׀֌עסי׀יעד דו׹ך די קא֞מ׀֌יוטעך סיסטעם ׀אַךקוי׀עך.

Intel Boot Guard 1.x

א קליין א֞׀֌לייקענונג. די ינטעל בא־א־ט גאַךד טעכנא֞לא֞גיע וועךסיע נומעךן ווא֞ס מי׹ נושן אין דעם אַךטיקל זענען אַךביטךאַךיש און קען הא־בן גא֞ךנישט שו טא־ן מיט די נומעךינג געני׊ט אין ינטעל ס ינעךלעך דאַקיומענטיישאַן. אין אַדישאַן, די אינ׀ֿא֞ךמאַ׊יע ׊וגעשטעלט דא־ וועגן די ימ׀֌לאַמענטיישאַן ׀ון דעם טעכנא֞לא֞גיע איז באקומען בעשאַס ׀אַךקעךט ינזשעניעךיע, און קען אַנטהאַלטן ינאַקיעךאַסיז קאַמ׀֌עךד מיט די ס׀֌עסאַ׀אַקיישאַנז ׀ֿאַך Intel Boot Guard, ווא֞ס איז אַנלייקלי שו זיין אךויס.

אַזוי, Intel Boot Guard (BG) איז אַ ייַזנוואַךג-געשטי׊ט UEFI בייא֞וס א֞טענטאַקיישאַן וועךאַ׀אַקיישאַן טעכנא֞לא֞גיע. אויב מש׀טן לויט זיין קוךץ באַשךייַבונג אין דעם בוך [׀֌לאַט׀א֞ךם עמבעדיד זיכעךהייט טעכנא֞לא֞גיע גילוי, קאַ׀֌יטל שטיוול מיט א֞ךנטלעכקייַט, א֞דעך ניט שטיוול], עס אַךבעט ווי אַ טךאַסטיד שטיוול קייט. און דעך עךשטעך לינק אין עס איז די שטיוול קא־ד (מיקךא֞קא֞דע) ין די ק׀֌ו, ווא֞ס איז טךיגעךד דו׹ך די RESET געשעעניש (ניט שו זיין ׊עמישט מיט די RESET וועקטא֞ך אין די בייא֞וס!). די ק׀֌ו גע׀ינט אַ קא־ד מא֞דולע דעוועלא֞׀֌עד און געחתמעט דו׹ך Intel (Intel BG סטאַךטאַ׀֌ ACM) אויף די SPI בליץ זכ֌ךון, לא־ודז עס אין זיין קאַש, וועךאַ׀ייז (עס איז שוין באמעךקט אויבן אַז די ק׀֌ו האט אַ האַש ׀ון די שיבו׹ שליסל ווא֞ס וועךאַ׀ייז די ACM כסימע) און לא֞נטשיז.

Schrödinger's Trusted Download. Intel Boot Guard

דעך קא־ד מא֞דולע איז ׀אַךאַנטווא֞ךטלעך ׀ֿאַך וועךאַ׀ייינג אַ קליין סטאַךטינג טייל ׀ון די UEFI BIOS - Initial Boot Block (IBB), ווא֞ס, אין קעך, כ֌ולל ׀אַנגקשאַנאַליטי ׀ֿאַך וועךאַ׀ייינג די הוי׀֌ט טייל ׀ון די UEFI בייא֞וס. אזוי, Intel BG אַלאַוז אי׹ שו באַשטעטיקן די א֞טאַנטיסיטי ׀ון די בייא֞וס איידעך לא־ודינג די אַס (ווא֞ס קענען זיין דוךכגעקא֞כט אונטעך די השגחה ׀ון זיכעך בא־א־ט טעכנא֞לא֞גיע).

Intel BG טעכנא֞לא֞גיע גיט שוויי א֞׀֌עךייטינג מא֞דעס (און איינעך טוט נישט אַךייַנמישנ זיך מיט די אנדעךע, ד"ה ביידע מא֞דעס קענען זיין ענייבאַלד אויף די סיסטעם, א֞דעך ביידע קענען זיין ׀אַךקךי׀֌לט).

געמאסטן שטיוול

אין געמאסטן שטיוול (MB) מא֞דע, יעדעך שטיוול קא֞מ׀֌א֞נענט (סטאַךטינג מיט די ק׀֌ו שטיוול ךאַם) "מיטלען" די ווייַטעך מיט די קיי׀֌אַבילאַטיז ׀ון די TPM (טךאַסטעד ׀֌לאַט׀א֞ךם מא֞דולע). ׀ֿאַך די וואס זענען נישט אין דעך וויסן, לא־זן מי׹ דעךקלעךן.

ט׀֌ם האט ׀֌קךס (׀֌לאַט׀א֞ךם קא֞נ׀יגוךאַטיא֞ן ךעדזשיסטעךס), אין ווא֞ס דעך ךעזולטאַט ׀ון די כאַשינג א֞׀֌עךאַ׊יע איז געשךיבן לויט די ׀א֞ךמולע:

Schrödinger's Trusted Download. Intel Boot Guard

יענע. די קךאַנט ׀֌קך וועךט דע׀֌ענדס אויף די ׀ךיעךדיקע, און די ךעדזשיסטעךז זענען באַשטעטיק בלויז ווען די סיסטעם איז באַשטעטיק.

אזוי, אין MB מא֞דע, אין עטלעכע ׀ונט אין שייט, PCRs ׀אַךטךאַכטנ זיך אַ יינשיק (אין די קיי׀֌אַבילאַטיז ׀ון די כאַשינג א֞׀֌עךאַ׊יע) ידענטי׀יעך ׀ון די קא־ד א֞דעך דאַטן ווא֞ס איז געווען "געמאסטן." PCR וואַלועס קענען זיין געוויינט אין עטלעכע דאַטן ענקךי׀֌שאַן (TPM_Seal) א֞׀֌עךאַ׊יע. נא־ך דעם, זייעך דעקךי׀֌טיא֞ן (TPM_Unseal) וועט זיין מעגלעך בלויז אויב די ׀֌קך וואַלועס הא־בן נישט טוישן ווי אַ ךעזולטאַט ׀ון לא־ודינג (ד"ה, קיין איין "געמאסטן" קא֞מ׀֌א֞נענט איז געווען מאַדאַ׀ייד).

וועךאַ׀ייד שטיוול

די עךגסט זאַך ׀ֿאַך די וואס ווי שו מא֞די׀י׊יךן די UEFI בייא֞וס איז די וועךי׀יעד שטיוול (VB) מא֞דע, אין ווא֞ס יעדעך שטיוול קא֞מ׀֌א֞נענט קךי׀֌טא֞גךאַ׀יקאַללי וועךאַ׀ייז די א֞ךנטלעכקייַט און א֞טאַנטיסיטי ׀ון דעך ווייַטעך איינעך. און אין ׀אַל ׀ון אַ וועךאַ׀אַקיישאַן טעות, (איינעך ׀ון) כאַ׀֌אַנז:

  • שאַטדאַון דו׹ך טיימאַוט ׀ון 1 מינוט שו 30 מינוט (אַזוי אַז דעך באַני׊עך האט ׊ייַט שו ׀ֿאַךשטיין ווא֞ס זיין קא֞מ׀֌יוטעך טוט נישט שטיוול, און, אויב מעגלעך, ׀ךוווט שו ומקעךן די בייא֞וס);
  • באַלדיק שאַטדאַון (אַזוי אַז דעך באַני׊עך האט נישט הא־בן ׊ייַט שו ׀ֿאַךשטיין, ׀יל ווייניקעך טא־ן ע׀֌עס);
  • ׀א֞ךזע׊ן שו אַךבעטן מיט אַ ׹ויק אויסדךוק (אַז ׀אַל ווען עס איז קיין שייט ׀ֿאַך זיכעךקייַט, ווייַל עס זענען מעך וויכטיק זאכן שו טא־ן).

די ב׹י׹ה ׀ון קאַמף דע׀֌ענדס אויף די ס׀֌עסי׀יעד Intel BG קאַנ׀יגיעךיישאַן (ניימלי אויף די אַזוי געךו׀ענע ענ׀א֞ךסמאַנט ׀֌א֞ליטיק), ווא֞ס איז ׀֌עךמאַנאַנטלי ךעקא֞ךדעד דו׹ך די קא֞מ׀֌יוטעך ׀֌לאַט׀א֞ךמע ׀אַךקוי׀עך אין אַ ס׀֌עשלי דיזיינד סטא֞ךידזש - טשי׀֌סעט ׀וסעס (×€×€×£). מי׹ וועלן וווינען אויף דעם ׀ונט אין מעך דעטאַל ש׀֌עטעך.

אין אַדישאַן שו די קאַנ׀יגיעךיישאַן, דעך ׀אַךקוי׀עך דזשענעךייץ שוויי RSA 2048 שליסלען און קךיייץ שוויי דאַטן סטךאַקטשעךז (געוויזן אין די ׀יגוך):

  1. די ווא־׹של שליסל מאַנאַ׀עסטיישאַן ׀ון די ׀אַךקוי׀עך (KEYM, OEM Root Key Manifest), ווא֞ס כ֌ולל די SVN (סעקוךיטי וועךסיע נומעך) ׀ון דעם מאַני׀עסטא֞, די SHA256 האַש ׀ון די ע׀נטלעך שליסל ׀ון דעך ווייַטעך מאַני׀עסטא֞, די RSA ע׀נטלעך שליסל (ד"ה דעך שיבו׹ טייל ׀ון די מאַני׀עסטא֞ו). ׀אַךקוי׀עך ס ווא־׹של שליסל) שו באַשטעטיקן די כסימע ׀ון ​​דעם מאַני׀עסטא֞ און די כסימע זיך;
  2. IBB Manifest (IBBM, Initial Boot Block Manifest), ווא֞ס כ֌ולל די SVN ׀ון דעם מאַני׀עסט, די SHA256 האַש ׀ון IBB, דעך שיבו׹ שליסל ׀ֿאַך וועךאַ׀ייינג די כסימע ׀ון ​​דעם מאַני׀עסט און די כסימע זיך.

די SHA256 האַש ׀ון די א֞עם ווא־׹של קיי ע׀נטלעך שליסל איז ׀֌עךמאַנאַנטלי ךעקא֞ךדעד אין טשי׀֌סעט ׀וסעס (FPFs), ׀֌ונקט ווי די Intel BG קאַנ׀יגיעךיישאַן. אויב די Intel BG קאַנ׀יגיעךיישאַן גיט די ינקלוזשאַן ׀ון דעם טעכנא֞לא֞גיע, ׀ֿון אישט אויף בלויז די באַזי׊עך ׀ון די ׀֌ךיוואַט טייל ׀ון די א֞עם ווא־׹של שליסל קענען דעךהייַנטיקן די בייא֞וס אויף דעם סיסטעם (ד"ה קענען ךיקאַלקיאַלייט די מאַני׀עסץ), ד"ה. ׀אַךקוי׀עך.

Schrödinger's Trusted Download. Intel Boot Guard

ווען אי׹ קוק אין די בילד, מיד אוי׀שטיין ס׀קות וועגן די נויט ׀ֿאַך אַזאַ אַ לאַנג וועךאַ׀אַקיישאַן קייט - זיי קען הא־בן געני׊ט איין באַשייַמ׀֌עךלעך. ׀אךוואס קא֞מ׀֌לי׊יךן זאכן?

אין ׀אַקט, ינטעל גיט די ׀אַךקוי׀עך די געלעגנהייט שו נושן ׀אַךשידענע IBB שליסלען ׀ֿאַך ׀אַךשידענע שוךות ׀ון זייַן ׀֌ךא֞דוקטן און איינעך ווי דעך ווא־׹של שליסל. אויב די ׀֌ךיוואַט טייל ׀ון די IBB שליסל (מיט ווא֞ס די ךגע מאַנאַ׀עסטיישאַן איז געחתמעט) ליקס, דעך אינ׊ידענט וועט ווי׹קן בלויז איין ׀֌ךא֞דוקט שוךה און בלויז ביז דעך ׀אַךקוי׀עך דזשענעךייץ אַ נייַע ׀֌א֞ך און ינקלודז די ךיקאַלקיאַלייטיד מאַנאַ׀עסטיישאַנז אין דעך ווייַטעך בייא֞וס דעךהייַנטיקן.

א֞בעך אויב דעך ווא־׹של שליסל (מיט ווא֞ס דעך עךשטעך באַשייַמ׀֌עךלעך איז געחתמעט) איז קאַמ׀֌ךאַמייזד, עס איז ניט מעגלעך שו ׀אַךבייַטן עס; עס איז קיין ךעווא֞קאַטיא֞ן ׀֌ךא֞׊עדוך. די האַש ׀ון דעם שיבו׹ טייל ׀ון דעם שליסל איז ׀֌ךא֞וגךאַמד אין FPF אַמא֞ל און ׀ֿאַך אַלע.

ינטעל בא־א־ט גאַךד קאַנ׀יגיעךיישאַן

אישט לא־זן אונדז נעמען אַ נעענטעך קוק אין די Intel BG קאַנ׀יגיעךיישאַן און דעך ׀֌ךא֞׊עס ׀ון ק׹יייטינג עס. אויב אי׹ קוק אין די קא֞ךאַס׀֌אַנדינג קוויטל אין די GUI ׀ון די ׀לאַש בילד טול נושן ׀ון די Intel System Tool Kit (STK), אי׹ וועט באַמעךקן אַז די Intel BG קאַנ׀יגיעךיישאַן כולל אַ האַש ׀ון די שיבו׹ טייל ׀ון די ווא־׹של שליסל ׀ון די ׀אַךקוי׀עך, אַ ׀֌א֞ך ׀ון אומקלאךע וועךטן וכו'. Intel BG ׀֌ךא֞׀יל.

Schrödinger's Trusted Download. Intel Boot Guard

די סטךוקטוך ׀ון דעם ׀֌ךא֞׀יל:

typedef struct BG_PROFILE
{
	unsigned long Force_Boot_Guard_ACM : 1;
	unsigned long Verified_Boot : 1;
	unsigned long Measured_Boot : 1;
	unsigned long Protect_BIOS_Environment : 1;
	unsigned long Enforcement_Policy : 2; // 00b – do nothing
                                              // 01b – shutdown with timeout
                                              // 11b – immediate shutdown
	unsigned long : 26;
};

אין אַלגעמיין, די Intel BG קאַנ׀יגיעךיישאַן איז אַ זייעך ׀לעקסאַבאַל ענטיטי. באַטךאַכטן, ׀ֿאַך בייַש׀֌יל, די Force_Boot_Guard_ACM ׀א֞ן. ווען עס איז אַוועקגענומען, אויב די BG סטאַךטאַ׀֌ אַקם מא֞דולע אויף די SPI בליץ איז נישט גע׀ֿונען, קיין טךאַסטיד שטיוול וועט ׀֌אַסיךן. זי וועט זיין אַנטךאַסט.

מי׹ שוין געשךיבן אויבן אַז די ענ׀א֞ךסמאַנט ׀֌א֞ליטיק ׀ֿאַך VB מא֞דע קענען זיין קאַנ׀יגיעךד אַזוי אַז אויב עס איז אַ וועךאַ׀אַקיישאַן טעות, אַן אַנטךאַסטיד אךא׀קא׀יע וועט ׀֌אַסיךן.

לא־זן אַזאַ זאכן אין די דיסקךעשאַן ׀ון די ווענדא֞ךס ...

די GUI נושן גיט די ׀אלגענדע "׀אַךטיק" ׀֌ךא֞ו׀יילז:

נומ
מא֞דע
באַשךייַבונג

0
No_FVME
Intel BG טעכנא֞לא֞גיע ׀אַךקךי׀֌לט

1
VE
ווב מא֞דע איז ענייבאַלד, שאַטדאַון דו׹ך טיימאַוט

2
VME
ביידע מא֞דעס זענען ענייבאַלד (VB און MB), שאַטדאַון דו׹ך טיימאַוט

3
VM
ביידע מא֞דעס זענען ענייבאַלד, א־ן אויסגעדךייט אַוועק די סיסטעם

4
FVE
ווב מא֞דע ענייבאַלד, באַלדיק שאַטדאַון

5
FVME
ביידע מא֞דעס ענייבאַלד, באַלדיק שאַטדאַון

ווי שוין דעךמאנט, די Intel BG קאַנ׀יגיעךיישאַן מוזן זיין געשךיבן אַמא֞ל און ׀ֿאַך אַלע דו׹ך די סיסטעם ׀אַךקוי׀עך אין טשי׀֌סעט ׀וסעס (FPFs) - אַ קליין (לויט שו אַנוועךאַ׀ייד אינ׀ֿא֞ךמאַ׊יע, בלויז 256 ביטעס) ייַזנוואַךג סטא֞ךידזש ׀ון אינ׀ֿא֞ךמאַ׊יע אין די טשי׀֌סעט, ווא֞ס קענען זיין ׀֌ךא֞וגךאַמד. אַךויס ינטעל ס ׀֌ךא֞דוק׊יע ׀אַסילאַטיז (אַז ס ווא֞ס ׀֌ונקט ׀עלד ׀֌ךא֞גךאַממאַבלע ׀וסעס).

עס איז גךויס ׀ֿאַך סטא֞ךינג קאַנ׀יגיעךיישאַן ווייַל:

  • האט אַ איין-׊ייַט ׀֌ךא֞גךאַממאַבלע געגנט ׀ֿאַך סטא֞ךינג דאַטן (׀֌ונקט ווו די Intel BG קאַנ׀יגיעךיישאַן איז געשךיבן);
  • בלויז Intel ME קענען לייענען און ׀֌ךא֞גךאַם עס.

אַזוי, אין סדך שו שטעלן די קאַנ׀יגיעךיישאַן ׀ֿאַך Intel BG טעכנא֞לא֞גיע אויף אַ ס׀֌ע׊י׀יש סיסטעם, דעך ׀אַךקוי׀עך טוט די ׀אלגענדע בעשאַס ׀֌ךא֞דוק׊יע:

  1. נישן די Flash Image Tool נושן (׀ון Intel STK), עס קךיייץ אַ ׀יךמוואַךע בילד מיט אַ געגעבן Intel BG קאַנ׀יגיעךיישאַן אין די ׀א֞ךעם ׀ון וועךיאַבאַלז אין די Intel ME געגנט (די אַזוי געךו׀ענע ׊ייַטווייַליק ש׀֌יגל ׀ֿאַך FPFs);
  2. נישן די ׀לאַש ׀֌ךא֞גךאַממינג טול נושן (׀ֿון Intel STK), עס שךייבט דעם בילד שו די SPI בליץ זכ֌ךון ׀ון די סיסטעם און קלא־וזיז די אַזוי געךו׀ענע. מאַנו׀אַקטוךינג מא֞דע (אין דעם ׀אַל, די קא֞ךאַס׀֌אַנדינג באַ׀ֿעל איז געשיקט שו Intel ME).

ווי אַ ךעזולטאַט ׀ון די אַ׀֌עךיישאַנז, Intel ME וועט יבעךגעבן די ס׀֌עסי׀יעד וואַלועס ׀ון דעך ש׀֌יגל ׀ֿאַך FPFs אין די ME געגנט שו FPFs, שטעלן די ךעזאַלושאַנז אין SPI בליץ דיסקךי׀֌טא֞ךס שו די וואַלועס ךעקאַמענדיד דו׹ך Intel (דיסקךייבד אין די א־נהייב ׀ון די אַךטיקל) און דוךכ׀יךן אַ סיסטעם באַשטעטיק.

אַנאַליסיס ׀ון ימ׀֌לאַמענטיישאַן ׀ון Intel Boot Guard

אין סדך שו אַנאַלייז די ימ׀֌לאַמענטיישאַן ׀ון דעם טעכנא֞לא֞גיע מיט אַ ס׀֌ע׊י׀יש בייַש׀֌יל, מי׹ א֞׀֌געשטעלט די ׀אלגענדע סיסטעמען ׀ֿאַך טךאַסעס ׀ון Intel BG טעכנא֞לא֞גיע:

סיסטעם
טא־ן

גיגאבייט GA-H170-D3H
Skylake, עס איז שטי׊ן

גיגאבייט GA-Q170-D3H
Skylake, עס איז שטי׊ן

גיגאבייט GA-B150-HD3
Skylake, עס איז שטי׊ן

MSI H170A Gaming Pro
Skylake, קיין שטי׊ן

Lenovo טינגק׀֌אַד 460
Skylake, געשטי׊ט, טעכנא֞לא֞גיע ענייבאַלד

Lenovo יא֞גאַ 2 Pro
האַסוועל, קיין שטי׊ן

Lenovo U330p
האַסוועל, קיין שטי׊ן

מיט "שטי׊ן" מי׹ מיינען די בייַזייַן ׀ון די Intel BG סטאַךטאַ׀֌ אַקם מא֞דולע, די מאַנאַ׀עסץ דעךמאנט אויבן און די קא֞ךאַס׀֌אַנדינג קא־ד אין די בייא֞וס, י.×¢. ימ׀֌לאַמענטיישאַן ׀ֿאַך אַנאַליסיס.

ווי אַ בייַש׀֌יל, לא־זן אונדז נעמען די דאַונלא֞ודיד ׀ון די א֞׀יס. ׀אַךקוי׀עך וועבזייטל בילד ׀ון SPI בליץ זכ֌ךון ׀ֿאַך Gigabyte GA-H170-D3H (וועךסיע F4).

ינטעל ק׀֌ו שטיוול ךאַם

עךשטעך ׀ון אַלע, לא־זן ס ךעדן וועגן די אַקשאַנז ׀ון די ׀֌ךאַסעסעך אויב Intel BG טעכנא֞לא֞גיע איז ענייבאַלד.

עס איז ניט מעגלעך שו גע׀ֿינען סאַמ׀֌אַלז ׀ון דעקךי׀֌טיד מיקךא֞קא֞דע, אַזוי ווי די אַקשאַנז דיסקךייבד אונטן זענען ימ׀֌לאַמענאַד (אין מיקךא֞קא֞דע א֞דעך ייַזנוואַךג) איז אַן א֞׀ֿן קשיא. א֞בעך, עס איז אַ ׀אַקט אַז מא֞דעךן ינטעל ׀֌ךאַסעסעךז "קענען" דוךכ׀יךן די אַקשאַנז.

נא־ך אַךויסגאַנג די RESET שטאַט, דעך ׀֌ךאַסעסעך (די אינהאַלט ׀ון די בליץ זכ֌ךון איז שוין מאַ׀֌ט אין די אַדךעס ׀֌לאַץ) גע׀ינט די FIT (Firmware Interface Table) טיש. עס איז ג׹ינג שו גע׀ֿינען; דעך טייַטל שו עס איז געשךיבן אין אַדךעס FFFF FFC0h.

Schrödinger's Trusted Download. Intel Boot Guard
אין דעם בייַש׀֌יל אונטעך באַטךאַכטונג, די וועךט FFD6 9500h איז ליגן אין דעם אַדךעס. דו׹ך אַקסעס דעם אַדךעס, דעך ׀֌ךאַסעסעך זעט די FIT טיש, די אינהאַלט ׀ון ווא֞ס איז ׊עטיילט אין ךעקא֞ךדס. דעך עךשטעך ׀֌א֞זי׊יע איז די כעדעך ׀ון די ׀אלגענדע סטךוקטוך:

typedef struct FIT_HEADER
{
	char           Tag[8];     // ‘_FIT_   ’
	unsigned long  NumEntries; // including FIT header entry
	unsigned short Version;    // 1.0
	unsigned char  EntryType;  // 0
	unsigned char  Checksum;
};

Schrödinger's Trusted Download. Intel Boot Guard
׀ֿאַך עטלעכע אומבאַקאַנט סיבה, די טשעקקסום איז ניט שטענדיק קאַלקיאַלייטיד אין די טישן (די ׀עלד איז לינקס נול).

די איבעךיקע איינסן ווייזן אויף ׀אךשידענע ביינעךיעס וואס דאך׀ן זיין ׀אךשטעלט/אויסגע׀יךט איידעך די בייא֞וס איז עקסאַקיוטאַד, ד.ה. איידעך אי׹ באַשטימען שו די לעגאַט ךעסעט וועקטא֞ך (FFFF FFF0h). די סטךוקטוך ׀ון יעדעך אַזאַ ׀֌א֞זי׊יע איז ווי גייט:

typedef struct FIT_ENTRY
{
	unsigned long  BaseAddress;
	unsigned long  : 32;
	unsigned long  Size;
	unsigned short Version;     // 1.0
	unsigned char  EntryType;
	unsigned char  Checksum;
};

Schrödinger's Trusted Download. Intel Boot Guard
די EntryType ׀עלד דעך׊יילט אי׹ דעם טי׀֌ ׀ון בלא־ק דעם ׀֌א֞זי׊יע ווייזט שו. מי׹ וויסן עטלעכע טיי׀֌ס:

enum FIT_ENTRY_TYPES
{
	FIT_HEADER = 0,
	MICROCODE_UPDATE,
	BG_ACM,
	BIOS_INIT = 7,
	TPM_POLICY,
	BIOS_POLICY,
	TXT_POLICY,
	BG_KEYM,
	BG_IBBM
};

אישט עס איז קלא־׹ ווי דעך טא־ג אַז איינעך ׀ון די איינסן ווייזט שו די א֞ךט ׀ון די Intel BG סטאַךטאַ׀֌ אַקם ביינעךי. די כעדעך סטךוקטוך ׀ון דעם ביינעךי איז טי׀֌יש ׀ֿאַך קא־ד מאַדזשולז דעוועלא֞׀֌עד דו׹ך Intel (ACMS, מיקךא֞קא֞דע דעךהייַנטיקונגען, Intel ME קא־ד סעקשאַנז, ...).

typedef struct BG_ACM_HEADER
{
	unsigned short ModuleType;     // 2
	unsigned short ModuleSubType;  // 3
	unsigned long  HeaderLength;   // in dwords
	unsigned long  : 32;
	unsigned long  : 32;
	unsigned long  ModuleVendor;   // 8086h
	unsigned long  Date;           // in BCD format
	unsigned long  TotalSize;      // in dwords
	unsigned long  unknown1[6];
	unsigned long  EntryPoint;
	unsigned long  unknown2[16];
	unsigned long  RsaKeySize;     // in dwords
	unsigned long  ScratchSize;    // in dwords
	unsigned char  RsaPubMod[256];
	unsigned long  RsaPubExp;
	unsigned char  RsaSig[256];
};

Schrödinger's Trusted Download. Intel Boot Guard
דעך ׀֌ךאַסעסעך לא־ודז דעם ביינעךי אין זיין קאַש, וועךאַ׀ייז עס און לוי׀ט עס.

Intel BG סטאַךטאַ׀֌ אַקם

ווי אַ ךעזולטאַט ׀ון אַנאַלייזינג די אַךבעט ׀ון דעם ACM, עס איז געוואךן קלא־׹ אַז עס טוט די ׀אלגענדע:

  • באקומט די Intel BG קאַנ׀יגיעךיישאַן ׀ון Intel ME, געשךיבן אין טשי׀֌סעט ׀וסעס (FPFs);
  • גע׀ינט KEYM און IBBM מאַני׀עסץ און וועךאַ׀ייז זיי.

שו גע׀ֿינען די מאַני׀עסץ, ACM אויך נישט די FIT טיש, ווא֞ס האט שוויי ׀֌א֞זי׊יע טיי׀֌ס שו א֞נווייַזן סטךוקטוך דאַטן (זען FIT_ENTRY_TYPES אויבן).

לא־מי׹ נעמען אַ נעענטעך קוק אין מאַני׀עסטא֞ס. אין דעך סטךוקטוך ׀ון דעך עךשטעך באַשייַמ׀֌עךלעך, מי׹ זען עטלעכע דיק קאַנסטאַנץ, אַ האַש ׀ון די שיבו׹ שליסל ׀ון די ךגע באַשייַמ׀֌עךלעך, און דעך שיבו׹ א֞עם ווא־׹של קיי געחתמעט ווי אַ נעסטעד סטךוקטוך:

typedef struct KEY_MANIFEST
{
	char           Tag[8];          // ‘__KEYM__’
	unsigned char  : 8;             // 10h
	unsigned char  : 8;             // 10h
	unsigned char  : 8;             // 0
	unsigned char  : 8;             // 1
	unsigned short : 16;            // 0Bh
	unsigned short : 16;            // 20h == hash size?
	unsigned char  IbbmKeyHash[32]; // SHA256 of an IBBM public key
	BG_RSA_ENTRY   OemRootKey;
};

typedef struct BG_RSA_ENTRY
{
	unsigned char  : 8;             // 10h
	unsigned short : 16;            // 1
	unsigned char  : 8;             // 10h
	unsigned short RsaPubKeySize;   // 800h
	unsigned long  RsaPubExp;
	unsigned char  RsaPubKey[256];
	unsigned short : 16;            // 14
	unsigned char  : 8;             // 10h
	unsigned short RsaSigSize;      // 800h
	unsigned short : 16;            // 0Bh
	unsigned char  RsaSig[256];
};

Schrödinger's Trusted Download. Intel Boot Guard
שו באַשטעטיקן די א֞עם ווא־׹של קיי ע׀נטלעך שליסל, מי׹ ׊וךיקךו׀ן אַז מי׹ נושן די SHA256 האַש ׀ון ׀וסעס, ווא֞ס אין דעם ׀ונט איז שוין באקומען ׀ון Intel ME.

לא־מי׹ גײן װײַטעך שום ׊װײטן מאַני׀עסטא֞. עס באשטייט ׀ון דךייַ סטךאַקטשעךז:

typedef struct IBB_MANIFEST
{
	ACBP Acbp;         // Boot policies
	IBBS Ibbs;         // IBB description
	IBB_DESCRIPTORS[];
	PMSG Pmsg;         // IBBM signature
};

דעך עךשטעך כ֌ולל עטלעכע קאַנסטאַנץ:

typedef struct ACBP
{
	char           Tag[8];          // ‘__ACBP__’
	unsigned char  : 8;             // 10h
	unsigned char  : 8;             // 1
	unsigned char  : 8;             // 10h
	unsigned char  : 8;             // 0
	unsigned short : 16;            // x & F0h = 0
	unsigned short : 16;            // 0 < x <= 400h
};

די ךגע כ֌ולל די SHA256 האַש ׀ון די IBB און די נומעך ׀ון דיסקךי׀֌טא֞ךס ווא֞ס באַשךייַבן די אינהאַלט ׀ון די IBB (ד"ה, ווא֞ס די האַש איז קאַלקיאַלייטיד ׀ון):

typedef struct IBBS
{
	char           Tag[8];            // ‘__IBBS__’
	unsigned char  : 8;               // 10h
	unsigned char  : 8;               // 0
	unsigned char  : 8;               // 0
	unsigned char  : 8;               // x <= 0Fh
	unsigned long  : 32;              // x & FFFFFFF8h = 0
	unsigned long  Unknown[20];
	unsigned short : 16;              // 0Bh
	unsigned short : 16;              // 20h == hash size ?
	unsigned char  IbbHash[32];       // SHA256 of an IBB
	unsigned char  NumIbbDescriptors;
};

די IBB דיסקךי׀֌טא֞ךס נא־כגיין דעם סטךוקטוך, איינעך נא־ך די אנדעךע. זייעך אינהאַלט האט די ׀אלגענדע ׀ֿא֞ךמאַט:

typedef struct IBB_DESCRIPTOR
{
	unsigned long  : 32;
	unsigned long  BaseAddress;
	unsigned long  Size;
};

עס איז ׀֌שוט: יעדעך דיסקךי׀֌טא֞ך כ֌ולל די אַדךעס / גךייס ׀ון די IBB ׀֌ייַדע. אזוי, די קאַנקאַטאַניישאַן ׀ון די בלאַקס ש׀֌י׊יק שו דו׹ך די דיסקךי׀֌טא֞ךס (אין דעך סדך ׀ון די דיסקךי׀֌טא֞ךס זיך) איז יבב. און, ווי אַ העךשן, IBB איז די זאַמלונג ׀ון אַלע מאַדזשולז ׀ון די SEC און PEI ׀אַסעס.

די ׊ווייטע מאַנאַ׀עסטיישאַן איז געענדיקט דו׹ך אַ סטךוקטוך מיט די IBB ע׀נטלעך שליסל (וועךאַ׀ייד דו׹ך די SHA256 האַש ׀ֿון דעך עךשטעך באַשייַמ׀֌עךלעך) און די כסימע ׀ון ​​דעם באַשייַמ׀֌עךלעך:

typedef struct PMSG
{
	char           Tag[8];            // ‘__PMSG__’
	unsigned char  : 8;               // 10h
	BG_RSA_ENTRY   IbbKey;
};

Schrödinger's Trusted Download. Intel Boot Guard
אַזוי, א׀ילו איידעך די UEFI בייא֞וס סטאַךץ עקסאַקיוטינג, דעך ׀֌ךאַסעסעך וועט קאַטעך ACM, ווא֞ס וועט באַשטעטיקן די א֞טאַנטיסיטי ׀ון די אינהאַלט ׀ון די סעקשאַנז מיט די SEC און PEI ׀אַסע קא־ד. דעךנא֞ך, דעך ׀֌ךאַסעסעך יקסידז ACM, גייט די RESET וועקטא֞ך און הייבט שו דוךכ׀יךן די בייא֞וס.

די וועךאַ׀ייד PEI ׊עטיילונג מוזן אַנטהאַלטן אַ מא֞דולע ווא֞ס וועט קא־נט׹א־לי׹ן די ךעשט ׀ון די בייא֞וס (DXE קא־ד). דעך מא֞דולע איז שוין דעוועלא֞׀֌עד דו׹ך IBV (ינדע׀֌ענדענט בייא֞וס ׀אַךקוי׀עך) א֞דעך די סיסטעם ׀אַךקוי׀עך זיך. ווייַל בלויז Lenovo און Gigabyte סיסטעמען זענען געווען אין אונדזעך באַזייַטיקונג און הא־בן ינטעל בג שטי׊ן; לא־מי׹ קוקן אין די קא־ד יקסטךאַקטיד ׀ון די סיסטעמען.

UEFI בייא֞וס מא֞דולע LenovoVerifiedBootPei

אין דעם ׀אַל ׀ון Lenovo, עס איז געווען די LenovoVerifiedBootPei מא֞דולע {B9F2AC77-54C7-4075-B42E-C36325A9468D}, דעוועלא֞׀֌עד דו׹ך Lenovo.

זיין אַךבעט איז שו קוקן אַךויף (דו׹ך GUID) די האַש טיש ׀ֿאַך די DXE און באַשטעטיקן די DXE.

if (EFI_PEI_SERVICES->GetBootMode() != BOOT_ON_S3_RESUME)
{
	if (!FindHashTable())
		return EFI_NOT_FOUND;
	if (!VerifyDxe())
		return EFI_SECURITY_VIOLATION;
}

Хеш таблОца {389CC6F2-1EA8-467B-AB8A-78E769AE2A15} ОЌеет слеЎующОй фПрЌат:

typedef struct HASH_TABLE
{
	char          Tag[8];            // ‘$HASHTBL’
	unsigned long NumDxeDescriptors;
	DXE_DESCRIPTORS[];
};

typedef struct DXE_DESCRIPTOR
{
	unsigned char BlockHash[32];     // SHA256
	unsigned long Offset;
	unsigned long Size;
};

UEFI בייא֞וס מא֞דולע BootGuardPei

אין דעם ׀אַל ׀ון גיגאבייט, עס איז געווען די BootGuardPei מא֞דולע {B41956E1-7CA2-42DB-9562-168389F0F066}, דעוועלא֞׀֌עד דו׹ך AMI, דעךיבעך, ׀א֞ךשטעלן אין קיין אַמי בייא֞וס מיט Intel BG שטי׊ן.

זיין אַ׀֌עךייטינג אַלגעךידאַם איז ע׀֌עס אַנדעךש, א֞בעך, עס בוילז אַךא֞׀֌ שו די זעלבע זאַך:

int bootMode = EFI_PEI_SERVICES->GetBootMode();

if (bootMode != BOOT_ON_S3_RESUME &&
    bootMode != BOOT_ON_FLASH_UPDATE &&
    bootMode != BOOT_IN_RECOVERY_MODE)
{
	HOB* h = CreateHob();
	if (!FindHashTable())
		return EFI_NOT_FOUND;
	WriteHob(&h, VerifyDxe());
	return h;
}

די האַש טיש {389CC6F2-1EA8-467B-AB8A-78E769AE2A15} עס איז קוקן ׀ֿאַך האט די ׀אלגענדע ׀ֿא֞ךמאַט:

typedef HASH_TABLE DXE_DESCRIPTORS[];

typedef struct DXE_DESCRIPTOR
{
	unsigned char BlockHash[32];     // SHA256
	unsigned long BaseAddress;
	unsigned long Size;
};

Intel Boot Guard 2.x

זאל ס בעקי׊עך ךעדן וועגן אן אנדעך ימ׀֌לאַמענטיישאַן ׀ון Intel Boot Guard, ווא֞ס איז גע׀ֿונען אין אַ נייַעך סיסטעם באזי׹ט אויף Intel SoC מיט Apollo Lake מיקךא֞אַךטשיטעקטוךע - ASRock J4205-IT.

כא֞טש די וועךסיע וועט זיין געוויינט בלויז אין סא֞קס (נייַ סיסטעמען מיט קאַבי לייק ׀֌ךאַסעסעך מיקךא֞אַךטשיטעקטוךע ׀א֞ךזע׊ן שו נושן Intel Boot Guard 1.x), עס איז ׀ון גךויס אינטעךעס שו לעךנען די נייַע אַךקאַטעקטשעך א֞׀֌׊יע ׀ֿאַך Intel SoC ׀֌לאַט׀א֞ךמס, ווא֞ס הא־בן געזען באַטייַטיק ענדעךונגען, למשל:

  • די בייא֞וס און Intel ME מקומות (א֞דעך גאַנץ Intel TXE, לויט די טעךמינא֞לא֞גיע ׀ֿאַך Intel SoC) זענען אישט איין IFWI געגנט;
  • כא֞טש Intel BG איז געווען ענייבאַלד אויף דעך ׀֌לאַט׀א֞ךמע, סטךאַקטשעךז אַזאַ ווי FIT, KEYM, IBBM זענען נישט גע׀ֿונען אין בליץ זכ֌ךון;
  • אין אַדישאַן שו די TXE און ISH קא֞ךעס (קס86), אַ ד׹יט האַךץ איז ׊וגעגעבן שו די טשי׀֌סעט (אַךק ווידעך, דו׹ך דעם וועג) - PMC (Power Management Controller), ׀ֿאַךבונדן מיט ינשוךינג די א֞׀֌עךאַביליטי ׀ון די מאַכט סאַבסיסטאַם און ׀א֞ךשטעלונג מא־ניטא־׹ינג.

Schrödinger's Trusted Download. Intel Boot Guard
דעך אינהאַלט ׀ון די נייַע IFWI געגנט איז אַ סכום ׀ון די ׀אלגענדע מאַדזשולז:

׀א֞ךוךטייל
נא֞מען
באַשךייַבונג

0000 2000 ה
SMIP
אַ זיכעך ׀֌לאַט׀א֞ךמע קאַנ׀יגיעךיישאַן, געחתמעט דו׹ך די ׀אַךקוי׀עך

0000 6000 ה
RBEP
Intel TXE ׀יךמוואַךע קא־ד א֞׀֌טיילונג, x86, געחתמעט Intel

0001 0000 ה
PMCP
Intel PMC ׀יךמוואַךע קא־ד א֞׀֌טיילונג, ARC, געחתמעט Intel

0002 0000 ה
FTPR
Intel TXE ׀יךמוואַךע קא־ד א֞׀֌טיילונג, x86, געחתמעט Intel

0007 ב 000 ה
UCOD
מיקךא֞קא֞דע דעךהייַנטיקונגען ׀ֿאַך ק׀֌ו, געחתמעט דו׹ך ינטעל

0008 0000 ה
יבב׀֌
UEFI BIOS, SEC/PEI ׀אַסעס, x86, געחתמעט דו׹ך די ׀אַךקוי׀עך

0021 8000 ה
ISHC
Intel ISH ׀יךמוואַךע קא־ד א֞׀֌טיילונג, x86, געחתמעט דו׹ך די ׀אַךקוי׀עך

0025 8000 ה
נ׀ט׀֌
Intel TXE ׀יךמוואַךע קא־ד א֞׀֌טיילונג, x86, געחתמעט Intel

0036 1000 ה
IUNP
איז אומבאַקאַנט

0038 1000 ה
OBBP
UEFI BIOS, DXE Phase, x86, אַנסיינד

בעשאַס די אַנאַליסיס ׀ון די TXE ׀יךמוואַךע, עס איז געווען קלא־׹ ווי דעך טא־ג אַז נא־ך אַ RESET, די TXE האלט די ׀֌ךאַסעסעך אין דעם שטאַט ביז עס ׀֌ךי׀֌עךז די יקעךדיק אינהאַלט ׀ון די אַדךעס ׀֌לאַץ ׀ֿאַך די ק׀֌ו (FIT, ACM, RESET וועקטא֞ך ...). דעך׊ו, TXE לייגט די דאַטן אין זיין SRAM, נא־ך ווא֞ס עס טעמ׀֌עךעךאַלי גיט די ׀֌ךאַסעסעך אַקסעס דא־׹ט און "ךיליסיז" עס ׀ֿון RESET.

אויף היטן קעגן ךא֞א֞טקיץ

נו, אישט לא־זן ס מאַך אויף שו די "הייס" שטא֞׀֌ן. מי׹ אַמא֞ל דיסקאַוועךד אַז אויף ׀ילע סיסטעמען, SPI בליץ דיסקךי׀֌טא֞ךס אַנטהאַלטן ׀֌עךמישאַנז שו אַקסעס מקומות ׀ון SPI בליץ זכ֌ךון אַזוי אַז אַלע ני׊עךס ׀ון דעם זכ֌ךון קענען שךייַבן און לייענען קיין געגנט. יענע. קיין וועג.

נא־ך קא־נט׹א־לי׹ונג מיט די MEinfo נושן (׀ֿון Intel STK), מי׹ געזען אַז די מאַנו׀אַקטוךינג מא֞דע אויף די סיסטעמען איז נישט ׀ֿאַךמאַכט, דעךיבעך, די טשי׀֌סעט ׀וסעס (×€×€×£) זענען לינקס אין אַ אַנדי׀יינד שטאַט. יא־, Intel BG איז ניט אויסגעדךייט אויף אדעך אַוועק אין אַזאַ קאַסעס.

מי׹ ךעדן וועגן די ׀אלגענדע סיסטעמען (מיט גךוס שו Intel BG און ווא֞ס וועט זיין דיסקךייבד ש׀֌עטעך אין דעם אַךטיקל, מי׹ וועלן ךעדן וועגן סיסטעמען מיט Haswell ׀֌ךאַסעסעך מיקךא֞אַךטשיטעקטוךע און העכעך):

  • אַלע גיגאבייט ׀֌ךא֞דוקטן;
  • אַלע מסי ׀֌ךא֞דוקטן;
  • 21 מא֞דעלס ׀ון לענא֞ווא֞ לאַ׀֌טאַ׀֌ס און 4 מא֞דעלס ׀ון לענא֞ווא֞ סעךוועךס.

׀ון קוךס, מי׹ געמאלדן די ו׀דעקונג שו די ווענדא֞ךס, ווי געזונט ווי שו Intel.

א טויגן ךעאק׊יע איז געקומען בלויז ׀ון לענא֞ווא֞וועך דעךקענט די ׀֌ךא֞בלעם און אךויס א ׀אטש.

גיגאַבייט זיי סימד שו א֞ננעמען די אינ׀ֿא֞ךמאַ׊יע וועגן די וואַלנעךאַביליטי, א֞בעך נישט קאַמענטאַד אין קיין וועג.

קא֞מוניקאַ׊יע מיט מסי גא־׹ סטא֞לד אויף אונדזעך בקשה שו שיקן דיין ע׀נטלעך PGP שליסל (שו שיקן זיי אַ זיכעךהייט אַדווייזעךי אין ינקךי׀֌טיד ׀א֞ךעם). זיי סטייטיד אַז זיי "זענען אַ ייַזנוואַךג ׀אַבךיקאַנט און טא־ן ניט ׀֌ךא֞דו׊יךן ׀֌ג׀֌ שליסלען."

אבעך לאמי׹ אנקומען שו די נקודה. זינט די ׀וסעס זענען לינקס אין אַן ונס׀֌עסי׀יעד שטאַט, דעך באַני׊עך (א֞דעך אַטאַקעך) קענען ׀֌ךא֞גךאַם זיי ינדי׀֌ענדאַנטלי (די מעךסט שוועך זאַך איז גע׀ֿינען Intel STK). שו טא־ן דא֞ס, אי׹ דאַך׀ֿן שו ׀אַךענדיקן די ׀אלגענדע סטע׀֌ס.

1. שטיוול אין Windows OS (אין אַלגעמיין, די אַקשאַנז דיסקךייבד אונטן קענען אויך זיין געטאן אונטעך לינוקס אויב אי׹ אַנטוויקלען אַן אַנאַלא֞ג ׀ון Intel STK ׀ֿאַך די געבעטן אַס). נישן די MEinfo נושן, מאַכן זיכעך אַז ׀וסעס זענען נישט ׀֌ךא֞וגךאַמד אויף דעם סיסטעם.

Schrödinger's Trusted Download. Intel Boot Guard
2. לייענען די אינהאַלט ׀ון בליץ זכ֌ךון נישן די ׀לאַש ׀֌ךא֞גךאַממינג טול.

Schrödinger's Trusted Download. Intel Boot Guard
3. ע׀ֿענען די לייענען בילד מיט קיין UEFI בייא֞וס עדיטינג גע׊ייַג, מאַכן די נייטיק ענדעךונגען (באַ׀יךן אַ ׹א־א־טקיט, למשל), שאַ׀ֿן / ךעדאַגיךן יגזיסטינג KEYM און IBBM סטךאַקטשעךז אין די מי׹ געגנט.

Schrödinger's Trusted Download. Intel Boot Guard
Schrödinger's Trusted Download. Intel Boot Guard
די בילד כיילייץ די ע׀נטלעך טייל ׀ון די RSA שליסל, די האַש ׀ון ווא֞ס וועט זיין ׀֌ךא֞וגךאַמד אין די טשי׀֌סעט ׀וסעס ׊וזאמען מיט די ךעשט ׀ון די Intel BG קאַנ׀יגיעךיישאַן.

4. נישן די ׀לאַש בילד טול, בויען אַ נייַ ׀יךמוואַךע בילד (דו׹ך באַשטעטיקן די Intel BG קאַנ׀יגיעךיישאַן).

Schrödinger's Trusted Download. Intel Boot Guard
5. שךייב אַ נייַע בילד שו בליץ זכ֌ךון נישן די ׀לאַש ׀֌ךא֞גךאַממינג טול, און באַשטעטיקן מיט MEinfo אַז די ME געגנט אישט כ֌ולל די Intel BG קאַנ׀יגיעךיישאַן.

Schrödinger's Trusted Download. Intel Boot Guard
6. נישן די ׀לאַש ׀֌ךא֞גךאַממינג טול שו ׀אַךמאַכן מאַנו׀אַקטוךינג מא֞דע.

Schrödinger's Trusted Download. Intel Boot Guard
7. די סיסטעם וועט ךעבא֞א֞ט, נא־ך ווא֞ס אי׹ קענען נושן MEinfo שו באַשטעטיקן אַז די FPFs זענען אישט ׀֌ךא֞וגךאַמד.

Schrödinger's Trusted Download. Intel Boot Guard
די אַקשאַנז אַ׀ שטענדיק געבן Intel BG אויף דעם סיסטעם. די אַק׊יע קענען ניט זיין אַנדיזיינד, ווא֞ס מיטל:

  • בלויז די באַזי׊עך ׀ון די ׀֌ךיוואַט טייל ׀ון די ווא־׹של שליסל (ד"ה דעך איינעך ווא֞ס ענייבאַלד Intel BG) וועט קענען שו דעךהייַנטיקן די UEFI בייא֞וס אויף דעם סיסטעם;
  • אויב אי׹ ׊וךיקקומען די א֞ךיגינעל ׀יךמוואַךע שו דעם סיסטעם, ׀ֿאַך בייַש׀֌יל, נישן אַ ׀֌ךא֞גךאַמיסט, עס וועט נישט א׀ילו קעך אויף (אַ קאַנסאַקוואַנס ׀ון די ענ׀א֞ךסמאַנט ׀֌א֞ליטיק אין ׀אַל ׀ון אַ וועךאַ׀אַקיישאַן טעות);
  • שו באַקומען באַ׀ךייַען ׀ון אַזאַ אַ UEFI בייא֞וס, אי׹ דאַך׀ֿן שו ׀אַךבייַטן די טשי׀֌סעט מיט ׀֌ךא֞וגךאַמד FPFs מיט אַ "׹יין" (ד"ה, ךיסא֞ולד די טשי׀֌סעט אויב אי׹ הא־בן שוט׹יט שו אַ ינ׀ךעךעד סאַדעךינג סטאַנ׊יע די ׀֌ךייַז ׀ון אַ מאַשין, א֞דעך ׀שוט ׀אַךבייַטן די מא֞טהעךבא֞אַךד ).

שו ׀ֿאַךשטיין ווא֞ס אַזאַ אַ ׹א־א־טקיט קענען טא־ן, אי׹ דאַך׀ֿן שו א֞׀֌שאַ׊ן ווא֞ס מאכט עס מעגלעך שו ויס׀יךן דיין קא־ד אין די UEFI בייא֞וס סוויווע. זאל ס זא־גן, אין די מעךסט ׀֌ךיוולידזשד ׀֌ךאַסעסעך מא֞דע - SMM. אַזאַ אַ ׹א־א־טקיט קען הא־בן די ׀אלגענדע ׀֌ךא֞׀֌עךטיעס:

  • עקסאַקיוטאַד אין ׀֌אַךאַלעל מיט די אַס (אי׹ קענען קאַנ׀יגיעך ׀֌ךאַסעסינג שו דזשענעךייט אַ SMI יבעךךייַס, ווא֞ס וועט זיין טךיגעךד דו׹ך אַ טייַמעך);
  • הא־בן אַלע די אַדוואַנטידזשיז ׀ון זייַענדיק אין SMM מא֞דע (׀ול אַקסעס שו די אינהאַלט ׀ון באַךאַן און ייַזנוואַךג ךעסוךסן, בעסא֞דיקייַט ׀ון די אַס);
  • דעך ׀֌ךא֞גךאַם קא־ד ׀ון די ׹א־א־טקיט קענען זיין ינקךי׀֌טיד און דעקךי׀֌טיד ווען לא֞נטשט אין SMM מא֞דע. קיין דאַטן בנימשא בלויז אין SMM מא֞דע קענען זיין געוויינט ווי אַ ענקךי׀֌שאַן שליסל. ׀ֿאַך בייַש׀֌יל, אַ האַש ׀ון אַ סכום ׀ון אַדךעסעס אין SMRAM. שו באַקומען דעם שליסל, אי׹ דאַך׀ֿן שו אַךייַן SMM. און דא֞ס קען זיין געטאן אין שוויי וועגן. גע׀ֿינען RCE אין די SMM קא־ד און גוווךע עס, א֞דעך לייגן דיין אייגענע SMM מא֞דולע שו די בייא֞וס, ווא֞ס איז אוממעגלעך זינט מי׹ ענייבאַלד Boot Guard.

אזוי, דעם וואַלנעךאַביליטי אַלאַוז אַ אַטאַקעך שו:

  • שאַ׀ֿן אַ ׀אַךבא֞ךגן, אַנדעלעטאַבלע ׹א־א־טקיט ׀ון אומבאַקאַנט שיל אין דעם סיסטעם;
  • ויס׀יךן דיין קא־ד אויף איינעך ׀ון די טשי׀֌סעט קא֞ךעס ין די Intel SoC, ניימלי, אויף די Intel ISH (נעמען אַ א֞׀֌געהיט קוק אין די בילד).

Schrödinger's Trusted Download. Intel Boot Guard
Schrödinger's Trusted Download. Intel Boot Guard
כא֞טש די קיי׀֌אַבילאַטיז ׀ון די Intel ISH סאַבסיסטעם זענען נישט נא־ך יקס׀֌לא֞ךד, עס איז אַ טשיקאַווע באַ׀אַלן וועקטא֞ך ׀ֿאַך Intel ME.

׀יינדינגז

  1. דעך לעךנען געמאכט עס מעגלעך שו באַקומען אַ טעכניש באַשךייַבונג ׀ון די א֞׀֌עךאַ׊יע ׀ון ​​Intel Boot Guard טעכנא֞לא֞גיע. מינוס אַ ׀֌א֞ך ׀ון סיקךיץ אין Intel ס זיכעךהייט דו׹ך אַבסקיוךיטי מא֞דעל.
  2. אַ באַ׀אַלן ס׊ענאַך איז דעךלאנגט ווא֞ס אַלאַוז אי׹ שו שאַ׀ֿן אַ ונינסטאַללאַבלע ׹א־א־טקיט אין די סיסטעם.
  3. מי׹ געזען אַז מא֞דעךן ינטעל ׀֌ךאַסעסעךז זענען טויגעוודיק ׀ון עקסאַקיוטינג אַ ׀֌לאַץ ׀ון ׀֌ךאַ׀֌ךייאַטעךי קא־ד א׀ילו איידעך די בייא֞וס סטאַךץ ׀ליסנדיק.
  4. ׀֌לאַט׀א֞ךמס מיט Intel 64 אַךקאַטעקטשעך וועךן ווייניקעך און ווייניקעך ׀֌אַסיק ׀ֿאַך ׀ליסנדיק ׀ךיי ווייכווא׹ג: ייַזנוואַךג וועךאַ׀אַקיישאַן, אַ ינקךיסינג נומעך ׀ון ׀֌ךאַ׀֌ךייאַטעךי טעקנאַלאַדזשיז און סאַבסיסטאַמז (ד׹יי קא֞ךעס אין די SoC טשי׀֌סעט: x86 ME, x86 ISH און ARC PMC).

מיטיגא׊יעס

ווענדא֞ךס ווא֞ס בעקיוון לא־זן מאַנו׀אַקטוךינג מא֞דע א֞׀ן זא־ל זיין זיכעך שו ׀אַךמאַכן עס. ביז אישט, בלויז זייעך אויגן זענען ׀אךמאכט, און די נייַע Kaby Lake סיסטעמען ווייַזן דא֞ס.

יוזעךז קענען דיסייבאַל Intel BG אויף זייעך סיסטעמען (ווא֞ס זענען סאַסע׀֌טאַבאַל שו די דיסקךייבד וואַלנעךאַביליטי) דו׹ך לוי׀ן די ׀לאַש ׀֌ךא֞גךאַממינג טול מיט די -closemnf ׀֌אַךאַמעטעך. עךשטעך, אי׹ זא־ל מאַכן זיכעך (נישן MEinfo) אַז די Intel BG קאַנ׀יגיעךיישאַן אין די ME געגנט גיט שו ויסמעקן דעם טעכנא֞לא֞גיע נא־ך ׀֌ךא֞גךאַממינג אין FPFs.

מקו׹: www.habr.com

לייגן אַ באַמעךקונג