Galwodd Kees Cook o Google am foderneiddio'r broses o weithio ar fygiau yn y cnewyllyn Linux

Mynegodd Kees Cook, cyn brif weinyddwr system kernel.org ac arweinydd Tîm Diogelwch Ubuntu sydd bellach yn gweithio yn Google i sicrhau Android a ChromeOS, bryder am y broses bresennol o osod bygiau yng nghanghennau sefydlog y cnewyllyn. Bob wythnos, mae tua chant o atgyweiriadau yn cael eu cynnwys yn y canghennau sefydlog, ac ar ôl i'r ffenestr ar gyfer derbyn newidiadau yn y datganiad nesaf gau, mae'n agosáu at fil (mae'r cynhalwyr yn dal y gosodiadau nes bod y ffenestr ar gau, ac ar ôl ffurfio " -rc1” maent yn cyhoeddi'r rhai cronedig ar unwaith), sy'n ormod ac yn gofyn am lawer o lafur ar gyfer cynhyrchion cynnal a chadw yn seiliedig ar y cnewyllyn Linux.

Yn ôl Keys, ni roddir sylw dyledus i'r broses o weithio gyda gwallau yn y cnewyllyn ac nid oes gan y cnewyllyn o leiaf 100 o ddatblygwyr ychwanegol ar gyfer gwaith cydgysylltiedig yn y maes hwn. Mae'r prif ddatblygwyr cnewyllyn yn trwsio chwilod yn rheolaidd, ond nid oes unrhyw sicrwydd y bydd yr atgyweiriadau hyn yn cael eu cario drosodd i amrywiadau cnewyllyn a ddefnyddir gan drydydd partïon. Nid oes gan ddefnyddwyr cynhyrchion amrywiol sy'n seiliedig ar y cnewyllyn Linux hefyd unrhyw ffordd i reoli pa fygiau sy'n sefydlog a pha gnewyllyn a ddefnyddir yn eu dyfeisiau. Yn y pen draw, gweithgynhyrchwyr sy'n gyfrifol am ddiogelwch eu cynhyrchion, ond gyda dwyster uchel iawn o atebion cyhoeddi mewn canghennau cnewyllyn sefydlog, roeddent yn wynebu dewis - porthwch yr holl atgyweiriadau, porthwch y rhai pwysicaf yn ddetholus, neu anwybyddwch yr holl atebion .

Galwodd Kees Cook o Google am foderneiddio'r broses o weithio ar fygiau yn y cnewyllyn Linux

Yr ateb gorau posibl fyddai mudo dim ond yr atebion a'r gwendidau pwysicaf, ond ynysu gwallau o'r fath o'r llif cyffredinol yw'r brif broblem. Mae'r nifer fwyaf o broblemau sy'n ymddangos yn deillio o ddefnyddio'r iaith C, sy'n gofyn am ofal mawr wrth weithio gyda'r cof ac awgrymiadau. I wneud pethau'n waeth, nid yw llawer o glytiau bregusrwydd posibl yn cael dynodwr CVE, neu rhoddir dynodwr CVE iddynt beth amser ar ôl i'r clwt gael ei gyhoeddi. Mewn amgylchedd o'r fath, mae'n anodd iawn i weithgynhyrchwyr wahanu mân atgyweiriadau oddi wrth faterion diogelwch pwysig. Yn ôl yr ystadegau, mae mwy na 40% o wendidau yn sefydlog cyn i CVE gael ei neilltuo, ac ar gyfartaledd mae’r oedi rhwng rhyddhau atgyweiriad ac aseinio CVE yn dri mis (h.y., ar y dechrau canfyddir mai’r atgyweiriad yw nam rheolaidd, ond dim ond ar ôl sawl mis y daw'n amlwg bod y bregusrwydd wedi'i gywiro).

