CWE кодирование стандарта и результатов Polyspace

Общее Перечисление Слабости (CWE™) является словарем типов слабости стандартного программного обеспечения, которые могут произойти в программной архитектуре, проекте, коде или реализации. Эти слабые места могут привести к уязвимостям системы обеспечения безопасности.

CWE и Polyspace Bug Finder

Словарь CWE присваивает уникальный идентификатор каждому типу слабости программного обеспечения. Эти идентификаторы служат общим языком для описания слабых мест безопасности программного обеспечения и стандарта для средств обеспечения безопасности программного обеспечения, предназначающихся для этих слабых мест. Для получения дополнительной информации смотрите Общее Перечисление Слабости.

Результаты Polyspace® Bug Finder™ могут быть сопоставлены с идентификаторами CWE. Используя Средство поиска Ошибки, можно проверять и документ, если программному обеспечению перечислили слабые места в словаре CWE. Средство поиска ошибки поддерживает следующие аспекты Программы Совместимости и Эффективности CWE:

  • Доступный для поиска CWE: Поскольку каждый поддержал идентификатор CWE, вы видите все экземпляры в своем коде, которые имеют слабые места, соответствующие идентификатору.

  • CWE Выход: Для каждого дефекта Polyspace Bug Finder:

    • Можно просмотреть связанный идентификатор CWE.

    • Можно сообщить о связанном идентификаторе CWE.

Результаты Средства поиска ошибки сопоставлены с идентификаторами CWE (идентификаторы). Используя результаты Средства поиска Ошибки, можно оценить код против стандарта CWE. Например, CWE ID 119 (Неподходящее ограничение операций в границах буфера памяти) сопоставляет с дефектами Средства поиска Ошибки, Array access out of bounds и Pointer access out of bounds.

Для получения дополнительной информации о Программе Совместимости и Эффективности CWE см. Совместимость CWE.

Найдите идентификаторы CWE от результатов Polyspace

Используйте следующий рабочий процесс, если вы хотите сфокусировать свой анализ Средства поиска Ошибки на стандарте CWE.

  • Анализ: Проверяйте свой код только на те дефекты Средства поиска Ошибки, которые соответствуют стандарту. Используйте опцию Find defects (-checkers) со значением CWE.

  • Результаты: Если вы включаете только дефектные средства проверки, соответствующие стандарту CWE, вы видите только дефекты, которые соответствуют стандарту. Зафиксируйте или выровняйте по ширине каждый дефект.

    Наряду с дефектами, вы видите идентификаторы CWE, сопоставленные с каждым дефектом в столбце CWE ID на панели Results List. Если столбец не включен по умолчанию, щелкните правой кнопкой по любому заголовку столбца и выберите CWE ID.

  • Отчет: Когда вы генерируете отчет, выбираете SecurityCWE шаблон адаптируется для стандарта CWE. Отчет показывает идентификаторы CWE, соответствующие каждому результату.

Отображение между идентификаторами CWE и результатами Polyspace

В следующей таблице перечислены идентификаторы CWE (версия 2.8), обращенная Polyspace Bug Finder с ее соответствующими дефектными средствами проверки. Используя средства проверки дефекта Polyspace Bug Finder, можно проверять на 133 идентификатора CWE.

