Nieuws

Code geschreven door ChatGPT vaak onveilig

ChatGPT
© OpenAI
Code geschreven door ChatGPT blijkt vaak onveilig. Pas als gebruikers de AI-chatbot daarop wijzen, worden de bugs opgelost.

Computerwetenschappers Raphaël Khoury, Anderson Avila, Jacob Brunelle en Baba Mamadou Camara voelden ChatGPT aan de tand met 21 codeeropdrachten. Slechts 5 van de programma’s die de chatbot opleverde, bevatten geen gekende beveiligingsproblemen. Voor de overige 16 opdrachten geldt dat de code onveilig en daarmee ongeschikt is om te gebruiken in de praktijk, concluderen de wetenschappers in hun paper.

Nadien alsnog opgelost

In navolging vroegen ze de chatbot ook naar specifieke kwetsbaarheden in de code. ChatGPT wist in zeven gevallen de problemen zelfstandig op te lossen. Wel houden de onderzoekers een slag om de arm: het is mogelijk dat deze code alsnog kwetsbaar is, maar dit niet werd gespot in het onderzoek. Vermoedelijk geldt dat ook voor de eerste vijf programma’s die als veilig werden gekenmerkt.

Dit probleem speelt niet alleen in de AI-chatbot van OpenAI. Andere bedrijven gebruiken namelijk hetzelfde achterliggende Large Language Model (LLM), GPT. In de paper wordt dan ook opgemerkt dat codeertool ‘Copilot’ van GitHub dezelfde karakteristieken vertoont. Die bot gebruikt immers de AI-techniek van GPT-3. Daarmee loopt de codeerbot overigens wel achter op ChatGPT, dat van GPT-4 gebruikmaakt.

Uitgelicht artikel truthGPT TruthGPT wordt het antwoord van Elon Musk op ChatGPT

Niet geheel opvallend is verder dat de onderzoekers concluderen dat de OpenAI’s chatbot niet zelf in staat is veilige code te reproduceren. Zoals gewoon voor een chatbot kan het enkel informatie die het eerder verzamelde gebruiken om een nieuw stuk code te schrijven. Het heeft daarbij in principe geen kennis over de code die het schrijft. Wel kan het op basis van bekende informatie controleren of code veilig is.

Gericht op kwetsbaarheden

Iedere opdracht werd volgens The Register opgezet om een specifieke kwetsbaarheid uit te lokken. Het ging dan bijvoorbeeld om denial of service en geheugencorruptie. Die kwetsbaarheden waren ook gelinkt aan een vijftal codeertalen waarin de programma’s geschreven moesten worden: C, C++, Python, HTML en Java. Dat zijn overigens niet alle talen die de chatbot ondersteunt. ChatGPT is ook in staat code te schrijven in bijvoorbeeld C# en JavaScript.

Inmiddels is GPT ook niet meer het enige taalmodel dat kan coderen. Vrijdagavond raakte bekend dat Bard voortaan in ‘ruim 20 talen’ code kan schrijven. Ook kan het helpen bij het debuggen van code én kan het de werking van code uitleggen. Volgens Google maakt zijn chatbot gebruik van openbare informatie op het internet en citeert het bij het gebruik van openbare code de bron(nen).

BardBeveiligingChatGPTOpenAI

Gerelateerde artikelen

Volg ons

Gebruik je ecocheques bij Coolblue

Gebruik je ecocheques bij Coolblue

Producten bekijken