Алгоритми машинного навчання зараз в моді, оскільки вони використовуються для створення будь-якого «оригінального» контенту після навчання на величезних раніше існуючих наборах даних. Однак штучні інтелекти (ШІ), що генерують код, можуть створити реальну проблему для безпеки програмного забезпечення в майбутньому.
Такі системи ШІ, як GitHub Copilot, обіцяють полегшити життя програмістам, створюючи цілі фрагменти «нового» коду на основі природно-мовних текстових даних і попередньо існуючого контексту. Але алгоритми генерації коду можуть також принести фактор незахищеності, як нещодавно виявило нове дослідження за участю кількох розробників.
Розглядаючи конкретно Codex, платформу штучного інтелекту, розроблену OpenAI, яка також є двигуном для створення коду вищезгаданого GitHub Copilot, в дослідженні взяли участь 47 різних розробників. Від студентів до досвідчених професіоналів, перед ними було поставлено завдання використовувати Codex для розв’язання проблем, пов’язаних з безпекою, на мовах програмування Python, JavaScript, C та інших мовах програмування високого рівня.
Дослідники зазначили, що коли програмісти мали доступ до ШІ Codex, то отриманий код був з більшою ймовірністю некоректним або незахищеним у порівнянні з «ручними» рішеннями, задуманими контрольною групою. Крім того, програмісти з рішеннями, розробленими за допомогою ШІ, частіше стверджували, що їхній незахищений код був безпечним, порівняно з вищезгаданою контрольною групою.
Ейл Перрі, аспірант Стенфордського університету і провідний співавтор дослідження, сказав, що «системи, що генерують код, наразі не можуть замінити розробників-людей». За його словами, розробники можуть використовувати інструменти зі штучним інтелектом для виконання завдань, що не належать до їхньої компетенції, або для прискорення процесу програмування, в якому вони вже володіють певними навичками. За словами автора дослідження, вони повинні бути стурбовані і тим, і іншим, і завжди перевіряти згенерований код.
За словами Меги Шрівастава, аспірантки Стенфорду і другого співавтора дослідження, Codex не є чимось марним: попри недоліки «тупого» ШI, системи генерації коду можуть бути корисними, якщо їх використовувати для виконання завдань з низьким рівнем ризику. Крім того, програмісти, які брали участь у дослідженні, не мали особливого досвіду в питаннях безпеки, що могло б допомогти у виявленні вразливого або небезпечного коду, сказала Шрівастава.
Алгоритми штучного інтелекту також можуть бути доопрацьовані для покращення пропозицій щодо кодування, а компанії, які розробляють власні системи, можуть отримати кращі рішення за допомогою моделі, що генерує код, більш відповідний до їхніх власних практик безпеки. За словами авторів дослідження, технологія генерації коду є «захоплюючою» розробкою, і багато людей прагнуть її використовувати. Просто попереду ще багато роботи з пошуку правильних рішень для усунення недоліків ШІ.
Ви можете допомогти Україні боротися з російськими окупантами. Найкращий спосіб зробити це – пожертвувати кошти Збройним Силам України через Savelife або через офіційну сторінку НБУ.
Також цікаво: