Осебпазирӣ дар зерсистемаи iSCSI ядрои Linux, ки ба афзоиши имтиёзҳо имкон медиҳад

Дар коди зерсистемаи iSCSI ядрои Linux осебпазирӣ (CVE-2021-27365) муайян шудааст, ки метавонад ба корбари беимтиёзи маҳаллӣ имкон диҳад, ки кодро дар сатҳи ядро ​​иҷро кунад ва дар система имтиёзҳои реша пайдо кунад. Прототипи кории истисмор барои озмоиш дастрас аст. Осебият дар навсозиҳои ядрои Linux 5.11.4, 5.10.21, 5.4.103, 4.19.179, 4.14.224, 4.9.260 ва 4.4.260 ислоҳ карда шуд. Навсозиҳои бастаи ядро ​​​​дар тақсимоти Debian, Ubuntu, SUSE/openSUSE, Arch Linux ва Fedora дастрасанд. Ислоҳҳои RHEL ҳанӯз бароварда нашудаанд.

Мушкилот дар натиҷаи хато дар функсияи iscsi_host_get_param() аз модули libiscsi, ки соли 2006 ҳангоми таҳияи зерсистемаи iSCSI ҷорӣ шуда буд, ба вуҷуд омадааст. Аз сабаби набудани санҷишҳои андозаи мувофиқ, баъзе атрибутҳои сатри iSCSI, ба монанди номи мизбон ё номи корбар, метавонанд аз арзиши PAGE_SIZE (4 KB) зиёд бошанд. Аз осебпазирӣ метавонад аз ҷониби корбари беимтиёз истифода шавад, ки паёмҳои Netlink мефиристад, ки атрибутҳои iSCSI-ро ба арзишҳои аз PAGE_SIZE калонтар муқаррар мекунад. Вақте ки ин атрибутҳо тавассути sysfs ё seqfs хонда мешаванд, код даъват карда мешавад, ки атрибутҳоро ба функсияи sprintf барои нусхабардорӣ ба буфере, ки андозаи он PAGE_SIZE аст, интиқол медиҳад.

Истифодаи осебпазирӣ дар тақсимот аз дастгирии боркунии автоматии модули ядрои scsi_transport_iscsi ҳангоми кӯшиши сохтани васлаки NETLINK_ISCSI вобаста аст. Дар тақсимотҳое, ки ин модул ба таври худкор бор карда мешавад, новобаста аз истифодаи функсияи iSCSI ҳамла кардан мумкин аст. Ҳамзамон, барои татбиқи бомуваффақияти истисмор ба таври иловагӣ бақайдгирии ҳадди аққал як нақлиёти iSCSI талаб карда мешавад. Дар навбати худ, шумо метавонед модули ядрои ib_iserро истифода баред, ки ҳангоми кӯшиши корбари беимтиёз барои сохтани васлаки NETLINK_RDMA барои сабти интиқол ба таври худкор бор карда мешавад.

Боркунии автоматии модулҳое, ки барои татбиқи истисмор заруранд, дар CentOS 8, RHEL 8 ва Fedora ҳангоми насб кардани бастаи rdma-core дар система дастгирӣ карда мешавад, ки он аз баъзе бастаҳои маъмул вобастагӣ дорад ва ба таври нобаёнӣ дар конфигуратсияҳо барои истгоҳҳои корӣ насб карда мешавад, системаҳои сервер бо GUI ва муҳитҳои мизбон виртуализатсия. Дар айни замон, rdma-core ҳангоми истифодаи сохтани сервер, ки танҳо дар реҷаи консол кор мекунад ва ҳангоми насб кардани тасвири насби ҳадди ақал насб карда намешавад. Масалан, баста ба тақсимоти асосии Fedora 31 Workstation дохил карда шудааст, аммо ба Fedora 31 Server дохил карда нашудааст. Debian ва Ubuntu камтар таъсир мерасонанд, зеро бастаи rdma-core танҳо модулҳои ядрои барои ҳамла заруриро бор мекунад, агар сахтафзори RDMA мавҷуд бошад.

Осебпазирӣ дар зерсистемаи iSCSI ядрои Linux, ки ба афзоиши имтиёзҳо имкон медиҳад

Ҳамчун як роҳи ҳалли амният, шумо метавонед боркунии автоматии модули libiscsi -ро ғайрифаъол кунед: echo "install libiscsi /bin/true" >> /etc/modprobe.d/disable-libiscsi.conf

Илова бар ин, дар зерсистемаи iSCSI боз ду осебпазирии камтар хатарнок ислоҳ карда шуданд, ки метавонанд ба ихроҷи маълумот аз ядро ​​оварда расонанд: CVE-2021-27363 (ширидани маълумот дар бораи дескриптори интиқоли iSCSI тавассути sysfs) ва CVE-2021-27364 (хондан аз минтақаи буферии берун аз ҳудуди) . Ин осебпазириҳо метавонанд барои иртибот тавассути васлаки netlink бо зерсистемаи iSCSI бидуни имтиёзҳои зарурӣ истифода шаванд. Масалан, корбари беимтиёз метавонад ба iSCSI пайваст шавад ва фармони "хатти сессия" фиристад, то сессияро қатъ кунад.

Манбаъ: opennet.ru

Илова Эзоҳ