Аргумент формата ввода из небезопасного источника
Испорченный формат строки обнаруживает форматирование строки с printf
- разработайте функции, которые содержат элементы из небезопасных источников.
Если вы используете внешне управляемые элементы, чтобы отформатировать строку, можно вызвать проблемы представления данных или переполнение буфера. Атакующий может использовать эти элементы форматирования строки, чтобы просмотреть содержимое стека с помощью %x
или запишите в стек с помощью %n
.
Передайте статическую строку функциям строки формата. Эта фиксация гарантирует, что внешний агент не может управлять строкой.
Другой возможная фиксация должен позволить только ожидаемое количество аргументов. Если возможно, используйте функции, которые не поддерживают уязвимый %n
оператор в строках формата.
Группа: испорченные данные |
Язык: C | C++ |
Значение по умолчанию: 'off' |
Синтаксис командной строки: TAINTED_STRING_FORMAT |
Удар: низко |
ID CWE: 134 |
Find defects (-checkers)
| Tainted NULL or non-null-terminated string