Ліцензійне зараження коду від ШІ

Ліцензійне зараження коду від ШІ

Написав помічник. Належить комусь іншому.

Що таке Ліцензійне зараження коду від ШІ?

ШІ-помічник може слово в слово відтворити код, на якому навчався, разом із ліцензією, а ліцензійні зобов'язання лягають на компанію, що цей код випускає. Тут функція, яку помічник написав кілька тижнів тому, виявляється скопійованою з проєкту з копілефтом. Ви простежите її походження за смугою авторства, порівняєте з першоджерелом, замінете власною реалізацією, підтвердите виправлення ліцензійним скануванням фрагментів і запишете, звідки береться ваш код.

Що ви дізнаєтесь у Ліцензійне зараження коду від ШІ

Ліцензійне зараження коду від ШІ — Кроки навчання

  1. Повідомлення від юрисконсультки

    Аліса очолює команду SDK в Undercott. Telemetry SDK — закрита бібліотека, яку Undercott постачає клієнтам у складі їхніх пристроїв. Сьогодні вранці Ільзе, юрисконсультка Undercott, переслала зовнішнє повідомлення про цю бібліотеку.

  2. Відкрийте SDK

    Повідомлення вказує на функцію пакування бітів у src/bitpack.c з репозиторію SDK, ~/work/undercott-sdk . У смузі ліворуч від рядків фіолетові пунктирні лінії позначають код, який написав помічник і який ніхто не переглядав.

  3. Прийнято, але не прочитано

    Кілька тижнів тому Аліса попросила помічника Claude написати швидку функцію, яка пакує показання датчиків у 64-бітні слова. Claude написав її, вона пройшла тести, і Аліса її прийняла. У версії 4.2 вона дійшла до клієнтів.

  4. Прочитайте блок

    Перегляньте блок так, як переглядали б зміни колеги, і шукайте все, що не схоже на решту кодової бази.

  5. Першоджерело

    Повідомлення називає файл першоджерела: src/bitpack.c проєкту Crumbfold на платформі Githarrow.

  6. Рядок у рядок

    Порівняйте функцію з першоджерела з блоком SDK: їх показано поруч.

  7. Чого вимагає ліцензія

    Githarrow показує її короткий опис за значком ліцензії, а ще ліцензія зазначена в заголовку самого файлу.

  8. Чия це проблема

  9. Скануйте так, як перед випуском

    Сканер фрагментів створює відбитки вихідного коду й порівнює їх із відкритим кодом. Така перевірка виявила б це ще до випуску 4.2.

  10. Напишіть самі

    Перейменування змінних приховало б копію, а не прибрало її. Виправлення — функція, яку Аліса пише сама, виходячи із завдання, а не з коду Crumbfold.

Охоплення стандартів безпеки

OWASP Top 10

  • A03:2025 Software Supply Chain Failures

CWE

  • CWE-1395 Dependency on Vulnerable Third-Party Component

CIS Controls

  • CIS 16 Application Software Security
  • CIS 2 Inventory and Control of Software Assets

NIST CSF

  • PR.AT-02 Individuals in specialized roles are provided with awareness and training so that they possess the knowledge and skills to perform relevant tasks with cybersecurity risks in mind
  • PR.PS Platform Security
  • ID.AM Asset Management