заглушки Повышение безопасности кода: преимущества и риски использования LLM для превентивного обнаружения уязвимостей - Unite.AI
Свяжитесь с нами:

Лидеры мысли

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

mm

опубликованный

 on

В динамичном ландшафте г. информационной безопасностиВ странах, где угрозы постоянно развиваются, жизненно важно опережать потенциальные уязвимости в коде. Одним из многообещающих способов является интеграция искусственного интеллекта и Большие языковые модели (LLM). Использование этих технологий может способствовать раннему обнаружению и устранению ранее не обнаруженных уязвимостей в библиотеках, повышая общую безопасность программных приложений. Или, как мы любим говорить, «нахождение неизвестного неизвестного».

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

Открытие потока

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

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

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

Навигация по доверию и вызовам

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

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

Хотя LLM преуспевают в распознавании образов и выработке решений на основе изученных шаблонов, они могут потерпеть неудачу, столкнувшись с уникальными или новыми проблемами, которые значительно отличаются от данных обучения. Иногда эти модели могут даже «галлюцинировать» генерирует ложную информацию или неправильный код. Генеративный ИИ и LLM также могут быть суетливыми, когда дело доходит до подсказок, а это означает, что небольшое изменение во вводимых вами данных может привести к значительному изменению выходного кода. Злоумышленники также могут воспользоваться этими моделями, используя быстрые инъекции или обучение. отравление данных для создания дополнительных уязвимостей или получения доступа к конфиденциальной информации. Эти проблемы часто требуют глубокого контекстуального понимания, сложных навыков критического мышления и понимания более широкой архитектуры системы. Это подчеркивает важность человеческого опыта в руководстве и проверке результатов, а также то, почему организациям следует рассматривать LLM как инструмент для расширения человеческих возможностей, а не полной их замены.

Человеческий фактор остается важным

Человеческий контроль имеет решающее значение на протяжении всего жизненного цикла разработки программного обеспечения, особенно при использовании передовых моделей искусственного интеллекта. Пока Генеративный ИИ и LLM могут решать утомительные задачи, разработчики должны четко понимать свои конечные цели. Разработчики должны иметь возможность анализировать тонкости сложной уязвимости, учитывать более широкие последствия для системы и применять знания, специфичные для предметной области, для разработки эффективных и адаптированных решений. Этот специализированный опыт позволяет разработчикам адаптировать решения, соответствующие отраслевым стандартам, требованиям соответствия и конкретным потребностям пользователей — факторам, которые не могут быть полностью учтены только моделями искусственного интеллекта. Разработчикам также необходимо проводить тщательную проверку и проверку кода, сгенерированного ИИ, чтобы гарантировать, что сгенерированный код соответствует самым высоким стандартам безопасности и надежности.

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

Брюс Снелл, стратег по кибербезопасности, Тихий ИИ, имеет более 25 лет опыта работы в сфере информационной безопасности. Его опыт включает администрирование, развертывание и консультирование по всем аспектам традиционной ИТ-безопасности. В течение последних 10 лет Брюс занимался кибербезопасностью OT/IoT (с сертификацией GICSP), работая над такими проектами, как тестирование автомобилей, нефте- и газопроводы, данные автономных транспортных средств, медицинский Интернет вещей, умные города и другие. Брюс также регулярно выступал на конференциях по кибербезопасности и Интернету вещей, а также был приглашенным лектором в Уортонской и Гарвардской школе бизнеса и соведущим удостоенного наград подкаста «Hackable?».