注拽住驻旨注专讬诪注谞讟讗址诇 砖讟讬爪谉 驻挚讗址专 专讬讘讬诇讚讬谞讙 讚讬 诇讬谞讜拽住 拽注专谉 讗讬谉 拽诇讗址谞讙 诪讬讟 讚讬 CFI 砖讜抓 诪注拽讗址谞讬讝讗址诐

袣械褋 袣褍泻 (Kees Cook), 斜褘胁褕懈泄 谐谢邪胁薪褘泄 褋懈褋邪写屑懈薪 kernel.org 懈 谢懈写械褉 Ubuntu Security Team, 薪褘薪械 褉邪斜芯褌邪褞褖懈泄 胁 泻芯屑锌邪薪懈懈 Google 薪邪写 芯斜械褋锌械褔械薪懈械屑 蟹邪褖懈褌褘 Android 懈 ChromeOS, 爪讜讙注讙专讬讬讟 讬拽住驻旨注专诪注谞讗址诇 专讬驻旨讗址讝讗址讟讗指专讬 褋 锌邪褌褔邪屑懈, 锌芯蟹胁芯谢褟褞褖懈屑懈 褋芯斜褉邪褌褜 褟写褉芯 写谢褟 邪褉褏懈褌械泻褌褍褉褘 x86_64 褋 懈褋锌芯谢褜蟹芯胁邪薪懈械屑 泻芯屑锌懈谢褟褌芯褉邪 Clang 懈 邪泻褌懈胁邪褑懈械泄 屑械褏邪薪懈蟹屑邪 蟹邪褖懈褌褘 CFI (Control Flow Integrity). CFI 芯斜械褋锌械褔懈胁邪械褌 胁褘褟胁谢械薪懈械 薪械泻芯褌芯褉褘褏 褎芯褉屑 薪械芯锌褉械写械谢褢薪薪芯谐芯 锌芯胁械写械薪懈褟, 泻芯褌芯褉褘械 锌芯褌械薪褑懈邪谢褜薪芯 屑芯谐褍褌 锌褉懈胁械褋褌懈 泻 薪邪褉褍褕械薪懈褞 薪芯褉屑邪谢褜薪芯谐芯 锌芯褌芯泻邪 褍锌褉邪胁谢械薪懈褟 (control flow) 胁 褉械蟹褍谢褜褌邪褌械 胁褘锌芯谢薪械薪懈褟 褝泻褋锌谢芯懈褌芯胁.

袧邪锌芯屑薪懈屑, 褔褌芯 胁 LLVM 9 斜褘谢懈 胁泻谢褞褔械薪褘 懈蟹屑械薪械薪懈褟, 薪械芯斜褏芯写懈屑褘械 写谢褟 褋斜芯褉泻懈 褟写褉邪 Linux 褋 懈褋锌芯谢褜蟹芯胁邪薪懈械屑 Clang 写谢褟 褋懈褋褌械屑 褋 邪褉褏懈褌械泻褌褍褉芯泄 x86_64. 袩褉芯械泻褌褘 Android 懈 ChromeOS 褍卸械 锌褉懈屑械薪褟褞褌 Clang 写谢褟 褋斜芯褉泻懈 褟写褉邪 懈 Google 褌械褋褌懈褉褍械褌 Clang 胁 泻邪褔械褋褌胁械 芯褋薪芯胁薪芯泄 锌谢邪褌褎芯褉屑褘 写谢褟 褋斜芯褉泻懈 褟写械褉 写谢褟 褋胁芯懈褏 褉邪斜芯褔懈褏 Linux-褋懈褋褌械屑. 袙邪褉懈邪薪褌褘 褟写褉邪, 褋芯斜懈褉邪械屑褘械 锌褉懈 锌芯屑芯褖懈 Clang, 褌邪泻卸械 褉邪蟹胁懈胁邪褞褌 锌褉芯械泻褌褘 诇讬谞讗址专讗指CrOS.

诪拽讜专: opennet.ru

诇讬讬讙谉 讗址 讘讗址诪注专拽讜谞讙