Codex Security — це дослідницька попередня версія, доступна користувачам ChatGPT Enterprise, Edu, Business і Pro. Вона допомагає командам виявляти, підтверджувати й усувати вразливості в коді. Вона створена так, щоб працювати радше як дослідник безпеки, ніж як традиційний сканер: читає код, запускає тести, досліджує реалістичні шляхи атак і пропонує виправлення, які команди можуть перевіряти у своєму звичному робочому процесі.
Огляд
Наразі Codex Security підключається безпосередньо до репозиторіїв GitHub. Після ввімкнення репозиторію він будує специфічну для кодової бази модель загроз, сканує історію репозиторію, перевіряє потенційні вразливості в ізольованому середовищі та показує запропоновані виправлення для перевірки людиною.
Codex Security побудовано навколо трьох етапів: виявлення, валідації та усунення. Під час виявлення він аналізує репозиторій і досліджує реалістичні шляхи атак. Під час валідації він намагається відтворити кожну проблему, щоб підтвердити, що вона реальна. Під час усунення він генерує конкретне виправлення, яке команди можуть перевірити й оформити як запит на злиття.
Як працює Codex Security
Коли Codex Security підключається до репозиторію, він сканує коміти у зворотному хронологічному порядку та будує модель загроз, специфічну для кодової бази. Ця модель фіксує точки входу зловмисника, межі довіри, конфіденційні дані та високовпливові шляхи коду, які Codex використовує, щоб зосередити аналіз на реалістичних сценаріях атак. Команди можуть переглядати й редагувати модель загроз, щоб вона відображала їхні реальні припущення щодо розгортання.
Codex Security дотримується замкненого робочого процесу усунення:
Сканування репозиторію: Codex підключається до вашого репозиторію GitHub, аналізує кодову базу та будує модель загроз на основі репозиторію й історії комітів.
Виявлення вразливостей: Використовуючи цю модель загроз, Codex досліджує реалістичні шляхи коду та виявляє потенційні вразливості.
Валідація в пісочниці: Codex запускає автоматизований валідатор в ізольованому середовищі, щоб відтворити проблему, зафіксувати деталі виконання та підтвердити можливість експлуатації, перш ніж показати виявлену проблему.
Генерація виправлення: Для підтверджених вразливостей Codex створює мінімальну пропозицію виправлення, яка усуває першопричину.
Перевірка людиною та запит на злиття: Виправлення не змінює ваш код автоматично. Воно показується для перевірки людиною та може бути перетворене на запит на злиття для вашого звичного робочого процесу.
Повторна валідація після усунення: Після виправлення й злиття підтвердженої проблеми Codex може повторно перевірити виправлення, замикаючи цикл від виявлення до усунення.
Для кожної виявленої проблеми Codex Security може створити аналіз шляху атаки, який показує, як контрольовані зловмисником вхідні дані можуть перейти від точки входу до чутливого результату. Він оцінює цей шлях за ймовірністю та впливом і робить базові припущення видимими, що допомагає командам пріоритезувати реалістичні ризики замість ізольованих сповіщень.
Перш ніж показати виявлену проблему, Codex Security намагається відтворити її в ізольованому середовищі. Валідатор записує результати відтворення, деталі виконання та артефакти proof-of-concept, щоб команди могли зосередитися на проблемах, які справді було продемонстровано в дії.
Для підтверджених виявлених проблем Codex Security пропонує мінімальне виправлення, яке усуває першопричину. Він не змінює ваш код автоматично. Натомість виправлення показується для перевірки людиною та може бути перетворене на запит на злиття у вашому наявному робочому процесі.
Початок роботи
Перейдіть до Codex Security.
Підключіть і ввімкніть репозиторії GitHub, які Codex Security має сканувати.
Дочекайтеся завершення початкового сканування. Codex Security спочатку будує модель загроз для проєкту та сканує історію репозиторію на наявні вразливості. Для великих проєктів це може зайняти більше часу. Сканування нового коду відбувається швидше.
Перегляньте виявлені проблеми, деталі валідації та запропоновані виправлення.
Керування доступом на основі ролей (RBAC)
Для робочих просторів Enterprise і Edu адміністратори можуть керувати доступом до Codex Security у дозволах робочого простору. Для Codex Security потрібно, щоб у робочому просторі було ввімкнено доступ і до Codex Cloud, і до Codex Security. Доступ також можна обмежити певними ролями або групами через RBAC, зокрема групами, синхронізованими через SCIM. Щоб учасники могли керувати конфігураціями сканування Codex Security, також увімкніть дозвіл адміністратора Codex Security для відповідної ролі або групи.
Щоб оновити дозволи робочого простору:
У ChatGPT виберіть значок свого профілю, а потім виберіть Налаштування робочого простору > Дозволи, щоб відкрити дозволи робочого простору.
Прокрутіть униз до Codex Cloud.
Переконайтеся, що доступ до Codex Cloud увімкнено.
Увімкніть або вимкніть доступ за допомогою перемикача Дозволити учасникам використовувати Codex Security.
Якщо роль або група має керувати конфігураціями сканування, також увімкніть Дозволити учасникам адмініструвати Codex Security.
Докладніше про керування доступом на основі ролей у вашому робочому просторі ChatGPT.
Найкращі практики
Почніть із невеликого набору репозиторіїв і окремої групи рецензентів. Спершу ми рекомендуємо сфокусоване впровадження, особливо поки підключення й обмін інформацією про вразливості залишаються відносно ручними.
Уточнюйте модель загроз у міру навчання. Невеликі оновлення моделі можуть покращити контекст і з часом зробити виявлені проблеми точнішими.
Якщо ви зараз не використовуєте GitHub Cloud, розгляньте можливість почати оцінювання з репозиторіїв із нижчим ризиком або не з виробничих репозиторіїв. Це може допомогти командам набути впевненості в робочому процесі перед ширшим упровадженням.
Перевіряйте згенеровані PR із виправленнями за своїм звичним процесом перевірки. Ми також рекомендуємо використовувати Codex Code Review для PR від Codex Security, щоб усунення вразливостей не спричиняло регресій.
Поширені запитання
Чи змінює Codex Security мій код автоматично?
Ні. Codex Security пропонує виправлення для перевірки людиною. Цю пропозицію можна перетворити на запит на злиття, але вона не змінює ваш код автоматично.
Чи покладається Codex Security на фазинг або сканування на основі сигнатур?
Ні. Codex Security використовує міркування мовної моделі, обчислення під час тестування, використання інструментів і великий контекст, а не фазинг чи сканування на основі сигнатур.
Чи можу я переглянути або редагувати модель загроз?
Так. Модель загроз видима й доступна для редагування, тож команди можуть переглянути, як Codex Security розуміє застосунок, і оновити припущення відповідно до свого середовища.
Що означає валідація?
Валідація — це етап, на якому Codex Security намагається відтворити потенційну вразливість в ізольованому середовищі, перш ніж показати її. Це має зменшити кількість хибнопозитивних результатів і зберегти виявлені проблеми інформативними.
Що відбувається після підтвердження виявленої проблеми?
Після валідації Codex Security пропонує виправлення, яке усуває першопричину та може бути перетворене на запит на злиття для перевірки.
