የUDP ፓኬት በመላክ በToxcore ውስጥ የቋት ሞልቶ ሞልቷል።

ልዩ የ UDP ፓኬት ሲያቀናብር ኮድ አፈጻጸምን ሊያስነሳ የሚችል የ Tox P2P መልእክት ፕሮቶኮል ዋቢ በሆነው በ Toxcore ውስጥ ተጋላጭነት (CVE-2021-44847) ተለይቷል። ተጋላጭነቱ የUDP ትራንስፖርት የሌላቸውን ቶክስኮርን መሰረት ያደረጉ አፕሊኬሽኖች ተጠቃሚዎችን ሁሉ ይነካል። ለማጥቃት፣ የተጎጂውን IP አድራሻ፣ የኔትወርክ ወደብ እና የህዝብ DHT ቁልፍ አውቆ የUDP ፓኬት መላክ በቂ ነው (ይህ መረጃ በዲኤችቲ ውስጥ በይፋ ይገኛል፣ ማለትም ጥቃቱ በማንኛውም ተጠቃሚ ወይም የDHT አስተናጋጅ ላይ ሊሆን ይችላል) .

ችግሩ በ toxcore ልቀቶች ውስጥ ከ 0.1.9 እስከ 0.2.12 ታየ እና በስሪት 0.2.13 ተስተካክሏል። ከደንበኛ አፕሊኬሽኖች ውስጥ፣ የqTox ፕሮጀክት ብቻ ተጋላጭነትን ከማስወገድ ጋር እስካሁን ማሻሻያ አውጥቷል። እንደ የደህንነት ጥበቃ የTCP ድጋፍን ሲተዉ የ UDP አጠቃቀምን ማሰናከል ይችላሉ።

ተጋላጭነቱ የተፈጠረው በመያዣ_ጥያቄ() ተግባር ውስጥ ባለው ቋት ሞልቶ በመፍሰሱ ነው፣ ይህም በኔትወርኩ ፓኬት ውስጥ ያለው የውሂብ መጠን ትክክል ባልሆነ ስሌት ምክንያት ነው። በተለይም የተመሰጠረው መረጃ ርዝመት በ"1 + CRYPTO_PUBLIC_KEY_SIZE * 2 + CRYPTO_NONCE_SIZE" በተገለጸው CRYPTO_SIZE ማክሮ ውስጥ ተወስኗል፣ እሱም በኋላ በ"ርዝመት - CRYPTO_SIZE" የመቀነስ ስራ ላይ ውሏል። በማክሮው ውስጥ በቅንፍ እጥረት ምክንያት የሁሉንም እሴቶች ድምር ከመቀነስ ይልቅ 1 ን በመቀነስ የተቀሩትን ክፍሎች ይጨምሩ። ለምሳሌ ከ "ርዝመት - (1 + 32 * 2 + 24)" ይልቅ የመጠባበቂያው መጠን እንደ "ርዝመት - 1 + 32 * 2 + 24" ይሰላል, ይህም ከጠባቂው ውጭ ባለው ቁልል ላይ ውሂብ እንዲገለበጥ አድርጓል. ድንበር ።

ምንጭ: opennet.ru

አስተያየት ያክሉ