Существует три типа идентификаторов CWE: Класс, Основа и Вариант. Идентификаторы Класса типа задают слабые места безопасности на абстрактном уровне, независимом от определенного языка или технологии, в то время как идентификаторы Основы типа и Варианта более конкретны. С другой стороны, результаты Polyspace Bug Finder спроектированы, чтобы быть конкретными так, чтобы пользователи могли иметь точный диагноз дефекта в их коде и изучить дефект быстро. Поэтому:

  • Результаты Средства поиска Ошибки сопоставлены с определенными идентификаторами Основы типа и Варианта, а не типовыми идентификаторами Класса типа.

    Только, когда результат покрывает больше земли, чем определенный идентификатор CWE является результатом, сопоставленным с его более общим родительским типом. Например, дефектное средство проверки, Array access out of bounds покрывает много видов переполнения буфера, в то время как CWE-788 относится только к “доступу Ячейки памяти После Конца Буфера”. Поэтому дефектное средство проверки сопоставлено со своим родительским элементом, CWE-119, который относится к “Неподходящему Ограничению Операций в Границах Буфера памяти”. Однако, чтобы сохранить отображение точным, попытка предпринята, чтобы сопоставить с определенными идентификаторами CWE.

  • Часто, больше чем один результат Средства поиска Ошибки сопоставлен с определенным идентификатором CWE.

    Например, CWE-908 относится к “Использованию Неинициализированного Ресурса”. К подсветкам определенные виды неинициализированных ресурсов Средство поиска Ошибки имеет три различных средства проверки: Member not initialized in constructor, Non-initialized pointer и Non-initialized variable.

Для отображения с подмножествами CWE-658 и CWE-659, смотрите Отображение Между CWE-658 или 659 и Результатами Polyspace.

ID CWEОписание ID CWEСредство проверки дефекта Polyspace Bug Finder
15Внешнее управление параметра настройки системы или параметра конфигурации

Host change using externally controlled elements

Use of externally controlled environment variable

20Неподходящий контроль ввода

Unsafe conversion from string to numerical value

22Неподходящее ограничение пути к ограниченной директории ('обход пути')

Vulnerable path manipulation

23Обход относительного пути

Vulnerable path manipulation

36Обход абсолютного пути

Vulnerable path manipulation

67Неправильное обращение Windows Device Names

Inappropriate I/O operation on device files

77Неподходящая нейтрализация специальных элементов используется в команде

Execution of externally controlled command

Unsafe call to a system function

78Неподходящая нейтрализация специальных элементов используется в команде ОС

Execution of externally controlled command

Unsafe call to a system function

88Инжекция аргумента или модификация

Execution of externally controlled command

Unsafe call to a system function

114Управление процессом

Command executed from externally controlled path

Execution of a binary from a relative path can be controlled by an external actor

Execution of externally controlled command

Library loaded from externally controlled path

Load of library from a relative path can be controlled by an external actor

119Неподходящее ограничение операций в границах буфера памяти

Array access out of bounds

Pointer access out of bounds

120Буферная копия, не проверяя размер входа ('Классическое переполнение буфера')

Invalid use of standard library memory routine

Invalid use of standard library string routine

Tainted NULL or non-null-terminated string

121Стековое переполнение буфера

Array access with tainted index

Destination buffer overflow in string manipulation

122Основанное на куче переполнение буфера

Pointer dereference with tainted offset

124Буфер подписывает ('Недостаточное наполнение буфера')

Array access with tainted index

Buffer overflow from incorrect string format specifier

Destination buffer underflow in string manipulation

Pointer dereference with tainted offset

125За пределы читайте

Array access with tainted index

Buffer overflow from incorrect string format specifier

Destination buffer overflow in string manipulation

126Буфер зачитывался

Buffer overflow from incorrect string format specifier

127Буфер под чтением

Buffer overflow from incorrect string format specifier

128Всеобъемлющая ошибка

Integer constant overflow

Integer conversion overflow

Integer overflow

Memory allocation with tainted size

Tainted sign change conversion

Tainted size of variable length array

Unsigned integer constant overflow

Unsigned integer conversion overflow

Unsigned integer overflow

129Неподходящая валидация индекса массива

Array access with tainted index

Pointer dereference with tainted offset

130Неправильное обращение несоответствия параметра длины

Mismatch between data length and size

131Неправильное вычисление buffer size

Array access out of bounds

Memory allocation with tainted size

Pointer access out of bounds

Tainted sign change conversion

Tainted size of variable length array

Unsigned integer conversion overflow

Unsigned integer overflow

134Неконтролируемая строка формата

Tainted string format

135Неправильный расчет длины байтовой строки

Destination buffer overflow in string manipulation

Misuse of narrow or wide character string

