01.03.2025 | Олег Зайцев: креативная XSS-атака обошла защиту Fortune 500 компаний |
Уязвимость межсайтового скриптинга (XSS) в популярном фреймворке для виртуальных 360°-туров была использована злоумышленниками для массового внедрения вредоносных скриптов на сотни сайтов. Цель атаки — манипуляция результатами поиска и масштабная кампания по продвижению спам-рекламы. Как сообщает независимый исследователь безопасности Олег Зайцев, кампания, получившая название 360XSS, затронула более 350 сайтов, включая правительственные порталы, университеты, отели, автомобильные дилерские центры и крупные корпорации из списка Fortune 500. Все эти сайты использовали Krpano — популярный фреймворк для встраивания 360°-изображений и видео, позволяющий создавать виртуальные туры. Зайцев обнаружил кампанию случайно, когда увидел рекламу порнографического контента, продвигаемую через домен Йельского университета. Механизм атаки основан на передаче XML-параметра, который позволяет загружать внешнюю конфигурацию. Вредоносный код, зашифрованный в Base64, выполнялся при переходе по подставленному URL, приводя к перенаправлению на рекламные страницы. Функция passQueryParameters, использованная в Krpano, передавала HTTP-параметры в обработчик, что позволяло эксплуатировать XSS- уязвимость . О проблеме в Krpano стало известно ещё в 2020 году, когда была зарегистрирована уязвимость CVE-2020-24901 с оценкой 6.1 по шкале CVSS. Тогда разработчики фреймворка выпустили версию 1.20.10, где механизм передачи параметров был ограничен списком разрешённых значений. Однако исследование показало, что явное добавление XML-параметра в список исключений вновь открывает возможность атаки. По словам Зайцева, злоумышленники использовали уязвимость для массового захвата доверенных доменов с целью продвижения рекламы азартных игр, диетических добавок, фейковых новостей и даже увеличения просмотров на YouTube. Использование XSS для SEO Poisoning позволило таким сайтам подниматься в результатах поисковой выдачи, создавая иллюзию их легитимности. Хотя XSS требует взаимодействия с пользователем, в данном случае распространение ссылок через поисковые системы сделало атаку особенно эффективной. Зайцев назвал этот метод очень креативным и подчеркнул, что он с лёгкостью позволяет обойти традиционные меры защиты. После раскрытия проблемы разработчики Krpano выпустили обновление 1.22.4, полностью отключающее поддержку внешних XML-конфигураций. Теперь параметр passQueryParameters не может использовать URL, выходящие за пределы текущей директории. Личность злоумышленников остаётся неизвестной, однако характер атаки указывает на рекламную сеть с сомнительными методами монетизации. Всем владельцам сайтов, использующих Krpano, рекомендуется обновить фреймворк до последней версии, а также отключить passQueryParameters. Тем, кто уже пострадал, рекомендуется найти и удалить заражённые страницы при помощи Google Search Console. |
Проверить безопасность сайта