Перейти к содержимому
Noroxi
NVD / CVE Program· CNA Linux

CVE-2025-39756: fs: Prevent file descriptor table allocations exceeding INT_MAX

Оценка Noroxi

Приоритет: Наблюдать (оценка срочности 22/100)

  • В отслеживаемых источниках (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) нет публичного эксплойта или записей об эксплуатации.
  • Вероятность эксплуатации в ближайшие 30 дней: 0,18% (FIRST EPSS).
  • Может быть вызвана пользователем с локальным доступом к системе. Достаточно учётной записи с низкими привилегиями. Действия пользователя не требуются. Особые условия не требуются; воспроизводится стабильно.
  • Исправленная версия: Linux Linux 04a2c4b4511d186b0fce685da21085a5d4acd370, 237e416eb62101f21b28c9e6e564d10efe1ecc6f, 628fc28f42d979f36dbf75a6129ac7730e30c04e; azl3 kernel 6.6.96.2-2 on Azure Linux 3.0 6.6.104.2-1.

Пока низкий приоритет. Обновитесь до Linux Linux 04a2c4b4511d186b0fce685da21085a5d4acd370, 237e416eb62101f21b28c9e6e564d10efe1ecc6f, 628fc28f42d979f36dbf75a6129ac7730e30c04e; azl3 kernel 6.6.96.2-2 on Azure Linux 3.0 6.6.104.2-1 или новее.

Формируется автоматически по данным записи: CVSS (NVD и CNA), CISA KEV и SSVC, FIRST EPSS, источники эксплойтов, исправленные версии. Как мы считаем

Первоисточники: NVD · CVE.org · FIRST EPSS

In the Linux kernel, the following vulnerability has been resolved: fs: Prevent file descriptor table allocations exceeding INT_MAX When sysctl_nr_open is set to a very high value (for example, 1073741816 as set by systemd), processes attempting to use file descriptors near the limit can trigger massive memory allocation attempts that exceed INT_MAX, resulting in a WARNING in mm/slub.c: WARNING: CPU: 0 PID: 44 at mm/slub.c:5027 __kvmalloc_node_noprof+0x21a/0x288 This happens because kvmalloc_array() and kvmalloc() check if the requested size exceeds INT_MAX and emit a warning when the allocation is not flagged with __GFP_NOWARN. Specifically, when nr_open is set to 1073741816 (0x3ffffff8) and a process calls dup2(oldfd, 1073741880), the kernel attempts to allocate: - File descriptor array: 1073741880 * 8 bytes = 8,589,935,040 bytes - Multiple bitmaps: ~400MB - Total allocation size: > 8GB (exceeding INT_MAX = 2,147,483,647) Reproducer: 1. Set /proc/sys/fs/nr_open to 1073741816: # echo 1073741816 > /proc/sys/fs/nr_open 2. Run a program that uses a high file descriptor: #include <unistd.h> #include <sys/resource.h> int main() { struct rlimit rlim = {1073741824, 1073741824}; setrlimit(RLIMIT_NOFILE, &rlim); dup2(2, 1073741880); // Triggers the warning return 0; } 3. Observe WARNING in dmesg at mm/slub.c:5027 systemd commit a8b627a introduced automatic bumping of fs.nr_open to the maximum possible value. The rationale was that systems with memory control groups (memcg) no longer need separate file descriptor limits since memory is properly accounted. However, this change overlooked that: 1. The kernel's allocation functions still enforce INT_MAX as a maximum size regardless of memcg accounting 2. Programs and tests that legitimately test file descriptor limits can inadvertently trigger massive allocations 3. The resulting allocations (>8GB) are impractical and will always fail systemd's algorithm starts with INT_MAX and keeps halving the value until the kernel accepts it. On most systems, this results in nr_open being set to 1073741816 (0x3ffffff8), which is just under 1GB of file descriptors. While processes rarely use file descriptors near this limit in normal operation, certain selftests (like tools/testing/selftests/core/unshare_test.c) and programs that test file descriptor limits can trigger this issue. Fix this by adding a check in alloc_fdtable() to ensure the requested allocation size does not exceed INT_MAX. This causes the operation to fail with -EMFILE instead of triggering a kernel warning and avoids the impractical >8GB memory allocation request.

СредняяCVSS 5.5 · v3.1—Эксплойта нет Есть исправление
Опубликовано
11 сент. 2025 г.
Обновлено
19 окт. 2026 г.
EPSS
0,1 % · 7-й процентиль

Инструменты для отчёта

JSON

Оценка срочности

22

Наблюдать

Пока низкий приоритет.

CVSS
22 / 40 · 5.5 / 10
CISA KEV
0 / 30 · Нет в списке
EPSS
0 / 30 · 0,1 %

