Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

fstec логотип

BDU:2024-10513

Опубликовано: 08 апр. 2024
Источник: fstec
CVSS3: 6.3
CVSS2: 4.6
EPSS Низкий

Описание

Уязвимость компонента af_unix ядра операционной системы Linux связана с чтением за пределами допустимого диапазона в памяти в функции manage_oob(). Эксплуатация уязвимости может позволить нарушителю вызвать отказ в обслуживании

Вендор

Canonical Ltd.
Сообщество свободного программного обеспечения
ООО «Ред Софт»
ООО «РусБИТех-Астра»
АО "НППКТ"

Наименование ПО

Ubuntu
Debian GNU/Linux
РЕД ОС
Astra Linux Special Edition
Linux
ОСОН ОСнова Оnyx

Версия ПО

20.04 LTS (Ubuntu)
12 (Debian GNU/Linux)
7.3 (РЕД ОС)
1.7 (Astra Linux Special Edition)
4.7 (Astra Linux Special Edition)
22.04 LTS (Ubuntu)
24.04 LTS (Ubuntu)
от 5.16 до 6.1.86 включительно (Linux)
от 6.2 до 6.6.27 включительно (Linux)
от 6.7 до 6.8.6 включительно (Linux)
до 2.11 (ОСОН ОСнова Оnyx)
1.8 (Astra Linux Special Edition)
от 5.15 до 5.15.155 включительно (Linux)

Тип ПО

Операционная система

Операционные системы и аппаратные платформы

Canonical Ltd. Ubuntu 20.04 LTS
Сообщество свободного программного обеспечения Debian GNU/Linux 12
ООО «Ред Софт» РЕД ОС 7.3
ООО «РусБИТех-Астра» Astra Linux Special Edition 1.7
ООО «РусБИТех-Астра» Astra Linux Special Edition 4.7
Canonical Ltd. Ubuntu 22.04 LTS
Canonical Ltd. Ubuntu 24.04 LTS
АО "НППКТ" ОСОН ОСнова Оnyx до 2.11
Сообщество свободного программного обеспечения Linux 6.9 rc1
ООО «РусБИТех-Астра» Astra Linux Special Edition 1.8
Сообщество свободного программного обеспечения Linux от 5.15 до 5.15.156
Сообщество свободного программного обеспечения Linux от 5.15 до 6.1.87
Сообщество свободного программного обеспечения Linux от 5.15 до 6.6.28
Сообщество свободного программного обеспечения Linux от 5.15 до 6.8.7

Уровень опасности уязвимости

Средний уровень опасности (базовая оценка CVSS 2.0 составляет 4,6)
Средний уровень опасности (базовая оценка CVSS 3.0 составляет 6,3)
Нет опасности уровень опасности (базовая оценка CVSS 4.0 составляет 0)

Возможные меры по устранению уязвимости

В условиях отсутствия обновлений безопасности от производителя рекомендуется придерживаться "Рекомендаций по безопасной настройке операционных систем LINUX", изложенных в методическом документе ФСТЭК России, утверждённом 25 декабря 2022 года.
Использование рекомендаций:
Для Linux:
https://lore.kernel.org/linux-cve-announce/2024052023-CVE-2024-35970-2b77@gregkh/
Для РедоС:
http://repo.red-soft.ru/redos/7.3c/x86_64/updates/
Для Debian GNU/Linux:
https://security-tracker.debian.org/tracker/CVE-2024-35970
Для Ubuntu:
https://ubuntu.com/security/CVE-2024-35970
Для ОС Astra Linux:
обновить пакет linux-6.6 до 6.6.28-1.astra2+ci96 или более высокой версии, используя рекомендации производителя: https://wiki.astralinux.ru/astra-linux-se18-bulletin-2025-0114SE18MD
Обновление программного обеспечения linux до версии 6.6.36-0.osnova233
Для ОС Astra Linux:
- обновить пакет linux-5.10 до 5.10.142-1.astra6+ci24 или более высокой версии, используя рекомендации производителя: https://wiki.astralinux.ru/astra-linux-se17-bulletin-2025-0319SE17
- обновить пакет linux-5.15 до 5.15.0-127.astra1+ci4 или более высокой версии, используя рекомендации производителя: https://wiki.astralinux.ru/astra-linux-se17-bulletin-2025-0319SE17
- обновить пакет linux-6.1 до 6.1.90-1.astra3+ci20 или более высокой версии, используя рекомендации производителя: https://wiki.astralinux.ru/astra-linux-se17-bulletin-2025-0319SE17
Для ОС Astra Linux:
- обновить пакет linux-5.10 до 5.10.142-1.astra6+ci24 или более высокой версии, используя рекомендации производителя: https://wiki.astralinux.ru/astra-linux-se47-bulletin-2025-0422SE47
- обновить пакет linux-5.15 до 5.15.0-127.astra1+ci5 или более высокой версии, используя рекомендации производителя: https://wiki.astralinux.ru/astra-linux-se47-bulletin-2025-0422SE47
- обновить пакет linux-6.1 до 6.1.90-1.astra3+ci156 или более высокой версии, используя рекомендации производителя: https://wiki.astralinux.ru/astra-linux-se47-bulletin-2025-0422SE47

