рдореЗрдореЛрд░реА рдЯреИрдЧрд┐рдВрдЧ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХрд╛ рдЕрд╡рд▓реЛрдХрди (рдЖрд░реНрдорд╡ .5.рел-рдП)

рдпрд╣ рдкреНрд░рдХрд╛рд╢рди ARM рд╕реЗ рдирдП Armv8.5-A: рдореЗрдореЛрд░реА рдЯреИрдЧрд┐рдВрдЧ рдПрдХреНрд╕рдЯреЗрдВрд╢рди (MTE) рдХреЗ рд╡реНрд╣рд╛рдЗрдЯрдкреЗрдкрд░ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдПрдордЯреАрдИ рд╕реНрд░реЛрдд рдХреЛрдб рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рдХреЛрдб рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдФрд░ рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдмрд┐рдирд╛ рдкреБрдирд░реНрд╕рдВрд░рдЪрдирд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рд╡реГрджреНрдзрд┐ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИред рд╕реНрдореГрддрд┐ рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рдЙрд▓реНрд▓рдВрдШрди рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдФрд░ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рддрдВрддреНрд░ рдХреА рд╕рд░рд▓ рддреИрдирд╛рддреА рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреЗ рдПрдХ рдмрдбрд╝реЗ рд╡рд░реНрдЧ рдХреЗ рд╢реЛрд╖рдг рдХреЛ рд░реЛрдХ рд╕рдХрддреА рд╣реИред



рдкрд░рд┐рдЪрдп


1988 рдореЗрдВ, рдЗрдВрдЯрд░рдиреЗрдЯ рд╡рд░реНрдо рдиреЗ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рджрд╕рд╡реЗрдВ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рдХреНрд░реИрд╢ рдХрд░ рджрд┐рдпрд╛ рдЬреЛ рдЕрднреА рднреА рдЕрдкрдиреА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЕрд╡рд╕реНрдерд╛ рдореЗрдВ рдерд╛, рдФрд░ рд╢реЗрд╖ рднрд╛рдЧ рдХрд╛рдлреА рдзреАрдорд╛ рд╣реЛ рдЧрдпрд╛ ( рдореЙрд░рд┐рд╕ рд╡рд░реНрдо )ред рддреАрд╕ рд╕реЗ рдЕрдзрд┐рдХ рд╡рд░реНрд╖реЛрдВ рдХреЗ рдмрд╛рдж, рд╕реА-рд▓рд╛рдЗрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдореЗрдВ рд▓рд┐рдЦреЗ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдореЗрдореЛрд░реА рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреЗ рджреЛ рд╡рд░реНрдЧ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдФрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрдиреЗ рд╣реБрдП рд╣реИрдВред 2019 рдмреНрд▓реВрд╣реИрдЯ рдкреНрд░рд╕реНрддреБрддрд┐ рдХреЗ рдЕрдиреБрд╕рд╛рд░ , Microsoft рдЙрддреНрдкрд╛рджреЛрдВ рдореЗрдВ рд╣рд▓ рдХрд┐рдП рдЧрдП рд╕рднреА рд╕реБрд░рдХреНрд╖рд╛ рдореБрджреНрджреЛрдВ рдХрд╛ 70% рдореЗрдореЛрд░реА рд╕реБрд░рдХреНрд╖рд╛ рдЙрд▓реНрд▓рдВрдШрдиреЛрдВ рдХреЗ рдХрд╛рд░рдг рд╣реЛрддрд╛ рд╣реИред рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд▓рд┐рдП Google рджреНрд╡рд╛рд░рд╛ рд╕рдорд╛рди рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ : 75% рд╕реЗ рдЕрдзрд┐рдХ рдХрдордЬреЛрд░рд┐рдпрд╛рдВ рд╕реНрдореГрддрд┐ рд╕реБрд░рдХреНрд╖рд╛ рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рд╣реИрдВред рдпрджреНрдпрдкрд┐ рдЗрдирдореЗрдВ рд╕реЗ рдХрдИ рдЙрд▓реНрд▓рдВрдШрди рдЕрдзрд┐рдХ рдЖрдзреБрдирд┐рдХ рд╕реБрд░рдХреНрд╖рд┐рдд рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ, рд╕реА рдФрд░ рд╕реА ++ рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рдХреЛрдб рдХрд╛ рдЖрдзрд╛рд░ рдмрд╣реБрдд рд╡реНрдпрд╛рдкрдХ рд╣реИред рдЕрдХреЗрд▓реЗ рдбреЗрдмрд┐рдпрди рд▓рд┐рдирдХреНрд╕рдЗрд╕рдореЗрдВ рдЖрдзрд╛ рдмрд┐рд▓рд┐рдпрди рд╕реЗ рдЕрдзрд┐рдХ рд▓рд╛рдЗрдиреЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ ред