Unreliable cast of pointer

170Неподходящее пустое завершение

Missing null in string array

Misuse of readlink()

Tainted NULL or non-null-terminated string

188Уверенность в размещении данных/памяти

Invalid assumptions about memory organization

Memory comparison of padding data

Memory comparison of strings

Missing byte reordering when transferring data

Pointer access out of bounds

189Числовые ошибки

Absorption of float operand

Float conversion overflow

Float division by zero

Float overflow

Integer constant overflow

Integer conversion overflow

Integer division by zero

Integer overflow

Precision loss in integer to float conversion

Shift of a negative value

Shift operation overflow

Tainted division operand

Unsigned integer constant overflow

Unsigned integer conversion overflow

Unsigned integer overflow

190Целочисленное переполнение или перенос

Integer conversion overflow

Integer constant overflow

Integer overflow

Integer precision exceeded

Possible invalid operation on boolean operand

Shift operation overflow

Tainted division operand

Unsigned integer conversion overflow

Unsigned integer overflow

Unsigned integer constant overflow

191Целочисленная потеря значимости (Переносятся или повторяются),

Integer constant overflow

Integer conversion overflow

Integer overflow

Unsigned integer constant overflow

Unsigned integer conversion overflow

Unsigned integer overflow

192Целочисленная ошибка приведения

Integer conversion overflow

Integer overflow

Sign change integer conversion overflow

Tainted sign change conversion

Unsigned integer conversion overflow

Unsigned integer overflow

194Неожиданное расширение знака

Sign change integer conversion overflow

Tainted sign change conversion

195Подписанный к ошибке преобразования без знака

Sign change integer conversion overflow

Tainted sign change conversion

196Без знака к ошибке преобразования со знаком

Sign change integer conversion overflow

197Числовая ошибка усечения

Float conversion overflow

Integer conversion overflow

Unsigned integer conversion overflow

198 

Missing byte reordering when transferring data

226Уязвимая информация не очищена перед релизом

Uncleared sensitive data in stack

227Ненадледжащее исполнение контракта API

Invalid use of standard library floating point routine

Invalid use of standard library integer routine

Invalid use of standard library memory routine

Invalid use of standard library routine

Invalid use of standard library string routine

Writing to const qualified object

240Неправильное обращение противоречивых структурных элементов

Mismatch between data length and size

242Использование по сути опасной функции

Use of dangerous standard function

243Создание chroot тюрьмы, не изменяя рабочую директорию

File manipulation after chroot without chdir

244Неподходящая очистка памяти кучи перед релизом

Sensitive heap memory not cleared before release

250Выполнение с ненужными привилегиями

Bad order of dropping privileges

Privilege drop not verified

251Часто неправильно используемый: управление последовательностью

Destination buffer overflow in string manipulation

252Возвращаемое значение непроверенное

Returned value of a sensitive function not checked

253Неправильная проверка функционального возвращаемого значения

Errno not checked

Errno not reset

Returned value of a sensitive function not checked

Unprotected dynamic memory allocation

Unsafe conversion from string to numerical value

273Неподходящая проверка на пропущенные привилегии

Privilege drop not verified

310Криптографические проблемы

Constant block cipher initialization vector

Constant cipher key

Context initialized incorrectly for cryptographic operation

Context initialized incorrectly for digest operation

Incompatible padding for RSA algorithm operation

Incorrect key for cryptographic algorithm

Missing blinding for RSA algorithm

Missing block cipher initialization vector

Missing certification authority list

Missing cipher algorithm

Missing cipher key

Missing data for encryption, decryption or signing operation

Missing padding for RSA algorithm

Missing parameters for key generation

Missing peer key

Missing private key

Missing public key

Missing X.509 certificate

Nonsecure hash algorithm

Nonsecure parameters for key generation

Nonsecure RSA public exponent

Nonsecure SSL/TLS protocol

Predictable block cipher initialization vector

Predictable cipher key

Weak cipher algorithm

Weak cipher mode

Weak padding for RSA algorithm

