BHI Intel рд░ ARM рдкреНрд░реЛрд╕реЗрд╕рд░рд╣рд░реВрдорд╛ рд╕реНрдкреЗрдХреНрдЯрд░ рд╡рд░реНрдЧрдХреЛ рдирдпрд╛рдБ рднреЗрджреНрдпрддрд╛ рд╣реЛ

Vrije Universiteit Amsterdam рдХрд╛ рдЕрдиреНрд╡реЗрд╖рдХрд╣рд░реВрдХреЛ рд╕рдореВрд╣рд▓реЗ Intel рд░ ARM рдкреНрд░реЛрд╕реЗрд╕рд░рд╣рд░реВрдХреЛ рдорд╛рдЗрдХреНрд░реЛрдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд▓ рд╕рдВрд░рдЪрдирд╛рд╣рд░реВрдорд╛ рдирдпрд╛рдБ рдХрдордЬреЛрд░реА рдкрд╣рд┐рдЪрд╛рди рдЧрд░реЗрдХреЛ рдЫ, рдЬреБрди Specter-v2 рдЬреЛрдЦрд┐рдордХреЛ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╕рдВрд╕реНрдХрд░рдг рд╣реЛ, рдЬрд╕рд▓реЗ рдкреНрд░реЛрд╕реЗрд╕рд░рд╣рд░реВрдорд╛ рдердкрд┐рдПрдХреЛ eIBRS рд░ CSV2 рд╕реБрд░рдХреНрд╖рд╛ рд╕рдВрдпрдиреНрддреНрд░рд╣рд░реВрд▓рд╛рдИ рдмрд╛рдЗрдкрд╛рд╕ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред ред рдЬреЛрдЦрд┐рдорд▓рд╛рдИ рдзреЗрд░реИ рдирд╛рдорд╣рд░реВ рджрд┐рдЗрдПрдХреЛ рдЫ: BHI (рд╢рд╛рдЦрд╛ рдЗрддрд┐рд╣рд╛рд╕ рдЗрдВрдЬреЗрдХреНрд╢рди, CVE-2022-0001), BHB (рд╢рд╛рдЦрд╛ рдЗрддрд┐рд╣рд╛рд╕ рдмрдлрд░, CVE-2022-0002) рд░ Specter-BHB (CVE-2022-23960), рдЬрд╕рд▓реЗ рд╡рд┐рднрд┐рдиреНрди рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рд╣рд░реВ рд╡рд░реНрдгрди рдЧрд░реНрджрдЫред рдЙрд╣реА рд╕рдорд╕реНрдпрд╛ (BHI - рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░рдХреЛ рд╡рд┐рднрд┐рдиреНрди рд╕реНрддрд░рд╣рд░реВрд▓рд╛рдИ рдЕрд╕рд░ рдЧрд░реНрдиреЗ рдЖрдХреНрд░рдордг, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд░ рдХрд░реНрдиреЗрд▓, BHB - рдПрдЙрдЯреИ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рд╕реНрддрд░рдорд╛ рдЖрдХреНрд░рдордг, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, eBPF JIT рд░ рдХрд░реНрдиреЗрд▓)ред

