Pom qhov tsis muaj zog hauv Rust thiab Go network cov tsev qiv ntawv tiv thaiv IP kev lees paub

Tsis ntev tas los cov ntaub ntawv ntawm qhov tsis txaus ntseeg raug tso tawm uas tau pom hauv cov tsev qiv ntawv txheem ntawm cov lus Rust thiab mus, cov yog cuam ​​tshuam nrog kev ua tsis raug ntawm IP chaw nyob nrog tus lej octal hauv kev txheeb xyuas qhov chaw nyob.

Nws tau hais tias eCov kev tsis txaus ntseeg no tso cai rau koj kom zam kev txheeb xyuas qhov chaw nyob raug thiabn daim ntawv thov, piv txwv li, txhawm rau teeb tsa kev nkag mus rau loopback interface chaw nyob lossis intranet subnets thaum server-side thov spoofing tawm tsam.

Qhov tsis zoo nyob hauv ob hom lus no IP chaw nyob cov hlua tau paub txog qhov tshwj xeeb xoom-raws, txij li koj yog hauv kev xav lawv yuav tsum txhais ua tus lej octal, tab sis qhov teeb meem ua rau cov teeb meem no yog tias ntau lub tsev qiv ntawv tsis quav ntsej qhov no thiab tsuas yog pov tseg qhov xoom, yog li lawv xaus kev kho tus nqi raws li tus lej lej.

Piv txwv, txhawm rau nkag siab tias IP chaw nyob txhais li cas hauv cov kab no, tus lej 0177 hauv octal yog 127 hauv cov lej thiab nrog tus neeg tawm tsam tuaj yeem thov cov peev txheej tshwj xeeb tus nqi "0177.0.0.1", uas, txij li nws tsis raug coj los raws li octal tus lej cim zauv rau qhov no yog "127.0.0.1".

Vim li ntawd thaum siv ib qho ntawm cov tsev qiv ntawv muaj teeb meem, daim ntawv thov yuav tsis pom qhov tshwm sim ntawm qhov chaw nyob 0177.0.0.1 hauv subnet 127.0.0.1, tab sis qhov tseeb, thaum xa daim ntawv thov, qhov chaw nyob "0177.0.0.1" tuaj yeem raug hu uas vim yog kev txhais lus tsis raug, lub network ua haujlwm yuav ua qhov no li 127.0.0.1. Ib yam li ntawd, nkag mus rau qhov chaw nyob hauv intranet tuaj yeem raug dag thiab txheeb xyuas los ntawm kev txheeb xyuas ntau yam txiaj ntsig, uas tus neeg tawm tsam yuav ntsuas rau qhov ua tau.

Nyob rau sab ntawm Rust, qhov teeb meem tau pom tias yuav raug rau lub tsev qiv ntawv txheem "std :: net" thiab uas twb tau teev tseg hauv qab "CVE-2021-29922". Nws piav txog qhov ntawd lub tsev qiv ntawv no tus IP chaw txheeb cais cais qhov xoom nyob rau ntawm xub ntiag ntawm qhov tseem ceeb ntawm qhov chaw nyob, tab sis tsuas yog tias tsis muaj ntau dua peb tus lej tau teev tseg, piv txwv li, "0177.0.0.1" yuav raug txhais raws li tus nqi tsis raug thiab cov txiaj ntsig tsis raug yuav raug xa rov qab.

Cov kab lus octal tsis raug qhov tseeb hauv xeb-lang tus qauv "net" lub tsev qiv ntawv tso cai tsis raug lees paub cov neeg tua hluav taws los ua SSRF, RFI, thiab LFI tawm tsam ntau qhov haujlwm uas nyob ntawm xeb-lang std :: net. Lub octets ntawm tus IP chaw nyob tau raug tshem tawm es tsis raug ntsuas raws li IP chaw nyob siv tau.