311Недостающее шифрование уязвимых данных

Missing cipher data to process

Missing cipher final step

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

Sensitive heap memory not cleared before release

Uncleared sensitive data in stack

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

Sensitive heap memory not cleared before release

Uncleared sensitive data in stack

320Ошибки управления ключами

Constant cipher key

Missing cipher key

Missing peer key

Missing private key

Missing public key

321Использование трудно закодированного криптографического ключа

Constant cipher key

325Пропавшие без вести потребовали криптографического шага

Context initialized incorrectly for cryptographic operation

Incorrect key for cryptographic algorithm

Missing block cipher initialization vector

Missing cipher data to process

Missing cipher final step

Missing cipher algorithm

Missing cipher key

Missing data for encryption, decryption or signing operation

Missing parameters for key generation

Weak cipher algorithm

Weak cipher mode

326Несоответствующая сила шифрования

Constant block cipher initialization vector

Constant cipher key

Missing blinding for RSA algorithm

Missing block cipher initialization vector

Missing padding for RSA algorithm

Nonsecure parameters for key generation

Nonsecure RSA public exponent

Predictable cipher key

Weak cipher algorithm

Weak cipher mode

Weak padding for RSA algorithm

327Использование поврежденного или опасного криптографического алгоритма

Missing padding for RSA algorithm

Nonsecure hash algorithm

Nonsecure parameters for key generation

Nonsecure RSA public exponent

Nonsecure SSL/TLS protocol

Unsafe standard encryption function

Weak cipher algorithm

Weak cipher mode

Weak padding for RSA algorithm

328Обратимый односторонний хэш

Nonsecure hash algorithm

329Не используя случайный IV с режимом CBC

Constant block cipher initialization vector

Missing block cipher initialization vector

Predictable block cipher initialization vector

330Использование недостаточно случайных значений

Deterministic random output from constant seed

Predictable block cipher initialization vector

Predictable cipher key

Predictable random output from predictable seed

Vulnerable pseudo-random number generator

336Тот же seed в PRNG

Deterministic random output from constant seed

337Предсказуемый seed в PRNG

Predictable random output from predictable seed

338Использование криптографически слабого генератора псевдослучайного числа (PRNG)

Predictable block cipher initialization vector

Predictable cipher key

Vulnerable pseudo-random number generator

353Пропавшие без вести поддержки проверки целостности

Context initialized incorrectly for digest operation

Nonsecure hash algorithm

354Неподходящая валидация значения проверки целостности

Context initialized incorrectly for digest operation

362Параллельное выполнение с помощью совместно используемого ресурса с неподходящей синхронизацией ('Состояние состязания')

File descriptor exposure to child process

Opening previously opened resource

364Состояние состязания обработчика сигнала

Function called from signal handler not asynchronous-safe (strict)

Function called from signal handler not asynchronous-safe

Shared data access within signal handler

366Состояние состязания в потоке

Data race including atomic operations

Data race through standard library function call

Data race

367Состояние состязания времени использования времени проверки (TOCTOU)

File access between time of check and use (TOCTOU)

369Разделитесь на нуль

Float division by zero

Integer division by zero

Invalid use of standard library floating point routine

Invalid use of standard library integer routine

Tainted division operand

Tainted modulo operand

372Неполное различие внутреннего состояния

Context initialized incorrectly for cryptographic operation

Context initialized incorrectly for digest operation

Incompatible padding for RSA algorithm operation

Inconsistent cipher operations

Missing cipher data to process

Missing cipher final step

Missing data for encryption, decryption or signing operation

Missing parameters for key generation

375Возврат изменяемого объекта недоверяемой вызывающей стороне

Return of non const handle to encapsulated data member

377Небезопасный временный файл

Use of non-secure temporary file

387Ошибки сигнала

Function called from signal handler not asynchronous-safe (strict)

Function called from signal handler not asynchronous-safe

Return from computational exception signal handler

Signal call from within signal handler

391Состояние ошибки непроверенное

Errno not checked