рдЕрдиреНрд╡реЗрд╖рдХрд╣рд░реВрд▓реЗ рдХрд╛рдо рдЧрд░реНрдиреЗ рд╢реЛрд╖рдг рдкреНрд░рджрд░реНрд╢рди рдЧрд░реЗрдХрд╛ рдЫрдиреН рдЬрд╕рд▓реЗ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рд╕реНрдкреЗрд╕рдмрд╛рдЯ рдХрд░реНрдиреЗрд▓ рдореЗрдореЛрд░реАрдмрд╛рдЯ рдордирдорд╛рдиреА рдбрд╛рдЯрд╛ рдирд┐рдХрд╛рд▓реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдпреЛ рджреЗрдЦрд╛рдЗрдПрдХреЛ рдЫ, рдХрд╕рд░реА рддрдпрд╛рд░ рд╢реЛрд╖рдг рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░, /etc/shadow рдлрд╛рдЗрд▓рдмрд╛рдЯ рд▓реЛрдб рдЧрд░рд┐рдПрдХреЛ рд░реВрдЯ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдкрд╛рд╕рд╡рд░реНрдбрдХреЛ рд╣реНрдпрд╛рд╕рдХреЛ рд╕рд╛рде рдХрд░реНрдиреЗрд▓ рдмрдлрд░рдмрд╛рдЯ рд╕реНрдЯреНрд░рд┐рдЩ рдирд┐рдХрд╛рд▓реНрди рд╕рдореНрднрд╡ рдЫред рд╢реЛрд╖рдгрд▓реЗ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛-рд▓реЛрдб рдЧрд░рд┐рдПрдХреЛ eBPF рдХрд╛рд░реНрдпрдХреНрд░рдо рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдПрдХ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рд╕реНрддрд░ (рдХрд░реНрдиреЗрд▓-рджреЗрдЦрд┐-рдХрд░реНрдиреЗрд▓ рдЖрдХреНрд░рдордг) рднрд┐рддреНрд░рдХреЛ рдЬреЛрдЦрд┐рдордХреЛ рд╢реЛрд╖рдг рдЧрд░реНрдиреЗ рд╕рдореНрднрд╛рд╡рдирд╛ рджреЗрдЦрд╛рдЙрдБрдЫред рдХрд░реНрдиреЗрд▓ рдХреЛрдбрдорд╛ рдЕрд╡рд╕реНрдерд┐рдд рд╕реНрдкреЗрдХреНрдЯрд░ рдЧреНрдпрд╛рдЬреЗрдЯрд╣рд░реВ eBPF рдХреЛ рд╕рдЯреНрдЯрд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдкрдирд┐ рд╕рдореНрднрд╡ рдЫ, рдЖрджреЗрд╢рд╣рд░реВрдХреЛ рдЕрдиреБрдХреНрд░рдо рдЬрд╕рд▓реЗ рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВрдХреЛ рд╕рдЯреНрдЯрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдорд╛ рдиреЗрддреГрддреНрд╡ рдЧрд░реНрджрдЫред

рдПрдЯрдо рдкрд░рд┐рд╡рд╛рд░рдХрд╛ рдкреНрд░реЛрд╕реЗрд╕рд░рд╣рд░реВ рдмрд╛рд╣реЗрдХ рд╣рд╛рд▓рдХрд╛ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЗрдиреНрдЯреЗрд▓ рдкреНрд░реЛрд╕реЗрд╕рд░рд╣рд░реВрдорд╛ рдХрдордЬреЛрд░реА рджреЗрдЦрд┐рдиреНрдЫред ARM рдкреНрд░реЛрд╕реЗрд╕рд░рд╣рд░реВ рдордзреНрдпреЗ, Cortex-A15, Cortex-A57, Cortex-A7*, Cortex-X1, Cortex-X2, Cortex-A710, Neoverse N1, Neoverse N2, Neoverse V1 рд░ рд╕рдореНрднрд╡рддрдГ рдХреЗрд╣реА Cortex-R рдЪрд┐рдкрд╣рд░реВ рд╕рдорд╕реНрдпрд╛рдмрд╛рдЯ рдкреНрд░рднрд╛рд╡рд┐рдд рдЫрдиреНред рдЕрдиреБрд╕рдиреНрдзрд╛рдирдХрд╛ рдЕрдиреБрд╕рд╛рд░, рдЬреЛрдЦрд┐рдо AMD рдкреНрд░реЛрд╕реЗрд╕рд░рд╣рд░реВрдорд╛ рджреЗрдЦрд╛ рдкрд░реНрджреИрдиред рд╕рдорд╕реНрдпрд╛ рд╣рдЯрд╛рдЙрдирдХреЛ рд▓рд╛рдЧрд┐, рдзреЗрд░реИ рд╕рдлреНрдЯрд╡реЗрдпрд░ рд╡рд┐рдзрд┐рд╣рд░реВ рднреЗрджреНрдпрддрд╛ рд░реЛрдХреНрди рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░рд┐рдПрдХреЛ рдЫ, рдЬреБрди рднрд╡рд┐рд╖реНрдпрдХрд╛ CPU рдореЛрдбреЗрд▓рд╣рд░реВрдорд╛ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕реБрд░рдХреНрд╖рд╛рдХреЛ рдЙрдкрд╕реНрдерд┐рддрд┐ рдЕрдШрд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред

