GitHub запустив бета-версію нової функції автоматичного сканування коду для виявлення та виправлення вразливостей безпеки під час його написання. Ця нова функція поєднує можливості роботи в реальному часі GitHub Copilot з CodeQL, механізмом семантичного аналізу коду.

  • GitHub обіцяє, що ця нова система зможе усувати понад дві третини виявлених вразливостей – часто без потреби редагувати код самими розробниками.
  • Компанія також обіцяє, що автоматичне виправлення сканування коду охоплюватиме понад 90% типів оповіщень підтримуваними мовами, наразі це JavaScript, Typescript, Java та Python.
  • У GitHub вважають, що завдяки цій функії розробники можуть зосередитися на складніших завданнях, а не витрачати час на рутинне виправлення помилок.
Скрін GitHub

Як це працює?

GitHub Copilot і CodeQL сканують код на наявність вразливостей. У разі їх виявлення пропонуватимуться варіанти виправлення з поясненням, а також попередній перегляд запропонованого коду. Розробник може прийняти запропоноване виправлення, відредагувати його або відхилити.

Що далі?

GitHub планує розширити підтримку автоматичного виправлення сканування коду на інші мови програмування, такі як C# і Go. Користувачів також заохочують ділитися своїми відгуками та пропозиціями, щоб допомогти покращити нову функцію.

Перше покоління системи CodeQL на GitHub з’явилося ще у 2019 році. За минулі роки система зазнала низки покращень, але одне залишалося незмінним – вона доступна безкоштовно лише для дослідників і розробників проєктів з відкритим кодом.

Для генерації виправлень та їх пояснень GitHub використовує модель OpenAI GPT-4.

І хоча GitHub впевнений, більшість запропонованих системою виправлень коду буде правильною, компанія зазначає, що можуть бути незначні помилки.