Linux ядросының AF_PACKET ұяшығын іске асырудағы осалдық

Осалдық толқынынан үш жыл өткен соң (1, 2, 3, 4, 5) Linux ядросының AF_PACKET ішкі жүйесінде анықталды тағы бір мәселе (CVE-2020-14386), жергілікті артықшылығы жоқ пайдаланушыға кодты түбір ретінде орындауға немесе егер олардың түбірлік қатынасы болса, оқшауланған контейнерлерден шығуға мүмкіндік береді.

AF_PACKET ұяшығын жасау және осалдықты пайдалану CAP_NET_RAW артықшылықтарын қажет етеді. Дегенмен, көрсетілген рұқсатты пайдаланушы аттар кеңістігіне қолдау қосылған жүйелерде жасалған контейнерлердегі артықшылығы жоқ пайдаланушы ала алады. Мысалы, пайдаланушы аттар кеңістігі әдепкі бойынша Ubuntu және Fedora жүйелерінде қосылған, бірақ Debian және RHEL жүйелерінде қосылмаған. Android жүйесінде медиасервер процесінің осалдықты пайдалануға болатын AF_PACKET ұяшықтарын жасауға құқығы бар.

Осалдық tpacket_rcv функциясында бар және netoff айнымалы мәнін есептеудегі қатеден туындайды. Шабуыл жасаушы netoff айнымалысы maclen айнымалысынан аз мәнге жазылатын жағдайлар жасай алады, бұл "macoff = netoff - maclen" есептеу кезінде толып кетуге және кейіннен кіріс деректер үшін буферге көрсеткішті дұрыс орнатпауға әкеледі. Нәтижесінде, шабуылдаушы бөлінген буфер шекарасынан тыс аумаққа 1-ден 10 байтқа дейін жазуды бастай алады. Жүйеде түбірлік құқықтарды алуға мүмкіндік беретін эксплойт әзірленуде екені атап өтіледі.

Мәселе ядрода 2008 жылдың шілдесінен бері бар, яғни. барлық нақты ядроларда көрінеді. Түзету қазір қол жетімді патч. Келесі беттерде таратулардағы бума жаңартуларының қолжетімділігін бақылауға болады: Ubuntu, Fedora, SUSE, Debian, RHEL, Арка.

Ақпарат көзі: opennet.ru

пікір қалдыру