Säkerhetsgranskning av en webbfunktion
Går igenom en funktion eller ett API mot OWASP:s vanligaste sårbarheter plus de fel som agentbyggda appar ofta gör: läckta nycklar, saknade behörighetskontroller, promptinjektion.
- Typ
- Skill
- Område
- Kod
- Verktyg
- Claude Code, Codex, Cursor, Copilot
- Uppdaterad
- 8 september 2026
SKILL.md
---
name: sakerhetsgranskning
description: Granskar webbfunktioner, API:er och agentintegrationer för säkerhetsbrister enligt OWASP Top 10 och OWASP Top 10 för LLM-applikationer. Använd när användaren ber om säkerhetsgranskning, pentest-förberedelse, "är det här säkert", eller innan funktioner för inloggning, betalning, uppladdning eller AI-verktyg lanseras.
---
# Säkerhetsgranskning
Utgå från att angriparen har läst koden. Leta efter det som en automatisk
skanner inte ser: logikfel, saknade kontroller och antaganden om snäll
indata.
## Metod
1. Rita dataflödet. Var kommer indata in, var fattas beslut, var skrivs
data, vad lämnar systemet?
2. För varje förtroendegräns (webbläsare till server, server till databas,
server till tredje part, användare till LLM, LLM till verktyg): vad
valideras, och vad antas?
3. Gå igenom listan nedan. Bekräfta varje fynd genom att peka på kod, inte
genom att gissa.
## Kontrollpunkter
Behörighet
- Kontrolleras behörighet på varje endpoint, på serversidan, för varje
objekt (inte bara "är inloggad" utan "får se just det här")?
- Går det att byta id i URL eller body och nå någon annans data?
- Skiljer sig behörighet mellan UI och API? API:et är sanningen.
Indata
- Valideras typ, längd och format på serversidan?
- Byggs SQL, shell-kommandon, LDAP, XPath eller filsökvägar med
strängkonkatenering?
- Filuppladdning: typ kontrolleras på innehåll, inte filändelse? Storlek
begränsad? Lagras utanför webbroten med nytt namn?
- Deserialisering av data från klienten?
Hemligheter och konfiguration
- Nycklar, lösenord eller tokens i kod, i git-historik, i frontend-bundle,
i loggar, i felmeddelanden?
- Debug-lägen, standardlösenord, öppna admin-endpoints?
- CORS: tillåts godtyckligt ursprung med credentials?
Sessioner och autentisering
- Lösenord hashas med bcrypt, scrypt eller argon2?
- Rate limiting på inloggning, återställning och OTP?
- Sessions-cookies med HttpOnly, Secure, SameSite?
- Återställningslänkar som går ut och bara fungerar en gång?
Utdata
- Escapas all användardata i HTML, attribut, JavaScript och URL?
- Content-Security-Policy satt?
- Läcker felmeddelanden stackspår eller interna sökvägar?
LLM-specifikt (om systemet använder en språkmodell)
- Promptinjektion: kan innehåll som modellen läser (webbsidor, mejl,
dokument, databasrader) påverka vilka verktyg den anropar? Behandla
allt sådant innehåll som obetrott.
- Verktygens behörigheter: har modellen bara de verktyg och den åtkomst
som uppgiften kräver? Finns bekräftelsesteg före oåterkalleliga
åtgärder (skicka, radera, betala)?
- Läcker systemprompt, interna data eller andra användares data via
modellens svar?
- Loggas prompts och svar med personuppgifter?
Beroenden
- Kända sårbarheter i paket? Kör verktyg för det och rapportera.
- Paket installerade från oväntade register eller med typosquat-namn?
## Leverans
Per fynd: Allvarlighet (kritisk, hög, medel, låg), Var, Hur det utnyttjas
(ett konkret scenario), Fix. Kritiska först. Skriv inga fynd du inte kan
peka på i koden. Skilj på "sårbarhet" och "saknad härdning".
När den gör nytta
- Innan en funktion som hanterar inloggning, betalning eller filuppladdning går live.
- När en agent har byggt en hel feature på egen hand och ingen människa läst allt.
- När ni kopplar en LLM till interna verktyg eller data.
Så installerar du
- Claude Code
- Spara som .claude/skills/sakerhetsgranskning/SKILL.md i projektet, eller ~/.claude/skills/sakerhetsgranskning/SKILL.md för alla dina projekt. Skillen laddas automatiskt när uppgiften matchar beskrivningen.
- Codex, Cursor och andra
- Verktyg som följer Agent Skills-standarden läser samma format. Lägg mappen sakerhetsgranskning/ där ditt verktyg letar efter skills, ofta .agents/skills/ eller motsvarande. Kontrollera dokumentationen för din version.
Om skills
En mapp med en SKILL.md som agenten laddar när uppgiften matchar. Kunskap och rutiner som följer med mellan sessioner.
Närliggande
SKILL.mdSkill SKILL.mdSkill AGENTS.mdInstruktionsfil
Kodgranskning som hittar buggar, inte stilfel
Granskar en diff eller pull request med fokus på korrekthet, säkerhet och saker som går sönder i produktion. Stilfrågor lämnas till linters.
Tillgänglighetsgranskning enligt WCAG 2.2 och svensk lag
Granskar ett gränssnitt mot WCAG 2.2 AA, EN 301 549 och de svenska kraven i DOS-lagen och tillgänglighetslagen för produkter och tjänster.
AGENTS.md som fungerar i Codex, Cursor, Copilot och Claude Code
En verktygsoberoende projektinstruktion i det format de flesta kodagenter läser. Kort nog att faktiskt läsas, konkret nog att göra skillnad.