В компьютерной безопасности и программирования , буфер более читаемый [1] [2] представляет собой аномалию , где программа , при чтении данных из буфера , перерасход этого буфера границей и читает (или пытается читать) смежную память. Это частный случай нарушения безопасности памяти .
Чтение буфера может быть вызвано, как и в случае с ошибкой Heartbleed , злонамеренно созданными входными данными, которые предназначены для использования отсутствия проверки границ для чтения частей памяти, не предназначенных для доступа. Они также могут быть вызваны только ошибками программирования. Чтение буфера может привести к нестабильному поведению программы, включая ошибки доступа к памяти , неверные результаты, сбой или нарушение безопасности системы. Таким образом, они являются основой многих уязвимостей программного обеспечения и могут быть злонамеренно использованы для доступа к конфиденциальной информации.
Языки программирования, обычно связанные с чрезмерным чтением буфера, включают C и C ++ , которые не обеспечивают встроенной защиты от использования указателей для доступа к данным в любой части виртуальной памяти и которые не проверяют автоматически, что чтение данных из блока памяти безопасно. ; соответствующие примеры пытаются прочитать больше элементов, чем содержится в массиве, или не могут добавить завершающий терминатор к строке с завершающим нулем . Проверка границ может предотвратить переполнение буфера [3], в то время как нечеткое тестирование может помочь обнаружить их.
Смотрите также
Рекомендации
- ^ «CWE - CWE-126: переполнение буфера (2.6)» . Cwe.mitre.org. 18 февраля 2014 . Проверено 10 апреля 2014 года .
- ^ Страккс, Рауль; Юнан, Ив; Филиппертс, Питер; Писсенс, Франк; Лахмунд, Свен; Уолтер, Томас (01.01.2009). «Нарушение предположения о секретности памяти». Труды Второго Европейского семинара по системной безопасности . EUROSEC '09. Нью-Йорк, Нью-Йорк, США: ACM: 1–8. DOI : 10.1145 / 1519144.1519145 . ISBN 9781605584720.
- ^ Ив Юнан; Воутер Йоосен; Фрэнк Писсенс (25 февраля 2013 г.). «Эффективная защита от переполнения буфера на основе кучи без использования магии» (PDF) . Кафедра компьютерных наук, Католический университет Лёвена. Архивировано из оригинального (PDF) 05.09.2013 . Проверено 24 апреля 2014 .
Внешние ссылки
- Отказ в обслуживании из-за переопределения буфера кучи PHP DateInterval
- Ошибка PHP # 66060: переполнение буфера кучи в DateInterval