AI och vibe-kodning förändrar vem som bygger system – och hur. Men vem granskar koden, skyddar databasen och säkrar GitHub-flödet? Den här artikeln förklarar vad som händer när applikationer växer utanför IT:s kontroll, och hur organisationer återtar säkerheten i det nya landskapet.
Klockan visade 14:32 när jag bad Lovable skapa en enkel lead-hanteringsapp. Tio minuter senare tittade jag på resultatet. Appen fungerade perfekt. Den såg professionell ut. Och Supabase dashboard visade 47 säkerhetsvarningar.
Välkommen till vyping – när utvecklare ”vibear fram” kod med AI istället för att skriva den själva. Det går blixtsnabbt. Men säkerheten? Den glöms bort.
Vad är vyping?
Begreppet har sitt ursprung i ”vibe-kodning” – en stil där man beskriver vad man vill ha i naturligt språk och låter AI generera koden. Det är snabbt, tillgängligt och ofta kraftfullt. Men AI har inga säkerhetsreflexer. Det du får är funktion, inte skydd.
De populäraste verktygen:
- GitHub Copilot: Skriver kod direkt i editorn
- Cursor: ”VS Code med AI-steroider”
- Lovable: Från idé till färdig app på minuter
- v0 by Vercel: AI som både designar och kodar
- ChatGPT/Claude: Kopierar och klistrar kod
Men här kommer problemet. Forskning visar att AI-genererad kod ofta innehåller säkerhetsbrister – vissa studier pekar på att upp till 40% eller mer av koden kan vara osäker.
Exemplet som fick mig att vakna
Låt mig visa exakt vad Lovable genererade för min ”enkla” lead-app:
-- Vad jag bad om: "Skapa en view som visar leads med kontaktinfo"
-- Vad AI:n levererade:
CREATE VIEW public.enriched_lead_contacts
WITH (security_barrier=false, security_definer=true) AS
SELECT
l.*,
c.email,
c.phone,
u.internal_notes,
u.personal_mobile -- Vänta, va?
FROM leads l
JOIN contacts c ON l.contact_id = c.id
JOIN internal_users u ON l.assigned_to = u.id;
En AI-genererad vy. Vad den gör? Exponerar interna anteckningar och personliga mobilnummer. För alla med åtkomst. Just p.g.a. security_definer=true
och saknad åtkomstkontroll.
GitHub: Där privata nycklar blir publika
Utvecklare testar kod, hårdkodar API-nyckel, glömmer rensa. Sedan committas koden. Nästa steg? Läckta nycklar indexeras av sökmotorer. GitHub har rapporterat tusentals sådana incidenter varje månad.
Typiskt scenario:
- Utvecklare ber AI: ”Skapa en funktion som ansluter till Stripe”
- AI genererar kod med placeholder:
stripe_key = "sk_test_abc123"
- Utvecklare testar med riktig nyckel:
stripe_key = "sk_live_DinRiktigaNyckel"
- Glömmer ändra tillbaka innan commit
- Nyckeln indexeras av sökmotorer inom minuter
Studier visar att utvecklare ofta av misstag committar känslig information till publika repositories.
Samarbetet som inte fungerar
Utvecklare säger: ”Använd aldrig ’GRANT ALL'” Marknadsavdelningen frågar: ”Vad betyder GRANT?” Skillnaden i verktyg och kunskap gör att kod produceras snabbt, men utan delat ansvar för säkerheten. Å andra sidan att låta IT ta ansvar för modern och effektiv kommunikation är ingen bra lösning.
Modern utveckling involverar fler än bara programmerare:
- Marknadsavdelningen bygger landningssidor
- HR vill ha bättre webbsajter för rekrytering och employer branding
- Ledningen vill ha dashboards men samtidigt få det förklarat
- Sales vill att man automatiserar CRM-flöden och ha riktig leads
Problemet? De använder olika verktyg och pratar olika språk.
Utvecklare: ”Aldrig pusha secrets till repo!” Marknadsperson: ”Vad är ett repo?”
Utvecklare: ”Aktivera alltid RLS!” Marknadsperson: ”Vad är RLS?”
De vanligaste vyping-fällorna
1. Hårdkodade hemligheter
javascript
// AI älskar att göra såhär:
const API_KEY = "din-api-nyckel-här" // TODO: flytta till env
// Utvecklare glömmer TODO:n
const API_KEY = "sk_live_4242424242424242" // KATASTROF
2. Vidöppna databaser
sql
-- AI:s "hjälpsamma" standardinställning:
GRANT ALL ON TABLE users TO PUBLIC; -- Alla kan göra allt!
3. Ingen inputvalidering
javascript
// AI:s snabba lösning:
app.post('/search', (req, res) => {
db.query(`SELECT * FROM products WHERE name = '${req.body.search}'`);
// SQL injection serverad på silverfat
});
Verktyg för säkrare vyping
För att hitta läckta nycklar:
- GitGuardian: Skannar repos i realtid
- TruffleHog: Open source secret scanner
- GitHub Secret Scanning: Gratis för publika repos
För kodgranskning:
- Semgrep: Hittar säkerhetsmönster
- SonarQube: Omfattande kodanalys
- Snyk: Specialiserad på säkerhet
För säker nyckelhantering:
- HashiCorp Vault: Enterprise-lösning
- AWS Secrets Manager: För AWS-miljöer
- 1Password Developer: Delad nyckelhantering för team
Hur olika avdelningar kan samarbeta säkert
1. Skapa gemensamt språk
Skippa jargongen. Förklara i termer alla förstår:
- ”API-nyckel = lösenordet till företagets data”
- ”Publikt repo = som att lägga dokument på gatan”
- ”RLS = lås på varje rad i databasen”
2. Etablera enkla rutiner
yaml
För ALLA som bygger NÅGOT:
1. Kör säkerhetsskanning före publicering
2. Använd företagets nyckelhanterare (aldrig hårdkoda)
3. Granska AI-genererad kod med verktyg
4. Fråga IT om du är osäker
3. Automatisera säkerheten
- Pre-commit hooks som stoppar secrets
- Automatisk skanning av all ny kod
- Alerts när något ser konstigt ut
Paradigmskiftet ingen var beredd på
AI-assisterad utveckling förändrar landskapet dramatiskt – från en värld där ett begränsat antal utvecklare skrev kod till en där många fler kan generera kod med AI-verktyg.
Detta förändrar allt:
- Hastighet: Kod produceras 100x snabbare
- Volym: Miljontals rader kod per dag
- Kompetens: De som genererar förstår inte vad de genererar
- Säkerhet: Traditionella granskningsprocesser hinner inte med
Framtiden: AI som både problem och lösning
Ironiskt nog kan AI också vara lösningen. Nya verktyg dyker upp:
- GitHub Copilot X: Lovar säkerhetsanalys i realtid
- Amazon CodeWhisperer: Skannar efter sårbarheter medan du kodar
- Snyk DeepCode: AI som granskar AI-genererad kod
Men tills dess? Vi surfar på en tsunami av osäker kod.
Källor och vidare läsning
Forskningsrapporter och studier:
- Studier om säkerhet i AI-genererad kod
- GitHub dokumentation om secret scanning
- OWASP om AI och säkerhet
Branschanalyser:
- Artiklar om AI-assisterad utveckling och säkerhet
- Rapporter om ”Shadow AI” utveckling i företag
Praktiska guider:
- ”Secure Coding with AI Assistants” – SANS Institute
- ”Managing Secrets in the Age of AI” – HashiCorp
- ”Enterprise AI Code Security” – Gartner Research
- TruffleHog: scanning av hemligheter i kod
- GitHub Advanced Security (GHAS): guide till enterprise-säkerhet
- OWASP Top 10 for LLM: särskilt relevant om vibe-kodning hanterar prompt injection eller auth-bypass
- Karpathy X-poster om vibe coding: om du vill länka direkt till originalkommentar