Qualys ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΡΠ²Π°ΡΠ΅ ΠΎΠΏΠ°ΡΠ½Π° ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡ (CVE-2023-6246) Π²ΠΎ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½Π°ΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° C Glibc, ΠΊΠΎΡΠ° Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π΄Π° Π³ΠΎ ΠΈΠ·Π²ΡΡΠΈΡΠ΅ Π²Π°ΡΠΈΠΎΡ ΠΊΠΎΠ΄ ΡΠΎ Π·Π³ΠΎΠ»Π΅ΠΌΠ΅Π½ΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ ΠΏΡΠ΅ΠΊΡ ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΈΠΈ ΡΠΎ ΡΡΠ°ΡΡΡΠ²Π°ΡΠ΅ Π½Π° SUID Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ. ΠΡΡΡΠ°ΠΆΡΠ²Π°ΡΠΈΡΠ΅ Π±Π΅Π° Π²ΠΎ ΠΌΠΎΠΆΠ½ΠΎΡΡ Π΄Π° ΡΠ°Π·Π²ΠΈΡΠ°Ρ ΡΠ°Π±ΠΎΡΠ΅Π½ Π΅ΠΊΡΠΏΠ»ΠΎΠ°Ρ ΠΊΠΎΡ ΠΌΡ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π½Π° Π½Π΅ΠΊΠΎΡ Π΄Π° ΡΡΠ΅ΠΊΠ½Π΅ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈ ΠΏΡΠ°Π²Π° ΡΠΎ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠ°ΡΠ΅ ΡΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΈΡΠ΅ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½Π°ΡΠ° Π»ΠΈΠ½ΠΈΡΠ° ΠΏΡΠΈ ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ Π½Π° Π°Π»Π°ΡΠΊΠ°ΡΠ° su.
Π Π°Π½Π»ΠΈΠ²ΠΎΡΡΠ° Π΅ ΠΏΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ°Π½Π° ΠΎΠ΄ ΠΏΡΠ΅Π»Π΅Π²Π°ΡΠ΅ Π½Π° Π±Π°ΡΠ΅ΡΠΎΡ Π²ΠΎ ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅ __vsyslog_internal() ΡΡΠΎ ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ°Ρ ΠΏΡΠΈ ΠΏΠΎΠ²ΠΈΠΊΡΠ²Π°ΡΠ΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅ syslog() ΠΈ vsyslog(). ΠΡΠΎΠ±Π»Π΅ΠΌΠΎΡ ΡΠ΅ ΡΠ°Π²ΡΠ²Π° ΠΏΠΎΡΠ°Π΄ΠΈ Π³ΡΠ΅ΡΠΊΠ° ΠΏΡΠΈ ΠΎΠ±ΠΈΠ΄ΠΎΡ Π΄Π° ΡΠ΅ ΠΈΠ·Π΄Π°Π΄Π΅ ΠΈΠΌΠ΅ Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ° ΡΡΠΎ Π΅ ΠΏΡΠ΅ΠΌΠ½ΠΎΠ³Ρ Π΄ΠΎΠ»Π³ΠΎ ΠΏΡΠ΅ΠΊΡ ΠΌΠ°ΠΊΡΠΎΡΠΎ SYSLOG_HEADER. ΠΠΎΠ³Π° ΡΠ΅ ΠΎΠ±ΠΈΠ΄ΡΠ²Π°ΡΠ΅ Π΄Π° Π³ΠΎ ΠΏΡΠΎΡΠΈΡΠΈΡΠ΅ Π±Π°ΡΠ΅ΡΠΎΡ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° Π΄ΠΎΠ»Π³ΠΎ ΠΈΠΌΠ΅, ΡΠ΅ ΡΠ»ΡΡΡΠ²Π° Π½Π΅ΡΡΠΏΠ΅Ρ , ΠΏΠΎ ΡΡΠΎ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅ ΡΠ΅ Π·Π°ΠΏΠΈΡΡΠ²Π°Π°Ρ Π²ΠΎ ΡΡΠ°ΡΠΈΠΎΡ ΡΠ°ΠΌΠΏΠΎΠ½ ΡΠΎ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»Π½Π° ΠΏΠΎΠΌΠ°Π»Π° Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π°.
ΠΠΎΠ³Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ° Π½Π°ΠΏΠ°Π΄ ΠΏΡΠ΅ΠΊΡ ΡΡ-ΡΡΠΈΠ»ΠΈΡΠ°, Π½Π°ΠΏΠ°ΡΠ°ΡΠΎΡ ΠΌΠΎΠΆΠ΅ Π΄Π° Π³ΠΎ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡ ΠΊΠΎΠ³Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° ΡΠ΅ ΡΠ΅ ΡΡΠ°ΡΡΡΠ²Π° ΡΠΎ Π·Π°ΠΌΠ΅Π½Π° Π½Π° Π²ΡΠ΅Π΄Π½ΠΎΡΡΠ° argv[0], ΠΊΠΎΡΠ° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π·Π° Π΄Π° ΡΠ΅ Π΄ΠΎΠ±ΠΈΡΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° ΠΏΡΠΈ ΠΈΠ·Π»Π΅Π³ΡΠ²Π°ΡΠ΅ Π²ΠΎ Π΄Π½Π΅Π²Π½ΠΈΠΊΠΎΡ ΠΈ Π΄Π° ΡΠ΅ ΠΏΠΎΡΡΠΈΠ³Π½Π΅ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ°Π½Π° ΠΏΡΠ΅ΠΏΠΈΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π½Π°Π΄Π²ΠΎΡ ΠΎΠ΄ Π΄ΠΎΠ΄Π΅Π»Π΅Π½ΠΈΠΎΡ Π±Π°ΡΠ΅Ρ. ΠΡΠ΅Π»Π΅Π²Π°ΡΠ΅ΡΠΎ ΠΏΠΎΡΠΎΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π·Π° ΠΏΡΠ΅Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΠ΅ Π½Π° ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° nss_module Π²ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° nss Π·Π° Π΄Π° ΡΠ΅ ΡΠΎΠ·Π΄Π°Π΄Π΅ ΡΠΏΠΎΠ΄Π΅Π»Π΅Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΈ Π΄Π° ΡΠ΅ Π²ΡΠΈΡΠ° ΠΊΠ°ΠΊΠΎ root.
ΠΡΠ°ΡΠ°ΡΠ΅ΡΠΎ Π΅ ΠΏΡΠΈΡΡΡΠ½ΠΎ ΠΎΠ΄ ΠΎΠ±ΡΠ°Π²ΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° glibc 2.37, ΠΎΠ±ΡΠ°Π²Π΅Π½ΠΎ Π²ΠΎ Π°Π²Π³ΡΡΡ 2022 Π³ΠΎΠ΄ΠΈΠ½Π°, ΠΊΠΎΠ΅ Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½Π° Π·Π° ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΡΠΎ ΡΠΈΡΡΠ°ΡΠΈΡΠ°ΡΠ° Π½Π° ΠΎΠ±ΠΈΠ΄ Π·Π° ΠΏΠΈΡΡΠ²Π°ΡΠ΅ ΠΏΠΎΡΠ°ΠΊΠΈ ΠΊΠΎΠΈ ΡΠ΅ ΠΏΡΠ΅ΠΌΠ½ΠΎΠ³Ρ Π³ΠΎΠ»Π΅ΠΌΠΈ. ΠΠΎΠΏΡΠ°Π²ΠΊΠ°ΡΠ° Π±Π΅ΡΠ΅ Π²ΡΠ°ΡΠ΅Π½Π° Π²ΠΎ glibc 2.36 ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π½ΠΈΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΡΠΎ ΠΏΠΎΡΡΠ°ΡΠΈ Π²Π΅ΡΠ·ΠΈΠΈ Π½Π° glibc Π±ΠΈΠ΄Π΅ΡΡΠΈ ΠΏΠΎΠΏΡΠ°Π²ΠΊΠ°ΡΠ° ΡΠ΅ ΠΎΠ΄Π½Π΅ΡΡΠ²Π°ΡΠ΅ Π½Π° ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡΠ° Π½Π° ΠΈΡΡΠ΅ΠΊΡΠ²Π°ΡΠ΅ Π½Π° ΠΊΡΠΏ CVE-2022-39046. Π‘Π΅ ΠΏΠΎΠΊΠ°ΠΆΠ° Π΄Π΅ΠΊΠ° ΠΏΠΎΠΏΡΠ°Π²Π°ΡΠ΅ΡΠΎ Π½Π° Π½Π΅ΠΎΠΏΠ°ΡΠ½Π° ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡ Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ ΠΏΠΎΡΠ°Π²Π° Π½Π° ΠΊΡΠΈΡΠΈΡΠ΅Π½ ΠΏΡΠΎΠ±Π»Π΅ΠΌ. ΠΡΠ΅Π΄ΠΈ Π΄Π° ΡΠ΅ ΠΎΠ΄Π±Π΅Π»Π΅ΠΆΠΈ Π΄Π΅ΠΊΠ° ΡΠ»ΠΈΡΠ½Π° ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡ Π²ΠΎ ΡΡΠ½ΠΊΡΠΈΡΠ°ΡΠ° vsyslog() ΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° libc 5.4.3 Π±Π΅ΡΠ΅ ΠΏΡΠΈΡΠ°Π²Π΅Π½Π° ΡΡΡΠ΅ Π²ΠΎ 1997 Π³ΠΎΠ΄ΠΈΠ½Π°.
Π Π°Π½Π»ΠΈΠ²ΠΎΡΡΠ° Π΅ ΠΏΠΎΡΠ²ΡΠ΄Π΅Π½Π° Π²ΠΎ Debian 12/13, Ubuntu 23.04/23.10 ΠΈ Fedora 37-39. ΠΡΠΊΠΎΡΠΈΡΡΡΠ²Π°ΡΠ΅ΡΠΎ Π·Π° ΡΡΠ΅ΠΊΠ½ΡΠ²Π°ΡΠ΅ ΠΏΡΠ°Π²Π° Π½Π° root ΠΎΠ΄ Π½Π΅ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠ°Π½ ΠΊΠΎΡΠΈΡΠ½ΠΈΠΊ Π±Π΅ΡΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠ°Π½ΠΎ Π²ΠΎ ΡΠ΅Π»ΠΎΡΠ½ΠΎ Π°ΠΆΡΡΠΈΡΠ°Π½Π° ΡΡΠ΅Π΄ΠΈΠ½Π° Fedora 38 ΡΠΎ ΡΠΈΡΠ΅ Π·Π°ΡΡΠΈΡΠ½ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ΠΈ Π²ΠΎ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½Π°ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ°. Π Π°Π½Π»ΠΈΠ²ΠΎΡΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠΈΡΠ° ΡΠ°ΠΌΠΎ Π»ΠΎΠΊΠ°Π»Π½ΠΎ, Π±ΠΈΠ΄Π΅ΡΡΠΈ Π±Π°ΡΠ° ΠΏΡΠ΅Π½Π΅ΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΠ΄ 1024 Π±Π°ΡΡΠΈ ΠΏΡΠ΅ΠΊΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΠ°ΡΠΎΡ argv[0] ΠΈΠ»ΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΠ° Π½Π° ΡΡΠ½ΠΊΡΠΈΡΠ°ΡΠ° openlog().
ΠΠΎΠΏΡΠ°Π²ΠΊΠ°ΡΠ° Π½Π° ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡΠ° Π±Π΅ΡΠ΅ Π²ΠΊΠ»ΡΡΠ΅Π½Π° ΠΏΡΠ΅Π΄ Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΡΠ°ΡΠ° Π²ΠΎ Π±Π°Π·Π°ΡΠ° Π½Π° ΠΊΠΎΠ΄ΠΎΠ²ΠΈ Glibc ΠΈ ΡΠ΅ Π±ΠΈΠ΄Π΅ Π΄Π΅Π» ΠΎΠ΄ ΡΡΡΠ΅ΡΠ½ΠΎΡΠΎ Π°ΠΆΡΡΠΈΡΠ°ΡΠ΅ Π½Π° Glibc 2.39, Π·Π°Π΅Π΄Π½ΠΎ ΡΠΎ ΠΏΠΎΠΏΡΠ°Π²ΠΊΠ° Π·Π° ΡΡΡΠ΅ Π΄Π²Π΅ ΠΏΡΠΎΠΏΡΡΡΠΈ (CVE-2023-6779, CVE-2023-6780), ΠΊΠΎΠΈ ΠΈΡΡΠΎ ΡΠ°ΠΊΠ° ΡΠ΅ Π²Π»ΠΈΡΠ°Π°Ρ Π½Π° __vsyslog_internal() ΠΊΠΎΠ΄ ΠΈ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ ΠΏΡΠ΅Π»Π΅Π²Π°ΡΠ΅ Π½Π° Π±Π°ΡΠ΅ΡΠΎΡ . ΠΠΎΠΊΡΠ°Ρ ΡΠΎΠ°, Qualys ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅Π΄ΠΈ Π·Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΡΠ²Π°ΡΠ΅ Π½Π° ΠΏΡΠ΅Π»Π΅Π²Π°ΡΠ΅ Π½Π° Π±Π°ΡΠ΅ΡΠΎΡ Π²ΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°ΡΠ° Π½Π° ΡΡΠ½ΠΊΡΠΈΡΠ°ΡΠ° qsort(), ΠΊΠΎΡΠ° Π½Π΅ Π±Π΅ΡΠ΅ ΠΊΠ»Π°ΡΠΈΡΠΈΡΠΈΡΠ°Π½Π° ΠΎΠ΄ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ΅ΡΠΈΡΠ΅ Π½Π° Glibc ΠΊΠ°ΠΊΠΎ ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡ, Π±ΠΈΠ΄Π΅ΡΡΠΈ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡΠ°ΡΠ° Π²ΠΊΠ»ΡΡΡΠ²Π° ΡΠΏΠΎΡΡΠ΅Π±Π° Π½Π° Π°ΡΠΈΠΏΠΈΡΠ½Π° ΠΊΠΎΠΌΠΏΠ°ΡΠ°ΡΠΈΠ²Π½Π° ΡΡΠ½ΠΊΡΠΈΡΠ° ΠΊΠ°ΠΊΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ ΠΏΡΠΈ ΠΏΠΎΠ²ΠΈΠΊΡΠ²Π°ΡΠ΅ qsort, ΡΡΠΎ ΡΠ° Π²ΡΠ°ΡΠ° ΡΠ°Π·Π»ΠΈΠΊΠ°ΡΠ° ΠΎΠ΄ ΡΠΏΠΎΡΠ΅Π΄Π΅Π½ΠΈΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ.
Π‘ΡΠ°ΡΡΡΠΎΡ Π½Π° Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡΠ°ΡΠ΅ Π½Π° ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡΠΈΡΠ΅ Π²ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈΡΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠΎΡΠ΅Π½ΠΈ Π½Π° ΠΎΠ²ΠΈΠ΅ ΡΡΡΠ°Π½ΠΈΡΠΈ: Debian, Ubuntu, SUSE, RHEL, Fedora, Arch Linux, Gentoo, Slackware. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ° ΡΠ΅ΡΡΠΈΡΠ°ΡΠ΅ ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡΠ° Π½Π° Π²Π°ΡΠΈΠΎΡ ΡΠΈΡΡΠ΅ΠΌ Π½Π° ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡΠ° ΡΠΎ ΡΠ»Π΅Π΄Π½Π°Π²Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°: $ (exec -a β`printf β%0128000xβ 1`β /usr/bin/su < /dev/null)
ΠΠ·Π²ΠΎΡ: opennet.ru