Àkúnwọ́sílẹ̀ ìfipamọ́ ní Toxcore ti ṣàǹfààní nípa fífi ìsorí UDP kan ránṣẹ́

Toxcore, imuse itọkasi ti Ilana fifiranṣẹ Tox P2P, ni ailagbara kan (CVE-2021-44847) ti o le ṣe okunfa ipaniyan koodu nigbati o n ṣiṣẹ apo-iṣẹ UDP pataki kan. Gbogbo awọn olumulo ti awọn ohun elo orisun Toxcore ti ko ni alaabo ọkọ gbigbe UDP ni o ni ipa nipasẹ ailagbara naa. Lati kọlu, o to lati firanṣẹ apo-iwe UDP kan ti o mọ adiresi IP, ibudo nẹtiwọọki ati bọtini DHT ti gbogbo eniyan ti olufaragba (alaye yii wa ni gbangba ni DHT, ie ikọlu le ṣee ṣe lori eyikeyi olumulo tabi ipade DHT).

Ọrọ naa wa ni awọn idasilẹ toxcore 0.1.9 nipasẹ 0.2.12 ati pe o wa titi ni ẹya 0.2.13. Lara awọn ohun elo alabara, iṣẹ akanṣe qTox nikan ti ṣe idasilẹ imudojuiwọn kan ti o yọkuro ailagbara naa. Gẹgẹbi iṣẹ agbegbe aabo, o le mu UDP ṣiṣẹ lakoko ti o n ṣetọju atilẹyin TCP.

Ailagbara naa jẹ idi nipasẹ iṣan omi ifipamọ ni iṣẹ handle_request (), eyiti o waye nitori iṣiro ti ko tọ ti iwọn data ninu apo nẹtiwọọki kan. Ni pataki, ipari ti data fifi ẹnọ kọ nkan ni a pinnu ni Makiro CRYPTO_SIZE, ti a ṣalaye bi “1 + CRYPTO_PUBLIC_KEY_SIZE * 2 + CRYPTO_NONCE_SIZE”, eyiti o jẹ lilo nigbamii ni iṣẹ iyokuro “ipari - CRYPTO_SIZE”. Nitori aini akomo ninu Makiro, dipo iyokuro gbogbo awọn iye, o yọkuro 1 o si fi awọn ẹya to ku kun. Fun apẹẹrẹ, dipo “ipari - (1 + 32 * 2 + 24)”, iwọn ifipamọ ni iṣiro bi “ipari - 1 + 32 * 2 + 24”, eyiti o yorisi atunkọ data lori akopọ ni ikọja aala ifipamọ.

orisun: opennet.ru

Fi ọrọìwòye kun