OWASP topp 10 säkerhetsrisker | Översikt

Innehållsförteckning

OWASP Topp 10 Översikt

Vad är OWASP?

OWASP är en ideell organisation dedikerad till webbappsäkerhetsutbildning. 

OWASP läromedel finns tillgängligt på deras webbplats. Deras verktyg är användbara för att förbättra säkerheten för webbapplikationer. Detta inkluderar dokument, verktyg, videor och forum.

OWASP Top 10 är en lista som belyser de största säkerhetsproblemen för webbappar idag. De rekommenderar att alla företag inkluderar denna rapport i sina processer för att minska säkerhetsrisker. Nedan finns en lista över säkerhetsrisker som ingår i OWASP Top 10 2017-rapporten.

SQL Injection

SQL-injektion inträffar när en angripare skickar olämplig data till en webbapp för att störa programmet i applikationen.

Ett exempel på en SQL-injektion:

Angriparen kan skriva in en SQL-fråga i ett inmatningsformulär som kräver ett användarnamn klartext. Om inmatningsformuläret inte är säkrat kommer det att resultera i exekvering av en SQL-fråga. Detta är hänvisad till som SQL-injektion.

För att skydda webbapplikationer från kodinjektion, se till att dina utvecklare använder indatavalidering på användarinlämnad data. Validering avser här avvisande av ogiltiga indata. En databashanterare kan också ställa in kontroller för att minska mängden informationen som kan avslöjas i en injektionsattack.

För att förhindra SQL-injektion rekommenderar OWASP att data hålls åtskilda från kommandon och frågor. Det bästa alternativet är att använda en säker API för att förhindra användning av en tolk, eller för att migrera till Object Relational Mapping Tools (ORM).

Trasig autentisering

Autentiseringssårbarheter kan tillåta en angripare att komma åt användarkonton och äventyra ett system med hjälp av ett administratörskonto. En cyberbrottsling kan använda ett skript för att prova tusentals lösenordskombinationer på ett system för att se vilka som fungerar. När cyberbrottslingen väl är inne kan de förfalska användarens identitet och ge dem tillgång till konfidentiell information.

En trasig autentiseringssårbarhet finns i webbapplikationer som tillåter automatiska inloggningar. Ett populärt sätt att korrigera autentiseringssårbarhet är användningen av multifaktorautentisering. En gräns för inloggningshastighet kan också inkluderas i webbappen för att förhindra brute force-attacker.

Känslig dataexponering

Om webbapplikationer inte skyddar kan känsliga angripare komma åt och använda dem för sin vinning. En on-path attack är en populär metod för att stjäla känslig information. Risken för exponering är minimal när all känslig data är krypterad. Webbutvecklare bör se till att ingen känslig data exponeras i webbläsaren eller lagras i onödan.

XML External Entities (XEE)

En cyberbrottsling kan kanske ladda upp eller inkludera skadligt XML-innehåll, kommandon eller kod i ett XML-dokument. Detta gör att de kan visa filer på applikationsserverns filsystem. När de väl har tillgång kan de interagera med servern för att utföra server-side request forgery (SSRF) attacker.

XML externa entitetsattacker kan förhindras av tillåter webbapplikationer att acceptera mindre komplexa datatyper som JSON. Att inaktivera bearbetning av externa XML-enheter minskar också risken för en XEE-attack.

Trasig åtkomstkontroll

Åtkomstkontroll är ett systemprotokoll som begränsar obehöriga användare till känslig information. Om ett åtkomstkontrollsystem är trasigt kan angripare kringgå autentisering. Detta ger dem tillgång till känslig information som om de hade behörighet. Åtkomstkontroll kan säkras genom att implementera auktoriseringstokens vid användarinloggning. På varje begäran som en användare gör medan den är autentiserad, verifieras auktoriseringstoken med användaren, vilket signalerar att användaren är behörig att göra den begäran.

Felaktig konfiguration av säkerhet

Säkerhetsfelkonfiguration är ett vanligt problem som Cybersäkerhet specialister observerar i webbapplikationer. Detta inträffar som ett resultat av felkonfigurerade HTTP-rubriker, trasiga åtkomstkontroller och visning av fel som avslöjar information i en webbapp. Du kan korrigera en säkerhetsfelkonfiguration genom att ta bort oanvända funktioner. Du bör också patcha eller uppgradera dina programvarupaket.

