UDP පැකට්ටුවක් යැවීමෙන් Toxcore හි බෆරය පිටාර ගැලීම

Toxcore, Tox P2P පණිවිඩකරණ ප්‍රොටෝකෝලයේ විමර්ශන ක්‍රියාත්මක කිරීම, විශේෂයෙන් සැකසූ UDP පැකට්ටුවක් සකසන විට කේත ක්‍රියාත්මක කිරීම ආරම්භ කළ හැකි අවදානමක් (CVE-2021-44847) ඇත. UDP ප්‍රවාහනය අක්‍රිය කර නොමැති Toxcore-පදනම් වූ යෙදුම්වල සියලුම පරිශීලකයින් අවදානමට ලක් වේ. පහර දීමට, වින්දිතයාගේ IP ලිපිනය, ජාල වරාය සහ පොදු DHT යතුර දැනගෙන UDP පැකට්ටුවක් යැවීම ප්‍රමාණවත් වේ (මෙම තොරතුරු DHT හි ප්‍රසිද්ධියේ ඇත, එනම් ප්‍රහාරය ඕනෑම පරිශීලකයෙකුට හෝ DHT නෝඩයකට සිදු කළ හැකිය).

මෙම ගැටළුව toxcore නිකුතු 0.1.9 සිට 0.2.12 දක්වා වූ අතර එය 0.2.13 අනුවාදයෙන් විසඳා ඇත. සේවාදායක යෙදුම් අතරින්, qTox ව්‍යාපෘතිය පමණක් මේ වන විට අවදානම ඉවත් කරන යාවත්කාලීනයක් නිකුත් කර ඇත. ආරක්ෂක විසඳුමක් ලෙස, ඔබට TCP සහාය පවත්වා ගනිමින් UDP අක්‍රිය කළ හැක.

ජාල පැකට්ටුවක දත්ත ප්‍රමාණය වැරදි ලෙස ගණනය කිරීම නිසා සිදුවන, handle_request() ශ්‍රිතයේ බෆරය පිටාර ගැලීම නිසා අවදානම ඇතිවේ. විශේෂයෙන්, සංකේතනය කරන ලද දත්තවල දිග නිර්ණය කරන ලද්දේ සාර්ව CRYPTO_SIZE තුළ වන අතර, එය "1 + CRYPTO_PUBLIC_KEY_SIZE * 2 + CRYPTO_NONCE_SIZE" ලෙස අර්ථ දක්වා ඇත, එය පසුව "දිග - CRYPTO_SI" අඩු කිරීමේ මෙහෙයුමේදී භාවිතා කරන ලදී. මැක්‍රෝවේ වරහන් නොමැති වීම නිසා සියලු අගයන්හි එකතුව අඩු කරනවා වෙනුවට 1 අඩු කර ඉතිරි කොටස් එකතු කළේය. උදාහරණයක් ලෙස, "දිග - (1 + 32 * 2 + 24)" වෙනුවට, බෆර ප්‍රමාණය "දිග - 1 + 32 * 2 + 24" ලෙස ගණනය කරන ලද අතර, එමඟින් බෆරයේ සීමාවෙන් ඔබ්බට ඇති තොගයේ දත්ත නැවත ලිවීමට හේතු විය.

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න