Онлайн робочі станції OnWorks Linux та Windows

логотип

Безкоштовний онлайн-хостинг для робочих станцій

<Попередній | зміст | Наступна>

11.4.2. Пошкодження пам'яті


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

Ці атаки зазвичай називають переповненням буфера, хоча цей термін є надмірним спрощенням. Найпоширеніші типи пошкодження пам’яті значно відрізняються один від одного і мають власні тактики та прийоми, необхідні для успішної експлуатації.

• Переповнення буфера стека: коли програма записує в буфер стека більше даних, ніж є для неї доступний простір, суміжна пам'ять може бути пошкоджена, що часто призводить до аварійного завершення роботи програми.

• Пошкодження кучи: пам'ять кучи виділяється під час виконання і зазвичай містить дані із запущеної програми. Пошкодження кучи відбуваються шляхом маніпулювання даними для перезапису через зв’язаний список покажчиків пам’яті купи.

• Цілочисельне переповнення: ці переповнення відбуваються, коли програма намагається створити числове значення, яке не може міститися у виділеному просторі зберігання.

• Формат рядка: коли програма приймає введення користувача та форматує його без перевірки, місця в пам'яті можуть бути виявлені або перезаписані, залежно від використовуваних маркерів форматування.


Найпопулярніші хмарні обчислення ОС на OnWorks: