Ваша CI/CD-цепочка крепче бетона? Спойлер: нет. Всё, что нужно — Device Code и хороший сторителлинг.
Две недели назад исследователи опубликовали материалы, посвящённые уязвимости GitHub Device Code Phishing — методу социальной инженерии, который позволяет всего за восемь цифр и телефонный звонок получить доступ к репозиториям компании в GitHub и взломать её цепочку поставок программного обеспечения.
На первый взгляд схема кажется простой, но её успешная реализация требует серьёзной подготовки. Нужно создать правдоподобную легенду, быстро взаимодействовать с жертвой и эффективно управлять токенами доступа.
Чтобы упростить такую атаку и устранить связанные с ней ограничения, специалисты разработали GitPhish — инструмент, который автоматизирует фишинг на основе Device Code Flow. Сейчас он доступен в открытом доступе на GitHub.
В основе схемы лежит эксплуатация механизма OAuth 2.0 Device Authorization Grant , при котором пользователь вводит код авторизации на отдельном устройстве, например, в браузере. Именно на этом этапе злоумышленник старается перехватить доступ.
Классические фишинговые атаки по этой схеме требуют постоянного онлайн-взаимодействия с жертвой. Это делает их трудоёмкими и ограничивает возможности масштабирования. Если пользователь заподозрит неладное или затянет процесс, вся подготовка идёт насмарку.
GitPhish решает проблемы двумя ключевыми способами. Во-первых, платформа позволяет автоматически развернуть на GitHub Pages фишинговые сайты, внешне неотличимые от легитимных страниц GitHub. Это значительно повышает доверие со стороны жертвы и позволяет пошагово провести её через процесс авторизации.
Во-вторых, система динамически генерирует уникальные коды устройств непосредственно в момент взаимодействия пользователя с фишинговым сайтом. Таким образом запускать атаку можно точно в нужное время, без риска преждевременного истечения срока действия кодов.
Гибкость особенно важна для красных команд и специалистов по тестированию безопасности. Они могут имитировать атаки сразу на несколько целей, не беспокоясь о временных ограничениях, характерных для классического подхода. Работать с GitPhish можно как через командную строку, так и через удобный веб-интерфейс. В систему встроены инструменты для логирования, аналитики и учёта токенов, что позволяет контролировать все этапы взаимодействия.
Важно, что GitPhish разработан исключительно для профессионалов. Он предназначен для проверки устойчивости корпоративных систем к фишинговым атакам и для отработки навыков обнаружения подозрительных авторизаций через OAuth.
С его помощью можно воссоздать реалистичный сценарий атаки, проверить уровень осведомлённости сотрудников и обучить инженеров мониторинга выявлять аномальные события и признаки социальной инженерии.
Запуск занимает всего несколько минут. Понадобится установленный Python и персональный токен GitHub. После клонирования репозитория достаточно выполнить стандартную команду pip install ., развернуть дашборд и подготовить имитационный сайт. Подробные инструкции и примеры включены в комплект .
Желающие могут ознакомиться с вебинаром и демонстрацией инструмента, где наглядно показано, как GitPhish используется для оценки защищённости инфраструктуры.
Параллельно команда разработчиков готовит практический курс для специалистов, интересующихся безопасностью цепочек поставок и CI/CD-инфраструктур. Тренинг Pipeline to Pwn: Mastering Modern CI/CD Attack Chains пройдёт 2–3 и 4–5 августа на конференции BlackHat USA 2025.