V
Сканер-ВС
ГлавнаяКаталогИсточникиCWECAPECATT&CKМеры защитыПродуктыВендорыДокументация
← Вернуться к списку
GoogleПриложениеnvd,anchore_overrides

Tensorflow

Уязвимости
431
Эксплуатируемые
0
Макс. CVSS
9.9
Макс. EPSS
0.01864

Распределение по критичности

Критический
18
Высокий
233
Средний
178
Низкий
2

Затронутые диапазоны версий

1.0.0–1.15.01.15.0–2.6.42.2.0–2.2.12.3.0–2.3.12.3.0–2.3.32.3.0–2.3.42.4.0–2.4.22.4.0–2.4.42.5.0–2.6.02.6.0–2.6.12.7.0–2.7.22.7.0–2.8.02.9.0–2.9.3< 1.12.2< 1.15.2< 1.15.4< 1.15.5< 1.7.0< 1.7.1< 2.1.4< 2.11.1< 2.12.0< 2.13.0< 2.4.0
Также сопоставлено как (исходные строки): tensorflow,snappy

Топ уязвимостей

CVE-2020-15196В Tensorflow версии 2.3.0 реализации `SparseCountSparseOutput` и `RaggedCountSparseOutput` не проверяют, имеет ли тензор `weights` ту же форму, что и данные. Проверка существует для `DenseCountSparseOutput`, где оба тензора полностью определены. В sparse и ragged count weights по-прежнему обращаются параллельно с данными. Но, поскольку нет никакой проверки, пользователь, передающий меньше весов, чем значения для тензоров, может сгенерировать чтение за пределами границ буфера кучи, выделенного для весов. Проблема исправлена в коммите 3cbb917b4714766030b28eba9fb41bb97ce9ee02 и выпущена в версии TensorFlow 2.3.1.
CVE-2023-25668TensorFlow — это платформа с открытым исходным кодом для машинного обучения. Злоумышленники, использующие Tensorflow версии до 2.12.0 или 2.11.1, могут получить доступ к памяти кучи, которая не контролируется пользователем, что приводит к сбою или удаленному выполнению кода. Исправление будет включено в версию TensorFlow 2.12.0, и также будет выполнен выбор коммита в версию TensorFlow 2.11.1.
CVE-2023-25664TensorFlow — это платформа с открытым исходным кодом для машинного обучения. До версий 2.12.0 и 2.11.1 произошло переполнение буфера кучи в TAvgPoolGrad. Исправление включено в версию TensorFlow 2.12.0 и 2.11.1.
CVE-2022-41900TensorFlow — это платформа с открытым исходным кодом для машинного обучения. Уязвимость безопасности приводит к FractionalMax(AVG)Pool с незаконным pooling_ratio. Злоумышленники, использующие Tensorflow, могут использовать эту уязвимость. Они могут получить доступ к памяти кучи, которая не находится под контролем пользователя, что приведет к сбою или удаленному выполнению кода. Мы исправили эту проблему в коммите GitHub 216525144ee7c910296f5b05d214ca1327c9ce48. Исправление будет включено в TensorFlow 2.11.0. Мы также выберем этот коммит в TensorFlow 2.10.1.
CVE-2022-35939TensorFlow — это платформа с открытым исходным кодом для машинного обучения. Функция `ScatterNd` принимает входной аргумент, определяющий индексы выходного тензора. Входной индекс, превышающий выходной тензор или меньший нуля, либо запишет содержимое по неправильному индексу, либо вызовет сбой. Мы исправили эту проблему в коммите GitHub b4d4b4cb019bd7240a52daa4ba61e3cc814f0384. Исправление будет включено в TensorFlow 2.10.0. Мы также перенесем этот коммит на TensorFlow 2.9.1, TensorFlow 2.8.1 и TensorFlow 2.7.2, поскольку они также затронуты и все еще находятся в поддерживаемом диапазоне. Обходные пути для этой проблемы отсутствуют.
CVE-2022-23587Tensorflow - это платформа машинного обучения с открытым исходным кодом. При определенных сценариях компонент Grappler в TensorFlow уязвим для переполнения целого числа во время оценки стоимости обрезки и изменения размера. Поскольку параметры обрезки контролируются пользователем, злоумышленник может вызвать неопределенное поведение. Исправление будет включено в TensorFlow 2.8.0. Мы также перенесем этот коммит в TensorFlow 2.7.1, TensorFlow 2.6.3 и TensorFlow 2.5.3, поскольку они также затронуты и все еще находятся в поддерживаемом диапазоне.
CVE-2020-15208В tensorflow-lite версий ниже 1.15.4, 2.0.3, 2.1.2, 2.2.1 и 2.3.1 при определении общего размера измерения двух тензоров TFLite использует `DCHECK`, который не работает вне режимов отладочной компиляции. Поскольку функция всегда возвращает размер первого тензора, злонамеренные злоумышленники могут создавать случаи, когда он больше, чем у второго тензора. В свою очередь, это приведет к чтению/записи за пределами границ, поскольку интерпретатор ошибочно предполагает, что в обоих тензорах достаточно данных. Проблема исправлена в коммите 8ee24e7949a203d234489f9da2c5bf45a7d5157d и выпущена в версиях TensorFlow 1.15.4, 2.0.3, 2.1.2, 2.2.1 или 2.3.1.
CVE-2020-15205В Tensorflow версий ниже 1.15.4, 2.0.3, 2.1.2, 2.2.1 и 2.3.1 аргумент `data_splits` `tf.raw_ops.StringNGrams` не имеет проверки. Это позволяет пользователю передавать значения, которые могут вызвать ошибки переполнения кучи и даже утечку содержимого памяти. Во связанном фрагменте кода все двоичные строки после `ee ff` являются содержимым из стека памяти. Поскольку они могут содержать адреса возврата, эта утечка данных может быть использована для обхода ASLR. Проблема исправлена в коммите 0462de5b544ed4731aa2fb23946ac22c01856b80 и выпущена в версиях TensorFlow 1.15.4, 2.0.3, 2.1.2, 2.2.1 или 2.3.1.
CVE-2019-16778В TensorFlow до версии 1.15 переполнение буфера кучи в UnsortedSegmentSum может быть вызвано, когда аргумент шаблона Index имеет тип int32. В этом случае поля data_size и num_segments усекаются из int64 до int32 и могут давать отрицательные числа, что приводит к доступу к памяти кучи за пределами выделенной области. Это вряд ли можно использовать, и это было обнаружено и исправлено внутри TensorFlow 1.15 и 2.0.
CVE-2018-7575Google TensorFlow 1.7.x и более ранние версии подвержены уязвимости переполнения буфера. Тип эксплуатации зависит от контекста.
CVE-2022-41910TensorFlow — это платформа с открытым исходным кодом для машинного обучения. Функция MakeGrapplerFunctionItem принимает аргументы, определяющие размеры входных и выходных данных. Если входные данные больше или равны размерам выходных данных, происходит чтение памяти за пределами выделенной области или сбой. Мы исправили эту проблему в коммите GitHub a65411a1d69edfb16b25907ffb8f73556ce36bb7. Исправление будет включено в TensorFlow 2.11.0. Мы также перенесем этот коммит на TensorFlow 2.8.4, 2.9.3 и 2.10.1.
CVE-2022-41902TensorFlow — это платформа с открытым исходным кодом для машинного обучения. Функция MakeGrapplerFunctionItem принимает аргументы, определяющие размеры входных и выходных данных. Если входные данные больше или равны размерам выходных данных, происходит чтение памяти за пределами выделенной области или сбой. Мы исправили эту проблему в коммите GitHub a65411a1d69edfb16b25907ffb8f73556ce36bb7. Исправление будет включено в TensorFlow 2.11.0. Мы также перенесем этот коммит на TensorFlow 2.8.4, 2.9.3 и 2.10.1.
CVE-2022-41880TensorFlow — это платформа с открытым исходным кодом для машинного обучения. Когда функция `BaseCandidateSamplerOp` получает значение в `true_classes`, превышающее `range_max`, происходит чтение кучи за пределами выделенной памяти. Мы исправили эту проблему в коммите GitHub b389f5c944cadfdfe599b3f1e4026e036f30d2d4. Исправление будет включено в TensorFlow 2.11. Мы также перенесем этот коммит в TensorFlow 2.10.1, 2.9.3 и TensorFlow 2.8.4, поскольку они также затронуты и все еще находятся в поддерживаемом диапазоне.
CVE-2022-35938TensorFlow — это платформа с открытым исходным кодом для машинного обучения. Функция `GatherNd` принимает аргументы, определяющие размеры входов и выходов. Если заданные входы больше или равны размерам выходов, происходит чтение памяти за пределами допустимого диапазона или сбой. Эта проблема была исправлена в коммите GitHub 4142e47e9e31db481781b955ed3ff807a781b494. Исправление будет включено в TensorFlow 2.10.0. Мы также перенесем этот коммит на TensorFlow 2.9.1, TensorFlow 2.8.1 и TensorFlow 2.7.2, поскольку они также затронуты и все еще находятся в поддерживаемом диапазоне. Обходные пути для этой проблемы отсутствуют.
CVE-2022-35937TensorFlow — это платформа с открытым исходным кодом для машинного обучения. Функция `GatherNd` принимает аргументы, определяющие размеры входов и выходов. Если заданные входы больше или равны размерам выходов, происходит чтение памяти за пределами допустимого диапазона. Эта проблема была исправлена в коммите GitHub 595a65a3e224a0362d7e68c2213acfc2b499a196. Исправление будет включено в TensorFlow 2.10.0. Мы также перенесем этот коммит на TensorFlow 2.9.1, TensorFlow 2.8.1 и TensorFlow 2.7.2, поскольку они также затронуты и все еще находятся в поддерживаемом диапазоне. Обходные пути для этой проблемы отсутствуют.
CVE-2021-35958TensorFlow версий до 2.5.0 позволяет злоумышленникам перезаписывать произвольные файлы через специально созданный архив, когда tf.keras.utils.get_file используется с extract=True. ПРИМЕЧАНИЕ: позиция поставщика заключается в том, что tf.keras.utils.get_file не предназначен для ненадежных архивов.
CVE-2020-15207В tensorflow-lite версий ниже 1.15.4, 2.0.3, 2.1.2, 2.2.1 и 2.3.1, чтобы имитировать индексацию Python с отрицательными значениями, TFLite использует `ResolveAxis` для преобразования отрицательных значений в положительные индексы. Однако единственная проверка того, что преобразованный индекс теперь действителен, присутствует только в отладочных сборках. Если `DCHECK` не запускается, то выполнение кода продвигается вперед с отрицательным индексом. Это, в свою очередь, приводит к доступу к данным за пределами границ, что приводит к ошибкам сегментации и/или повреждению данных. Проблема исправлена в коммите 2d88f470dea2671b430884260f3626b1fe99830a и выпущена в версиях TensorFlow 1.15.4, 2.0.3, 2.1.2, 2.2.1 или 2.3.1.
CVE-2020-15202В Tensorflow версий ниже 1.15.4, 2.0.3, 2.1.2, 2.2.1 и 2.3.1 API `Shard` в TensorFlow ожидает, что последним аргументом будет функция, принимающая два аргумента `int64` (т.е. `long long`). Однако есть несколько мест в TensorFlow, где используется лямбда-функция, принимающая аргументы `int` или `int32`. В этих случаях, если объем работы, которую необходимо распараллелить, достаточно велик, происходит усечение целого числа. В зависимости от того, как используются два аргумента лямбды, это может привести к ошибкам сегментации, чтению/записи за пределами массивов, выделенных в куче, переполнению стека или повреждению данных. Проблема исправлена в коммитах 27b417360cbd671ef55915e4bb6bb06af8b8a832 и ca8c013b5e97b1373b3bb1c97ea655e69f31a575 и выпущена в версиях TensorFlow 1.15.4, 2.0.3, 2.1.2, 2.2.1 или 2.3.1.
CVE-2022-23574Tensorflow - это фреймворк машинного обучения с открытым исходным кодом. В `SpecializeType` TensorFlow есть опечатка, которая приводит к чтению/записи кучи OOB. Из-за опечатки `arg` инициализируется `i`-м изменяемым аргументом в цикле, где индекс цикла - `j`. Следовательно, можно назначить `arg` извне вектора аргументов. Поскольку это изменяемое значение proto, оно позволяет как читать, так и записывать данные за пределами границ. Исправление будет включено в TensorFlow 2.8.0. Мы также перенесем этот коммит на TensorFlow 2.7.1 и TensorFlow 2.6.3, поскольку они также затронуты и все еще находятся в поддерживаемом диапазоне.
CVE-2022-23573Tensorflow - это фреймворк машинного обучения с открытым исходным кодом. Реализация `AssignOp` может привести к копированию неинициализированных данных в новый тензор. Это позже приводит к неопределенному поведению. Реализация имеет проверку того, что левая часть присваивания инициализирована (чтобы минимизировать количество выделений), но не проверяет, что правая часть также инициализирована. Исправление будет включено в TensorFlow 2.8.0. Мы также перенесем этот коммит на TensorFlow 2.7.1, TensorFlow 2.6.3 и TensorFlow 2.5.3, поскольку они также затронуты и все еще находятся в поддерживаемом диапазоне.
CVE-2022-23566Tensorflow - это фреймворк машинного обучения с открытым исходным кодом. TensorFlow уязвим для записи кучи OOB в `Grappler`. Функция `set_output` записывает в массив по указанному индексу. Следовательно, это дает злоумышленнику примитивную запись. Исправление будет включено в TensorFlow 2.8.0. Мы также перенесем этот коммит на TensorFlow 2.7.1, TensorFlow 2.6.3 и TensorFlow 2.5.3, поскольку они также затронуты и все еще находятся в поддерживаемом диапазоне.
CVE-2022-23562Tensorflow - это фреймворк машинного обучения с открытым исходным кодом. Реализация `Range` страдает от переполнения целого числа. Это может вызвать неопределенное поведение или, в некоторых сценариях, чрезвычайно большие выделения. Исправление будет включено в TensorFlow 2.8.0. Мы также перенесем этот коммит на TensorFlow 2.7.1, TensorFlow 2.6.3 и TensorFlow 2.5.3, поскольку они также затронуты и все еще находятся в поддерживаемом диапазоне.
CVE-2022-23561Tensorflow - это фреймворк машинного обучения с открытым исходным кодом. Злоумышленник может создать модель TFLite, которая вызовет запись за пределы границ массива в TFLite. Фактически, злоумышленник может переопределить связанный список, используемый распределителем памяти. Это можно использовать для произвольной примитивной записи при определенных условиях. Исправление будет включено в TensorFlow 2.8.0. Мы также перенесем этот коммит на TensorFlow 2.7.1, TensorFlow 2.6.3 и TensorFlow 2.5.3, поскольку они также затронуты и все еще находятся в поддерживаемом диапазоне.
CVE-2022-23560Tensorflow - это фреймворк машинного обучения с открытым исходным кодом. Злоумышленник может создать модель TFLite, которая позволит ограниченное чтение и запись за пределами массивов в TFLite. Это использует отсутствующую проверку при преобразовании из разреженных тензоров в плотные тензоры. Исправление включено в TensorFlow 2.8.0. Мы также перенесем этот коммит на TensorFlow 2.7.1, TensorFlow 2.6.3 и TensorFlow 2.5.3, поскольку они также затронуты и все еще находятся в поддерживаемом диапазоне. Пользователям рекомендуется обновиться как можно скорее.
CVE-2022-23559Tensorflow - это фреймворк машинного обучения с открытым исходным кодом. Злоумышленник может создать модель TFLite, которая вызовет переполнение целого числа в операциях поиска встраивания. И `embedding_size`, и `lookup_size` являются произведениями значений, предоставленных пользователем. Следовательно, злоумышленник может вызвать переполнение при умножении. В определенных сценариях это может привести к чтению/записи кучи OOB. Пользователям рекомендуется обновиться до исправленной версии.
Перейти к вендору →Открыть в каталоге с фильтром по продукту →