O ganlyniad, heb gangen ar wahân gydag atebion ar gyfer gwendidau a heb dderbyn gwybodaeth am gysylltiad diogelwch problem benodol, gadewir gweithgynhyrchwyr cynhyrchion sy'n seiliedig ar y cnewyllyn Linux i drosglwyddo'r holl atgyweiriadau o'r canghennau sefydlog diweddaraf yn barhaus. Ond mae'r gwaith hwn yn gofyn am lawer o lafur ac yn wynebu gwrthwynebiad mewn cwmnïau oherwydd ofn ymddangosiad newidiadau atchweliadol a allai amharu ar weithrediad arferol y cynnyrch.

Gadewch inni gofio, yn ôl Linus Torvalds, fod pob gwall yn bwysig ac ni ddylid gwahanu gwendidau oddi wrth fathau eraill o wallau a'u dyrannu i gategori blaenoriaeth uwch ar wahân. Eglurir y farn hon gan y ffaith nad yw'r cysylltiad rhwng atgyweiriad a bregusrwydd posibl yn amlwg i ddatblygwr cyffredin nad yw'n arbenigo mewn materion diogelwch (ar gyfer llawer o atebion, dim ond archwiliad ar wahân sy'n ei gwneud hi'n bosibl deall eu bod yn ymwneud â diogelwch. ). Yn ôl Linus, dylai arbenigwyr diogelwch o'r timau sy'n gyfrifol am gynnal pecynnau cnewyllyn mewn dosbarthiadau Linux ymwneud â nodi gwendidau posibl o'r llif cyffredinol o glytiau.

Mae Kees Cook yn credu mai'r unig ateb i gynnal diogelwch cnewyllyn am gost hirdymor resymol yw i gwmnïau symud y peirianwyr sy'n ymwneud â chludo atgyweiriadau i adeiladau cnewyllyn lleol i mewn i ymdrech ar y cyd, cydgysylltiedig i gynnal atgyweiriadau a gwendidau yn y prif gnewyllyn (i fyny'r afon ). Yn ei ffurf bresennol, mae llawer o weithgynhyrchwyr yn defnyddio nid y fersiynau cnewyllyn diweddaraf yn eu cynhyrchion ac yn cefnogi'r atgyweiriadau yn fewnol, h.y. Mae'n ymddangos bod peirianwyr mewn gwahanol gwmnïau yn dyblygu gwaith ei gilydd, gan ddatrys yr un broblem.

Er enghraifft, pe bai 10 cwmni, pob un ag un peiriannydd yn cefnogi'r un atgyweiriadau, yn ailbennu'r peirianwyr hynny i drwsio bygiau i fyny'r afon, yna yn hytrach nag ôl-borthi un atgyweiriad, gallent drwsio 10 byg gwahanol er budd cyffredin neu ymuno â'r adolygiad o'r rhai arfaethedig. newidiadau ac atal cod bygi rhag cael ei gynnwys yn y cnewyllyn. Gellid hefyd neilltuo adnoddau i greu offer newydd ar gyfer profi a dadansoddi cod a fyddai'n caniatáu canfod yn gynnar y dosbarthiadau cyffredin o wallau sy'n codi dro ar ôl tro.

Mae Kees Cook hefyd yn awgrymu defnyddio profion awtomataidd a niwlog yn fwy gweithredol yn y broses datblygu cnewyllyn, gan ddefnyddio systemau integreiddio parhaus a rhoi'r gorau i reoli datblygu hynafol trwy e-bost. Ar hyn o bryd, mae profion effeithiol yn cael eu rhwystro gan y ffaith bod y prif brosesau profi yn cael eu gwahanu oddi wrth ddatblygiad ac yn digwydd ar ôl i'r datganiadau gael eu ffurfio. Roedd Keys hefyd yn argymell defnyddio ieithoedd sy'n darparu lefel uwch o ddiogelwch, fel Rust, wrth ddatblygu i leihau nifer y gwallau.

Ffynhonnell: opennet.ru

Ychwanegu sylw