Lorg iad so-leòntachd ann an leabharlannan lìonra Rust and Go a ’cur casg air dearbhadh IP

O chionn ghoirid chaidh fiosrachadh mu chugallachd a leigeil ma sgaoil a chaidh a lorg ann an leabharlannan àbhaisteach nan cànanan Meirge is Rach, a tha co-cheangailte ri mì-làimhseachadh seòlaidhean IP le àireamhan octal ann an gnìomhan mion-sgrùdadh seòlaidhean.

Tha e air ainmeachadh gu bheil eLeigidh na so-leòntachd sin dhut dearbhaidhean seòlaidhean dligheach agusn tagraidhean, mar eisimpleir, gus ruigsinneachd a chuir air dòigh gu seòlaidhean eadar-aghaidh loopback no fo-lìonan eadra-lìon nuair a thèid ionnsaighean spoofing iarrtas taobh an fhrithealaiche a dhèanamh.

Na so-leòntachd anns an dà chànan sin Tha sreangan seòladh IP air an toirt gu buil anns an t-sònrachadh stèidhichte air neoni, seach gu bheil thu ann an teòiridh bu chòir am mìneachadh mar àireamhan octal, ach is e an duilgheadas a tha ag adhbhrachadh na gliocasan sin nach eil mòran leabharlannan a ’toirt aire don seo agus dìreach a’ tilgeil air falbh an neoni, mar sin bidh iad a ’làimhseachadh an luach mar àireamh deicheach.

Mar eisimpleir, gus tuigse fhaighinn air mar a tha seòlaidhean IP air am mìneachadh anns na mialan sin, tha an àireamh 0177 ann an octal 127 ann an deicheach agus leis an urrainn do neach-ionnsaigh goireas iarraidh a tha a ’sònrachadh luach“ 0177.0.0.1 ”, a tha, bho nach eil e air a thoirt mar octal, is e an comharrachadh deicheach airson seo "127.0.0.1".

Is e sin as coireach a thaobh a bhith a ’cleachdadh aon de na leabharlannan duilgheadas, cha lorg an tagradh gun tachair an seòladh 0177.0.0.1 ann an subnet 127.0.0.1, ach gu dearbh, nuair a chuireas tu iarrtas a-steach, faodaidh tu an seòladh “0177.0.0.1” a ghairm, air sgàth mì-mhìneachaidh, bidh na gnìomhan lìonra a ’pròiseasadh seo mar 127.0.0.1. San aon dòigh, faodar faighinn gu seòlaidhean eadra-lìon a dhearbhadh agus a dhearbhadh le bhith a ’sònrachadh diofar luachan, a bhios an neach-ionnsaigh a’ luachadh airson brath a ghabhail.

Air taobh na Rust, chaidh an duilgheadas a lorg gu bhith fo ùmhlachd an leabharlann àbhaisteach "std :: net" agus a tha mar-thà air a chatalogadh fo "CVE-2021-29922". Tha e ag innse sin bidh parser seòlaidhean IP an leabharlainn seo a ’tilgeil neoni air beulaibh nan luachan den t-seòladh, ach dìreach mura deach barrachd air trì àireamhan a chomharrachadh, mar eisimpleir, thèid "0177.0.0.1" a mhìneachadh mar luach neo-dhligheach agus thèid toradh ceàrr a thilleadh mar fhreagairt.

Tha dearbhadh cuir a-steach sreang octal ceàrr anns an leabharlann àbhaisteach “net” meirge-lang a ’leigeil le luchd-ionnsaigh iomallach neo-aithnichte ionnsaighean SSRF, RFI, agus LFI neo-chinnteach a dhèanamh air mòran phrògraman a tha an urra ri std-lang std :: net. Thathas a ’toirt air falbh octets an t-seòladh IP an àite a bhith air am measadh mar sheòlaidhean IP dligheach.

