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