eBPF рдЙрдкрдкреНрд░рдгрд╛рд▓реА рдорд╛рд░реНрдлрдд рдЖрдХреНрд░рдордгрд╣рд░реВ рд░реЛрдХреНрдирдХреЛ рд▓рд╛рдЧрд┐, "/proc/sys/kernel/unprivileged_bpf_disabled" рдлрд╛рдЗрд▓рдорд╛ 1 рд▓реЗрдЦреЗрд░ рд╡рд╛ "sysctl -w рдХрд░реНрдиреЗрд▓" рдЪрд▓рд╛рдПрд░ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░рд░рд╣рд┐рдд рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ eBPF рдХрд╛рд░реНрдпрдХреНрд░рдорд╣рд░реВ рдбрд╛рдЙрдирд▓реЛрдб рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛рд▓рд╛рдИ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛ рдЕрд╕рдХреНрд╖рдо рдЧрд░реНрди рд╕рд┐рдлрд╛рд░рд┐рд╕ рдЧрд░рд┐рдиреНрдЫред unprivileged_bpf_disabled=1тАЭред рдЧреНрдпрд╛рдЬреЗрдЯ рдЖрдХреНрд░рдордгрд╣рд░реВ рд░реЛрдХреНрдирдХреЛ рд▓рд╛рдЧрд┐, рдХреЛрдбрдХреЛ рдХреНрд╖реЗрддреНрд░рд╣рд░реВрдорд╛ LFENCE рдирд┐рд░реНрджреЗрд╢рди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рд┐рдлрд╛рд░рд┐рд╕ рдЧрд░рд┐рдиреНрдЫ рдЬрд╕рд▓реЗ рд╕рдореНрднрд╛рд╡рд┐рдд рд░реВрдкрдорд╛ рд╕рдЯреНрдЯрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдорд╛ рдиреЗрддреГрддреНрд╡ рдЧрд░реНрджрдЫред рдпреЛ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рдЫ рдХрд┐ рдзреЗрд░реИ рд▓рд┐рдирдХреНрд╕ рд╡рд┐рддрд░рдгрдХреЛ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирд▓реЗ рдкрд╣рд┐рд▓реЗ рдиреИ рдЖрд╡рд╢реНрдпрдХ рд╕реБрд░рдХреНрд╖рд╛ рдЙрдкрд╛рдпрд╣рд░реВ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджрдЫ рдЬреБрди рдЕрдиреБрд╕рдиреНрдзрд╛рдирдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рдкреНрд░рджрд░реНрд╢рди рдЧрд░реЗрдХреЛ eBPF рдЖрдХреНрд░рдордгрд▓рд╛рдИ рд░реЛрдХреНрдирдХреЛ рд▓рд╛рдЧрд┐ рдкрд░реНрдпрд╛рдкреНрдд рдЫред рдИрдмреАрдкреАрдПрдлрдорд╛ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░рд░рд╣рд┐рдд рдкрд╣реБрдБрдЪ рдЕрд╕рдХреНрд╖рдо рдкрд╛рд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рдЗрдВрдЯреЗрд▓рдХрд╛ рд╕рд┐рдлрд╛рд░рд┐рд╕рд╣рд░реВ рдкрдирд┐ рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓ 5.16 рджреЗрдЦрд┐ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реБрдиреН рд░ рдкрд╣рд┐рд▓реЗрдХрд╛ рд╢рд╛рдЦрд╛рд╣рд░реВрдорд╛ рдмреНрдпрд╛рдХрдкреЛрд░реНрдЯ рдЧрд░рд┐рдиреЗрдЫред

