Browser Desync Demo
Desync
Content-Length и
Transfer-Encoding, нестандартные разделители, особенности компрессии и
кеширования. Всё это влияет на то, как участники цепочки «режут» один и тот же поток.[page:1]
Атакующий исследует связку браузер → прокси → сервер и ищет граничные случаи: конфликт длины, странные заголовки, особенности кешей и балансировщиков.[page:1]
Из‑за неодинакового парсинга один и тот же поток байтов может превращаться либо в один ответ, либо в несколько ответов и начало нового документа.
В «лишний» фрагмент потока внедряется HTML/JS, который браузер видит как часть доверенного ответа и выполняет в контексте целевого сайта.
Далее возможны XSS, подмена содержимого, обход CSP, кража данных и другие эффекты — всё зависит от конфигурации стека и защиты приложения.[page:1]
Это безопасная учебная симуляция. Все расчёты происходят прямо в вашем браузере, никакие реальные HTTP‑запросы с формы не отправляются наружу.[page:1]
Задайте сырые заголовки и/или тело, нажмите «Отправить тест» и посмотрите, как условные «сервер» и «браузер» могли бы по‑разному интерпретировать ответ.
Клик по примеру заполнит оба поля формы. Значения можно отредактировать перед запуском симуляции.
Симуляция упрощена и не повторяет поведение конкретного сервера или браузера. Её цель — показать идею рассинхронизации и появления «лишнего» ответа.[page:1]
Лендинг сделан в учебных целях: практика вёрстки, адаптива и объяснения технических идей понятным языком.
GitHub: @buhtig-sudo-azar