Узнайте, когда запись изменится

  • Нет в KEV: эксплуатация в реальных атаках не зафиксирована
  • Публичного эксплойта нет
  • Исправление выпущено

Если что-то из этого изменится, сообщим в ежедневной сводке.

Следить за CVE-2025-39756

Когда мы напишем

  • когда запись попадёт в CISA KEV
  • когда появится или станет боевым эксплойт
  • когда запись обновится (в том числе исправленная версия)
  • когда EPSS вырастет на 20 пунктов за неделю

Одна сводка в день по почте (06:00 UTC); с вебхуком попадание в KEV и боевые эксплойты — сразу.

С бесплатным аккаунтом также

У вас WordPress? Проверьте сайт бесплатно в WP Lens

  • Оповещения по стеку: добавьте свои продукты и версии — новые CVE для них придут вам
  • Мониторинг сайта: 1 сайт, письмо сразу при недоступности
  • Добавьте домен: поддомены и риск захвата проверяются каждую неделю (1 домен)
  • 10 проверок в час в инструментах безопасности (без аккаунта — 3 в день), API-ключ и MCP
  • Все сканирования в одной панели: находки, изменения с прошлого сканирования, отчёт по домену или клиенту (PDF, ссылка для просмотра)
Все бесплатные инструменты

Регистрация по почте · Уже есть аккаунт? Войти

Бесплатный аккаунт, без карты. Отписаться можно в любой момент.

У вас WordPress? Проверьте сайт бесплатно в WP Lens

Затронута ли ваша версия? Проверьте

Анализ Noroxi

Что это значит для вашей инфраструктуры?

Оценка выше формируется автоматически по данным записи и не знает вашей среды. Наша команда проверит на ваших системах, действительно ли уязвимость эксплуатируема и какой меры достаточно.

Мы используем этот продукт, нужна помощь

Затронутые системы

Затронута ли ваша версия?

Выберите продукт и введите свою версию. Она сравнивается с диапазонами этой записи прямо в браузере и никуда не отправляется.

ВендорПродукт
linuxlinux kernel
debiandebian linux

Затронутые версии

Диапазоны версий NVD (для продуктов из каталога). Добавьте продукт в стек с версией, и сопоставление будет по ним.

  • debian debian linux11.0
  • linux linux kernel5.5 и новее · до 5.10.241
  • linux linux kernel5.11 и новее · до 5.15.190
  • linux linux kernel5.16 и новее · до 6.1.149
  • linux linux kernel2.6.25 и новее · до 5.4.297
  • linux linux kernel6.7 и новее · до 6.12.43
  • linux linux kernel6.13 и новее · до 6.15.11
  • linux linux kernel6.16 и новее · до 6.16.2
  • linux linux kernel6.2 и новее · до 6.6.103

Версии, заявленные вендором

Диапазоны затронутых версий, заявленные назначающей организацией (Linux). Не зависят от анализа CPE в NVD и обычно опережают его.

  • Linux Linux

    • 2.6.25затронута
    • 9cfe015aa424b3c003baba3841a60dd9b5ad319b и новее · до b4159c5a90c03f8acd3de345a7f5fc63b0909818затронута · git
    • 9cfe015aa424b3c003baba3841a60dd9b5ad319b и новее · до f95638a8f22eba307dceddf5aef9ae2326bbcf98затронута · git
    • 9cfe015aa424b3c003baba3841a60dd9b5ad319b и новее · до 749528086620f8012b83ae032a80f6ffa80c45cdзатронута · git
    • 9cfe015aa424b3c003baba3841a60dd9b5ad319b и новее · до 628fc28f42d979f36dbf75a6129ac7730e30c04eзатронута · git
    • 9cfe015aa424b3c003baba3841a60dd9b5ad319b и новее · до 237e416eb62101f21b28c9e6e564d10efe1ecc6fзатронута · git
    • 9cfe015aa424b3c003baba3841a60dd9b5ad319b и новее · до d4f9351243c17865a8cdbe6b3ccd09d0b13a7bccзатронута · git
    • 9cfe015aa424b3c003baba3841a60dd9b5ad319b и новее · до 9f61fa6a2a89a610120bc4e5d24379c667314b5cзатронута · git
    • 9cfe015aa424b3c003baba3841a60dd9b5ad319b и новее · до dfd1f4ea98c3bd3a03d12169b5b2daa1f0a3e4aeзатронута · git
    • 9cfe015aa424b3c003baba3841a60dd9b5ad319b и новее · до 04a2c4b4511d186b0fce685da21085a5d4acd370затронута · git

Затронутые пакеты

Данные OSV и GitHub Advisory: экосистема, пакет и диапазон. Сопоставление SBOM использует эту таблицу.

