Use After Free

Підтримайте HackTricks

Основна інформація

Як із назви випливає, ця уразливість виникає, коли програма виділяє певний простір у купі для об'єкта, записує туди деяку інформацію, вивільняє його, оскільки він більше не потрібен, а потім знову звертається до нього.

Проблема полягає в тому, що це не є незаконним (тут не буде помилок), коли звертаються до вивільненої пам'яті. Таким чином, якщо програма (або зловмисник) змогла виділити вивільнену пам'ять та зберегти довільні дані, коли вивільнена пам'ять знову звертається з початкового вказівника, ці дані будуть перезаписані, що призведе до уразливості, яка буде залежати від чутливості даних, які були збережені спочатку (якщо це був вказівник на функцію, яка мала бути викликана, зловмисник може контролювати її).

Атака First Fit

Атака First Fit націлена на спосіб, яким деякі алокатори пам'яті, наприклад, у glibc, керують вивільненою пам'яттю. Коли ви вивільняєте блок пам'яті, він додається до списку, і нові запити пам'яті беруться з цього списку з кінця. Зловмисники можуть використовувати цю поведінку для маніпулювання які блоки пам'яті повторно використовуються, потенційно набуваючи контроль над ними. Це може призвести до проблем "використання після вивільнення", де зловмисник може змінити вміст пам'яті, яка повторно виділяється, створюючи ризик для безпеки. Додаткову інформацію можна знайти за посиланням:

First Fit
Підтримайте HackTricks

Last updated