เจฒเฉ€เจจเจ•เจธ เจ•เจฐเจจเจฒ เจตเจฟเฉฑเจš TIPC เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจตเจฟเฉฑเจš เจฐเจฟเจฎเฉ‹เจŸ เจ•เจฎเจœเจผเฉ‹เจฐเฉ€

ะ’ ะฟะพัั‚ะฐะฒะปัะตะผะพะน ะฒ ัะดั€ะต Linux ั€ะตะฐะปะธะทะฐั†ะธะธ ัะตั‚ะตะฒะพะณะพ ะฟั€ะพั‚ะพะบะพะปะฐ TIPC (Transparent Inter-process Communication) ะฒั‹ัะฒะปะตะฝะฐ ะบั€ะธั‚ะธั‡ะตัะบะฐั ัƒัะทะฒะธะผะพัั‚ัŒ (CVE-2021-43267), ะฟะพะทะฒะพะปััŽั‰ะฐั ัƒะดะฐะปั‘ะฝะฝะพ ั‡ะตั€ะตะท ะพั‚ะฟั€ะฐะฒะบัƒ ัะฟะตั†ะธะฐะปัŒะฝะพ ะพั„ะพั€ะผะปะตะฝะฝะพะณะพ ัะตั‚ะตะฒะพะณะพ ะฟะฐะบะตั‚ะฐ ะดะพะฑะธั‚ัŒัั ะฒั‹ะฟะพะปะฝะตะฝะธั ัะฒะพะตะณะพ ะบะพะดะฐ ั ะฟั€ะธะฒะธะปะตะณะธัะผะธ ัะดั€ะฐ. ะžะฟะฐัะฝะพัั‚ัŒ ะฟั€ะพะฑะปะตะผั‹ ัะณะปะฐะถะธะฒะฐะตั‚ ั‚ะพ, ั‡ั‚ะพ ะดะปั ะฐั‚ะฐะบะธ ั‚ั€ะตะฑัƒะตั‚ัั ัะฒะฝะพะต ะฒะบะปัŽั‡ะตะฝะธะต ะฟะพะดะดะตั€ะถะบะธ TIPC ะฒ ัะธัั‚ะตะผะต (ะทะฐะณั€ัƒะทะบะฐ ะธ ะฝะฐัั‚ั€ะพะนะบะฐ ะผะพะดัƒะปั ัะดั€ะฐ tipc.ko), ะบะพั‚ะพั€ะฐั ะฒ ะฝะตัะฟะตั†ะธะฐะปะธะทะธั€ะพะฒะฐะฝะฝั‹ั… ะดะธัั‚ั€ะธะฑัƒั‚ะธะฒะฐั… Linux ะฝะต ะฟั€ะพะธะทะฒะพะดะธั‚ัั ะฟะพ ัƒะผะพะปั‡ะฐะฝะธัŽ.

ะŸั€ะพั‚ะพะบะพะป TIPC ะฟะพะดะดะตั€ะถะธะฒะฐะตั‚ัั ะฝะฐั‡ะธะฝะฐั ั ัะดั€ะฐ Linux 3.19, ะฝะพ ะฟั€ะธะฒะพะดัั‰ะธะน ะบ ัƒัะทะฒะธะผะพัั‚ะธ ะบะพะด ะฑั‹ะป ะฒะบะปัŽั‡ั‘ะฝ ะฒ ัะพัั‚ะฐะฒ ัะดั€ะฐ 5.10. ะฃัะทะฒะธะผะพัั‚ัŒ ัƒัั‚ั€ะฐะฝะตะฝะฐ ัะดั€ะฐั… 5.15.0, 5.10.77 ะธ 5.14.16. ะŸั€ะพะฑะปะตะผะฐ ะฟั€ะพัะฒะปัะตั‚ัั ะธ ะฟะพะบะฐ ะฝะต ัƒัั‚ั€ะฐะฝะตะฝะฐ ะฒ Debian 11, Ubuntu 21.04/21.10, SUSE (ะฒ ะตั‰ั‘ ะฝะต ะฒั‹ะฟัƒั‰ะตะฝะฝะพะน ะฒะตั‚ะบะต SLE15-SP4), RHEL (ะฟะพะบะฐ ะฝะต ะดะตั‚ะฐะปะธะทะธั€ัƒะตั‚ัั ะฑั‹ะปะพ ะปะธ ะฑัะบะฟะพั€ั‚ะธั€ะพะฒะฐะฝะพ ัƒัะทะฒะธะผะพะต ะธัะฟั€ะฐะฒะปะตะฝะธะต) ะธ Fedora. ะžะฑะฝะพะฒะปะตะฝะธะต ัะดั€ะฐ ัƒะถะต ะฒั‹ะฟัƒั‰ะตะฝะพ ะดะปั Arch Linux. ะ”ะธัั‚ั€ะธะฑัƒั‚ะธะฒั‹ ั ัะดั€ะพะผ ัั‚ะฐั€ัˆะต 5.10, ั‚ะฐะบะธะต ะบะฐะบ Debian 10 ะธ Ubuntu 20.04, ะฟั€ะพะฑะปะตะผะต ะฝะต ะฟะพะดะฒะตั€ะถะตะฝั‹.

