Code die ChatGPT schrijft is meestal onveilig
Een van de vele toepassingen van ChatGPT is dat het ook computercode kan schrijven. Maar volgens onderzoekers is die meestal onveilig. Al weet de tool dat zelf ook, als je er naar vraagt.
Vier onderzoekers van de universiteit van Québec (Canada) bestudeerden de code die ChatGPT genereerde nadat ze vroegen om een aantal programma’s te ontwikkelen. In totaal werden er 21 programma’s in C, C++, Python en Java gemaakt door ChatGPT, aangegeven door onderzoekers Raphaël Khoury, Anderson Avila, Jacob Brunelle en Baba Mamadou Camara.
ChatGPT deed dat, maar bij nadere controle bleek dat de programma’s vaak niet voldeden aan minimale veiligheidsvereisten. Zo bevatte code voor een FTP-server een kwetsbaarheid die path traversal mogelijk maakte. Een webapplicatie waar je gebruikersnaam en wachtwoord moest ingeven was gevoelig voor XSS (cross-site scripting, waarbij je gevaarlijke code in het veld ingeeft om de applicatie te kraken). In totaal waren slechts 5 van de 21 programma’s gewapend tegen gekende veiligheidsproblemen.
Bewust van fouten
Opmerkelijk genoeg weet ChatGPT dat wel. Wanneer de onderzoekers aan de tool vroegen of de code die het genereerde wel veilig was, gaf het vaak zelf aan dat dat niet het geval was. Met wat bijsturing van de code produceerde ChatGPT uiteindelijk twaalf werkende programma’s.
In hun pre-press paper doen de onderzoekers hun bevindingen uit de doeken. Ze nuanceren dat ChatGPT wel degelijk code kan schrijven, maar je moet zelf voldoende thuis zijn in de omgeving om de tool te vragen naar fouten en die te verbeteren.
De onderzoekers concluderen dat ChatGPT nog niet klaar is om ervaren en securitybewuste programmeurs te vervangen, maar dat het op deze manier tegelijk een rol kan spelen om studeren te leren omgaan met goede programmeerpraktijken.
Fout opgemerkt of meer nieuws? Meld het hier