Tillbaka till SDET

Säkerhet (OWASP Top 10)

1. Bristande åtkomstkontroll

Definition: Användare kan komma åt data eller utföra åtgärder som de inte är behöriga till.

Example: En vanlig användare ändrar /user/101 till /admin i URL:en och ser sidor avsedda endast för administratörer.

Impact: Angripare eskalerar behörigheter, stjäl data eller manipulerar kritiska inställningar.

Mitigation: Inför rollbaserad åtkomstkontroll (RBAC), verifiera åtkomst på varje nivå och använd serversidekontroller för autentisering.

2. Kryptografiska brister

Definition: Känsliga data exponeras på grund av svag eller saknad kryptering.

Example: Lagra lösenord i klartext i stället för att hasha dem.

Impact: Leder till dataintrång, stöld av autentiseringsuppgifter och myndighetsböter (GDPR, HIPAA).

Mitigation: Använd alltid TLS (HTTPS), hasha lösenord med bcrypt/Argon2/sha512 och kryptera känsliga data både i vila och under överföring.

3. Injektion

Definition: Otillförlitlig indata behandlas som kod eller ett kommando.

Example: OR '1'='1 i ett inloggningsformulär kringgår autentiseringen (SQL-injektion).

Impact: Fullständig kompromettering av databasen, dataläckage och fjärrkörning av kod.

Mitigation: Använd förberedda satser / parametriserade frågor, validera indata och undvik strängkonkatenering i frågor.

4. Osäker design

Definition: Säkerhetsbrister finns på arkitekturnivå.

Example: En bankapp tillåter obegränsade inloggningsförsök utan kontolåsning → råstyrkeattack möjlig.

Impact: Ökar attackytan och leder till förutsägbara svagheter.

Mitigation: Tillämpa principer för säker design, lägg till hastighetsbegränsning och kontolåsning, och inför hotmodellering tidigt i utvecklingen.

5. Felaktig säkerhetskonfiguration

Definition: Felaktiga eller standardmässiga säkerhetsinställningar gör systemen osäkra.

Example: Adminpanel på /admin med användarnamn: ”admin” / lösenord: ”admin123”.

Impact: Enkelt att utnyttja, obehörig åtkomst och installation av skadlig kod.

Mitigation: Ändra standardkonfigurationer, inaktivera oanvända funktioner och utför regelbundna konfigurationsgranskningar.

6. Sårbara och föråldrade komponenter

Definition: Användning av gammal/opatchad programvara, bibliotek eller plugin-program.

Example: En webbplats som kör en föråldrad WordPress med en känd sårbarhet för filuppladdning.

Impact: Angripare utnyttjar kända CVE:er för att få åtkomst eller injicera skadlig kod.

Mitigation: Håll ramverk, bibliotek och operativsystem uppdaterade, ta bort onödiga beroenden och bevaka CVE/NVD-databaser.

7. Brister i identifiering och autentisering

Definition: Svag autentisering, inloggningsbrister eller bristfällig sessionshantering.

Example: Obegränsade inloggningsförsök tillåts utan att råstyrkeattacker blockeras.

Impact: Kontokapning, identitetsstöld och behörighetseskalering.

Mitigation: Använd multifaktorautentisering (MFA), kräv starka lösenord, begränsa misslyckade försök och skydda sessionstokens.

8. Brister i programvarans och datas integritet

Definition: Otillförlitlig eller overifierad kod, uppdateringar eller problem i leveranskedjan.

Example: En app uppdaterar sig själv från en overifierad server → angripare injicerar skadlig kod.

Impact: Kompromettering av leveranskedjan (t.ex. SolarWinds-intrånget).

Mitigation: Verifiera digitala signaturer, använd betrodda repositorier och inför integritetskontroller.

9. Brister i säkerhetsloggning och övervakning

Definition: Attacker upptäcks inte på grund av bristfällig eller saknad loggning.

Example: Tusentals råstyrkeförsök sker, men systemet loggar ingenting och varnar ingen.

Impact: Försenad eller utebliven respons på intrång samt regelöverträdelser.

Mitigation: Aktivera detaljerad loggning, konfigurera larm/övervakning och använd SIEM-lösningar för upptäckt i realtid.

10. Server-Side Request Forgery (SSRF)

Definition: Angriparen lurar servern att göra förfrågningar till andra system.

Example: En användare skickar en URL → servern hämtar http://localhost/admin och exponerar interna tjänster.

Impact: Exponering av det interna nätverket, fjärrkörning av kod och läckage av känsliga data.

Mitigation: Validera och sanera indata, blockera interna förfrågningar och använd tillåtlistor för domäner.