Buffer overflow f'Toxcore sfruttat billi jintbagħat pakkett UDP

Toxcore, l-implimentazzjoni ta’ referenza tal-protokoll ta’ messaġġi Tox P2P, għandha vulnerabbiltà (CVE-2021-44847) li potenzjalment tista’ twassal għall-eżekuzzjoni tal-kodiċi meta tipproċessa pakkett UDP magħmul apposta. L-utenti kollha tal-applikazzjonijiet ibbażati fuq Toxcore li m'għandhomx it-trasport UDP diżattivat huma affettwati mill-vulnerabbiltà. Biex tattakka, huwa biżżejjed li tibgħat pakkett UDP li jkun jaf l-indirizz IP, il-port tan-netwerk u ċ-ċavetta DHT pubblika tal-vittma (din l-informazzjoni hija disponibbli pubblikament fid-DHT, jiġifieri l-attakk jista 'jitwettaq fuq kwalunkwe utent jew node DHT).

Il-kwistjoni kienet preżenti fir-rilaxxi toxcore 0.1.9 sa 0.2.12 u ġiet iffissata fil-verżjoni 0.2.13. Fost l-applikazzjonijiet tal-klijenti, il-proġett qTox biss s'issa ħareġ aġġornament li jelimina l-vulnerabbiltà. Bħala soluzzjoni tas-sigurtà, tista 'tiddiżattiva l-UDP filwaqt li żżomm l-appoġġ TCP.

Il-vulnerabbiltà hija kkawżata minn buffer overflow fil-funzjoni handle_request(), li sseħħ minħabba kalkolu żbaljat tad-daqs tad-dejta f'pakkett tan-netwerk. Speċifikament, it-tul tad-dejta kodifikata ġie ddeterminat fil-makro CRYPTO_SIZE, definit bħala "1 + CRYPTO_PUBLIC_KEY_SIZE * 2 + CRYPTO_NONCE_SIZE", li sussegwentement intużat fl-operazzjoni tat-tnaqqis "tul - CRYPTO_SIZE". Minħabba n-nuqqas ta 'parentesi fil-makro, minflok ma naqqas is-somma tal-valuri kollha, naqqas 1 u żied il-partijiet li fadal. Pereżempju, minflok "tul - (1 + 32 * 2 + 24)", id-daqs tal-buffer ġie kkalkulat bħala "tul - 1 + 32 * 2 + 24", li rriżulta f'kitba fuq il-munzell lil hinn mill-konfini tal-buffer.

Sors: opennet.ru

Żid kumment