V
Сканер-ВС
ГлавнаяКаталогИсточникиCWECAPECATT&CKМеры защитыПродуктыВендорыДокументация
← Вернуться к списку
CWE-129ВариантЧерновик
Абстракция: Вариант
Статус: Черновик
Источник ↗

Некорректная проверка индекса массива

Продукт использует недоверенные входные данные при вычислении или использовании индекса массива, однако не проверяет или некорректно проверяет индекс, чтобы убедиться в том, что он ссылается на допустимую позицию в массиве.

Открыть в каталоге с фильтром CWE →

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

CVE-2020-27485Garmin Forerunner 235 до версии 8.20 подвержен: Ошибка индекса массива. Компонентом является: ConnectIQ TVM. Вектор атаки: Чтобы воспользоваться уязвимостью, злоумышленник должен загрузить вредоносное приложение ConnectIQ в магазин ConnectIQ. Интерпретатор программ ConnectIQ не проверяет индекс, предоставленный при доступе к локальной переменной в инструкциях LGETV и LPUTV. Это дает возможность как читать, так и записывать память за пределами выделения контекста TVM. Ее можно использовать для создания сценария use-after-free, что приведет к ограниченному примитиву чтения/записи во всем адресном пространстве MAX32630. Успешный эксплойт позволит приложению из магазина приложений ConnectIQ выйти из системы и выполнять действия вне ограниченной среды выполнения приложений.
CVE-2020-27483Garmin Forerunner 235 до версии 8.20 подвержен: Ошибка индекса массива. Компонентом является: ConnectIQ TVM. Вектор атаки: Чтобы воспользоваться уязвимостью, злоумышленник должен загрузить вредоносное приложение ConnectIQ в магазин ConnectIQ. Интерпретатор программ ConnectIQ доверяет смещению, предоставленному для инструкции дублирования значения стека, DUP. Смещение не проверяется, и память до начала стека выполнения может быть прочитана и обработана как объект TVM. Успешный эксплойт может использовать уязвимость для утечки информации времени выполнения, такой как дескриптор кучи или указатель для ряда переменных контекста TVM. Некоторые достижимые значения могут быть достаточно контролируемыми, чтобы подделать объект TVM в стеке, что приведет к возможному удаленному выполнению кода.
CVE-2026-21413Уязвимость переполнения буфера на основе куч на основе куч существует в функциональности без потерь_jpeg_load_raw компании LibRaw Commit 0b56545 и Commit d20315b. Специально созданный вредоносный файл может привести к переполнению кучей буфера. Злоумышленник может предоставить вредоносный файл для запуска этой уязвимости.
CVE-2025-27034Повреждение памяти при выборе PLMN из списка SOR failed [1]. Источники: - [1] https://docs.qualcomm.com/product/publicresources/securitybulletin/september-2025-bulletin.html
CVE-2024-45569Коррупция памяти при анализе ML IE из-за некорректного содержания фрейма.
CVE-2024-34048O-RAN RIC I-Release e2mgr не хватает проверок размера массива в E2nodeConfigUpdateNotificationHandler.
CVE-2024-31581В FFmpeg версии n6.1 обнаружена неправильная проверка уязвимости индекса массива в libavcodec/cbs_h266_syntax_template.c. Эта уязвимость позволяет злоумышленникам вызывать неопределенное поведение в приложении.
CVE-2024-24563Vyper — это питонический язык смарт-контрактов для виртуальной машины Ethereum. Массивы могут быть индексированы целым числом со знаком, в то время как они определены только для целых чисел без знака. Typechecker не выдает ошибку при обнаружении использования `int` в качестве индекса для массива. Typechecker допускает использование целых чисел со знаком в качестве индексов для массивов. Уязвимость присутствует в различных формах во всех версиях, включая `0.3.10`. Для целых чисел используется представление дополнительного кода 2. Поскольку массив был объявлен очень большим, проверка границ пройдет. Отрицательные значения будут просто представлены как очень большие числа. На момент публикации фиксированной версии не существует. Существует три потенциальных класса уязвимостей: непредсказуемое поведение, доступ к недоступным элементам и отказ в обслуживании. Класс 1: Если возможно индексировать массив отрицательным целым числом без отката, это, скорее всего, не предполагается разработчиком, и такие обращения могут вызвать непредсказуемое поведение контракта. Класс 2: Если контракт имеет инвариант в форме `assert index \u003c x`, разработчик будет предполагать, что никакие элементы по индексам `y | y \u003e= x` недоступны. Однако, используя отрицательные индексы, это можно обойти. Класс 3: Если индекс зависит от состояния контракта, это создает риск отказа в обслуживании. Если состояние контракта можно манипулировать таким образом, что индекс будет вынужден быть отрицательным, доступ к массиву всегда может быть отменен (потому что, скорее всего, массив не будет объявлен чрезвычайно большим). Однако все эти сценарии крайне маловероятны. Наиболее вероятным поведением является откат при проверке границ.
CVE-2023-28004Существует уязвимость CWE-129: Неправильная проверка индекса массива, при которой специально созданный Ethernet-запрос может привести к отказу в обслуживании или удаленному выполнению кода.
CVE-2023-26066Некоторые устройства Lexmark до 19-02-2023 имеют неправильную проверку индекса массива.
CVE-2023-0755Затронутые продукты уязвимы для неправильной проверки индекса массива, что может позволить злоумышленнику обрушить сервер и удаленно выполнить произвольный код.
CVE-2022-40537Повреждение памяти в Bluetooth HOST во время обработки ответа AVRC_PDU_GET_PLAYER_APP_VALUE_TEXT AVRCP.
CVE-2022-33256Повреждение памяти из-за неправильной проверки индекса массива в процессоре многорежимного вызова.
CVE-2022-26100SAPCAR - версия 7.22, не содержит достаточной проверки ввода в архиве SAPCAR. В результате процесс SAPCAR может завершиться сбоем, и злоумышленник может получить привилегированный доступ к системе.
CVE-2022-25720Повреждение памяти в WLAN из-за выхода за границы массива во время подключения/роуминга в Snapdragon Auto, Snapdragon Compute, Snapdragon Connectivity, Snapdragon Consumer Electronics Connectivity, Snapdragon Consumer IOT, Snapdragon Industrial IOT, Snapdragon Mobile, Snapdragon Voice & Music, Snapdragon Wearables.