Відкритий код дозволяє за лічені хвилини додати до продукту надзвичайні можливості. Водночас він може створювати прогалину в управлінні: невелика кількість зовнішніх акаунтів впливає на програмне забезпечення в основі продуктів, інфраструктури й клієнтських середовищ, тоді як організація-споживач мало знає про операційний контекст репозиторію.
Пов’язаність із Юрисдикціями Високого Ризику допомагає закрити цю прогалину. Це зрозумілий сигнал для перевірки, побудований на достовірних публічних локаціях, які самостійно вказали власник репозиторію, видимі ключові контриб’ютори та публічні організації з їхніх профілів. Якщо дані відповідають чинній політиці, звіт виразно показує присутність і коригує Безпеку та загальний рейтинг, щоб популярність або сильна інженерна практика не приховали її.
Чи має цей репозиторій пов’язаність із юрисдикцією високого ризику, яка потребує посиленої перевірки людиною?
Сигнал не визначає надійність людини. Він не встановлює національність, громадянство, місце проживання, погляди, зловмисні наміри чи санкційний статус.
Чому це частина управління ланцюгом постачання
Корпоративні рішення щодо залежностей виходять за межі якості коду. Закупівлі, безпека, юридична функція, стійкість і державний сектор можуть потребувати врахування:
- обов'язків щодо санкційного та експортно-контрольного скринінгу;
- державних або клієнтських обмежень щодо походження та супроводу програмного забезпечення;
- моделей державних кіберзагроз і посилених вимог до походження;
- ризику безперервності, якщо доступ, платежі, хостинг чи інфраструктуру релізів порушать регіональні обмеження або збої;
- ризику концентрації, коли критична залежність спирається на невелику зовнішню спільноту супроводу; і
- необхідності пояснити, чому пакет прийняли, взяли під нагляд, ізолювали, форкнули або замінили.
Без системного сигналу ці питання виникають запізно й вирішуються непослідовно. Видимий версійований результат політики перетворює їх на повторюване рішення перевірки, а не на імпровізований пошук під час закупівлі чи інциденту.
Поточна політика
Політика охоплює публічні профільні дані для Росії, Ірану та Північної Кореї. Належність до переліку — не редакційний вибір: країна потрапляє в охоплення лише тоді, коли одночасно проходить обидва інституційні тести.
- Широка, багатостороння санкційна та експортно-контрольна експозиція. Країна перебуває під обмежувальними режимами країнового рівня, які паралельно ведуть санкційні програми Казначейства США, обмежувальні заходи ЄС та санкційні режими Великої Британії — а не лише точкові позначення окремих суб'єктів. Північна Корея додатково перебуває під санкціями Ради Безпеки ООН, а Іран і Північна Корея — дві юрисдикції під чинним закликом FATF до контрзаходів.
- Офіційно названа державна кіберзагроза. Країну названо західними кібервідомствами джерелом підтримуваних державою операцій проти технологій і ланцюгів постачання. Програма CISA щодо advanced persistent threats веде постійні настанови рівно щодо чотирьох держав — Китаю, Росії, Ірану та Північної Кореї — і щорічна оцінка загроз ODNI та UK NCSC називають ті самі чотири.
Перетин двох тестів — це рівно опубліковане охоплення, і саме він тримає його вузьким в обидва боки. Країна, що проходить лише один тест, лишається поза межами: Китай є в кожному переліку державних кіберзагроз, але не під широкими країновими санкціями; Білорусь, Куба, Сирія та Венесуела мають санкційну експозицію різної широти, але ці кібервідомства не називають їх джерелами державних операцій проти ланцюгів постачання. Обидва тести посилаються на публічні інституційні переліки, тож охоплення можна незалежно вивести заново — і воно змінюється лише тоді, коли змінюються ці переліки, через версійоване оновлення методології. Це версійована політика ланцюга постачання, а не рейтинг народів чи культур.
Збіг за локацією і збіг особи в санкційному списку — різні сигнали. inspect.software реалізує перший і не заявляє про юридичний санкційний скринінг.
Що оцінює сканер
Сканер повторно використовує публічні профільні дані, уже зібрані для:
- акаунта власника репозиторію;
- видимих ключових контриб'юторів, визначених за історією внесків, а не за приватними правами maintain чи admin у GitHub; і
- публічних організаційних афіліацій, показаних у профілях цих контриб'юторів.
Локації організацій добираються в тому самому пакетному GraphQL-запиті до GitHub. Далі класифікація працює офлайн за компактним довідником GeoNames. Перевірка не додає жодного запиту до GitHub і жодного зовнішнього сервісу збагачення персональних даних.
Множник визначають лише найсильніші підтверджені дані:
| Найсильніші підтверджені дані | Множник | Тлумачення |
|---|---|---|
| Профіль власника репозиторію | 20% | Пряма присутність акаунта власника; найвищий пріоритет перевірки |
| Профіль ключового контриб’ютора | 50% | Суттєва історія внесків; без твердження про права доступу |
| Публічна організація контриб’ютора | 75% | Контекст афіліації; свідомо слабший сигнал |
| Оцінені локації, збігів немає | 100% | Без коригування |
| Немає придатної локації | виключено | Невідомо; не вважається ані безпечним, ані небезпечним |
Збіг з боку учасника — показаного топ-учасника або публічної організації в його профілі — додатково вимагає, щоб цей учасник мав вагомий внесок у коміти: щонайменше 50 комітів або щонайменше 10% вибіркових людських комітів. Умова частки захищає малі репозиторії, де справжній співсупровідник може мати небагато комітів у абсолютних числах; абсолютна умова захищає великі, де суттєвий обсяг роботи може лишатися малим відсотком. Збіг нижче обох порогів фіксується у звіті для перевірки, але не піднімає прапорець і не змінює оцінку: кілька прийнятих комітів — це розкриття інформації, а не експозиція. Збіги власника ніколи не фільтруються — власник контролює простір імен і поверхню релізів за будь-якої кількості комітів.
Чистий результат не покращує слабку безпеку. Відсутність даних не є провалом, а кілька збігів не накопичують штрафи.
Як змінюється рейтинг
Скоригована Безпека = базова Безпека × політичний множник
Підтверджений збіг також встановлює для стану Безпеки верхню межу 34 («Під ризиком»). Категорія Безпека відображає це значення без повторного множення. Після звичайного зважування та сама політика застосовується до загального рейтингу. Так суттєва присутність не зникає в середньому значенні популярності, документації та супроводу.
Звіт зберігає базу, множник, розраховане значення та межу, тому технічний стан можна відрізнити від політичного коригування.
Як організації використовувати сигнал
Попередження відкриває due diligence; це не звинувачення і не універсальна вимога видалити пакет. Пропорційні дії можуть включати:
- Перевірити дані та роль залежності в продукті.
- Верифікувати підписи, походження, зафіксовані артефакти чи відтворювані збірки.
- Обмежити доступ до секретів, чутливих даних або production-середовищ.
- Моніторити власність, концентрацію, релізи та зміни політики.
- Планувати безперервність через альтернативу, дзеркало або життєздатний fork.
- Документувати виняток і компенсувальні контролі.
Остаточне рішення залежить від критичності, контексту виконання, зобов’язань перед клієнтами та правової й ризикової моделі організації.
Якість даних і запобіжники
Достовірними є явна назва країни або місцева форма, прапор, однозначний регіон чи місце, переважно пов’язане з країною. Суперечливий контекст лишається review-only і не змінює оцінку — інша країна, штат США або назване місто поза межами політики, тож профіль із «Seoul, North Korea» чи «London, Munich, St. Petersburg» вважається неоднозначним, а не заявою. Міжнародно визнані українські території не відносяться до Росії, якщо профіль прямо не вказує Росію.
Профіль, який називає країну, щоб заперечити перебування в ній — «not north korea», «Seoul, Korea (not DPRK)» — так само лишається review-only. Заперечення має стояти поруч зі збігом: «No. 5 Lenin St, Moscow, Russia» заявляє Росію й нічого не спростовує.
Домен, мова, ім’я, текст компанії чи виведена ідентичність не визначають локацію. Самого членства в організації також недостатньо: організація повинна сама опублікувати відповідну локацію. Публічний звіт показує лише агреговані кількості за країною і роллю, а не особи чи сирі локації.
Дизайн у суспільних інтересах
inspect.software публікує межі доказів, набір країн, множники, верхню межу та обмеження. Комерційні відносини не можуть змінити результат. Споживачі отримують корисний сигнал, а мейнтейнери бачать, що саме виміряно, чого не виведено і як оскаржити помилку. Мета — дисциплінований аналіз ризику, а не підозра через асоціацію.
Дивіться також: Безпека · стан Безпеки · методологія · сигнали, не гарантії