OpenBSD-ն փոփոխություններ է ընդունել գործընթացի հիշողությունը հետագա պաշտպանելու համար

Theo de Raadt-ը OpenBSD կոդերի բազայի վրա ավելացրել է մի շարք պատչեր՝ օգտվողների տարածքում պրոցեսային հիշողությունը հետագայում պաշտպանելու համար: Կառուցապատողներին առաջարկվում է նոր համակարգային զանգ և դրա հետ կապված գրադարանի գործառույթը նույն անունով, փոփոխվող, որը թույլ է տալիս ամրագրել մուտքի իրավունքները հիշողության մեջ արտացոլելիս (հիշողության քարտեզագրում): Կատարելուց հետո հիշողության տարածքի համար սահմանված իրավունքները, օրինակ՝ գրելու և կատարման արգելքը, չեն կարող հետագայում փոփոխվել mmap(), mprotect() և munmap() ֆունկցիաներին հաջորդող զանգերի միջոցով, որոնք փորձելու ժամանակ կառաջացնեն EPERM սխալ: փոխել.

Օբյեկտային ֆայլերի արտացոլված հիշողության իրավունքները փոխելու հնարավորությունը վերահսկելու համար առաջարկվել է նոր Mutable BSS բաժին (.openbsd.mutable, Mutable Block Starting Symbol), և ավելացվել են նոր դրոշներ PF_MUTABLE և UVM_ET_IMMUTABLE: Ավելացվեց կապակցողին՝ «openbsd.mutable» բաժինները սահմանելու և դրանք BSS-ում առանձին տարածքում տեղադրելու համար՝ համապատասխանեցված հիշողության էջի սահմանին: Mimmutable ֆունկցիան անվանելով՝ հնարավոր է բոլոր հայելային տարածքները նշել որպես անփոփոխ, բացառությամբ «openbsd.mutable» նշված հատվածների։ Նոր գործառույթը կներկայացվի օգտատերերի համար OpenBSD 7.3 թողարկումում:

Source: opennet.ru

Добавить комментарий