Cross-Site Scripting (XSS)

XSS-sårbarhet uppstår när en angripare manipulerar DOM API:et för en betrodd webbplats för att exekvera skadlig kod i en användares webbläsare. Exekveringen av denna skadliga kod sker ofta när en användare klickar på en länk som verkar vara från en betrodd webbplats. Om webbplatsen inte är skyddad från XSS-sårbarhet kan den göra det äventyras. Den skadliga koden som utförs ger en angripare tillgång till användarnas inloggningssession, kreditkortsuppgifter och annan känslig data.

För att förhindra Cross-site Scripting (XSS), se till att din HTML är väl sanerad. Detta kan uppnås av att välja pålitliga ramverk beroende på vilket språk du väljer. Du kan använda språk som .Net, Ruby on Rails och React JS eftersom de skulle hjälpa till att analysera och rensa din HTML-kod. Att behandla all data från autentiserade eller icke-autentiserade användare som opålitliga kan minska risken för XSS-attacker.

Osäker deserialisering

Deserialisering är omvandlingen av serialiserad data från en server till ett objekt. Deserialisering av data är en vanlig företeelse inom mjukvaruutveckling. Det är osäkert när data är deserialiserad från en opålitlig källa. Detta kan potentiellt utsätt din applikation för attacker. Osäker deserialisering inträffar när deserialiserad data från en otillförlitlig källa leder till DDOS-attacker, attacker med fjärrkörning av kod eller kringgående av autentisering.

För att undvika osäker deserialisering är tumregeln att aldrig lita på användardata. Varje användares indata bör Bli behandlad as potentiellt illvillig. Undvik deserialisering av data från opålitliga källor. Se till att deserialiseringsfunktionen till användas i din webbapplikation är säker.

Använda komponenter med kända sårbarheter

Bibliotek och ramverk har gjort det mycket snabbare att utveckla webbapplikationer utan att behöva uppfinna hjulet på nytt. Detta minskar redundansen vid kodutvärdering. De banar väg för utvecklare att fokusera på viktigare aspekter av applikationer. Om angripare upptäcker utnyttjande i dessa ramverk, skulle varje kodbas som använder ramverket göra det äventyras.

Komponentutvecklare erbjuder ofta säkerhetskorrigeringar och uppdateringar för komponentbibliotek. För att undvika komponentsårbarheter bör du lära dig att hålla dina applikationer uppdaterade med de senaste säkerhetskorrigeringarna och uppgraderingarna. Oanvända komponenter bör bli borttagen från applikationen för att klippa attackvektorer.

Otillräcklig loggning och övervakning

Loggning och övervakning är viktiga för att visa aktiviteter i din webbapplikation. Loggning gör det enkelt att spåra fel, bildskärm användarinloggningar och aktiviteter.

Otillräcklig loggning och övervakning sker när säkerhetskritiska händelser inte loggas ordentligt. Angripare utnyttjar detta för att utföra attacker på din applikation innan det finns något märkbart svar.

Loggning kan hjälpa ditt företag att spara pengar och tid eftersom dina utvecklare kan lätt hitta buggar. Detta gör att de kan fokusera mer på att lösa felen än att söka efter dem. I själva verket kan loggning hjälpa till att hålla dina webbplatser och servrar igång varje gång utan att de upplever någon driftstopp.

Slutsats

Bra kod är det inte bara om funktionalitet handlar det om att hålla dina användare och applikationer säkra. OWASP Top 10 är en lista över de mest kritiska applikationssäkerhetsriskerna är en fantastisk gratis resurs för utvecklare att skriva säkra webb- och mobilappar. Att träna utvecklare i ditt team för att bedöma och logga risker kan spara tid och pengar för ditt team på lång sikt. Om du vill läs mer om hur du tränar ditt lag på OWASP Topp 10 klicka här.

Förbigå TOR-censur

Förbi internetcensur med TOR

Förbi internetcensur med TOR Introduktion I en värld där tillgången till information är alltmer reglerad, har verktyg som Tor-nätverket blivit avgörande för

Läs mer »