Nws tseem tau hais tias cov ntawv thov uas siv std :: net :: IpAddr lub tsev qiv ntawv thaum parsing qhia chaw nyob los ntawm tus neeg siv muaj feem cuam tshuam rau SSRF kev tawm tsam (server-side thov spoofing), RFI (cov ntaub ntawv nyob deb suav nrog) thiab LFI (suav nrog cov ntaub ntawv hauv zos). Ib yam nkaus, tus neeg tawm tsam tuaj yeem nkag mus rau 127.0.026.1, uas yog qhov tseeb 127.0.22

Piv txwv li, tus neeg tawm tsam uas xa tus IP chaw nyob mus rau lub vev xaib thov uas ua raws std :: net :: IpAddr tuaj yeem ua rau SSRF los ntawm kev nkag cov ntaub ntawv octal; Tus neeg tawm tsam tuaj yeem xa tus IP chaw nyob uas muaj txiaj ntsig yog tias octet muaj 3 tus lej, nrog qhov tsawg kawg nkaus siv tau octet 08 uas ua rau tsis lees txais kev pabcuam thiab qhov siab tshaj plaws siv tau octet 099 uas tseem ua rau tsis lees txais kev pabcuam. 

Yog koj xav paub ntau ntxiv txog qhov tsis zoo no hauv Rust, koj tuaj yeem tshawb xyuas cov ntsiab lus Hauv txuas hauv qab no. Nws kuj tseem tau hais tias qhov tsis zoo raug kho hauv Rust 1.53.0 ceg.

Sai li sai tau mus rau qhov teeb meem uas cuam tshuam mus, nws tau hais tias qhov no raug rau lub tsev qiv ntawv txheem "net" thiab nws twb tau teev tseg hauv qab CVE-2021-29923. Hauv qhov kev piav qhia nws tau hais txog qhov ntawd tso cai rau cov neeg tawm tsam tsis raug cai ua SSRF, RFI thiab LFI kev tawm tsam indeterminate nyob rau hauv ntau cov haujlwm uas vam khom golang's built-in net.ParseCIDR muaj nuj nqi. Tus kheej CIDR IP octets raug tshem tawm tsis ntsuas lawv li IP octets siv tau.

Piv txwv li, tus neeg tawm tsam tuaj yeem hla tus nqi 00000177.0.0.1, uas, thaum tshuaj xyuas hauv net.ParseCIDR muaj nuj nqi, yuav raug cais ua 177.0.0.1/24, tsis yog 127.0.0.1/24. Qhov teeb meem kuj tshwm sim nws tus kheej ntawm Kubernetes platform. Qhov tsis txaus ntseeg tau kho nyob rau hauv Go version 1.16.3 thiab beta version 1.17.

Koj tuaj yeem kawm paub ntau ntxiv txog nws txog qhov tsis zoo no Hauv txuas hauv qab no.


Cov ntsiab lus ntawm tsab xov xwm ua raws li peb cov ntsiab cai ntawm kev tswj hwm kev ncaj nceesCov. Tshaj tawm ib qho yuam kev nyem no.

Yog thawj tus tuaj tawm tswv yim

Tso koj saib

Koj email chaw nyob yuav tsis tsum luam tawm. Yuav tsum tau teb cov cim nrog *

*

*

  1. Lub luag haujlwm rau cov ntaub ntawv: Miguel Ángel Gatón
  2. Lub hom phiaj ntawm cov ntaub ntawv: Tswj SPAM, kev tswj xyuas tawm tswv yim.
  3. Sau raws cai: Koj kev tso cai
  4. Kev sib txuas lus ntawm cov ntaub ntawv: Cov ntaub ntawv yuav tsis raug xa mus rau lwm tus neeg thib peb tsuas yog los ntawm kev txiav txim siab raug cai.
  5. Cov ntaub ntawv khaws cia: Cov Ntaub Ntawv khaws tseg los ntawm Occentus Networks (EU)
  6. Txoj Cai: Txhua lub sijhawm koj tuaj yeem txwv, rov qab thiab tshem tawm koj cov ntaub ntawv.