Статус уязвимости

Подтверждена производителем

Наличие эксплойта

Данные уточняются

Информация об устранении

Уязвимость устранена

Идентификаторы других систем описаний уязвимостей

EPSS

Процентиль: 18%
0.00058
Низкий

6.3 Medium

CVSS3

4.6 Medium

CVSS2

Связанные уязвимости

CVSS3: 6.3
ubuntu
около 1 года назад

In the Linux kernel, the following vulnerability has been resolved: af_unix: Clear stale u->oob_skb. syzkaller started to report deadlock of unix_gc_lock after commit 4090fa373f0e ("af_unix: Replace garbage collection algorithm."), but it just uncovers the bug that has been there since commit 314001f0bf92 ("af_unix: Add OOB support"). The repro basically does the following. from socket import * from array import array c1, c2 = socketpair(AF_UNIX, SOCK_STREAM) c1.sendmsg([b'a'], [(SOL_SOCKET, SCM_RIGHTS, array("i", [c2.fileno()]))], MSG_OOB) c2.recv(1) # blocked as no normal data in recv queue c2.close() # done async and unblock recv() c1.close() # done async and trigger GC A socket sends its file descriptor to itself as OOB data and tries to receive normal data, but finally recv() fails due to async close(). The problem here is wrong handling of OOB skb in manage_oob(). When recvmsg() is called without MSG_OOB, manage_oob() is called to check if the peeked skb is OOB skb. In such a ...

CVSS3: 5.5
redhat
около 1 года назад

In the Linux kernel, the following vulnerability has been resolved: af_unix: Clear stale u->oob_skb. syzkaller started to report deadlock of unix_gc_lock after commit 4090fa373f0e ("af_unix: Replace garbage collection algorithm."), but it just uncovers the bug that has been there since commit 314001f0bf92 ("af_unix: Add OOB support"). The repro basically does the following. from socket import * from array import array c1, c2 = socketpair(AF_UNIX, SOCK_STREAM) c1.sendmsg([b'a'], [(SOL_SOCKET, SCM_RIGHTS, array("i", [c2.fileno()]))], MSG_OOB) c2.recv(1) # blocked as no normal data in recv queue c2.close() # done async and unblock recv() c1.close() # done async and trigger GC A socket sends its file descriptor to itself as OOB data and tries to receive normal data, but finally recv() fails due to async close(). The problem here is wrong handling of OOB skb in manage_oob(). When recvmsg() is called without MSG_OOB, manage_oob() is called to check if the peeked skb is OOB skb. In su...

CVSS3: 6.3
nvd
около 1 года назад

In the Linux kernel, the following vulnerability has been resolved: af_unix: Clear stale u->oob_skb. syzkaller started to report deadlock of unix_gc_lock after commit 4090fa373f0e ("af_unix: Replace garbage collection algorithm."), but it just uncovers the bug that has been there since commit 314001f0bf92 ("af_unix: Add OOB support"). The repro basically does the following. from socket import * from array import array c1, c2 = socketpair(AF_UNIX, SOCK_STREAM) c1.sendmsg([b'a'], [(SOL_SOCKET, SCM_RIGHTS, array("i", [c2.fileno()]))], MSG_OOB) c2.recv(1) # blocked as no normal data in recv queue c2.close() # done async and unblock recv() c1.close() # done async and trigger GC A socket sends its file descriptor to itself as OOB data and tries to receive normal data, but finally recv() fails due to async close(). The problem here is wrong handling of OOB skb in manage_oob(). When recvmsg() is called without MSG_OOB, manage_oob() is called to check if the peeked skb

CVSS3: 6.3
debian
около 1 года назад

In the Linux kernel, the following vulnerability has been resolved: a ...

CVSS3: 6.3
github
около 1 года назад

In the Linux kernel, the following vulnerability has been resolved: af_unix: Clear stale u->oob_skb. syzkaller started to report deadlock of unix_gc_lock after commit 4090fa373f0e ("af_unix: Replace garbage collection algorithm."), but it just uncovers the bug that has been there since commit 314001f0bf92 ("af_unix: Add OOB support"). The repro basically does the following. from socket import * from array import array c1, c2 = socketpair(AF_UNIX, SOCK_STREAM) c1.sendmsg([b'a'], [(SOL_SOCKET, SCM_RIGHTS, array("i", [c2.fileno()]))], MSG_OOB) c2.recv(1) # blocked as no normal data in recv queue c2.close() # done async and unblock recv() c1.close() # done async and trigger GC A socket sends its file descriptor to itself as OOB data and tries to receive normal data, but finally recv() fails due to async close(). The problem here is wrong handling of OOB skb in manage_oob(). When recvmsg() is called without MSG_OOB, manage_oob() is called to check if the peeked ...

EPSS

Процентиль: 18%
0.00058
Низкий

6.3 Medium

CVSS3

4.6 Medium

CVSS2