Функция, небезопасная в связанных с безопасностью целях
Небезопасная стандартная функция ищет функции, которые небезопасны и не должны использоваться для связанного с безопасностью программирования. Функции могут быть небезопасными по многим причинам. Некоторые функции небезопасны, потому что они неповторно используемы. Другие функции изменяются в зависимости от цели или платформы, делая некоторые реализации небезопасными.
Некоторые небезопасные функции не повторно используемы, означая, что содержимое функции не заблокировано во время вызова. Так, атакующий может изменить середину реки значений.
getlogin
в частности может быть небезопасным в зависимости от реализации. Некоторые реализации getlogin
возвращают только первые восемь символов имени для входа в систему. Атакующий может использовать различный вход в систему с теми же первыми восемью символами, чтобы получить запись и управлять программой.
Избегайте небезопасных функций в связанных с безопасностью целях. Если вы не можете избежать небезопасных функций, используйте более безопасную версию функции вместо этого. Для getlogin
используйте getlogin_r
.
Группа: безопасность |
Язык: C | C++ |
Значение по умолчанию: 'off' |
Синтаксис командной строки: UNSAFE_STD_FUNC |
Влияние: носитель |
ID CWE: 558, 663 |
Find defects (-checkers)
| Invalid use of standard library string routine
| Use of dangerous standard function
| Use of obsolete standard function