Patches hatine destnîşan kirin ku ji bo bangên pergalê navnîşanên stûna kernel Linux-ê rasthatî bikin

Kees Cook, rêvebirê pergalê yê berê yê kernel.org û serokê Tîma Ewlekariya Ubuntu, ku naha li Google li ser ewlekariya Android û ChromeOS-ê dixebitî, komek paç weşandin ku dema ku bangên pergalê hildiweşîne, di stûyê kernelê de random bike. Patches bi guheztina cîhê stackê ewlehiya kernel çêtir dike, êrîşên li ser stakê pir dijwartir û kêmtir serfiraz dike. Pêkanîna destpêkê pêvajoyên ARM64 û x86/x86_64 piştgirî dike.

Fikra orîjînal a patchê girêdayî projeya PaX RANDKSTACK e. Di sala 2019-an de, Elena Reshetova, endezyarek ji Intel, hewl da ku pêkanîna vê ramanê ji bo tevlêbûna di kernel Linux-ê ya sereke de biafirîne. Dûv re, însiyatîf ji hêla Kees Cook ve hate girtin, ku ji bo guhertoya sereke ya kernelê pêkanînek maqûl pêşkêşî kir. Pîlan têne plan kirin ku wekî beşek ji serbestberdana 5.13-ê bêne nav kirin. Mode dê ji hêla xwerû ve were neçalak kirin. Ji bo çalakkirina wê, pîvana rêza fermana kernel "randomize_kstack_offset=on/off" û mîhenga CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT têne pêşniyar kirin. Serkêşiya çalakkirina modê bi qasî %1 windabûna performansê tê texmîn kirin.

Esasê parastina pêşniyarkirî ev e ku ji bo her bangek pergalê bijartina stûnek bêserûber hilbijêrin, ku ev yek jî piştî wergirtina daneya navnîşanê, destnîşankirina sêwirana stikê di bîranînê de dijwar dike, ji ber ku banga pergalê ya din dê navnîşana bingehîn a stikê biguhezîne. Berevajî pêkanîna PaX RANDKSTACK, di pêlên ku ji bo tevlêbûna di kernelê de têne pêşniyar kirin, randomkirin ne di qonaxa destpêkê de (cpu_current_top_of_stack), lê piştî danîna strukturên pt_regs, ku ne gengaz e ku meriv rêbazên ptrace-based bikar bîne da ku jihevdengiya randomkirî bikar bîne. di dema banga sîstema dirêj-dibe.

Source: opennet.ru

Add a comment