398Индикатор плохого качества кода

Write without a further read

401Неподходящий релиз памяти прежде, чем удалить последнюю ссылку

Memory leak

Thread-specific memory leak

404Неподходящее завершение работы ресурса или релиз

Invalid deletion of pointer

Invalid free of pointer

Memory leak

Mismatched alloc/dealloc functions on Windows

Thread-specific memory leak

413Неподходящая блокировка ресурса

Data race

Data race including atomic operations

Data race through standard library function call

Function called from signal handler not asynchronous-safe

Function called from signal handler not asynchronous-safe (strict)

Opening previously opened resource

Shared data access within signal handler

415Двойной свободный

Deallocation of previously deallocated pointer

Missing reset of a freed pointer

416Используйте после свободный

Missing reset of a freed pointer

Use of previously freed pointer

426Недоверяемый путь поиска файлов

Command executed from externally controlled path

Library loaded from externally controlled path

427Неконтролируемый элемент пути поиска файлов

Execution of a binary from a relative path can be controlled by an external actor

Library loaded from externally controlled path

Load of library from a relative path can be controlled by an external actor

Use of externally controlled environment variable

456Недостающая инициализация переменной

Errno not reset

Member not initialized in constructor

Non-initialized pointer

Non-initialized variable

457Использование неинициализированной переменной

Member not initialized in constructor

Non-initialized pointer

Non-initialized variable

465

Проблемы указателя

Unsafe conversion between pointer and integer

466Возвратитесь из значения указателя за пределами ожидаемой области значений

Array access out of bounds

Pointer access out of bounds

Unsafe conversion between pointer and integer

467Использование sizeof () на типе указателя

Possible misuse of sizeof

Wrong type used in sizeof

468Неправильное масштабирование указателя

Incorrect pointer scaling

469Использование вычитания указателя, чтобы определить размер

Subtraction or comparison between pointers to different arrays

471Модификация принятых - неизменяемые данные

Writing to const qualified object

474Использование функции с противоречивыми реализациями

Signal call from within signal handler

Use of obsolete standard function

475Неопределенное поведение для входа к API

Copy of overlapping memory

476Нулевой указатель разыменовывает

Null pointer

Tainted NULL or non-null-terminated string

477Использование устаревших функций

Use of obsolete standard function

478Недостающий случай по умолчанию в операторе switch

Missing case for switch condition

479Использование обработчика сигнала неповторно используемой функции

Function called from signal handler not asynchronous-safe (strict)

Function called from signal handler not asynchronous-safe

480Использование неправильного оператора

Invalid use of = (assignment) operator

Invalid use of == (equality) operator

481Присвоение вместо сравнения

Invalid use of = (assignment) operator

482Сравнение вместо присвоения

Invalid use of == (equality) operator

484Не использованный оператор завершения в переключателе

Missing break of switch case

522Недостаточно защищенные учетные данные

Constant cipher key

Nonsecure hash algorithm

Nonsecure parameters for key generation

Nonsecure RSA public exponent

Nonsecure SSL/TLS protocol

Unsafe standard encryption function

532Информационное воздействие через файлы журнала

Sensitive data printed out

534Информационное воздействие через файлы журнала отладки

Sensitive data printed out

535Информационное воздействие через сообщение об ошибке интерпретатора

Sensitive data printed out

547Использование трудно закодированных, констант, важных для безопасности,

Hard coded buffer size

Hard coded loop boundary

558Использование getlogin () в многопоточном приложении

Unsafe standard function

560Использование umask () с аргументом chmod-стиля

Umask used with chmod-style arguments

561Мертвый код

Dead code

Static uncalled function

Unreachable code

562Возвратитесь из адреса переменной стека

Pointer or reference to stack variable leaving scope

Use of automatic variable as putenv-family function argument

573Неподходящее следующее спецификации вызывающей стороной

Context initialized incorrectly for cryptographic operation

Context initialized incorrectly for digest operation

Incompatible padding for RSA algorithm operation

Incorrect key for cryptographic algorithm

Missing blinding for RSA algorithm

Missing cipher data to process

Missing cipher final step

Missing cipher algorithm

Missing cipher key

Missing data for encryption, decryption or signing operation

Missing hash algorithm

Missing parameters for key generation

Missing peer key

Missing private key

Missing public key

Modification of internal buffer returned from nonreentrant standard function

587Присвоение фиксированного адреса к указателю

Function pointer assigned with absolute address

Unsafe conversion between pointer and integer

590Свободный от памяти не на куче

Invalid free of pointer

606Неконтролируемое входное условие цикла for

Loop bounded with tainted value

628Вызов функции с неправильно заданными аргументами

Bad file access mode or status

Copy of overlapping memory

Invalid va_list argument

Modification of internal buffer returned from nonreentrant standard function

Standard function call with incorrect arguments

658Смотрите отображение между CWE-658 или 659 и результатами Polyspace.
659Смотрите отображение между CWE-658 или 659 и результатами Polyspace.
663Использование неповторно используемой функции в параллельном контексте

Function called from signal handler not asynchronous-safe (strict)

Function called from signal handler not asynchronous-safe

Unsafe standard encryption function

Unsafe standard function

664Неподходящее управление ресурса в течение его времени жизни

Context initialized incorrectly for cryptographic operation

Context initialized incorrectly for digest operation

Incompatible padding for RSA algorithm operation

Inconsistent cipher operations

Incorrect key for cryptographic algorithm

Missing cipher data to process

Missing cipher final step

Missing cipher key

Missing peer key

Missing private key

Missing public key

665Неподходящая инициализация

Call to memset with unintended value

Improper array initialization

Overlapping assignment

Use of memset with size argument zero

666Операция на ресурсе в неправильной фазе времени жизни

Incorrect order of network connection operations

667Неподходящая блокировка

Blocking operation while holding lock

Destruction of locked mutex

Missing unlock

672Операция на ресурсе после истечения или релиза

Closing a previously closed resource

Use of previously closed resource

675Дублирующиеся операции на ресурсе

Opening previously opened resource

676Использование потенциально опасной функции

Unsafe conversion from string to numerical value

Use of dangerous standard function

681Неправильное преобразование между числовыми типами

Float conversion overflow

Precision loss in integer to float conversion

682Неправильное вычисление

Absorption of float operand

Bitwise operation on negative value

Float overflow

Invalid use of standard library floating point routine

Invalid use of standard library integer routine

Tainted modulo operand

Use of plain char type for numerical value

683Вызов функции с неправильным порядком аргументов

Call to memset with unintended value

Format string specifiers and arguments mismatch

685Вызов функции с неправильным количеством аргументов

Declaration mismatch

Format string specifiers and arguments mismatch

Standard function call with incorrect arguments

Too many va_arg calls for current argument list

686Вызов функции с неправильным типом аргумента

Bad file access mode or status

Declaration mismatch

Format string specifiers and arguments mismatch

Incorrect data type passed to va_arg

Standard function call with incorrect arguments

Use of automatic variable as putenv-family function argument

Writing to const qualified object

687 Вызов функции с неправильно заданным значением аргумента

Copy of overlapping memory

Standard function call with incorrect arguments

Variable length array with nonpositive size

690Возвращаемое значение непроверенное к нулевому указателю разыменовывает

Invalid use of standard library memory routine

Invalid use of standard library routine

Invalid use of standard library string routine

Null pointer

Returned value of a sensitive function not checked

Standard function call with incorrect arguments

Tainted NULL or non-null-terminated string

Unprotected dynamic memory allocation

Use of tainted pointer

691Недостаточное управление потоком управления

Use of setjmp/longjmp

693Отказ механизма защиты

Nonsecure SSL/TLS protocol

696Неправильный порядок поведения

Bad order of dropping privileges

703Неподходящая проверка или обработка исключительных условий

Errno not reset

Misuse of errno

704Неправильное преобразование типов или бросок

Character value absorbed into EOF

Misuse of sign-extended character value

Precision loss in integer to float conversion

Qualifier removed in conversion

Unreliable cast of pointer

Wrong allocated object size for cast

705Неправильное определение объема потока управления

Abnormal termination of exit handler

710Кодирование стандартного нарушения

Bitwise and arithmetic operation on the same data

732Неправильное присвоение разрешения для критического ресурса

Vulnerable permission assignments

754Неподходящая проверка на необычные или исключительные условия

Returned value of a sensitive function not checked

755Неправильное обращение исключительных условий

Exception handler hidden by previous handler

758Уверенность в неопределенном, незаданном, или заданном реализацией поведении

Bitwise operation on negative value

Unsafe conversion between pointer and integer

Use of plain char type for numerical value

759Использование одностороннего хэша без соли

Missing salt for hashing operation

762Несовпадающие стандартные программы управления памятью

Invalid free of pointer

Mismatched alloc/dealloc functions on Windows

764Несколько блокировок критического ресурса

Double lock

765Несколько разблокировали критического ресурса

Double unlock

767Доступ к критической частной переменной через открытый метод

Return of non const handle to encapsulated data member

770Выделение ресурсов без пределов или регулировки

Tainted size of variable length array

772Недостающий релиз ресурса после эффективного времени жизни

Resource leak

780Использование rsa алгоритма без oaep

Missing padding for RSA algorithm

Weak padding for RSA algorithm

783Ошибка логики приоритета оператора

Possibly unintended evaluation of expression because of operator precedence rules

785Использование манипуляции с путями функционирует без буфера максимального размера

Use of path manipulation function without maximum sized buffer checking

786Доступ ячейки памяти прежде запускается буфера

Destination buffer underflow in string manipulation

787За пределы запишите

Destination buffer overflow in string manipulation

Destination buffer underflow in string manipulation

789Неконтролируемое выделение памяти

Memory allocation with tainted size

Tainted size of variable length array

Unprotected dynamic memory allocation

805Буферный доступ с неправильным значением длины

Hard-coded object size used to manipulate memory

822Недоверяемый указатель разыменовывает

Tainted NULL or non-null-terminated string

Use of tainted pointer

823Использование указателя из области значений возмещено

Pointer access out of bounds

Pointer dereference with tainted offset

824Доступ неинициализированного указателя

Non-initialized pointer

825Указатель с истекшим сроком разыменовывает

Accessing object with temporary lifetime

Deallocation of previously deallocated pointer

Environment pointer invalidated by previous operation

Missing reset of a freed pointer

Pointer or reference to stack variable leaving scope

Use of automatic variable as putenv-family function argument

Use of previously freed pointer

826Преждевременный релиз ресурса в течение ожидаемого времени жизни

Closing a previously closed resource

Destruction of locked mutex

Use of previously closed resource

828Обработчик сигнала с функциональностью, которая не асинхронно-безопасна

Function called from signal handler not asynchronous-safe (strict)

Function called from signal handler not asynchronous-safe

832Разблокируйте ресурса, который не заблокирован

Missing lock

833Мертвая блокировка

Deadlock

843Доступ ресурса с помощью несовместимого типа ('Вводят беспорядок'),

Unreliable cast of pointer

872CERT C++ безопасный раздел кодирования 04 - Целые числа (INT)

Invalid use of standard library integer routine

873CERT C++ Безопасный Раздел Кодирования 05 - арифметика С плавающей точкой (FLP)

Absorption of float operand

Float overflow

Floating point comparison with equality operators

Invalid use of standard library floating point routine

908Использование неинициализированного ресурса

Member not initialized in constructor

Non-initialized pointer

Non-initialized variable

910Использование дескриптора файла с истекшим сроком

Closing a previously closed resource

Standard function call with incorrect arguments

Use of previously closed resource

922Небезопасное устройство хранения данных уязвимой информации

File manipulation after chroot without chdir

Umask used with chmod-style arguments

Use of non-secure temporary file

Vulnerable permission assignments