Как мы обсуждали в нашем предыдущем материале software supply chain security, мы изучили концепцию атак на цепочки поставок и их потенциальное влияние на организации. Эти атаки часто используют уязвимости на протяжении всего жизненного цикла разработки программного обеспечения (SDLC), представляющие значительные риски на каждом этапе. Сегодня мы рассмотрим наиболее распространенные software supply chain security угрозы, возникающие на стадии источника.
Прежде всего, крайне важно определить атаку на цепочку поставок и конкретные Software Supply Chain Security Угрозы, возникающие на стадии источника.
Определение атаки на цепочку поставок программного обеспечения
Национальный институт США Standardи технологии (NIST) определяет атаку на цепочку поставок программного обеспечения «когда атака происходит, когда субъект киберугрозы проникает в сеть поставщика программного обеспечения и использует вредоносный код для компрометации программного обеспечения до того, как поставщик отправит его своим клиентам. Затем скомпрометированное программное обеспечение компрометирует данные или систему клиента. Недавно приобретенное программное обеспечение может быть скомпрометировано с самого начала, или компрометация может произойти с помощью других средств, таких как исправление или хотфикс. В этих случаях компрометация все еще происходит до того, как исправление или хотфикс попадают в сеть клиента. Эти типы атак затрагивают всех пользователей скомпрометированного программного обеспечения и могут иметь широкомасштабные последствия для правительства, критической инфраструктуры и клиентов программного обеспечения частного сектора.
Исходный этап Software Supply Chain Security Угрозы
Этап источника жизненного цикла цепочки поставок программного обеспечения охватывает начальные фазы разработки программного обеспечения, от идеи до создания исходного кода. Этот этап включает выбор инструментов, библиотек и компонентов, а также разработку и реализацию основных функций программного обеспечения.
Software supply chain security Угрозы на этапе источника относятся к уязвимостям безопасности, которые могут быть использованы для внесения несанкционированных или вредоносных изменений в исходный код. Это включает в себя угрозу как несанкционированных лиц, так и авторизованных лиц, вносящих несанкционированные изменения.
Примеры исходных угроз
Отправьте неверный код
Отправка плохого кода относится к практике committing кода в исходный репозиторий, который содержит дефекты, ошибки или уязвимости. Это может быть как вредоносный код, намеренно внедренный для нарушения целостности или безопасности программного обеспечения, так и непреднамеренный код, который вносит ошибки или уязвимости из-за плохой практики кодирования или отсутствия тестирования. Примером этой векторной атаки был Атака НПМ. В 2022 году хакер проник в репозиторий исходного кода популярной библиотеки программного обеспечения с открытым исходным кодом npm. Хакер внедрил вредоносный код в код библиотеки, что позволило ему получить несанкционированный доступ к системам организаций, установивших библиотеку. Вредоносный код позволил хакеру украсть данные из затронутых систем, установить вредоносное ПО и нарушить работу. Атака затронула широкий круг организаций, включая государственные учреждения, предприятия и частных лиц.
Репозиторий взломанного исходного кода
Злоумышленник получает несанкционированный доступ к хранилищу исходного кода (SCM) и вносит вредоносные изменения или удаляет легитимный код. Это может быть достигнуто различными методами, такими как эксплуатация уязвимостей в SCM, компрометация учетных данных разработчика, имеющего доступ к репозиторию, или получение доступа к базовой инфраструктуре, на которой размещен SCM. Примером этой векторной атаки был PHP-атака. Атакующий скомпрометировал собственный сервер PHP Git, который является безопасным репозиторием для хранения и управления исходным кодом языка программирования PHP. Атакующий смог внедрить два вредоносных commits в основную кодовую базу PHP. Эти commits добавили бэкдоры, которые позволяли злоумышленнику получить несанкционированный доступ к установкам PHP. Бэкдоры позволяли злоумышленнику выполнять произвольный код на любой установке PHP, что могло использоваться для кражи данных, установки вредоносного ПО или нарушения работы. Атака также нанесла большой ущерб репутации PHP, поскольку вызвала опасения по поводу безопасности языка программирования.
Сборка из модифицированного исходного кода
Злоумышленник получает копию исходного кода из источника, отличного от официального репозитория исходного кода, и использует ее для сборки и развертывания программного обеспечения. Этот измененный исходный код может содержать вредоносный код, бэкдоры или другие вредоносные изменения, которые могут поставить под угрозу целостность, функциональность или безопасность программного обеспечения. Примером этой векторной атаки является Webmin Атака. Атакующий получил несанкционированный доступ к инфраструктуре сборки Webmin, которая отвечает за компиляцию и упаковку программного обеспечения Webmin. Атакующий изменил инфраструктуру сборки, чтобы использовать исходные файлы, которые отсутствовали в официальном исходном репозитории Webmin.
Пишите небезопасный код
Небезопасные методы кодирования, как преднамеренные, так и непреднамеренные, могут вносить уязвимости в программное обеспечение. Эти уязвимости могут быть использованы злоумышленниками для получения несанкционированного доступа, изменения или кражи данных или нарушения операций. Примером этой векторной атаки был Атака Apache Struts. В 2003 году хакер проник в репозиторий исходного кода библиотеки программного обеспечения с открытым исходным кодом Apache Struts. Хакер внедрил уязвимость в библиотеку, которая позволила ему получить несанкционированный доступ к системам организаций, установивших библиотеку. Уязвимость позволяла хакеру выполнять произвольный код на затронутых системах, который мог использоваться для кражи данных, установки вредоносного ПО и нарушения операций. Атака затронула широкий круг организаций, включая государственные учреждения, предприятия и частных лиц.
Вмешательство в критические файлы
Изменение или модификация критических файлов в жизненном цикле разработки программного обеспечения может иметь серьезные последствия, включая внедрение вредоносного кода, компрометацию конфиденциальных данных и нарушение работы программного обеспечения. Примером этой атаки с использованием вектора подделки был Атака Maven. В 2020 году хакеры проникли в репозиторий исходного кода популярной библиотеки программного обеспечения с открытым исходным кодом Maven. Хакеры вставили вредоносный код в файл pom.xml библиотеки, который используется для настройки процесса сборки. Вредоносный код позволил хакерам внедрить свои зависимости в процесс сборки, которые затем были включены в скомпилированное программное обеспечение. Эти зависимости содержали бэкдоры, которые позволяли хакерам получить несанкционированный доступ к системам организаций, установивших программное обеспечение.
Расчистка пути: оптимизация операций с четким представлением
Выйдите за рамки безопасности, и вы обнаружите, что визуализация вашей цепочки поставок дает больше, чем просто защиту: это похоже на включение света в темной комнате, открывающее самые быстрые и эффективные пути ваших операций. Это дает командам возможность увидеть экосистему разработки с высоты птичьего полета, позволяя им выявлять избыточные активы и необслуживаемые элементы. Такая ясность особенно полезна в крупномасштабных проектах, в которых переплетаются многочисленные блоки и компоненты.
Заключительные замечания
Понимая различные типы исходной стадии software supply chain security Устраняя угрозы и внедряя соответствующие меры безопасности, организации могут помочь защитить себя от этих разрушительных атак.
- Атаки на цепочку поставок программного обеспечения могут привести к внедрению вредоносного кода в программное обеспечение на любом этапе жизненного цикла разработки, включая этап исходного кода.
- Угрозы на этапе исходного кода включают отправку некорректного кода, компрометацию исходных репозиториев, сборку из измененных исходных кодов, написание небезопасного кода и подделку критически важных файлов.
- Организациям необходимо внедрять комплексные меры безопасности на протяжении всего жизненного цикла разработки программного обеспечения, чтобы снизить риски атак на цепочку поставок.
Хотите оставаться впереди всех в software supply chain security?
Следите за нашими предстоящая серия блогов, где мы рассмотрим наиболее распространенные атаки, которые происходят на протяжении всего жизненного цикла разработки программного обеспечения. Из этап сборки до развертывания и далее, мы снабдим вас знаниями и стратегиями, которые помогут защитить вашу организацию от этих коварных угроз.
Не пропустите! Подпишитесь на наш блог сегодня и будьте первыми, кто узнает о наших последних новостях software supply chain security.
Вместе мы сможем создать более устойчивую и безопасную программную экосистему для всех.
Посмотрите наше видео-демо





