Kan generatieve AI worden vertrouwd om uw code te repareren?

Kan generatieve AI worden vertrouwd om uw code te repareren?

Kan men vertrouwen op generatieve AI om uw code te repareren? PlatoBlockchain-gegevensintelligentie. Verticaal zoeken. Ai.

Organisaties over de hele wereld zijn in een race om AI-technologieën te integreren in hun cyberbeveiligingsprogramma’s en -instrumenten. A meerderheid (65%) van de ontwikkelaars gebruiken of plannen het gebruik van AI bij testinspanningen in de komende drie jaar. Er zijn veel beveiligingstoepassingen die zullen profiteren van generatieve AI, maar is het repareren van code daar één van?

Voor veel DevSecOps-teams vertegenwoordigt generatieve AI de heilige graal voor het wegwerken van hun toenemende kwetsbaarheidsachterstanden. Ruim de helft (66%) van de organisaties zegt dat hun achterstanden meer dan 100,000 kwetsbaarheden bevatten, en dat meer dan tweederde van de gerapporteerde bevindingen over statische applicatiebeveiligingstests (SAST) drie maanden na detectie open blijven, waarbij 50% blijft open na 363 dagen. De droom is dat een ontwikkelaar ChatGPT eenvoudigweg kan vragen om “deze kwetsbaarheid op te lossen”, en dat de uren en dagen die voorheen werden besteed aan het herstellen van kwetsbaarheden tot het verleden zouden behoren.

In theorie is het geen helemaal gek idee. Machine learning wordt immers al jaren effectief gebruikt in cyberbeveiligingstools om processen te automatiseren en tijd te besparen. AI is enorm nuttig als het wordt toegepast op eenvoudige, repetitieve taken. Maar het toepassen van generatieve AI op complexe codetoepassingen kent in de praktijk enkele tekortkomingen. Zonder menselijk toezicht en uitdrukkelijke leiding zouden DevSecOps-teams uiteindelijk meer problemen kunnen creëren dan ze oplossen.

Generatieve AI-voordelen en beperkingen met betrekking tot het repareren van code

AI-tools kunnen ongelooflijk krachtige tools zijn voor eenvoudige cyberbeveiligingsanalyses, monitoring of zelfs herstelbehoeften met een laag risico. De zorg ontstaat wanneer de inzet consequenties krijgt. Dit is uiteindelijk een kwestie van vertrouwen.

Onderzoekers en ontwikkelaars zijn nog steeds bezig met het bepalen van de mogelijkheden van nieuwe generatieve AI-technologie complexe codefixes produceren. Generatieve AI vertrouwt op bestaande, beschikbare informatie om beslissingen te nemen. Dit kan handig zijn voor zaken als het vertalen van code van de ene taal naar de andere, of het oplossen van bekende fouten. Als u ChatGPT bijvoorbeeld vraagt ​​om “deze JavaScript-code in Python te schrijven”, krijgt u waarschijnlijk een goed resultaat. Het zou nuttig zijn om het te gebruiken om een ​​cloudbeveiligingsconfiguratie te repareren, omdat de relevante documentatie hiervoor openbaar beschikbaar en gemakkelijk te vinden is, en de AI de eenvoudige instructies kan volgen.

Voor het oplossen van de meeste kwetsbaarheden in de code is echter actie nodig op basis van een unieke reeks omstandigheden en details, waardoor een complexer scenario wordt geïntroduceerd waarin de AI kan navigeren. De AI kan een ‘oplossing’ bieden, maar zonder verificatie mag deze niet worden vertrouwd. Generatieve AI kan per definitie niets creëren dat nog niet bekend is, en kan hallucinaties ervaren die resulteren in nepresultaten.

In een recent voorbeeld wordt een advocaat geconfronteerd met ernstige gevolgen nadat hij ChatGPT heeft gebruikt om rechtszaken te schrijven waarin zes niet-bestaande zaken worden genoemd die de AI-tool heeft uitgevonden. Als AI methoden zou hallucineren die niet bestaan ​​en die methoden vervolgens zou toepassen op het schrijven van code, zou dit resulteren in tijdverspilling aan een ‘fix’ die niet kan worden gecompileerd. Bovendien, volgens OpenAI's GPT-4-whitepaperNieuwe exploits, jailbreaks en nieuw gedrag zullen in de loop van de tijd worden ontdekt en moeilijk te voorkomen zijn. Er is dus zorgvuldige afweging nodig om ervoor te zorgen dat AI-beveiligingstools en oplossingen van derden worden doorgelicht en regelmatig worden bijgewerkt om ervoor te zorgen dat ze niet onbedoelde achterdeurtjes in het systeem worden.

Vertrouwen of niet vertrouwen?

Het is een interessante dynamiek om te zien hoe de snelle acceptatie van generatieve AI zich afspeelt op het hoogtepunt van de zero-trust-beweging. De meeste cyberbeveiligingstools zijn gebouwd op het idee dat organisaties nooit moeten vertrouwen, maar altijd moeten verifiëren. Generatieve AI is gebouwd op het principe van inherent vertrouwen in de informatie die door bekende en onbekende bronnen ter beschikking wordt gesteld. Deze botsing van principes lijkt een passende metafoor voor de aanhoudende strijd waarmee organisaties worden geconfronteerd bij het vinden van de juiste balans tussen veiligheid en productiviteit, die op dit moment bijzonder verergerd lijkt.

Hoewel generatieve AI misschien nog niet de heilige graal is waar de teams van DevSecOps op hoopten, zal het wel helpen stapsgewijze vooruitgang te boeken bij het terugdringen van achterstanden op het gebied van kwetsbaarheden. Voorlopig kan het worden toegepast om eenvoudige oplossingen aan te brengen. Voor complexere oplossingen moeten ze een verificatie-naar-vertrouwen-methodologie toepassen die de kracht van AI benut, geleid door de kennis van de ontwikkelaars die de code hebben geschreven en bezitten.

Tijdstempel:

Meer van Donkere lezing