# Dangling Markup - HTML scriptless injection {{#include ../../banners/hacktricks-training.md}} ## Резюме Цю техніку можна використовувати для витягування інформації від користувача, коли **знайдено HTML-ін'єкцію**. Це дуже корисно, якщо ви **не знаходите жодного способу експлуатувати** [**XSS** ](../xss-cross-site-scripting/index.html), але можете **впровадити деякі HTML-теги**.\ Це також корисно, якщо деяка **секретна інформація зберігається у відкритому тексті** в HTML, і ви хочете **екстрагувати** її з клієнта, або якщо ви хочете ввести в оману виконання деяких скриптів. Кілька технік, згаданих тут, можна використовувати для обходу деяких [**Content Security Policy**](../content-security-policy-csp-bypass/index.html) шляхом екстракції інформації несподіваними способами (HTML-теги, CSS, http-meta теги, форми, base...). ## Основні застосування ### Вкрадання секретів у відкритому тексті Якщо ви впровадите `test ``` ### Крадіжка форм ```html ``` Тоді форми, які надсилають дані на шлях (наприклад, `
`), надсилатимуть дані на зловмисний домен. ### Викрадення форм 2 Встановіть заголовок форми: ``, це перезапише наступний заголовок форми, і всі дані з форми будуть надіслані зловмиснику. ### Викрадення форм 3 Кнопка може змінити URL, куди буде надіслана інформація з форми, за допомогою атрибута "formaction": ```html ``` Зловмисник може використовувати це для крадіжки інформації. Знайдіть [**приклад цього нападу в цьому звіті**](https://portswigger.net/research/stealing-passwords-from-infosec-mastodon-without-bypassing-csp). ### Крадіжка відкритих текстових секретів 2 Використовуючи останньо згадану техніку для крадіжки форм (інжекція нового заголовка форми), ви можете потім інжектувати нове поле введення: ```html `. Усі дані до закритого `` будуть надіслані: ```html Click Me ← Injected lines ← Existing form (ignored by the parser) ... ← Subverted field ... ...
``` ### Викрадення секретів у відкритому тексті через noscript `` Це тег, вміст якого буде інтерпретовано, якщо браузер не підтримує javascript (ви можете увімкнути/вимкнути Javascript у Chrome за адресою [chrome://settings/content/javascript](chrome://settings/content/javascript)). Спосіб ексфільтрації вмісту веб-сторінки з точки ін'єкції до низу на сайт, контрольований зловмисником, буде ін'єкцією цього: ```html