So-leòntachd a ghabhas cleachdadh air astar ann am frithealaiche puist qmail

Luchd-rannsachaidh tèarainteachd bho Qualys sheall cothrom brath so-leòntachd anns an t-seirbheisiche puist qmail, ainmeil air ais ann an 2005 (CVE-2005-1513), ach dh’ fhan e gun atharrachadh oir bha ùghdar qmail ag argamaid nach robh e reusanta brath obrach a chruthachadh a ghabhadh a chleachdadh gus ionnsaigh a thoirt air siostaman anns an t-suidheachadh bunaiteach. Bha e comasach dha Qualys brath ullachadh a tha a’ dol an aghaidh a’ bharail seo agus a leigeas le neach cur an gnìomh còd iomallach air an fhrithealaiche le bhith a’ cur teachdaireachd a chaidh a dhealbhadh gu sònraichte.

Tha an duilgheadas air adhbhrachadh le tar-shruth iomlan anns a’ ghnìomh stralloc_readyplus(), a dh’ fhaodadh tachairt nuair a bhios tu a’ giullachd teachdaireachd glè mhòr. Bha feum air siostam 64-bit le barrachd air 4GB de chuimhne mas-fhìor. Nuair a chaidh an so-leòntachd a sgrùdadh an toiseach ann an 2005, bha Daniel J. Bernstein ag argamaid gu bheil a’ bharail sa chòd gu bheil meud an t-sreath a chaidh a shònrachadh an-còmhnaidh taobh a-staigh luach 32-bit stèidhichte air nach eil duine a’ toirt gigabytes de chuimhne do gach pròiseas. Thairis air na 15 bliadhna a dh’ fhalbh, tha siostaman 64-bit air frithealaichean air a dhol an àite siostaman 32-bit, agus tha an ìre de chuimhne a chaidh a thoirt seachad agus leud-bann lìonra air a dhol suas gu mòr.

Thug luchd-gleidhidh pacaid qmail aire do nota Bernstein agus chuir iad casg air a’ chuimhne a bha ri fhaighinn nuair a thòisich iad air a’ phròiseas qmail-smtpd (mar eisimpleir, ann an Debian 10 tha a’ chrìoch air a shuidheachadh gu 7MB). Ach lorg innleadairean bho Qualys nach eil seo gu leòr agus, a bharrachd air qmail-smtpd, faodar ionnsaigh iomallach a dhèanamh air a’ phròiseas qmail-local, a dh’ fhan gun bhacadh anns a h-uile pasgan deuchainn. Mar dhearbhadh, chaidh prototype brath a dheasachadh a bha iomchaidh airson ionnsaigh a thoirt air pasgan Debian le qmail anns an rèiteachadh bunaiteach.
Gus cur an gnìomh còd iomallach a chuir air dòigh rè ionnsaigh, feumaidh an frithealaiche 4GB de dh’ àite diosc an-asgaidh agus 8GB de RAM.
Leigidh an brath leat òrdughan slige sam bith a ruith le còraichean neach-cleachdaidh sam bith san t-siostam, ach a-mhàin luchd-cleachdaidh freumh agus siostam aig nach eil am fo-eòlaire aca fhèin san eòlaire “/ dachaigh” (tha am pròiseas qmail-local air a chuir air bhog leis na còraichean an neach-cleachdaidh ionadail dha bheil an lìbhrigeadh).

Tha an ionnsaigh air a dhèanamh
tro bhith a’ cur teachdaireachd puist glè mhòr, a’ toirt a-steach grunn loidhnichean cinn, a’ tomhas timcheall air 4GB agus 576MB. Le bhith a’ giullachd a leithid de shreang ann an qmail-local thig làn-shruth thar-shruth nuair a thathar a’ feuchainn ri teachdaireachd a lìbhrigeadh don neach-cleachdaidh ionadail. Bidh tar-shruth iomlan an uairsin a’ leantainn gu tar-shruth bufair nuair a thathar a’ dèanamh lethbhreac de dhàta agus an comas a bhith a’ sgrìobhadh thairis air duilleagan cuimhne le còd libc. Le bhith a’ làimhseachadh cruth an dàta a chaidh a thar-chuir, tha e comasach cuideachd seòladh na gnìomh “fosgailte ()” ath-sgrìobhadh, agus seòladh na gnìomh “system()” a chuir na àite.

