KOD OCH DATASKYDD
GitHub Copilot vs Generella Modeller
Ingenjörer arbetar ofta med två typer av AI-verktyg: inbyggda kodassistenter (som GitHub Copilot) och generella språkmodeller (som ChatGPT eller Claude). Dataskyddet skiljer sig markant mellan dem.
Koden analyseras i din IDE men används inte för att träna Microsofts/GitHubs grundmodeller. Din källkod förblir privat. Detta är branschstandarden för professionell utveckling, men det förutsätter att ni har företagslicensen aktiverad.
All kod och kontext du klistrar in kan komma att lagras och potentiellt användas för modellträning om du inte aktivt stängt av det (opt-out). Dessa verktyg bör endast användas för boilerplate-kod, oberoende algoritmer och icke-känslig data.
Vad som aldrig får klistras in i konsument-AI
Den största säkerhetsrisken med AI i kodning är inte den genererade koden, utan det som skickas i prompten. Om du inte arbetar i en helt sluten enterprise-miljö eller med lokala modeller (t.ex. via Ollama), gäller strikt förbud mot att klistra in följande:
- API-nycklar och anslutningssträngar: AI kan memorera inmatade hemligheter. Använd miljövariabler (
.env) och ersätt nycklar med platshållare som<REDACTED>innan du kopierar koden. - Databas-dumpar med riktig kunddata: Om du behöver hjälp att optimera en SQL-query, använd ett avidentifierat schema och syntetisk testdata. Aldrig produktionsdata.
- Proprietär affärslogik: Kärnalgoritmer som utgör företagets unika IP (Immateriella Rättigheter) bör inte delas externt. Bryt ned problemet och be om hjälp med den generella kodstrukturen, inte affärslogiken.
AI-hallucinationer i koden
AI-genererad kod ser övertygande ut även när den introducerar allvarliga sårbarheter. Du måste granska utdatan lika hårt som kod från en oerfaren juniorutvecklare. Här är tre vanliga säkerhetsrisker i AI-kod:
- Supply chain-attacker: AI kan hallucinera fram paketnamn (t.ex. i npm eller pip) som verkar lösa ditt problem, men som faktiskt inte existerar. Skadliga aktörer registrerar ibland dessa fejkade paketnamn med skadlig kod i hopp om att AI ska föreslå dem till utvecklare.
- Injektionssårbarheter: AI föreslår ofta den enklaste lösningen för tillfället, vilket ibland innebär direkt strängkonkatenering istället för säkra parametriserade queries för SQL, eller sårbar front-end-kod (XSS).
- Inaktuella kryptografiska standarder: Eftersom träningsdata är historisk kan AI föreslå utdaterade algoritmer (som MD5 eller SHA-1) snarare än moderna och säkra alternativ för hashning och kryptering.