TIPC เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจ…เจธเจฒ เจตเจฟเฉฑเจš เจเจฐเจฟเจ•เจธเจจ เจฆเฉเจ†เจฐเจพ เจตเจฟเจ•เจธเจค เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€, เจ‡เฉฑเจ• เจ•เจฒเฉฑเจธเจŸเจฐ เจตเจฟเฉฑเจš เจ…เฉฐเจคเจฐ-เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจธเฉฐเจšเจพเจฐ เจจเฉ‚เฉฐ เจธเฉฐเจ—เจ เจฟเจค เจ•เจฐเจจ เจฒเจˆ เจคเจฟเจ†เจฐ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€ เจ…เจคเฉ‡ เจฎเฉเฉฑเจ– เจคเฉŒเจฐ 'เจคเฉ‡ เจ•เจฒเฉฑเจธเจŸเจฐ เจจเฉ‹เจกเจพเจ‚ 'เจคเฉ‡ เจ•เจฟเจฐเจฟเจ†เจธเจผเฉ€เจฒ เจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค TIPC เจˆเจฅเจฐเจจเฉˆเฉฑเจŸ เจœเจพเจ‚ UDP (เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจชเฉ‹เจฐเจŸ 6118) เจ‰เฉฑเจคเฉ‡ เจ•เฉฐเจฎ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆเฅค เจˆเจฅเจฐเจจเฉˆเฉฑเจŸ เจ‰เฉฑเจคเฉ‡ เจ•เฉฐเจฎ เจ•เจฐเจฆเฉ‡ เจธเจฎเฉ‡เจ‚, เจนเจฎเจฒเจพ เจธเจฅเจพเจจเจ• เจจเฉˆเจŸเจตเจฐเจ• เจคเฉ‹เจ‚ เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจฏเฉ‚เจกเฉ€เจชเฉ€ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจธเจฎเฉ‡เจ‚, เจ—เจฒเฉ‹เจฌเจฒ เจจเฉˆเจŸเจตเจฐเจ• เจคเฉ‹เจ‚ เจœเฉ‡เจ•เจฐ เจชเฉ‹เจฐเจŸ เจซเจพเจ‡เจฐเจตเจพเจฒ เจฆเฉเจ†เจฐเจพ เจ•เจตเจฐ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆเฅค เจนเจฎเจฒเจพ เจนเฉ‹เจธเจŸ เจฆเฉ‡ เจ‡เฉฑเจ• เจ—เฉˆเจฐ-เจชเฉเจฐเจพเจชเจค เจธเจฅเจพเจจเจ• เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจฆเฉเจ†เจฐเจพ เจตเฉ€ เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆเฅค TIPC เจจเฉ‚เฉฐ เจธเจฐเจ—เจฐเจฎ เจ•เจฐเจจ เจฒเจˆ, เจคเฉเจนเจพเจจเฉ‚เฉฐ tipc.ko เจ•เจฐเจจเจฒ เจฎเฉ‹เจกเฉ€เจŠเจฒ เจจเฉ‚เฉฐ เจกเจพเจŠเจจเจฒเฉ‹เจก เจ•เจฐเจจ เจ…เจคเฉ‡ netlink เจœเจพเจ‚ tipc เจ‰เจชเจฏเฉ‹เจ—เจคเจพ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ เจฒเจˆ เจฌเจพเจˆเจกเจฟเฉฐเจ— เจจเฉ‚เฉฐ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค

