Խոցելիություն, որը թույլ է տալիս դուրս գալ QEMU մեկուսացված միջավայրից

Բացահայտվել է կրիտիկական խոցելիության մանրամասները (CVE-2019-14378- ը) լռելյայն SLIRP կարգավորիչում, որն օգտագործվում է QEMU-ում՝ հյուրի համակարգում վիրտուալ ցանցային ադապտերների և QEMU կողմում գտնվող ցանցային հետնամասի միջև կապի ալիք ստեղծելու համար: Խնդիրը վերաբերում է նաև KVM-ի վրա հիմնված վիրտուալացման համակարգերին (in Օգտվողի ռեժիմ) և Virtualbox, որոնք օգտագործում են slirp backend-ը QEMU-ից, ինչպես նաև հավելվածներ, որոնք օգտագործում են օգտատերերի տարածքի ցանցային փաթեթը libSLIRP (TCP/IP էմուլյատոր):

Խոցելիությունը թույլ է տալիս կոդը գործարկել հյուրընկալող համակարգի կողմից՝ QEMU մշակող գործընթացի իրավունքներով, երբ հյուրի համակարգից ուղարկվում է հատուկ նախագծված շատ մեծ ցանցային փաթեթ, որը պահանջում է մասնատում: ip_reass() ֆունկցիայի սխալի պատճառով, որը կոչվում է մուտքային փաթեթներ հավաքելիս, առաջին հատվածը կարող է չտեղավորվել հատկացված բուֆերի մեջ, և դրա պոչը կգրվի բուֆերի կողքին գտնվող հիշողության տարածքներում:

Արդեն փորձարկման համար հասանելի է Exploit-ի աշխատանքային նախատիպը, որն ապահովում է ASLR-ի շրջանցում և կոդի գործարկում՝ վերագրանցելով main_loop_tlg զանգվածի հիշողությունը, ներառյալ QEMUTimerList-ը՝ մշակիչներով, որոնք կանչվում են ժամանակաչափով:
Խոցելիությունն արդեն շտկվել է Fedora и SUSE/openSUSE, բայց մնում է չուղղված Debian, Arch Linux- ը и FreeBSD- ը: Մեջ Ubuntu и RHEL- ը Խնդիրը չի առաջանում slirp չօգտագործելու պատճառով։ Վերջին թողարկումում խոցելիությունը մնում է չֆիքսված libslirp 4.0 (շտկումը ներկայումս հասանելի է որպես կարկատել).

Source: opennet.ru

Добавить комментарий