Google'дун Кис Кук Linux ядросундагы мүчүлүштүктөр менен иштөө процессин модернизациялоого чакырды

Кис Кук, kernel.org сайтынын мурдагы башкы системалык администратору жана Ubuntu коопсуздук тобунун лидери, азыр Google'да Android жана ChromeOS'тун коопсуздугун камсыз кылуу үчүн иштеп жаткан ядронун туруктуу бутактарындагы мүчүлүштүктөрдү оңдоо процессине тынчсыздануусун билдирди. Ар жума сайын жүзгө жакын оңдоолор туруктуу бутактарга киргизилет жана кийинки чыгарылыштагы өзгөртүүлөрдү кабыл алуу терезеси жабылгандан кийин, ал миңге жакындайт (текшерүүчүлөр оңдоолорду терезе жабылганга чейин кармап турушат, ал эми "түзүлгөндөн кийин" -rc1” топтолгондорун дароо жарыялайт), бул өтө көп жана Linux ядросунун негизиндеги өнүмдөрдү тейлөө үчүн көп эмгекти талап кылат.

Кейстин айтымында, ядродогу каталар менен иштөө процессине тийиштүү көңүл бурулбайт жана ядродо бул чөйрөдө макулдашылган иш үчүн кеминде 100 кошумча иштеп чыгуучулар жетишпейт. Негизги ядрону иштеп чыгуучулар мүчүлүштүктөрдү үзгүлтүксүз оңдоп турушат, бирок бул оңдоолор үчүнчү тараптар колдонгон ядро ​​варианттарына өткөрүлүп берилет деген кепилдик жок. Linux ядросунун негизиндеги ар кандай өнүмдөрдүн колдонуучулары да алардын түзмөктөрүндө кайсы мүчүлүштүктөр оңдолгондугун жана кайсы ядро ​​колдонулганын көзөмөлдөөгө мүмкүнчүлүгү жок. Акыр-аягы, өндүрүүчүлөр өз өнүмдөрүнүн коопсуздугу үчүн жооптуу, бирок туруктуу ядро ​​бутактарында оңдоолорду жарыялоонун өтө жогорку интенсивдүүлүгү менен алар тандоо алдында калышты - бардык оңдоолорду порттоо, эң маанилүүлөрүн тандап порттоо же бардык оңдоолорду этибарга алуу. .

Google'дун Кис Кук Linux ядросундагы мүчүлүштүктөр менен иштөө процессин модернизациялоого чакырды

Оптималдуу чечим эң маанилүү оңдоолорду жана алсыздыктарды гана көчүрүү болмок, бирок мындай каталарды жалпы агымдан обочолонтуу негизги көйгөй болуп саналат. Калкып чыккан көйгөйлөрдүн эң көп саны Си тилин колдонуунун кесепети, ал эстутум жана көрсөткүчтөр менен иштөөдө өтө кылдаттыкты талап кылат. Андан да жаманы, көптөгөн потенциалдуу аялуу тактары CVE идентификатору менен камсыз кылынбайт же патч жарыялангандан кийин бир нече убакыттан кийин CVE идентификатору дайындалат. Мындай чөйрөдө өндүрүүчүлөр үчүн маанилүү коопсуздук маселелеринен майда оңдоолорду бөлүп кароо өтө кыйын. Статистикалык маалыматтарга ылайык, кемчиликтердин 40%дан ашыгы CVE дайындалганга чейин оңдолот жана орто эсеп менен оңдоону чыгаруу менен CVE дайындоонун ортосундагы кечигүү үч айды түзөт (б.а., адегенде оңдоо катары кабыл алынат) кадимки ката, бирок бир нече айдан кийин гана алсыздык оңдолгону айкын болот).

Натыйжада, алсыздыктар үчүн оңдоолору бар өзүнчө филиалсыз жана белгилүү бир көйгөйдүн коопсуздук туташуусу жөнүндө маалымат албай туруп, Linux ядросуна негизделген өнүмдөрдү өндүрүүчүлөр бардык оңдоолорду акыркы туруктуу бутактардан үзгүлтүксүз өткөрүп беришет. Бирок бул иш көп эмгекти талап кылат жана продукциянын нормалдуу иштешин үзгүлтүккө учуратышы мүмкүн болгон регрессивдүү өзгөрүүлөрдүн пайда болушунан корккондуктан компанияларда каршылыкка дуушар болот.

Эске сала кетсек, Линус Торвалдс айткандай, бардык каталар маанилүү жана алсыздыктар каталардын башка түрлөрүнөн бөлүнүп, өзүнчө жогорку артыкчылык категориясына бөлүнбөшү керек. Бул пикир коопсуздук маселелери боюнча адистебеген жөнөкөй иштеп чыгуучу үчүн оңдоо жана мүмкүн болуучу аялуучулуктун ортосундагы байланыш ачык эмес экендиги менен түшүндүрүлөт (көп оңдоолор үчүн өзүнчө аудит гана алардын коопсуздукка тиешелүү экенин түшүнүүгө мүмкүндүк берет. ). Линустун айтымында, Linux дистрибьюторлорунун ядролук пакеттерин сактоого жооптуу командалардын коопсуздук адистери тактардын жалпы агымынан потенциалдуу алсыздыктарды аныктоого тартылышы керек.

Кис Кук өзөктүн коопсуздугун акылга сыярлык узак мөөнөттүү баада сактоонун жалгыз чечими бул компаниялар үчүн оңдоолорду жергиликтүү өзөктүк түзүлүшкө көчүрүү менен алектенген инженерлерди негизги ядродогу оңдоолорду жана алсыздыктарды сактоо үчүн биргелешкен, макулдашылган күч-аракетке көчүрүү деп эсептейт (жогорку агым). ). Учурдагы формада, көптөгөн өндүрүүчүлөр өз өнүмдөрүндө ядронун акыркы версияларын колдонушпайт жана оңдоолорду үй ичинде колдошот, б.а. Көрсө, ар кайсы ишканалардагы инженерлер бир эле маселени чечип, бири-биринин ишин кайталашат экен.

Мисалы, 10 компания, ар биринде бир инженер бирдей оңдоолор менен, ошол инженерлерди жогорудагы мүчүлүштүктөрдү оңдоого кайра дайындаса, анда бир оңдоонун ордуна, алар жалпы пайда үчүн 10 башка мүчүлүштүктөрдү оңдоп же сунушталгандарды карап чыгууга кошула алышат. өзгөртүүлөр жана ката кодунун ядрого киргизилишине жол бербейт. Ресурстар ошондой эле кайра-кайра пайда болгон каталардын жалпы класстарын эрте аныктоого мүмкүндүк берүүчү кодду сыноо жана талдоо үчүн жаңы куралдарды түзүүгө арналышы мүмкүн.

Кис Кук ошондой эле ядрону иштеп чыгуу процессинде автоматташтырылган жана бүдөмүк тестирлөөлөрдү активдүү колдонууну, үзгүлтүксүз интеграциялык системаларды колдонууну жана электрондук почта аркылуу архаикалык өнүгүүнү башкаруудан баш тартууну сунуштайт. Учурда эффективдүү тестирлөөгө негизги тестирлөө процесстери иштеп чыгуудан бөлүнүп, релиздер түзүлгөндөн кийин пайда болуп жаткандыгы тоскоол болууда. Ачкычтар каталардын санын азайтуу үчүн иштеп чыгууда Rust сыяктуу коопсуздуктун жогорку деңгээлин камсыз кылган тилдерди колдонууну сунуш кылат.

Source: opennet.ru

Комментарий кошуу