Veilig vibe-coden zonder de vibe te breken
Er waait een nieuwe wind door softwareontwikkeling, gedreven door menselijke taal, low-code platformen en non-developers die binnen enkele minuten een app kunnen bouwen. Dit is de wereld van vibe-coding, een term die ooit begon als grap, maar inmiddels een echte verschuiving in softwareontwikkeling aanduidt: software maken op basis van vibes en intenties in plaats van via traditioneel regels code schrijven. Maar zoals recente incidenten laten zien, heeft die eenvoud ook een keerzijde.
Vibe-coding verwijst naar het bouwen van software op basis van tekstuele instructies in gewone taal, vaak zonder zelf een regel code te hoeven schrijven. Deze tools gebruiken AI om input te interpreteren en genereren direct werkende toepassingen, van chatbots tot workflow-automatiseringen en zelfs volledige webapplicaties. Het is snel, intuïtief en toegankelijk. Een sprekend voorbeeld van hetsucces van vibe-coding komt van Pieter Levels, die met vibe-coding in een paar uur een browsergebaseerde vluchtsimulator ontwikkelde, goed voor inmiddels meer dan één miljoen dollar aan omzet.
Vibe-coding is in opmars - maar hoe zit het met de veiligheid?
Die toegankelijkheid heeft echter ook een valkuil. Enerzijds maakt vibe-coding sneller experimenteren, meer creativiteit en bredere participatie mogelijk. Anderzijds is door AI gegenereerde code niet standaard veilig. Volgens BaxBench bevat tussen de 25 en 70 procent van de werkende code-output van bekende AI-modellen kwetsbaarheden.
Wanneer we specifiek kijken naar vibecoding-platforms, worden de risico's nog groter. Recent werd het populaire Lovable misbruikt om phishingcampagnes te creëren. Kwaadwillenden gebruikten het om snel nepwebsites op te zetten, inclusief gemanipuleerde captcha's en inlogroutines die gebruikers verleidden om Microsoft-inloggegevens en codes voor multifactor-authenticatie te delen.
Een ander voorbeeld is de ontdekking van een grote kwetsbaarheid in vibe-coding platform Base44. Door simpelweg een niet-geheime app_id te verstrekken aan ongedocumenteerde registratie- en e-mailverificatie-endpoints, konden aanvallers geverifieerde accounts voor privétoepassingen aanmaken. Daarmee konden ze alle authenticatiecontroles van Base44 omzeilen, inclusief Single Sign-On (SSO). Dit betrof geen geavanceerde aanval, maar een fundamentele tekortkoming in het beveiligingsontwerp.
Security afstemmen op innovatie
Een voor de hand liggende reactie op toenemende beveiligingsrisico's zou kunnen zijn om controles aan te scherpen, processen te vertragen en governance te introduceren. Maar dat zou precies de kracht van vibe-coding ondermijnen: snelheid, wendbaarheid en innovatie. Wat we nodig hebben, is een andere mindset, een die security afstemt op innovatie.
Vier principes voor veilige vibe-coding
Hoe zorgen we ervoor dat vibe-coding veilig is, zonder in te leveren op creativiteit en snelheid? Hier zijn vier uitgangspunten:
1. Beproefde beveiligingstools blijven belangrijk
Securitytools zoals Static Application Security Testing (SAST), Software Composition Analysis (SCA) en secrets-scanning zijn nog altijd effectief, ook voor AI-gegenereerde code. Ze detecteren kwetsbaarheden zoals hardcoded secrets, onveilige dependencies en risicovolle uploadmechanismen.
2. Taal is belangrijk: prompt slim
Onderzoek toont aan dat zelfs kleine wijzigingen in de formulering van prompts een groot effect hebben op de veiligheid van de gegenereerde code. Door bijvoorbeeld het woord “veilig” aan een prompt toe te voegen, daalde het aantal kwetsbaarheden in GPT-4 met maar liefst 43 procent. Een ander onderzoek wees uit dat het opnemen van instructies als “Je bent een ontwikkelaar die zeer bewust omgaat met beveiliging” de foutkans met 47 tot 56 procent verkleint, veel effectiever dan het toevoegen van vage instructies zoals “make sure every line is secure”.
3. Gebruik regels en maak goede prompts herhaalbaar
Security-bewust prompten kun je standaardiseren via rules files — JSON-bestanden die regels definiëren voor AI-assistenten. Denk aan het altijd verplicht stellen van authenticatie, of geen publieke file-uploads toestaan. De beste rules file is afgestemd op jouw omgeving, maar om snel van start te kunnen gaan kun je deze open-source baseline beveiligingsregelsbestanden op GitHub raadplegen.
4. Security moet net zo toegankelijk zijn als de tool zelf
Iedereen die vibe-codeert, denkt na over functionaliteit en UX, maar denkt diegene ook na over security? We moeten beveiliging democratiseren, net zoals we het maken van software hebben gedemocratiseerd. Dat betekent bedreigingsmodellen vereenvoudigen, geautomatiseerde feedback geven en beveiligingseducatie rechtstreeks inbouwen in de platforms. Als we code kunnen ‘viben’, waarom dan geen security?
Vibe-coding blijft, zorg dus voor veiligheid
De phishingzaak rond Lovable en de kwetsbaarheid in Base44 zijn duidelijke waarschuwingssignalen. Wat we nu doen bepaalt of vibe-coding een creatieve kracht voor vooruitgang blijft, of uitgroeit tot een nieuw beveiligingsrisico.
Vibe-coding blijft. Het versnelt innovatie, maakt softwareontwikkeling toegankelijker en verandert de manier waarop we software bouwen. We hoeven die beweging niet af te remmen, maar we moeten het wél beveiligen.
Laten we dus zorgen voor veilige standaardinstellingen die bescherming bieden, beveiligingstools in elke workflow integreren en iedereen die deze tools gebruikt bewust maken van de risico’s. Want de vibe vertraagt niet - en dat zou security ook niet moeten doen.

Reacties
Om een reactie achter te laten is een account vereist.
Inloggen Word abonnee