Leochaileacht iargúlta i stack OpenBSD IPv6

Sa phróiseas cúlra slaacd, atá freagrach as uathchumrú seoltaí IPv6 (IPv6 Stateless Address Autoconfiguration, RFC 4862) in OpenBSD, aithníodh leochaileacht a fhágann go bhfuil ró-shreabhadh maoláin ann nuair a fhaigheann sé fógra ródaire IPv6 deartha go speisialta (RA, Fógraí Ródaire) .

Ar dtús, cuireadh feidhmiúlacht uathchumraithe seoltaí IPv6 i bhfeidhm ag an leibhéal eithne, ach ag tosú le OpenBSD 6.2 aistríodh é chuig próiseas slaacd neamhphríobháideach ar leith. Tá an próiseas seo freagrach as teachtaireachtaí RS (Sliocht Ródaire) a sheoladh agus freagraí RA (Fógra Ródaire) a pharsáil le faisnéis faoin ródaire agus paraiméadair nasc líonra.

I mí Feabhra, shocraigh slaacd fabht a d’fhág go raibh sé tuairteála dá sonraíodh 7 bhfreastalaí ar an liosta RDNSS (Freastalaí DNS Athchúrsacha). Tharraing an mhaoirseacht seo aird taighdeoirí neamhspleácha a rinne iarracht an cód slaacd a scrúdú le haghaidh earráidí eile a tharlaíonn agus réimsí i dteachtaireachtaí RA á bparsáil. Léirigh an anailís go bhfuil fadhb eile sa chód, a thagann chun solais nuair a bhíonn an réimse DNSSL (Liosta Cuardaigh DNS) á phróiseáil, a chuimsíonn liostaí ainmneacha fearainn agus teimpléid óstacha do DNS.

Tá gach ainm ar an liosta DNSSL ionchódaithe ag baint úsáide as teorannóir null agus clibeanna aon-beart idirghabhála a chinneann méid na sonraí a leanas. Is é is cúis leis an leochaileacht ná go ndéantar réimse le méid a chóipeáil isteach in athróg le cineál slánuimhir sínithe ("len = data[pos]") i gcód parsála an liosta). Dá réir sin, má shonraítear luach sa réimse leis an tacar giotán is suntasaí, breathnófar ar an luach seo san oibreoir coinníollach mar uimhir dhiúltach agus seiceálfar an t-uasmhéid incheadaithe (“má (len> 63 || len + pos + 1 > datalen) {“) ní oibreoidh sé, rud a fhágfaidh go ndéanfar glao ar memcpy le paraiméadar a sháraíonn méid na sonraí cóipeáilte an méid maoláin.

Leochaileacht iargúlta i stack OpenBSD IPv6
Leochaileacht iargúlta i stack OpenBSD IPv6


Foinse: oscailtenet.ru

Add a comment