рд╕реНрдореГрддрд┐ рд╕реБрд░рдХреНрд╖рд╛ рдЙрд▓реНрд▓рдВрдШрди рджреЛ рдореБрдЦреНрдп рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдореЗрдВ рдЖрддреЗ рд╣реИрдВ: рд╕реНрдерд╛рдирд┐рдХ рд╕реБрд░рдХреНрд╖рд╛ рдФрд░ рдЕрд╕реНрдерд╛рдпреА рд╕реБрд░рдХреНрд╖рд╛ред рдкрд╣рд▓реЗ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЙрд▓реНрд▓рдВрдШрди рдХрд╛ рд╢реЛрд╖рдг рдЖрдорддреМрд░ рдкрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:


  • рджреБрд░реНрднрд╛рд╡рдирд╛рдкреВрд░реНрдг рдкреЗрд▓реЛрдб рд╡рд┐рддрд░рдг;
  • рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ (рдЕрдиреНрдп рдкреНрд░рдХрд╛рд░ рдХреА рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ);
  • рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд░рд┐рд╕рд╛рд╡ рдХрд╛ рд╕рдВрдЧрдардиред

рд╕реНрдерд╛рдирд┐рдХ рд╕реБрд░рдХреНрд╖рд╛ рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдХреА рдЕрдкреАрд▓ рдЙрд╕рдХреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕реАрдорд╛рдУрдВ рд╕реЗ рдкрд░реЗ рд╣реЛ рдЬрд╛рддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рд╕реНрдЯреИрдХ рдкрд░ рдмрдлрд░ рдЕрддрд┐рдкреНрд░рд╡рд╛рд╣, рдЬреЛ рдлрд╝рдВрдХреНрд╢рди рд╕реЗ рд░рд┐рдЯрд░реНрди рдПрдбреНрд░реЗрд╕ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ рдХрдИ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣рдорд▓реЛрдВ рдХрд╛ рдЖрдзрд╛рд░ рдмрди рд╕рдХрддрд╛ рд╣реИред


╠Б , , , , . , , , .


MTE . MTE , . . MTE , . ( ) .



MTE , , . .


MTE , . (legacy) MTE .


MTE . MTE , . MTE MTE , Branch Target Identification (BTI) Pointer Authentication Code (PAC), , , .


MTE


Memory Tagging Extension "-" (lock & key). (lock) . ( ), . ( ) .


16 . (Tag Granule). (lock).


(, , ) , .


, ╠Б , MTE Top Byte Ignore (TBI) Armv8-A. TBI , . . MTE .


"-" :


MTE , . ( 4), , . , , , , , , .


MTE - . , , 100%.



, Memory Tagging Extension Armv8-A. , :


  • Architectural Details
  • Deploying MTE at Scale
  • Deploying MTE in Hardware
  • Deploying MTE in Software
  • Optimizing for MTE

, Google MTE Android (Arm). /, .


a13xp0p0vрдФрд░ рдЕрдкрдиреЗ рдЙрддреНрдХреГрд╖реНрдЯ рдкреНрд░рдХрд╛рд╢рди , CVE-2,019-18,683: рд▓рд┐рдирдХреНрд╕ V4L2 рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдПрдХ рднреЗрджреНрдпрддрд╛ рдХрд╛ рд╢реЛрд╖рдг , рдЬрд┐рд╕рдореЗрдВ рдмреНрдпрд╛рдЬ рдЫрд┐рдбрд╝ MTE рдЗрдВрдЬрди ред


All Articles