Веб-безпека · Middle · Запитання 1 з 75
Значення екранується для HTML і вставляється в inline-скрипт: <script>var q = '{{value}}';</script>. Чому це однаково небезпечно?
- 1Бо inline-скрипти не можуть містити змінних
- ✓Правильна відповідь: HTML-екранування не захищає контекст рядка JavaScript; значенню потрібне JS-кодування або інший спосіб передавання
- 3Бо HTML-екранування перетворює лапки на пробіли
Пояснення
Кожен контекст має свої правила екранування. Найбезпечніше його уникати: покласти дані в атрибут data- чи JSON-блок і прочитати зі свого скрипту.