Strsafe.h - strsafe.h - Wikipedia
strsafe.h нестандартный заголовочный файл C, поставляемый с Windows SDK начиная с Windows XP Service Pack 2[1] который обеспечивает более безопасную обработку буфера, чем это предусмотрено стандартом C строковые функции, которые, как известно, имеют проблемы с безопасностью, связанные с переполнение буфера при неправильном использовании.
Описание
Функции, включенные в strsafe.h, заменяют стандартные функции обработки строк C и ввода-вывода, включая printf
, Strlen
, strcpy
и strcat
.[2] Для функций strsafe в качестве параметра требуется длина строки в символах или байтах, и если операция превысит длину целевого буфера, операция завершится неудачно, и строка по-прежнему будет завершена ноль в его окончательном действительном индексе, поэтому его использование в других библиотечных функциях не приведет к неопределенному поведению.[1][2] Независимые исследователи безопасности отметили, что проблемы безопасности все еще возможны с функциями из strsafe.h, если им не передана правильная длина буфера.[3] Использование этой библиотеки рекомендовано Министерством внутренней безопасности США.[4]
Рекомендации
- ^ а б «О Strsafe.h (Windows)».
- ^ а б Рихтер, Джеффри; Насарре, Кристоф. Windows через C / C ++ пятое издание. Microsoft Press. С. 11–32. ISBN 9780735663770.
- ^ Дасвани, Нил; Керн, Кристофер; Кесаван, Анита. Основы безопасности: что нужно знать каждому программисту. ООО "Апресс Медиа". п. 121. ISBN 9781590597842.
- ^ Плакош, Даниил. "Strsafe.h | Обеспечьте безопасность".
внешняя ссылка
Этот компьютерное программирование -связанная статья является заглушка. Вы можете помочь Википедии расширяя это. |