ะฃัะทะฒะธะผะพัั‚ัŒ ะฟั€ะพัะฒะปัะตั‚ัั ะฒ ั„ัƒะฝะบั†ะธะธ tipc_crypto_key_rc ะธ ะฒั‹ะทะฒะฐะฝะฐ ะพั‚ััƒั‚ัั‚ะฒะธะตะผ ะดะพะปะถะฝะพะน ะฟั€ะพะฒะตั€ะบะธ ัะพะพั‚ะฒะตั‚ัั‚ะฒะธั ัƒะบะฐะทะฐะฝะฝะพะณะพ ะฒ ะทะฐะณะพะปะพะฒะบะต ะธ ั„ะฐะบั‚ะธั‡ะตัะบะพะณะพ ั€ะฐะทะผะตั€ะฐ ะดะฐะฝะฝั‹ั… ะฟั€ะธ ั€ะฐะทะฑะพั€ะต ะฟะฐะบะตั‚ะพะฒ ั ั‚ะธะฟะพะผ MSG_CRYPTO, ะธัะฟะพะปัŒะทัƒะตะผั‹ั… ะดะปั ะฟะพะปัƒั‡ะตะฝะธั ะบะปัŽั‡ะตะน ัˆะธั„ั€ะพะฒะฐะฝะธั ะพั‚ ะดั€ัƒะณะธั… ัƒะทะปะพะฒ ะฐ ะบะปะฐัั‚ะตั€ะต ั ั†ะตะปัŒัŽ ะฟะพัะปะตะดัƒัŽั‰ะตะน ั€ะฐััˆะธั„ั€ะพะฒะบะธ ัะพะพะฑั‰ะตะฝะธะน, ะพั‚ะฟั€ะฐะฒะปัะตะผั‹ั… ั ัั‚ะธั… ัƒะทะปะพะฒ. ะ ะฐะทะผะตั€ ะบะพะฟะธั€ัƒะตะผั‹ั… ะฒ ะฟะฐะผัั‚ัŒ ะดะฐะฝะฝั‹ั… ะฒั‹ั‡ะธัะปัะตั‚ัั ะบะฐะบ ั€ะฐะทะฝะธั†ะฐ ะผะตะถะดัƒ ะทะฝะฐั‡ะตะฝะธะน ะฟะพะปะตะน ั ั€ะฐะทะผะตั€ะพะผ ัะพะพะฑั‰ะตะฝะธั ะธ ั€ะฐะทะผะตั€ะพะผ ะทะฐะณะพะปะพะฒะบะฐ, ะฝะพ ะฑะตะท ัƒั‡ั‘ั‚ะฐ ั„ะฐะบั‚ะธั‡ะตัะบะพะณะพ ั€ะฐะทะผะตั€ะฐ ะฟะตั€ะตะดะฐะฒะฐะตะผะพะณะพ ะฒ ัะพะพะฑั‰ะตะฝะธะธ ะฝะฐะทะฒะฐะฝะธั ะฐะปะณะพั€ะธั‚ะผะฐ ัˆะธั„ั€ะพะฒะฐะฝะธั ะธ ัะพะดะตั€ะถะธะผะพะณะพ ะบะปัŽั‡ะฐ. ะŸะพะดั€ะฐะทัƒะผะตะฒะฐะตั‚ัั, ั‡ั‚ะพ ั€ะฐะทะผะตั€ ะฝะฐะทะฒะฐะฝะธั ะฐะปะณะพั€ะธั‚ะผะฐ ั„ะธะบัะธั€ะพะฒะฐะฝ, ะฐ ะดะปั ะบะปัŽั‡ะฐ ะดะพะฟะพะปะฝะธั‚ะตะปัŒะฝะพ ะฟะตั€ะตะดะฐั‘ั‚ัั ะพั‚ะดะตะปัŒะฝั‹ะน ะฐั‚ั€ะธะฑัƒั‚ ั ั€ะฐะทะผะตั€ะพะผ, ะธ ะฐั‚ะฐะบัƒัŽั‰ะธะน ะผะพะถะตั‚ ัƒะบะฐะทะฐั‚ัŒ ะฒ ัั‚ะพะผ ะฐั‚ั€ะธะฑัƒั‚ะต ะทะฝะฐั‡ะตะฝะธะต, ะพั‚ะปะธั‡ะฐัŽั‰ะตะตัั ะพั‚ ั„ะฐะบั‚ะธั‡ะตัะบะพะณะพ, ั‡ั‚ะพ ะฟั€ะธะฒะตะดั‘ั‚ ะบ ะทะฐะฟะธัะธ ั…ะฒะพัั‚ะฐ ัะพะพะฑั‰ะตะฝะธั ะทะฐ ะฟั€ะตะดะตะปั‹ ะฒั‹ะดะตะปะตะฝะฝะพะณะพ ะฑัƒั„ะตั€ะฐ. struct tipc_aead_key { char alg_name[TIPC_AEAD_ALG_NAME]; unsigned int keylen; /* in bytes */ char key[]; };

เจฒเฉ€เจจเจ•เจธ เจ•เจฐเจจเจฒ เจตเจฟเฉฑเจš TIPC เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจตเจฟเฉฑเจš เจฐเจฟเจฎเฉ‹เจŸ เจ•เจฎเจœเจผเฉ‹เจฐเฉ€


เจธเจฐเฉ‹เจค: opennet.ru

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