рд╡реИрдЪрд╛рд░рд┐рдХ рд░реВрдкрдорд╛, BHI Specter-v2 рдЖрдХреНрд░рдордгрдХреЛ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╕рдВрд╕реНрдХрд░рдг рд╣реЛ, рдЬрд╕рдорд╛ рдердкрд┐рдПрдХреЛ рд╕реБрд░рдХреНрд╖рд╛ (Intel eIBRS рд░ Arm CSV2) рд▓рд╛рдИ рдмрд╛рдЗрдкрд╛рд╕ рдЧрд░реНрди рд░ рдбреЗрдЯрд╛ рдЪреБрд╣рд╛рд╡рдЯрд▓рд╛рдИ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдЧрд░реНрди, рдореВрд▓реНрдп рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рд╢рд╛рдЦрд╛ рдЗрддрд┐рд╣рд╛рд╕ рдмрдлрд░рдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ, CPU рдорд╛ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдмрдврд╛рдЙрди рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫред рд╡рд┐рдЧрддрдХреЛ рд╕рдВрдХреНрд░рдордгрдХреЛ рдЗрддрд┐рд╣рд╛рд╕рд▓рд╛рдИ рдзреНрдпрд╛рдирдорд╛ рд░рд╛рдЦреЗрд░ рд╕рдЯреАрдХрддрд╛ рд╢рд╛рдЦрд╛ред рдЖрдХреНрд░рдордгрдХреЛ рд╕рдордпрдорд╛, рд╕рдВрдХреНрд░рдордгрдХреЛ рдЗрддрд┐рд╣рд╛рд╕рдХреЛ рд╕рд╛рде рд╣реЗрд░рдлреЗрд░ рдорд╛рд░реНрдлрдд, рд╕рдВрдХреНрд░рдордгрдХреЛ рдЧрд▓рдд рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рд░ рдЖрд╡рд╢реНрдпрдХ рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВрдХреЛ рд╕рдЯреНрдЯрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдХреЛ рд▓рд╛рдЧрд┐ рд╕рд░реНрддрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░рд┐рдиреНрдЫ, рдЬрд╕рдХреЛ рдкрд░рд┐рдгрд╛рдо рдХреНрдпрд╛рд╕рдорд╛ рд╕рдорд╛рдкреНрдд рд╣реБрдиреНрдЫред

рд╢рд╛рдЦрд╛ рд▓рдХреНрд╖реНрдп рдмрдлрд░рдХреЛ рд╕рдЯреНрдЯрд╛ рд╢рд╛рдЦрд╛ рдЗрддрд┐рд╣рд╛рд╕ рдмрдлрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рдЕрдкрд╡рд╛рджрдХреЛ рд╕рд╛рде, рдирдпрд╛рдБ рдЖрдХреНрд░рдордг Specter-v2 рд╕рдБрдЧ рдорд┐рд▓реНрджреЛрдЬреБрд▓реНрджреЛ рдЫред рдЖрдХреНрд░рдордгрдХрд╛рд░реАрдХреЛ рдХрд╛рд░реНрдп рднрдиреЗрдХреЛ рд╕рдЯреНрдЯрд╛ рдЕрдкрд░реЗрд╢рди рдЧрд░реНрджрд╛ рдареЗрдЧрд╛рдирд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдбрд╛рдЯрд╛рдХреЛ рдХреНрд╖реЗрддреНрд░рдмрд╛рдЯ рд▓рд┐рдЗрдПрдХреЛ рдЕрд╡рд╕реНрдерд╛ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБ рд╣реЛред рдПрдХ рд╕рдЯреНрдЯрд╛ рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рдЬрдореНрдк рдкреНрд░рджрд░реНрд╢рди рдЧрд░реЗрдкрдЫрд┐, рдореЗрдореЛрд░реАрдмрд╛рдЯ рдкрдврд┐рдПрдХреЛ рдЬрдореНрдк рдареЗрдЧрд╛рдирд╛ рдХреНрдпрд╛рд╕рдорд╛ рд░рд╣рдиреНрдЫ, рдЬрд╕ рдкрдЫрд┐ рдХреНрдпрд╛рд╕рдХреЛ рд╕рд╛рдордЧреНрд░реАрд╣рд░реВ рдирд┐рд░реНрдзрд╛рд░рдг рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рд╡рд┐рдзрд┐рд╣рд░реВ рдордзреНрдпреЗ рдПрдХрд▓рд╛рдИ рдХреНрдпрд╛рд╕ рд░ рдЕрдирдХреНрдпрд╛рд╕рдорд╛ рдкрд╣реБрдБрдЪ рд╕рдордпрдорд╛ рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВрдХреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдгрдХреЛ рдЖрдзрд╛рд░рдорд╛ рдкреБрди: рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рдбрд╛рдЯрд╛ред

рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди