Luchd-rannsachaidh tèarainteachd bho Qualys
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 (
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
Source: fosgailtenet.ru