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

exploitDog

fstec логотип

BDU:2025-07375

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

Описание

Уязвимость функции rds_recvmsg() модуля net/rds/recv.c реализации сетевых функций ядра операционной системы Linux связана с неправильным освобождением памяти перед удалением последней ссылки («утечка памяти»). Эксплуатация уязвимости может позволить нарушителю оказать воздействие на конфиденциальность и доступность защищаемой информации

Вендор

Сообщество свободного программного обеспечения

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

Linux

Версия ПО

от 4.5 до 4.9.273 включительно (Linux)
от 4.10 до 4.14.237 включительно (Linux)
от 4.15 до 4.19.195 включительно (Linux)
от 5.11 до 5.12.12 включительно (Linux)
от 4.20 до 5.4.127 включительно (Linux)
от 5.5 до 5.10.45 включительно (Linux)
от 2.6.30 до 4.4.273 включительно (Linux)

Тип ПО

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

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

Сообщество свободного программного обеспечения Linux от 4.5 до 4.9.273 включительно
Сообщество свободного программного обеспечения Linux от 4.10 до 4.14.237 включительно
Сообщество свободного программного обеспечения Linux от 4.15 до 4.19.195 включительно
Сообщество свободного программного обеспечения Linux от 5.11 до 5.12.12 включительно
Сообщество свободного программного обеспечения Linux от 4.20 до 5.4.127 включительно
Сообщество свободного программного обеспечения Linux от 5.5 до 5.10.45 включительно
Сообщество свободного программного обеспечения Linux от 2.6.30 до 4.4.273 включительно

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

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

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

В условиях отсутствия обновлений безопасности от производителя рекомендуется придерживаться "Рекомендаций по безопасной настройке операционных систем LINUX", изложенных в методическом документе ФСТЭК России, утверждённом 25 декабря 2022 года.
Использование рекомендаций:
Для Linux:
https://git.kernel.org/stable/c/1f79bc8ae81c05eb112a53f981cb2c244ee50d02
https://git.kernel.org/stable/c/49bfcbfd989a8f1f23e705759a6bb099de2cff9f
https://git.kernel.org/stable/c/06b7cb0194bd1ede0dd27f3a946e7c0279fba44a
https://git.kernel.org/stable/c/8c3ec88b03e9e4ca117dcdc4204fd3edcd02084f
https://git.kernel.org/stable/c/5946fbf48355f5a8caeff72580c7658da5966b86
https://git.kernel.org/stable/c/423c6939758fb3b9cf5abbd1e7792068a5c4ae8c
https://git.kernel.org/stable/c/b25b60d076164edb3025e85aabd2cf50a5215b91
https://git.kernel.org/stable/c/2038cd15eacdf7512755c27686822e0052eb9042
https://lore.kernel.org/linux-cve-announce/2024052144-CVE-2021-47249-ed65@gregkh/
https://git.kernel.org/linus/49bfcbfd989a8f1f23e705759a6bb099de2cff9f
https://git.linuxtesting.ru/pub/scm/linux/kernel/git/lvc/linux-stable.git/commit/?h=v5.10.176-lvc1&id=5946fbf48355f5a8caeff72580c7658da5966b86
https://kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.4.274
https://kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.274
https://kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.238
https://kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.196
https://kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.128
https://kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.46
https://kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.12.13

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

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

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

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

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

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

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

EPSS

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

5.5 Medium

CVSS3

4.6 Medium

CVSS2

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

CVSS3: 5.5
ubuntu
больше 1 года назад

In the Linux kernel, the following vulnerability has been resolved: net: rds: fix memory leak in rds_recvmsg Syzbot reported memory leak in rds. The problem was in unputted refcount in case of error. int rds_recvmsg(struct socket *sock, struct msghdr *msg, size_t size, int msg_flags) { ... if (!rds_next_incoming(rs, &inc)) { ... } After this "if" inc refcount incremented and if (rds_cmsg_recv(inc, msg, rs)) { ret = -EFAULT; goto out; } ... out: return ret; } in case of rds_cmsg_recv() fail the refcount won't be decremented. And it's easy to see from ftrace log, that rds_inc_addref() don't have rds_inc_put() pair in rds_recvmsg() after rds_cmsg_recv() 1) | rds_recvmsg() { 1) 3.721 us | rds_inc_addref(); 1) 3.853 us | rds_message_inc_copy_to_user(); 1) + 10.395 us | rds_cmsg_recv(); 1) + 34.260 us | }

CVSS3: 6.1
redhat
больше 1 года назад

In the Linux kernel, the following vulnerability has been resolved: net: rds: fix memory leak in rds_recvmsg Syzbot reported memory leak in rds. The problem was in unputted refcount in case of error. int rds_recvmsg(struct socket *sock, struct msghdr *msg, size_t size, int msg_flags) { ... if (!rds_next_incoming(rs, &inc)) { ... } After this "if" inc refcount incremented and if (rds_cmsg_recv(inc, msg, rs)) { ret = -EFAULT; goto out; } ... out: return ret; } in case of rds_cmsg_recv() fail the refcount won't be decremented. And it's easy to see from ftrace log, that rds_inc_addref() don't have rds_inc_put() pair in rds_recvmsg() after rds_cmsg_recv() 1) | rds_recvmsg() { 1) 3.721 us | rds_inc_addref(); 1) 3.853 us | rds_message_inc_copy_to_user(); 1) + 10.395 us | rds_cmsg_recv(); 1) + 34.260 us | }

CVSS3: 5.5
nvd
больше 1 года назад

In the Linux kernel, the following vulnerability has been resolved: net: rds: fix memory leak in rds_recvmsg Syzbot reported memory leak in rds. The problem was in unputted refcount in case of error. int rds_recvmsg(struct socket *sock, struct msghdr *msg, size_t size, int msg_flags) { ... if (!rds_next_incoming(rs, &inc)) { ... } After this "if" inc refcount incremented and if (rds_cmsg_recv(inc, msg, rs)) { ret = -EFAULT; goto out; } ... out: return ret; } in case of rds_cmsg_recv() fail the refcount won't be decremented. And it's easy to see from ftrace log, that rds_inc_addref() don't have rds_inc_put() pair in rds_recvmsg() after rds_cmsg_recv() 1) | rds_recvmsg() { 1) 3.721 us | rds_inc_addref(); 1) 3.853 us | rds_message_inc_copy_to_user(); 1) + 10.395 us | rds_cmsg_recv(); 1) + 34.260 us | }

CVSS3: 5.5
debian
больше 1 года назад

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

CVSS3: 5.5
github
больше 1 года назад

In the Linux kernel, the following vulnerability has been resolved: net: rds: fix memory leak in rds_recvmsg Syzbot reported memory leak in rds. The problem was in unputted refcount in case of error. int rds_recvmsg(struct socket *sock, struct msghdr *msg, size_t size, int msg_flags) { ... if (!rds_next_incoming(rs, &inc)) { ... } After this "if" inc refcount incremented and if (rds_cmsg_recv(inc, msg, rs)) { ret = -EFAULT; goto out; } ... out: return ret; } in case of rds_cmsg_recv() fail the refcount won't be decremented. And it's easy to see from ftrace log, that rds_inc_addref() don't have rds_inc_put() pair in rds_recvmsg() after rds_cmsg_recv() 1) | rds_recvmsg() { 1) 3.721 us | rds_inc_addref(); 1) 3.853 us | rds_message_inc_copy_to_user(); 1) + 10.395 us | rds_cmsg_recv(); 1) + 34.260 us | }

EPSS

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

5.5 Medium

CVSS3

4.6 Medium

CVSS2