An uairsin, anns a 'phròiseas a bhith a' gairm qmesearch () ann an qmail-local, tha am faidhle ".qmail-extension" air fhosgladh tron ​​​​ghnìomh fosgailte (), a tha a 'leantainn gu bhith a' coileanadh a 'ghnìomh fhèin
siostam (". qmail-extension"). Ach leis gu bheil am pàirt “leudachadh” den fhaidhle air a chruthachadh a rèir seòladh an neach a gheibh e (mar eisimpleir, “localuser-extension@localdomain”), faodaidh luchd-ionnsaigh an àithne a chuir gu ruith le bhith a’ sònrachadh an neach-cleachdaidh “localuser-; command ;@localdomain" mar neach a gheibh an teachdaireachd.

Rè an anailis còd, chaidh dà so-leòntachd a chomharrachadh cuideachd anns a ’phìos qmail-verify a bharrachd, a tha mar phàirt den phacaid airson Debian. A’ chiad so-leòntachd (CVE-2020-3811) a’ leigeil leat dearbhadh seòladh puist-d a sheachnadh, agus an dàrna fear (CVE-2020-3812) a’ leantainn gu sgaoileadh fiosrachaidh ionadail. Gu sònraichte, leigidh a’ chiad so-leòntachd dhut faighinn seachad air dearbhadh dè cho ceart ‘s a tha an seòladh a chaidh a chleachdadh anns a’ bhuannachd gus àithne a chuir (chan eil an dearbhadh ag obair airson seòlaidhean gun àrainn, leithid “localuser-; command;”). Faodar an dàrna so-leòntachd a chleachdadh gus sgrùdadh a dhèanamh air làthaireachd fhaidhlichean agus chlàran air an t-siostam, a’ toirt a-steach an fheadhainn nach fhaighear ach ri root (ruith qmail-verify le còraichean freumh), tro ghairm dìreach chun neach-làimhseachaidh ionadail.

Gus obrachadh timcheall air an duilgheadas, mhol Bernstein pròiseasan qmail a ruith le crìoch iomlan air a’ chuimhne a tha ri fhaighinn (“softlimit -m12345678”), agus sa chùis sin tha an duilgheadas air a bhacadh. Mar dhòigh dìon eile, thathas cuideachd a ’toirt iomradh air a bhith a’ cuingealachadh meud na teachdaireachd giullachd tron ​​​​fhaidhle “smachd / databytes” (gu gnàthach chan eil e air a chruthachadh le roghainnean bunaiteach qmail fhathast so-leònte). A bharrachd air an sin, chan eil “smachd / databytes” a’ dìon an aghaidh ionnsaighean ionadail bho luchd-cleachdaidh an t-siostaim, leis nach eil ach qmail-smtpd a’ toirt aire don chrìoch.

Tha an duilgheadas a 'toirt buaidh air a' phacaid netqmail, air a ghabhail a-steach ann an stòran Debian. Chaidh seata de phìosan ullachadh airson a’ phacaid seo, a’ cur às do gach cuid seann chugallachd bho 2005 (le bhith a’ cur crìochan cuimhne cruaidh ris a’ chòd gnìomh alloc()) agus duilgheadasan ùra ann an qmail-verify. Air leth ullachadh dreach ùraichte den phìos qmail-verify. Luchd-leasachaidh geugan notqmail Dh’ ullaich iad na pìosan aca fhèin gus seann dhuilgheadasan a bhacadh, agus thòisich iad cuideachd ag obair gus cuir às do gach sruth thar-shruth a dh’ fhaodadh a bhith sa chòd.

Source: fosgailtenet.ru

Cuir beachd ann