Указатель на free
не сопровождается оператором сброса для удаления оставшихся данных
Этот дефект возникает, когда указатель освобождается и не переопределяется другое значение. После освобождения указателя данные памяти все еще доступны. Чтобы удалить эти данные, указатель должен быть также установлен в NULL или другое значение.
Отсутствие сброса указателей может привести к зависанию указателей. Висячие указатели могут вызвать:
Освобождение уже освобожденной памяти.
Чтение или запись в уже освобожденную память.
Хакеры, выполняющие код, хранящийся в освобожденных указателях или с уязвимыми разрешениями.
После освобождения указателя, если он не сразу назначен другому допустимому адресу, установите указатель на NULL.
Группа: Хорошая практика |
Язык: C | C++ |
По умолчанию: Off |
Синтаксис командной строки: MISSING_FREED_PTR_RESET |
Влияние: Низкое |
ИДЕНТИФИКАТОР CWE: 415, 416, 825 |