ΠΠ·ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΎΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅Ρ ΠΡΡΠΌΠΈΠ½Π³Π°ΠΌ, ΠΈΠ·Π²Π΅ΡΡΠ½ΠΈ Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° Π°ΡΠ°ΠΊΠΈΡΠ΅ Plundervolt ΠΈ VoltPillager, ΠΎΡΠΊΡΠΈΡ Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡ (CVE-2022-43309) Π² Π½ΡΠΊΠΎΠΈ ΡΡΡΠ²ΡΡΠ½ΠΈ Π΄ΡΠ½Π½ΠΈ ΠΏΠ»Π°ΡΠΊΠΈ, ΠΊΠΎΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ Π΄Π° ΡΠ΅ ΠΏΠΎΠ²ΡΠ΅Π΄ΠΈ CPU Π±Π΅Π· Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π²Π°ΡΠΎ Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅. Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡΡΠ°, ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΡΠ° ΠΊΠΎΠ΄ΠΎΠ²ΠΎ ΠΈΠΌΠ΅ PMFault, ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π·Π° ΠΏΠΎΠ²ΡΠ΅Π΄Π° Π½Π° ΡΡΡΠ²ΡΡΠΈ, Π΄ΠΎ ΠΊΠΎΠΈΡΠΎ Π°ΡΠ°ΠΊΡΠ²Π°ΡΠΈΡΡ Π½ΡΠΌΠ° ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ Π΄ΠΎΡΡΡΠΏ, Π½ΠΎ ΠΈΠΌΠ° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΎΠ²Π°Π½ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°, ΠΏΠΎΠ»ΡΡΠ΅Π½, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡ Π½Π° Π½Π΅ΡΠΏΡΠ°Π²Π»ΡΠ²Π°Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡ ΠΈΠ»ΠΈ ΠΏΡΠΈΡ Π²Π°ΡΠ°Π½Π΅ Π½Π° Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΡΠΊΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΠΈ Π΄Π°Π½Π½ΠΈ.
Π‘ΡΡΠ½ΠΎΡΡΡΠ° Π½Π° ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π°ΡΠ° ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡ Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° PMBus, ΠΏΡΠΈΠ»Π°ΡΠ°Ρ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° I2C, Π·Π° ΠΏΠΎΠ²ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ΄Π°Π²Π°Π½ΠΎΡΠΎ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ° Π½Π°ΠΏΡΠ΅ΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ, ΠΏΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ²Π°ΡΠΈ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΠΈΠΏΠ°. ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡΡ PMBus ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ° Π² ΠΌΠΎΠ΄ΡΠ»Π° VRM (Voltage Regulator Module), Π΄ΠΎΡΡΡΠΏΡΡ Π΄ΠΎ ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΏΠΎΠ»ΡΡΠ΅Π½ ΡΡΠ΅Π· ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΈΠΈ Ρ BMC ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠ°. ΠΠ° ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° Π°ΡΠ°ΠΊΠ° Π½Π° ΠΏΠ»Π°ΡΠΊΠΈ, ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΡΠΈ PMBus, ΠΎΡΠ²Π΅Π½ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΡΠΊΠΈΡΠ΅ ΠΏΡΠ°Π²Π° Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°, Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈ Π½Π°Π»ΠΈΡΠΈΠ΅ Π½Π° ΡΠΎΡΡΡΠ΅ΡΠ΅Π½ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ BMC (Baseboard Management Controller), Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΡΠ΅Π· ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° IPMI KCS (Keyboard Controller Style), ΠΏΡΠ΅Π· Ethernet ΠΈΠ»ΠΈ ΡΡΠ΅Π· ΠΏΡΠ΅ΡΠ»Π°ΡΠ²Π°Π½Π΅ Π½Π° BMC ΠΎΡ ΡΠ΅ΠΊΡΡΠ°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°.
ΠΠ°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° Π°ΡΠ°ΠΊΠ° Π±Π΅Π· Π·Π½Π°Π½ΠΈΠ΅ Π·Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°Π½Π΅ Π² BMC, Π΅ ΠΏΠΎΡΠ²ΡΡΠ΄Π΅Π½ΠΎ ΠΏΡΠΈ Π΄ΡΠ½Π½ΠΈ ΠΏΠ»Π°ΡΠΊΠΈ Supermicro Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° IPMI (X11, X12, H11 ΠΈ H12) ΠΈ ASRock, Π½ΠΎ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡΠ° ΡΠ΅ ΠΎΡΠ½Π°ΡΡ ΠΈ Π·Π° Π΄ΡΡΠ³ΠΈ ΡΡΡΠ²ΡΡΠ½ΠΈ ΠΏΠ»Π°ΡΠΊΠΈ, Π΄ΠΎ ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ PMBus. ΠΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡΠ΅ Π΅ΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈ, ΠΏΡΠΈ ΠΏΠΎΠ²ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° Π½Π°ΠΏΡΠ΅ΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π΄ΠΎ 2.84 Π²ΠΎΠ»ΡΠ° Π½Π° ΡΠ΅Π·ΠΈ ΠΏΠ»Π°ΡΠΊΠΈ, Π±ΡΡ Π° ΠΏΠΎΠ²ΡΠ΅Π΄Π΅Π½ΠΈ Π΄Π²Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ° Intel Xeon. ΠΠ° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ BMC Π±Π΅Π· Π·Π½Π°Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°Π½Π΅, Π½ΠΎ Ρ Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° root Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°, Π±Π΅ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡ Π² ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° Π²Π΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π½Π° ΡΡΡΠΌΡΠ΅ΡΠ°, ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠ°Π½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΡΡΠΌΡΠ΅ΡΠ° Π² BMC ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠ°, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° Π½Π΅Π°Π²ΡΠ΅Π½ΡΠΈΠΊΠΈΡΠ°Π½ Π΄ΠΎΡΡΡΠΏ ΠΏΡΠ΅Π· IPMI KCS.
ΠΠ΅ΡΠΎΠ΄ΡΡ Π·Π° ΠΏΡΠΎΠΌΡΠ½Π° Π½Π° Π½Π°ΠΏΡΠ΅ΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ ΡΡΠ΅Π· PMBus ΡΡΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠΈ Π·Π° ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° Π°ΡΠ°ΠΊΠ°ΡΠ° Plundervolt, ΠΊΠΎΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΡΠ΅Π· Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° Π½Π°ΠΏΡΠ΅ΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π΄ΠΎ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ Π΄Π° ΡΠ΅ ΠΏΡΠΈΡΠΈΠ½ΠΈ ΠΏΠΎΠ²ΡΠ΅Π΄Π° Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΊΠ»Π΅ΡΠΊΠΈΡΠ΅ Ρ Π΄Π°Π½Π½ΠΈ Π² CPU, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ ΠΏΡΠΈ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ Π² ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½ΠΈ Π°Π½ΠΊΠ»Π°Π²ΠΈ Intel SGX ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ Π² ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΎ ΠΊΠΎΡΠ΅ΠΊΡΠ½ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π°ΠΊΠΎ ΡΡΠΏΠ΅Π΅ΡΠ΅ Π΄Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ ΡΡΠΎΠΉΠ½ΠΎΡΡΡΠ°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° ΠΏΡΠΈ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π² ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅, Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π° ΡΠ΅ ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈ Π½Π΅ΠΊΠΎΡΠ΅ΠΊΡΠ΅Π½ ΡΠΈΡΡΠΎΡΠ΅ΠΊΡΡ. ΠΠΌΠ° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π°ΡΠ°ΠΊΡΠ²Π°ΡΠΈΡΡ Π΄Π° ΡΠ΅ ΡΠ²ΡΡΠΆΠ΅ Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°ΡΠ° Π² SGX Π·Π° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈΡΠ΅ ΡΠΈ Π΄Π°Π½Π½ΠΈ, ΠΏΡΠΈΡΠΈΠ½ΡΠ²Π°ΠΉΠΊΠΈ ΡΡΠΈΠ²ΠΎΠ²Π΅, Π·Π° Π΄Π° Π½Π°ΡΡΡΠΏΠ° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ° ΠΎΡΠ½ΠΎΡΠ½ΠΎ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π² ΡΠΈΡΡΠΎΡΠ΅ΠΊΡΡΠ° Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π° ΠΈ Π΄Π° Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΡΠ° Π½Π° ΠΊΠ»ΡΡΠ°, ΡΡΡ ΡΠ°Π½ΡΠ²Π°Π½ Π² Π°Π½ΠΊΠ»Π°Π²Π° SGX.
ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌ Π·Π° ΠΏΡΠΎΠ²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π°ΡΠ°ΠΊΠ° ΡΡΠ΅ΡΡ ΠΏΠ»Π°ΡΠΊΠΈ Supermicro ΠΈ ASRock, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΡΡΠΈΠ»ΠΈΡΠ° Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ PMBus, ΡΠ° ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½ΠΈ Π½Π° GitHub.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
