DNS rebinding
Страница загружается с attacker.com, но DNS-сервер атакующего в разное время отвечает разными IP — сначала публичным, затем 192.168.1.1, — чтобы обойти политику одного источника.
Браузер открывает attacker.com и получает 5.5.5.5; у DNS-записи TTL=0. После загрузки страницы её JS вызывает fetch("/"), браузер заново разрешает домен и получает 192.168.1.1 (ваш роутер). Браузер по-прежнему считает, что источник тот же, поэтому куки и ограничения CORS не меняются. Итог: атакующий делает аутентифицированные запросы к админке роутера, NAS или домашнему серверу. Защита: веб-серверы должны проверять заголовок Host, роутеры — требовать аутентификацию, а браузеры и новые API (Local Network Access) закрывают эту дыру.