Codex Security is een research preview die teams helpt kwetsbaarheden in code te identificeren, valideren en verhelpen. Het is ontworpen om meer te werken als een securityonderzoeker dan als een traditionele scanner: het leest code, voert tests uit, verkent realistische aanvalspaden en stelt patches voor die teams in hun normale workflow kunnen beoordelen.
Overzicht
Vandaag maakt Codex Security rechtstreeks verbinding met GitHub-repositories. Nadat je een repository hebt ingeschakeld, bouwt het een dreigingsmodel dat specifiek is voor de codebase, scant het de repositorygeschiedenis, valideert het potentiële kwetsbaarheden in een geïsoleerde omgeving en toont het voorgestelde oplossingen voor menselijke beoordeling.
Codex Security is opgebouwd rond drie fasen: identificatie, validatie en herstel. Tijdens de identificatie analyseert het de repository en verkent het realistische aanvalspaden. Tijdens de validatie probeert het elk probleem te reproduceren om te bevestigen dat het echt is. Tijdens het herstel genereert het een concrete patch die teams kunnen beoordelen en omzetten in een pull request.
Hoe Codex Security werkt
Wanneer Codex Security verbinding maakt met een repository, scant het commits in omgekeerd chronologische volgorde en bouwt het een dreigingsmodel dat specifiek is voor de codebase. Dat model legt toegangspunten voor aanvallers, vertrouwensgrenzen, gevoelige data en codepaden met grote impact vast, die Codex gebruikt om de analyse te richten op realistische aanvalsscenario's. Teams kunnen het dreigingsmodel inspecteren en bewerken zodat het hun werkelijke aannames over de deployment weerspiegelt.
Codex Security volgt een closed-loop workflow voor herstel:
Scan de repository: Codex maakt verbinding met je GitHub-repository, analyseert de codebase en bouwt een dreigingsmodel op basis van de repository en commitgeschiedenis.
Ontdek kwetsbaarheden: Met dat dreigingsmodel verkent Codex realistische codepaden en identificeert het potentiële kwetsbaarheden.
Valideer in een sandbox: Codex voert een geautomatiseerde validator uit in een geïsoleerde omgeving om het probleem te reproduceren, uitvoeringsdetails vast te leggen en misbruikbaarheid te bevestigen voordat de bevinding wordt getoond.
Genereer een patch: Voor gevalideerde kwetsbaarheden produceert Codex een minimale patchsuggestie die de hoofdoorzaak aanpakt.
Menselijke beoordeling en pull request: De patch wijzigt je code niet automatisch. Die wordt getoond voor menselijke beoordeling en kan worden omgezet in een pull request voor je normale workflow.
Opnieuw valideren na herstel: Nadat een bevestigd probleem is gepatcht en samengevoegd, kan Codex de oplossing opnieuw valideren en zo de lus sluiten van detectie tot herstel.
Voor elke bevinding kan Codex Security een analyse van het aanvalspad maken die laat zien hoe door een aanvaller beheerde input zich van een toegangspunt naar een gevoelig resultaat kan verplaatsen. Het beoordeelt dat pad op waarschijnlijkheid en impact en maakt de onderliggende aannames zichtbaar, wat teams helpt realistische risico's te prioriteren boven geïsoleerde meldingen.
Voordat Codex Security een bevinding toont, probeert het die in een geïsoleerde omgeving te reproduceren. De validator registreert reproductieresultaten, uitvoeringsdetails en proof-of-concept-artefacten zodat teams zich kunnen richten op bevindingen waarvan daadwerkelijk is aangetoond dat ze werken.
Voor gevalideerde bevindingen stelt Codex Security een minimale patch voor die de hoofdoorzaak aanpakt. Het wijzigt je code niet automatisch. In plaats daarvan wordt de patch getoond voor menselijke beoordeling en kan die in je bestaande workflow worden omgezet in een pull request.
Aan de slag
Ga naar chatgpt.com/codex/security.
Verbind en schakel de GitHub-repositories in die je door Codex Security wilt laten scannen.
Wacht tot de eerste scan is voltooid. Codex Security bouwt eerst een dreigingsmodel voor het project en scant de repositorygeschiedenis op bestaande kwetsbaarheden. Dit kan langer duren voor grote projecten. Scans van nieuwe code zijn sneller.
Bekijk bevindingen, validatiedetails en voorgestelde patches.
Rolgebaseerde toegangscontroles (RBAC)
Voor Enterprise- en Edu-werkruimtes kunnen beheerders de toegang tot Codex Security beheren in de machtigingen van de werkruimte. Voor Codex Security moeten zowel Codex Cloud als Codex Security-toegang zijn ingeschakeld voor de werkruimte. Toegang kan via RBAC ook worden beperkt tot specifieke rollen of groepen, waaronder met SCIM gesynchroniseerde groepen.
Zo werk je de machtigingen van je werkruimte bij:
Klik in ChatGPT op je profielpictogram en selecteer Werkruimte-instellingen -> Machtigingen om naar de pagina werkruimtemachtigingen te gaan.
Scroll omlaag naar Codex Cloud.
Zorg ervoor dat toegang tot Codex Cloud is ingeschakeld.
Schakel toegang in of uit door Leden toestaan Codex Security te gebruiken.
Meer informatie over rolgebaseerde toegangscontroles in je ChatGPT-werkruimte.
Best practices
Begin met een kleine set repositories en een speciale groep reviewers. We raden in het begin een gerichte uitrol aan, vooral zolang onboarding en het delen van kwetsbaarheden nog relatief handmatig zijn.
Verfijn het dreigingsmodel terwijl je leert. Kleine updates van het model kunnen de context verbeteren en bevindingen na verloop van tijd preciezer maken.
Als je GitHub Cloud vandaag niet gebruikt, overweeg dan om voor de evaluatie te beginnen met repositories met een lager risico of niet-productierepositories. Dat kan teams helpen vertrouwen in de workflow op te bouwen voordat deze breder wordt ingevoerd.
Beoordeel gegenereerde patch-PR's met je normale beoordelingsproces. We raden ook aan Codex Code Review te gebruiken voor Codex Security-PR's, zodat herstel geen regressies introduceert.
Veelgestelde vragen
Wijzigt Codex Security mijn code automatisch?
Nee. Codex Security stelt een patch voor menselijke beoordeling voor. Dat voorstel kan worden omgezet in een pull request, maar het wijzigt je code niet automatisch.
Vertrouwt Codex Security op fuzzing of op signatures gebaseerde scanning?
Nee. Codex Security gebruikt redenering van taalmodellen, test-time compute, toolgebruik en een grote context, in plaats van fuzzing of op signatures gebaseerde scanning.
Kan ik het dreigingsmodel inspecteren of bewerken?
Ja. Het dreigingsmodel is zichtbaar en bewerkbaar, zodat teams kunnen inspecteren hoe Codex Security de applicatie begrijpt en aannames kunnen bijwerken zodat die overeenkomen met hun omgeving.
Wat betekent validatie?
Validatie is de stap waarin Codex Security probeert een potentiële kwetsbaarheid te reproduceren in een geïsoleerde omgeving voordat die wordt getoond. Dit is bedoeld om false positives te verminderen en de bevindingen signaalsterk te houden.
Wat gebeurt er nadat een bevinding is gevalideerd?
Na validatie stelt Codex Security een patch voor die de hoofdoorzaak aanpakt en die voor beoordeling kan worden omgezet in een pull request.