Thathas cuideachd ag ainmeachadh gu bheil tagraidhean a chleachdas an std :: net :: leabharlann IpAddr nuair a thèid seòlaidhean sònraichte a pharsadh le neach-cleachdaidh a dh ’fhaodadh a bhith buailteach do ionnsaighean SSRF (spoofing iarrtas taobh an fhrithealaiche), RFI (in-ghabhail faidhle iomallach) agus bhuannachd (toirt a-steach faidhlichean ionadail). San aon dòigh, faodaidh neach-ionnsaigh a dhol a-steach do 127.0.026.1, a tha gu dearbh 127.0.22

Mar eisimpleir, dh ’fhaodadh neach-ionnsaigh a chuireas seòladh IP gu tagradh lìn a tha stèidhichte air std :: net :: Dh’ fhaodadh IpAddr SSRF adhbhrachadh le bhith a ’dol a-steach dàta inntrigidh octal; Faodaidh neach-ionnsaigh seòlaidhean IP so-ruigsinneach a chuir a-steach ma tha 3 àireamhan aig an octet, leis an octet 08 as lugha a ghabhas cleachdadh a tha a ’leantainn gu diùltadh seirbheis agus an octet 099 as motha a ghabhas brath a tha cuideachd a’ leantainn gu diùltadh seirbheis. 

Ma tha thu airson tuilleadh fhaighinn a-mach mun so-leòntachd seo ann an Rust, faodaidh tu sgrùdadh a dhèanamh air na mion-fhiosrachadh Anns a ’cheangal a leanas. Thathas cuideachd ag ainmeachadh gun deach an so-leòntachd a shuidheachadh anns a ’mheur Rust 1.53.0.

Cho luath 's a ghabhas ris an duilgheadas a tha a ’toirt buaidh gu Rach, tha e air ainmeachadh gu bheil seo fo ùmhlachd an leabharlann àbhaisteach «net» agus tha e mu thràth air a liostadh fo CVE-2021-29923. Anns an tuairisgeul tha e air ainmeachadh sin a ’leigeil le luchd-ionnsaigh iomallach gun sgrùdadh ionnsaighean SSRF, RFI agus LFI a dhèanamh neo-chinnteach ann am mòran phrògraman a tha an urra ri gnìomh net.ParseCIDR togte golang. Thathas a ’rùsgadh octets IP CIDR fa leth an àite a bhith gam measadh mar octets IP dligheach.

Mar eisimpleir, dh ’fhaodadh neach-ionnsaigh a dhol seachad air luach 00000177.0.0.1, a thèid, nuair a thèid a sgrùdadh ann an gnìomh net.ParseCIDR, a parsadh mar 177.0.0.1/24, chan e 127.0.0.1/24. Tha an duilgheadas cuideachd ga nochdadh fhèin air àrd-ùrlar Kubernetes. Chaidh an so-leòntachd a shuidheachadh ann an dreach Go 1.16.3 agus dreach beta 1.17.

Faodaidh tu barrachd ionnsachadh mu dheidhinn mun so-leòntachd seo Anns a ’cheangal a leanas.


Tha susbaint an artaigil a ’cumail ri na prionnsapalan againn de moraltachd deasachaidh. Gus aithris a dhèanamh air mearachd cliog an seo.

Bi a 'chiad fhear a thog beachd

Fàg do bheachd

Seòladh-d cha tèid fhoillseachadh.

*

*

  1. Uallach airson an dàta: Miguel Ángel Gatón
  2. Adhbhar an dàta: Smachd air SPAM, riaghladh bheachdan.
  3. Dìleab: Do chead
  4. Conaltradh an dàta: Cha tèid an dàta a thoirt do threas phàrtaidhean ach a-mhàin fo dhleastanas laghail.
  5. Stòradh dàta: Stòr-dàta air a chumail le Occentus Networks (EU)
  6. Còraichean: Aig àm sam bith faodaidh tu am fiosrachadh agad a chuingealachadh, fhaighinn air ais agus a dhubhadh às.

bool (fìor)