เชธเชฟเชธเซเชŸเชฎ เช•เซ‹เชฒเซเชธ เชฎเชพเชŸเซ‡ Linux เช•เชฐเซเชจเชฒ เชธเซเชŸเซ‡เช• เชธเชฐเชจเชพเชฎเชพเช‚เชจเซ‡ เชฐเซ‡เชจเซเชกเชฎเชพเช‡เช เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชชเซ‡เชšเซ‹ เชฐเชœเซ‚ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เช›เซ‡

Kees Cook, kernel.org เชจเชพ เชญเซ‚เชคเชชเซ‚เชฐเซเชต เชฎเซเช–เซเชฏ เชธเชฟเชธเซเชŸเชฎ เชเชกเชฎเชฟเชจเชฟเชธเซเชŸเซเชฐเซ‡เชŸเชฐ เช…เชจเซ‡ Ubuntu เชธเซเชฐเช•เซเชทเชพ เชŸเซ€เชฎเชจเชพ เชจเซ‡เชคเชพ, เชœเซ‡ เชนเชตเซ‡ Android เช…เชจเซ‡ ChromeOS เชจเซ‡ เชธเซเชฐเช•เซเชทเชฟเชค เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ Google เชชเชฐ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡, เชธเชฟเชธเซเชŸเชฎ เช•เซ‰เชฒเซเชธ เชชเชฐ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เช•เชฐเซเชจเชฒ เชธเซเชŸเซ‡เช•เชฎเชพเช‚ เช“เชซเชธเซ‡เชŸเซเชธเชจเซ‡ เชฐเซ‡เชจเซเชกเชฎเชพเช‡เช เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชชเซ‡เชšเชจเซ‹ เชธเชฎเซ‚เชน เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเซ‡ เช›เซ‡. เชชเซ‡เชšเซ‹ เชธเซเชŸเซ‡เช• เชชเซเชฒเซ‡เชธเชฎเซ‡เชจเซเชŸ เชฌเชฆเชฒเซ€เชจเซ‡ เช•เชฐเซเชจเชฒ เชธเซเชฐเช•เซเชทเชพเชฎเชพเช‚ เชธเซเชงเชพเชฐเซ‹ เช•เชฐเซ‡ เช›เซ‡, เชธเซเชŸเซ‡เช• เชชเชฐเชจเชพ เชนเซเชฎเชฒเชพเช“เชจเซ‡ เชตเชงเซ เชฎเซเชถเซเช•เซ‡เชฒ เช…เชจเซ‡ เช“เช›เชพ เชธเชซเชณ เชฌเชจเชพเชตเซ‡ เช›เซ‡. เชชเซเชฐเชพเชฐเช‚เชญเชฟเช• เช…เชฎเชฒเซ€เช•เชฐเชฃ ARM64 เช…เชจเซ‡ x86/x86_64 เชชเซเชฐเซ‹เชธเซ‡เชธเชฐเซ‹เชจเซ‡ เชธเชชเซ‹เชฐเซเชŸ เช•เชฐเซ‡ เช›เซ‡.

เชชเซ‡เชš เชฎเชพเชŸเซ‡เชจเซ‹ เชฎเซ‚เชณ เชตเชฟเชšเชพเชฐ PaX RANDKSTACK เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸเชจเซ‹ เช›เซ‡. 2019 เชฎเชพเช‚, เช‡เชจเซเชŸเซ‡เชฒเชจเชพ เชเชจเซเชœเชฟเชจเชฟเชฏเชฐ เชเชฒเซ‡เชจเชพ เชฐเซ‡เชถเซ‡เชŸเซ‹เชตเชพเช เชฎเซเช–เซเชฏ Linux เช•เชฐเซเชจเชฒเชฎเชพเช‚ เชธเชฎเชพเชตเซ‡เชถ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชฏเซ‹เช—เซเชฏ เช† เชตเชฟเชšเชพเชฐเชจเซเช‚ เช…เชฎเชฒเซ€เช•เชฐเชฃ เชฌเชจเชพเชตเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซเชฏเซ‹. เชชเชพเช›เชณเชฅเซ€, เช•เซ€เชธ เช•เซ‚เช• เชฆเซเชตเชพเชฐเชพ เชชเชนเซ‡เชฒ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€, เชœเซ‡เชฃเซ‡ เช•เชฐเซเชจเชฒเชจเชพ เชฎเซเช–เซเชฏ เชธเช‚เชธเซเช•เชฐเชฃ เชฎเชพเชŸเซ‡ เชฏเซ‹เช—เซเชฏ เช…เชฎเชฒเซ€เช•เชฐเชฃ เชฐเชœเซ‚ เช•เชฐเซเชฏเซเช‚. 5.13 เชฐเชฟเชฒเซ€เชเชจเชพ เชญเชพเช— เชฐเซ‚เชชเซ‡ เชชเซ‡เชšเซ‹เชจเซ‹ เชธเชฎเชพเชตเซ‡เชถ เช•เชฐเชตเชพเชจเซ€ เชฏเซ‹เชœเชจเชพ เช›เซ‡. เชฎเซ‹เชก เชกเชฟเชซเซ‰เชฒเซเชŸ เชฐเซ‚เชชเซ‡ เช…เช•เซเชทเชฎ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡. เชคเซ‡เชจเซ‡ เชธเช•เซเชทเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เช•เชฐเซเชจเชฒ เช•เชฎเชพเชจเซเชก เชฒเชพเช‡เชจ เชชเซ‡เชฐเชพเชฎเซ€เชŸเชฐ โ€œrandomize_kstack_offset=on/offโ€ เช…เชจเซ‡ CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT เชธเซ‡เชŸเชฟเช‚เช— เชชเซเชฐเชธเซเชคเชพเชตเชฟเชค เช›เซ‡. เชฎเซ‹เชกเชจเซ‡ เชธเช•เซเชทเชฎ เช•เชฐเชตเชพเชจเชพ เช“เชตเชฐเชนเซ‡เชก เชชเชฐ เช…เช‚เชฆเชพเชœเซ‡ 1% เชชเซเชฐเชญเชพเชต เชจเซเช•เชถเชพเชจเชจเซ‹ เช…เช‚เชฆเชพเชœ เช›เซ‡.

