Цепь поставок состоит из множества процессов — от доставки сырья к производству, распределению и выходу готового продукта для потребителей. Однако налаженность этих взаимосвязанных действий можно нарушить не только физическим повреждением продукта, но и вмешательством в кибербезопасность цепи поставок, например, путем заражения роутера или программного обеспечения.

Недавно компания FireEye стала жертвой кибератаки, во время которой злоумышленники установили обновление с вредоносным кодом в продукт для управления сетью под названием Orion от SolarWinds. Бэкдор SUNBURST был внедрен в Orion до того, как код был предоставлен FireEye. Таким образом потребители получили поврежденный конечный продукт.

В этом случае вредоносное обновление через механизм Orion установили около 18 тысяч коммерческих и государственных организаций. По крайней мере на 100 из них были направлены следующие атаки, во время которых киберпреступники добавляли дополнительные компоненты и глубже проникали в сети компаний.

Именно поэтому атаки на цепь поставок несут огромные убытки, поскольку сломав только одного поставщика, злоумышленники могут в итоге получить беспрепятственный доступ к большим клиентским базам, который сложно обнаружить.

Самые громкие атаки на цепь поставок

Инцидент с SolarWinds напомнил и о других атаках такого типа, в частности, взлом CCleaner в 2017 и 2018 годах, а также кибератаки с использованием NotPetya (также известного как Diskcoder.C). А еще в 2013 году Target стала жертвой взлома, связанного с похищением учетных данных стороннего поставщика HVAC. Этот инцидент впервые привлек внимание к атакам на цепь поставок.

Только за последние месяцы исследователи ESET обнаружили несколько примеров подобных атак — от группы Lazarus, которая использует дополнительную программу по безопасности для распространения вредоносного кода, к операциям SignSight для взлома центра сертификации и NightScout с целью заражения эмулятора Android.

Чем опасны атаки на цепочки поставок

Постепенно рамки между аппаратным и программным обеспечением становятся более размытыми. Большая часть сложного механизма в готовом коде уже сделана и находится в открытом или, по крайней мере, широком доступе. Инженеры лишь загружают его, пишут код, который связывает все воедино, и отправляют готовый продукт. Все работает при условии отсутствия повреждения кода где-то в процессе.

Нельзя быть уверенным, что каждое звено в любой цепи поставок защищено от несанкционированного доступа. В свою очередь злоумышленники могут воспользоваться этим с целью добавить в программное обеспечение бэкдоры для использования в дальнейших атаках.

Это превратилось в глобальную гонку, которая сопровождается ростом рынка киберпреступности. В случае выявления серьезной ошибки в программном обеспечении возникает вопрос продать информацию злоумышленникам за немалую сумму или сообщить производителю и получить символическую благодарность. В таких условиях выбор кажется очевидным, что составляет еще большую угрозу цепям поставок.

Для любой компании полностью контролировать цепь поставок и гарантировать ее безопасность невозможно. Однако специалисты ESET подготовили рекомендации, соблюдение которых поможет минимизировать риски стать жертвой атак на цепь поставок.

  1. Знайте особенности своего программного обеспечения — ведите инвентаризацию всех готовых инструментов с открытым исходным кодом, которые используются в вашей организации.

  2. Следите за известными уязвимостями и своевременно применяйте исправления — атаки с использованием вредоносных обновлений не являются поводом отказываться от обновления программного обеспечения.

  3. Откажитесь от ненужных или устаревших систем, сервисов и протоколов.

  4. Оцените риски своих поставщиков, изучив их собственные процессы безопасности.

  5. Установите требования безопасности для поставщиков программного обеспечения.

  6. Предлагайте осуществлять регулярные аудиты кода и интересуйтесь проверками безопасности и изменениями компонентов кода.

  7. Применяйте инструменты для управления доступом и двухфакторную аутентификацию для защиты процессов разработки программного обеспечения.

  8. Используйте решение по безопасности с несколькими уровнями защиты.