В TensorFlow до версии 1.15 переполнение буфера кучи в UnsortedSegmentSum может быть вызвано, когда аргумент шаблона Index имеет тип int32.…
В TensorFlow до версии 1.15 переполнение буфера кучи в UnsortedSegmentSum может быть вызвано, когда аргумент шаблона Index имеет тип int32. В этом случае поля data_size и num_segments усекаются из int64 до int32 и могут давать отрицательные числа, что приводит к доступу к памяти кучи за пределами выделенной области. Это вряд ли можно использовать, и это было обнаружено и исправлено внутри TensorFlow 1.15 и 2.0.
Переполнение кучи — это условие переполнения буфера, при котором перезаписываемый буфер выделен в области кучи памяти, что, как правило, означает выделение буфера с помощью функции наподобие malloc().
https://cwe.mitre.org/data/definitions/122.html →Открыть в коллекции CWE →Данная атака приводит к выходу целочисленной переменной за допустимый диапазон значений. Целочисленная переменная нередко используется в качестве смещения, например при выделении памяти и т. п. Злоумышленник, как правило, контролирует значение такой переменной и стремится вывести его за допустимые границы. Например, если рассматриваемое целое число инкрементируется сверх максимально допустимого значения, оно может обернуться в очень маленькое или отрицательное число, что повлечёт некорректное поведение. В худшем случае злоумышленник может выполнить произвольный код.
https://capec.mitre.org/data/definitions/92.html →Открыть в коллекции CAPEC →| Продукт | Вендор | Статус |
|---|---|---|
| tensorflow | Отслеживается | |
| tensorflow | * | Отслеживается |