Сценарий:
1️⃣ Злоумышленник анонсирует «более короткий» BGP-маршрут к npm-зеркалу или внутреннему registry
2️⃣ Часть трафика идёт через его автономную систему
3️⃣ MITM, подмена зеркала, вмешательство в доставку пакетов
4️⃣ CI получает модифицированную зависимость
Платформа не взломана. Но supply chain уже заражён. GitHub — сложная цель: Anycast, несколько аплинков, RPKI. Реалистичнее атака на менее защищённые зеркала или внутренние registry. Прецеденты есть: Rostelecom 2020, Pakistan Telecom → YouTube 2008, AS7007.
⚠️ Почему это критично:
— CI автоматически тянет зависимости
— Большинство проектов не проверяют подписи пакетов
— Lock-файлы не спасают без верификации integrity hash — а большинство CI гоняет `npm ci` молча
— Разработчики замечают проблему слишком поздно
Один hijack — и вредоносный код распространяется через ваши же сборки.
❓ Что реально мониторить:
— RPKI / Origin Validation — валиден ли анонс префикса
— AS-path в traceroute — неожиданные автономные системы в маршруте
— Резкие скачки latency и TTL
— Аномалии в логах CI при загрузке зависимостей
🛡 Практический вывод:
Современный периметр — это CI/CD. Минимальный уровень зрелости: внутреннее зеркало registry, кэш зависимостей, изоляция runner'ов, проверка checksum / подписи пакетов, мониторинг сетевых маршрутов.
Если защищён ноутбук, но не защищена сборка — атакующему даже не нужно писать эксплойт.
🔥 — видел BGP-аномалии в своей инфре
❤️ — уже защитил CI/CD
🌚 — у нас это вообще не мониторится
📍 Навигация: [Вакансии]
🐸 Библиотека хакера
#breach_breakdown
