Що таке JQuery?
JQuery - це бібліотека JavaScript, яка може полегшити вашу роботу з кодом. Це потужний інструмент, але версії до 3.5.0 вразливі до міжсайтового скриптингу (XSS). У цій статті ми поговоримо про відображення вразливості міжсайтовому скриптингу в старих версіях бібліотеки JQuery.
Як це може бути скомпрометовано?
Перше, що ми маємо перевірити, - це версія JQuery, в цьому прикладі у нас версія 1.8.3, яка є вразливою:
<script src="https://code.jquery.com/jquery-1.8.3.js"></script>
Після того, як ви перевірили, ми можемо починати атаку міжсайтового скриптингу. В цьому прикладі, ми напишемо попередження (alert) “1”. Ми маємо форму HTML з такими полями для вводу:
<form>
<input id="test" placeholder="Enter malicious input here" size="30" value="INPUT" />
<input type="submit" value="Submit" />
</form>
Після ін'єкції нашого корисного навантаження міжсайтового скриптингу (XSS) в полі введення і відправки, ми побачимо наше попередження з описом “1” на веб-сторінці.
Ця вразливість була виправлена за допомогою нової версії JQuery (3.5.0 ). Тому, якщо ви хочете оновити бібліотеку JQuery до останньої версії (наприклад, 3.6.0):
<script src="https://code.jquery.com/jquery-3.6.0.js"></script>
То цей код (міжсайтового скриптингу) не може бути виконаний:
<style><style /><img src=x onerror=alert(1)>
У цій статті ми наводимо приклад відображення вразливості міжсайтового скриптингу (XSS). Зловмисник може змінити посилання за допомогою шкідливого коду на веб-сайт, і воно буде виконуватися в браузері жертви, в результаті може бути скомпрометована конфіденційна інформація або виконані власні операції під час видання особистих даних користувача.
Як запобігти цьому?
У цьому випадку корисно оновити бібліотеку JQuery до останньої версії, оскільки розробники виправили цю проблему з вразливістю міжсайтового скриптингу.
Джерела: