Уязвимости
Двойное освобождение
Также известно как: Уязвимость двойного освобождения
Определение
Ошибка безопасности памяти, при которой один и тот же чанк кучи освобождается дважды, повреждая метаданные аллокатора и часто открывая возможность выполнения произвольного кода.
Примеры
- CVE-2015-1322: двойное освобождение в tcache glibc, ведущее к повреждению кучи.
- CVE-2019-19377: двойное освобождение в btrfs Linux, вызванное некорректными образами.
Связанные термины
Использование после освобождения
Ошибка безопасности памяти, при которой программа продолжает использовать память после её освобождения, часто позволяя атакующему управлять состоянием объектов и перехватывать выполнение.
Повреждение памяти
Обобщающий термин для уязвимостей, при которых программа пишет за пределы предполагаемой памяти, нарушая типовую безопасность, поток управления или целостность данных.
Переполнение кучи
Переполнение буфера в динамически выделенной памяти, часто повреждающее метаданные аллокатора, указатели функций или виртуальные таблицы объектов.
Эксплойт
Код, данные или метод, использующий уязвимость для вызова непредусмотренного поведения — выполнения кода, повышения привилегий или раскрытия информации.
Secure Coding
Secure Coding — definition coming soon.
Уязвимость
Слабое место в системе, приложении или процессе, которое злоумышленник может использовать для нарушения конфиденциальности, целостности или доступности.