Patches yntrodusearre om Linux kernel-stackadressen te randomisearjen foar systeemoproppen

Kees Cook, eardere haadsysteembehearder fan kernel.org en lieder fan it Ubuntu Security Team, dy't no wurket by Google oan it befeiligjen fan Android en ChromeOS, publisearre in set patches om willekeurich offsets yn 'e kernel-stapel te meitsjen by it ferwurkjen fan systeemoproppen. Patches ferbetterje kernelfeiligens troch it feroarjen fan stackpleatsing, wêrtroch oanfallen op 'e stack folle dreger en minder suksesfol wurde. De earste ymplemintaasje stipet ARM64- en x86 / x86_64-prosessoren.

It orizjinele idee foar de patch heart ta it PaX RANDKSTACK-projekt. Yn 2019 besocht Elena Reshetova, in yngenieur fan Intel, in ymplemintaasje fan dit idee te meitsjen geskikt foar opname yn 'e wichtichste Linux-kernel. Letter waard it inisjatyf oernommen troch Kees Cook, dy't in ymplemintaasje presintearre dy't geskikt is foar de haadferzje fan 'e kernel. De patches binne pland om opnommen te wurden as diel fan 'e 5.13-release. De modus sil standert útskeakele wurde. Om it yn te skeakeljen, wurde de kernel kommandorigelparameter "randomize_kstack_offset = oan / út" en de CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT ynstelling foarsteld. De overhead fan it ynskeakeljen fan de modus wurdt rûsd op likernôch 1% prestaasjesferlies.

De essinsje fan de foarstelde beskerming is in kieze in willekeurige stack offset foar eltse systeem oprop, dat makket it dreech om te bepalen de stack yndieling yn it ûnthâld, sels nei ûntfangst fan adres gegevens, sûnt de folgjende systeem oprop sil feroarje de basis adres fan de stack. Oars as de PaX RANDKSTACK-ymplemintaasje, yn 'e patches foarsteld foar opname yn' e kearn, wurdt randomisaasje net útfierd yn 'e earste faze (cpu_current_top_of_stack), mar nei it ynstellen fan de pt_regs-struktuer, wat it ûnmooglik makket om ptrace-basearre metoaden te brûken om de randomisearre offset te bepalen tidens in lange-rinnende systeem oprop.

Boarne: opennet.ru

Add a comment