Loading AI tools
З Вікіпедії, вільної енциклопедії
У комп'ютерній безпеці виконання довільного коду (ACE) — це здатність зловмисника запускати будь-які команди або код на вибір зловмисника на цільовій машині або в цільовому процесі.[1] Вразливість виконання довільного коду — це недолік безпеки у програмному забезпеченні або апаратному забезпеченні, що дозволяє виконувати довільний код. Програма, призначена для використання такої вразливості, називається експлойт для виконання довільного коду (експлойт). Можливість ініціювати виконання довільного коду через мережу (особливо через глобальну мережу, таку як Інтернет) часто називають віддаленим виконанням коду (RCE або RCX).
Виконання довільного коду означає, що якщо хтось надішле спеціально розроблений набір даних до комп'ютера, він зможе змусити його виконувати будь-які дії. Хоча ця конкретна вразливість може не призводити до реальних проблем у реальному світі, дослідники обговорюють, чи вказує вона на природну схильність комп'ютерів мати вразливості, які дозволяють несанкціоноване виконання коду.[2]
Існує кілька класів вразливостей, які можуть призвести до здатності зловмисника виконувати довільні команди або код. Наприклад:
Виконання довільного коду зазвичай досягається через контроль над лічильником команд (таким як стрибок або гілка) в процесі, що виконується. Вказівник інструкцій вказує на наступну інструкцію, яка буде виконана. Контроль над значенням вказівника інструкцій надає контроль над тим, яка інструкція буде виконана далі. Для виконання довільного коду багато експлойтів ін'єктують код у процес (наприклад, шляхом надсилання введення, яке зберігається у вхідному буфері в оперативній пам'яті) і використовують вразливість для зміни вказівника інструкцій так, щоб він вказував на ін'єктований код. Після цього ін'єктований код автоматично виконується. Цей тип атаки використовує той факт, що більшість комп'ютерів (які використовують архітектуру фон Неймана) не розрізняють код і дані,[7][8] тому шкідливий код може бути замаскований під безпечні вхідні дані. Багато новіших процесорів мають механізми, які ускладнюють це, наприклад, біт заборони виконання.[9][10]
Сам по собі експлойт для виконання довільного коду надає зловмиснику ті ж самі привілеї, що й у цільового процесу, який є вразливим.[11] Наприклад, при використанні вразливості в веббраузері, зловмисник може діяти від імені користувача, виконуючи дії, такі як зміна файлів на комп'ютері або доступ до банківської інформації, але не зможе виконувати системні дії (якщо тільки користувач не має таких прав).
Щоб обійти це обмеження, коли зловмисник отримує можливість виконувати довільний код на цільовій системі, часто намагаються використати експлойт для Підвищення привілеїв з метою отримання додаткового контролю. Це може включати доступ до самого ядра або облікового запису, такого як Адміністратор, SYSTEM або root. Незалежно від того, чи вдалося отримати підвищені привілеї, експлойти можуть завдати серйозної шкоди або перетворити комп'ютер на зомбі — однак підвищення привілеїв допомагає приховати атаку від легітимного адміністратора системи.
Хобісти ретрогеймінгу змогли знайти вразливості в класичних відеоіграх, що дозволяють їм виконувати довільний код, зазвичай використовуючи точну послідовність натискань кнопок у інструментально-асистованому суперплеї для виклику переповнення буфера, що дозволяє їм записувати в захищену пам'ять. На заході Awesome Games Done Quick 2014 група ентузіастів спідрану змогла закодувати та запустити версії ігор Pong і Snake в копії Super Mario World[12], використовуючи вихід за межі функціонального покажчика, що вказує на буфер, контрольований користувачем, для виконання довільного коду.
12 червня 2018 року боснійський дослідник безпеки Жан-Ів Авенар з Mozilla виявив вразливість для виконання довільного коду (ACE) в Windows 10.[13]
1 травня 2018 року дослідник безпеки виявив вразливість ACE у 7-Zip архіваторі файлів.[14]
PHP став об'єктом численних вразливостей ACE.[15][16][17]
9 грудня 2021 року була виявлена вразливість RCE під назвою "Log4Shell" у популярному фреймворку логування Log4j, що вплинула на багато сервісів, включаючи iCloud, Minecraft: Java Edition та Steam, і була охарактеризована як "найбільша та найкритичніша вразливість останнього десятиліття".[18][19]
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.