ЭкосистемаПакетЗатронутый диапазонИсправление
Debian:12linuxдо 6.1.153-16.1.153-1
Debian:13linuxдо 6.12.43-16.12.43-1
Debian:14linuxдо 6.16.3-16.16.3-1
openSUSE:Leap 16.0dtb-aarch64до 6.12.0-160000.7.16.12.0-160000.7.1
openSUSE:Leap 16.0kernel-64kbдо 6.12.0-160000.7.16.12.0-160000.7.1
openSUSE:Leap 16.0kernel-defaultдо 6.12.0-160000.7.16.12.0-160000.7.1
openSUSE:Leap 16.0kernel-default-baseдо 6.12.0-160000.6.1.160000.2.46.12.0-160000.6.1.160000.2.4
openSUSE:Leap 16.0kernel-docsдо 6.12.0-160000.7.16.12.0-160000.7.1
openSUSE:Leap 16.0kernel-kvmsmallдо 6.12.0-160000.7.16.12.0-160000.7.1
openSUSE:Leap 16.0kernel-obs-buildдо 6.12.0-160000.7.16.12.0-160000.7.1
openSUSE:Leap 16.0kernel-obs-qaдо 6.12.0-160000.7.16.12.0-160000.7.1
openSUSE:Leap 16.0kernel-rtдо 6.12.0-160000.7.16.12.0-160000.7.1
openSUSE:Leap 16.0kernel-sourceдо 6.12.0-160000.7.16.12.0-160000.7.1
openSUSE:Leap 16.0kernel-symsдо 6.12.0-160000.7.16.12.0-160000.7.1
openSUSE:Leap 16.0kernel-zfcpdumpдо 6.12.0-160000.7.16.12.0-160000.7.1
SUSE:Linux Enterprise Server 16.0kernel-docsдо 6.12.0-160000.7.16.12.0-160000.7.1
SUSE:Linux Enterprise Server 16.0kernel-kvmsmallдо 6.12.0-160000.7.16.12.0-160000.7.1
SUSE:Linux Enterprise Server 16.0kernel-obs-qaдо 6.12.0-160000.7.16.12.0-160000.7.1
SUSE:Linux Enterprise Server 16.0kernel-symsдо 6.12.0-160000.7.16.12.0-160000.7.1
SUSE:Linux Enterprise Server 16.0kernel-zfcpdumpдо 6.12.0-160000.7.16.12.0-160000.7.1
SUSE:Linux Micro 6.2kernel-64kbдо 6.12.0-160000.7.16.12.0-160000.7.1
SUSE:Linux Micro 6.2kernel-defaultдо 6.12.0-160000.7.16.12.0-160000.7.1
SUSE:Linux Micro 6.2kernel-default-baseдо 6.12.0-160000.6.1.160000.2.46.12.0-160000.6.1.160000.2.4
SUSE:Linux Micro 6.2kernel-rtдо 6.12.0-160000.7.16.12.0-160000.7.1

+2

Тот же продукт

linux: все записи

Другие записи с наивысшей оценкой для того же основного продукта.

  • CVE-2026-31431crypto: algif_aead - Revert to operating out-of-placeKEV
    90Срочно
  • CVE-2022-0847A flaw was found in the way the "flags" member of the new pipe buffer structure was lacking proper initialization in copy_page_to_iter_pipe KEV
    89Срочно
  • CVE-2021-22555Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACEKEV
    85Срочно

Опубликованы до и после этой записи в том же продукте

  • ← РаньшеCVE-2025-3975311 сент. 2025 г. · gfs2: Set .migrate_folio in gfs2_{rgrp,meta}_aops
    22Наблюдать
  • ← РаньшеCVE-2025-3975411 сент. 2025 г. · mm/smaps: fix race between smaps_hugetlb_range and migration
    18Наблюдать
  • Позже →CVE-2025-3975711 сент. 2025 г. · ALSA: usb-audio: Validate UAC3 cluster segment descriptors
    28Наблюдать

Исправление

На какую версию обновиться

Версии с исправлением по данным вендора, реестров пакетов и Microsoft. Перед обновлением сверьтесь с бюллетенем вендора.

Продукт / пакетИсправленная версияИсточник
Linux Linux04a2c4b4511d186b0fce685da21085a5d4acd370Вендор (CNA)
Linux Linux237e416eb62101f21b28c9e6e564d10efe1ecc6fВендор (CNA)
Linux Linux628fc28f42d979f36dbf75a6129ac7730e30c04eВендор (CNA)
Linux Linux749528086620f8012b83ae032a80f6ffa80c45cdВендор (CNA)
Linux Linux9f61fa6a2a89a610120bc4e5d24379c667314b5cВендор (CNA)
Linux Linuxb4159c5a90c03f8acd3de345a7f5fc63b0909818Вендор (CNA)
Linux Linuxd4f9351243c17865a8cdbe6b3ccd09d0b13a7bccВендор (CNA)
Linux Linuxdfd1f4ea98c3bd3a03d12169b5b2daa1f0a3e4aeВендор (CNA)
Linux Linuxf95638a8f22eba307dceddf5aef9ae2326bbcf98Вендор (CNA)
azl3 kernel 6.6.96.2-2 on Azure Linux 3.06.6.104.2-1 · CBL-Mariner ReleasesMicrosoft (MSRC)
debian:linux6.1.153-1 · Debian:12Реестр пакетов (OSV)
opensuse:dtb-aarch646.12.0-160000.7.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-64kb6.12.0-160000.7.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-default6.12.0-160000.7.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-default-base6.12.0-160000.6.1.160000.2.4 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-docs6.12.0-160000.7.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-kvmsmall6.12.0-160000.7.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-obs-build6.12.0-160000.7.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-obs-qa6.12.0-160000.7.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-rt6.12.0-160000.7.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-source6.12.0-160000.7.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-syms6.12.0-160000.7.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
opensuse:kernel-zfcpdump6.12.0-160000.7.1 · openSUSE:Leap 16.0Реестр пакетов (OSV)
suse:kernel-64kb6.12.0-160000.7.1 · SUSE:Linux Micro 6.2Реестр пакетов (OSV)
suse:kernel-default6.12.0-160000.7.1 · SUSE:Linux Micro 6.2Реестр пакетов (OSV)
suse:kernel-default-base6.12.0-160000.6.1.160000.2.4 · SUSE:Linux Micro 6.2Реестр пакетов (OSV)
suse:kernel-docs6.12.0-160000.7.1 · SUSE:Linux Enterprise Server 16.0Реестр пакетов (OSV)
suse:kernel-kvmsmall6.12.0-160000.7.1 · SUSE:Linux Enterprise Server 16.0Реестр пакетов (OSV)
suse:kernel-obs-build6.12.0-160000.7.1 · SUSE:Linux Micro Extras 6.2Реестр пакетов (OSV)
suse:kernel-obs-qa6.12.0-160000.7.1 · SUSE:Linux Enterprise Server 16.0Реестр пакетов (OSV)

+4

Статус эксплойта

Публичный эксплойт неизвестен

Публичный эксплойт пока не обнаружен. Это не значит, что вы в безопасности, лишь что порог чуть выше.

Контекст для исследователя

Для пентестеров и исследователей: профиль атаки, расхождение оценок, хронология, коммиты исправлений, авторы, кандидаты в варианты и цепочки, охват bug bounty. Всё выводится из имеющихся данных; без кода эксплойтов.

Хронология

От публикации до сегодня: proof of concept, модуль Metasploit, CISA KEV и запись об исправлении. Даты — как сообщают источники.

Кроме публикации датированных событий нет.

Истории пока нет (накапливается ежедневным заданием EPSS).

Ссылки на патчи и коммиты

Коммиты, PR и diff среди источников. Отправная точка для patch-diff и поиска вариантов; это исправления, не эксплойты.

Среди источников нет ссылок на коммит или PR.

Нашедшие, сообщившие и аналитики, названные в записи CNA. Нажмите имя, чтобы увидеть другие записи исследователя.

В записи CNA нет авторов.

Кандидаты в варианты

Тот же продукт, тот же класс уязвимости, в пределах 18 месяцев. Если патч не закрыл первопричину, родственная ошибка здесь.

Ночной расчёт связей ничего не нашёл.

Кандидаты в цепочки

Обход аутентификации и уязвимость, требующая привилегий, в одном продукте и близко по времени: вместе они могут дать путь без аутентификации.

—

Охват bug bounty

Известной публичной программы нет.

Источник: bounty-targets-data (публичные списки HackerOne, Bugcrowd, Intigriti, YesWeHack).

Технические детали

Условия атаки

  • Может быть вызвана пользователем с локальным доступом к системе.
  • Достаточно учётной записи с низкими привилегиями.
  • Действия пользователя не требуются.
  • Особые условия не требуются; воспроизводится стабильно.

В случае успеха

Конфиденциальность
нет
Целостность
нет
Доступность
высокое · работа сервиса может быть нарушена
Вектор атаки
Локальный
Сложность атаки
Низкая
Требуемые привилегии
Низкие
Взаимодействие с пользователем
Не требуется
Область действия
Не изменяется
Влияние на конфиденциальность
Нет
Влияние на целостность
Нет
Влияние на доступность
Высокое

Вектор CVSS

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

nvd-primary

Контекст атаки

Шаблоны атак MITRE CAPEC и техники ATT&CK для этого класса уязвимости (CWE). Отправная точка для правил обнаружения и threat hunting.

У MITRE нет сопоставления CAPEC/ATT&CK для этого CWE.

Журнал изменений

  1. Исправление✗ → ✓

Для отслеживаемых записей эти изменения приходят и как уведомления. →

Источники

Все записи