рдЗрдВрдЯреЗрд▓ рдкреНрд░реЛрд╕реЗрд╕рд░реНрд╕ рдкрд░ рдПрдХ рдирдП рд╣рдорд▓реЗ рдХрд╛ рд╡рд┐рд╡рд░рдг рд╕рд╛рдордиреЗ рдЖрдпрд╛ рд╣реИ тАФ AEPIC рд▓реАрдХ (CVE-2022-21233), рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг рдЕрд▓рдЧ-рдерд▓рдЧ рдкрдбрд╝реЗ рдЗрдВрдЯреЗрд▓ SGX (рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдЧрд╛рд░реНрдб рдПрдХреНрд╕рдЯреЗрдВрд╢рди) рдПрдиреНрдХреНрд▓реЗрд╡ рд╕реЗ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдбреЗрдЯрд╛ рд▓реАрдХ рд╣реЛ рд░рд╣рд╛ рд╣реИред рдпрд╣ рд╕рдорд╕реНрдпрд╛ 10рд╡реАрдВ, 11рд╡реАрдВ рдФрд░ 12рд╡реАрдВ рдкреАрдврд╝реА рдХреЗ рдЗрдВрдЯреЗрд▓ CPU (рдирдИ рдЖрдЗрд╕ рд▓реЗрдХ рдФрд░ рдПрд▓реНрдбрд░ рд▓реЗрдХ рд╕реАрд░реАрдЬрд╝ рд╕рд╣рд┐рдд) рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреА рд╣реИ рдФрд░ рдПрдХ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд▓ рджреЛрд╖ рдХреЗ рдХрд╛рд░рдг рд╣реЛрддреА рд╣реИ рдЬреЛ рдкрд┐рдЫрд▓реЗ рдСрдкрд░реЗрд╢рди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж APIC (рдПрдбрд╡рд╛рдВрд╕реНрдб рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдмрд▓ рдЗрдВрдЯрд░рдкреНрдЯ рдХрдВрдЯреНрд░реЛрд▓рд░) рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рдореЗрдВ рдмрдЪреЗ рд╣реБрдП рдЕрдкреНрд░рд╛рд░рдВрднреАрдХреГрдд рдбреЗрдЯрд╛ рддрдХ рдкрд╣реБрдБрдЪ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рд╕реНрдкреЗрдХреНрдЯреНрд░реЗ-рд╢реНрд░реЗрдгреА рдХреЗ рд╣рдорд▓реЛрдВ рдХреЗ рд╡рд┐рдкрд░реАрдд, AEPIC рд▓реАрдХ рдореЗрдВ рд▓реАрдХ рд╕рд╛рдЗрдб-рдЪреИрдирд▓ рд░рд┐рдХрд╡рд░реА рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рд╣реЛрддрд╛ рд╣реИ - рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдбреЗрдЯрд╛ рдХреА рдЬрд╛рдирдХрд╛рд░реА MMIO (рдореЗрдореЛрд░реА-рдореИрдкреНрдб I/O) рдореЗрдореЛрд░реА рдкреЗрдЬ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд╡рд╛рд▓реЗ рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рдХреА рд╕рд╛рдордЧреНрд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдХреЗ рд╕реАрдзреЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдпрд╣ рд╣рдорд▓рд╛ рдЖрдкрдХреЛ рджреВрд╕рд░реЗ рдФрд░ рдЕрдВрддрд┐рдо рд╕реНрддрд░ рдХреЗ рдХреИрд╢ рдХреЗ рдмреАрдЪ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рдХреА рд╕рд╛рдордЧреНрд░реА рдФрд░ рдЙрд╕реА CPU рдХреЛрд░ рдкрд░ рдкрд╣рд▓реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдП рдЧрдП рдореЗрдореЛрд░реА рд░реАрдб рдСрдкрд░реЗрд╢рди рдХреЗ рдкрд░рд┐рдгрд╛рдо рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
рдЪреВрдБрдХрд┐ рдЗрд╕ рд╣рдорд▓реЗ рдХреЗ рд▓рд┐рдП рднреМрддрд┐рдХ MMIO APIC рдкреГрд╖реНрдареЛрдВ рддрдХ рдкрд╣реБрдБрдЪ, рдпрд╛рдиреА рдкреНрд░рд╢рд╛рд╕рдХреАрдп рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╡рд┐рдзрд┐ рдХреЗрд╡рд▓ рдЙрди SGX рдПрдиреНрдХреНрд▓реЗрд╡ рдкрд░ рд╣рдорд▓рд╛ рдХрд░рдиреЗ рддрдХ рд╕реАрдорд┐рдд рд╣реИ рдЬрд┐рди рддрдХ рдкреНрд░рд╢рд╛рд╕рдХ рдХреА рд╕реАрдзреА рдкрд╣реБрдБрдЪ рдирд╣реАрдВ рд╣реЛрддреАред рд╢реЛрдзрдХрд░реНрддрд╛рдУрдВ рдиреЗ рдПрдХ рдЯреВрд▓рдХрд┐рдЯ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдЙрдиреНрд╣реЗрдВ SGX рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд AES-NI рдФрд░ RSA рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде Intel SGX рд╕рддреНрдпрд╛рдкрди рдХреБрдВрдЬрд┐рдпреЛрдВ рдФрд░ рдЫрджреНрдо-рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдЬрдирд░реЗрдЯрд░ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдХреБрдЫ рд╣реА рд╕реЗрдХрдВрдб рдореЗрдВ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд╣рдорд▓реЗ рдХрд╛ рдХреЛрдб GitHub рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдЗрдВрдЯреЗрд▓ рдиреЗ рдШреЛрд╖рдгрд╛ рдХреА рд╣реИ рдХрд┐ рд╡рд╣ рдПрдХ рдорд╛рдЗрдХреНрд░реЛрдХреЛрдб рдЕрдкрдбреЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдлрд┐рдХреНрд╕ рддреИрдпрд╛рд░ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬреЛ рдмрдлрд░ рдлреНрд▓рд╢рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдиреНрдХреНрд▓реЗрд╡ рдбреЗрдЯрд╛ рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдЙрдкрд╛рдп рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдбреЗрдЯрд╛ рд▓реАрдХ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдмрджрд▓рд╛рд╡реЛрдВ рдХреЗ рд╕рд╛рде рдЗрдВрдЯреЗрд▓ SGX SDK рдХрд╛ рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рднреА рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдФрд░ рд╣рд╛рдЗрдкрд░рд╡рд╛рдЗрдЬрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдкреБрд░рд╛рдиреЗ xAPIC рдореЛрдб рдХреЗ рдмрдЬрд╛рдп x2APIC рдореЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреА рдЬрд╛рддреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ APIC рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП MMIO рдХреЗ рдмрдЬрд╛рдп MSR рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╕реНрд░реЛрдд: opennet.ru