เชธเซ‚เชšเชฟเชค เชธเซเชฐเช•เซเชทเชพเชจเซ‹ เชธเชพเชฐ เช เช›เซ‡ เช•เซ‡ เชฆเชฐเซ‡เช• เชธเชฟเชธเซเชŸเชฎ เช•เซ‰เชฒ เชฎเชพเชŸเซ‡ เชฐเซ‡เชจเซเชกเชฎ เชธเซเชŸเซ‡เช• เช‘เชซเชธเซ‡เชŸ เชชเชธเช‚เชฆ เช•เชฐเชตเชพเชจเซเช‚ เช›เซ‡, เชœเซ‡ เชธเชฐเชจเชพเชฎเชพเช‚เชจเซ‹ เชกเซ‡เชŸเชพ เชชเซเชฐเชพเชชเซเชค เช•เชฐเซเชฏเชพ เชชเช›เซ€ เชชเชฃ เชฎเซ‡เชฎเชฐเซ€เชฎเชพเช‚ เชธเซเชŸเซ‡เช• เชฒเซ‡เช†เช‰เชŸเชจเซ‡ เชจเชฟเชฐเซเชงเชพเชฐเชฟเชค เช•เชฐเชตเชพเชจเซเช‚ เชฎเซเชถเซเช•เซ‡เชฒ เชฌเชจเชพเชตเซ‡ เช›เซ‡, เช•เชพเชฐเชฃ เช•เซ‡ เช†เช—เชพเชฎเซ€ เชธเชฟเชธเซเชŸเชฎ เช•เซ‰เชฒ เชธเซเชŸเซ‡เช•เชจเซเช‚ เชฎเซ‚เชณ เชธเชฐเชจเชพเชฎเซเช‚ เชฌเชฆเชฒเชถเซ‡. PaX RANDKSTACK เช…เชฎเชฒเซ€เช•เชฐเชฃเชฅเซ€ เชตเชฟเชชเชฐเซ€เชค, เช•เชฐเซเชจเชฒเชฎเชพเช‚ เชธเชฎเชพเชตเซ‡เชถ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชชเซเชฐเชธเซเชคเชพเชตเชฟเชค เชชเซ‡เชšเซ‹เชฎเชพเช‚, เชฐเซ‡เชจเซเชกเชฎเชพเช‡เชเซ‡เชถเชจ เชชเซเชฐเชพเชฐเช‚เชญเชฟเช• เชคเชฌเช•เซเช•เชพเชฎเชพเช‚ (cpu_current_top_of_stack) เชจเชฅเซ€, เชชเชฐเช‚เชคเซ pt_regs เชฎเชพเชณเช–เซเช‚ เชธเซ‡เชŸ เช•เชฐเซเชฏเชพ เชชเช›เซ€ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชœเซ‡ เชฐเซ‡เชจเซเชกเชฎเชพเช‡เชเซเชก เช‘เชซเชธเซ‡เชŸ เชจเช•เซเช•เซ€ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ ptrace-เช†เชงเชพเชฐเชฟเชค เชชเชฆเซเชงเชคเชฟเช“เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซเช‚ เช…เชถเช•เซเชฏ เชฌเชจเชพเชตเซ‡ เช›เซ‡. เชฒเชพเช‚เชฌเชพ เชธเชฎเชฏเชฅเซ€ เชšเชพเชฒเชคเชพ เชธเชฟเชธเซเชŸเชฎ เช•เซ‰เชฒ เชฆเชฐเชฎเชฟเชฏเชพเชจ.

เชธเซ‹เชฐเซเชธ: opennet.ru

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