OWASP Top 10 sikkerhedsrisici | Oversigt

Indholdsfortegnelse

OWASP Top 10 Oversigt

Hvad er OWASP?

OWASP er en non-profit organisation dedikeret til web-app sikkerhedsuddannelse. 

OWASP-læringsmaterialerne er tilgængelige på deres hjemmeside. Deres værktøjer er nyttige til at forbedre sikkerheden i webapplikationer. Dette inkluderer dokumenter, værktøjer, videoer og fora.

OWASP Top 10 er en liste, der fremhæver de største sikkerhedsproblemer for webapps i dag. De anbefaler, at alle virksomheder inkluderer denne rapport i deres processer for at reducere sikkerhedsrisici. Nedenfor er en liste over sikkerhedsrisici inkluderet i OWASP Top 10 2017-rapporten.

SQL Injection

SQL-injektion opstår, når en angriber sender upassende data til en webapp for at forstyrre programmet i applikationen.

Et eksempel på en SQL-injektion:

Angriberen kunne indtaste en SQL-forespørgsel i en inputformular, der kræver et brugernavn klartekst. Hvis inputformularen ikke er sikret, vil det resultere i udførelse af en SQL-forespørgsel. Dette henvises til som SQL-injektion.

For at beskytte webapplikationer mod kodeindsprøjtning skal du sørge for, at dine udviklere bruger inputvalidering på brugerindsendte data. Validering refererer her til afvisning af ugyldige input. En databasemanager kan også indstille kontroller for at reducere mængden af oplysninger der kan blive oplyst i et injektionsangreb.

For at forhindre SQL-injektion anbefaler OWASP at holde data adskilt fra kommandoer og forespørgsler. Den foretrukne mulighed er at bruge en sikker API at forhindre brugen af ​​en tolk eller at migrere til Object Relational Mapping Tools (ORM'er).

Brudt godkendelse

Autentificeringssårbarheder kan give en hacker adgang til brugerkonti og kompromittere et system ved hjælp af en administratorkonto. En cyberkriminel kan bruge et script til at prøve tusindvis af adgangskodekombinationer på et system for at se, hvilke der virker. Når den cyberkriminelle er kommet ind, kan de forfalske brugerens identitet og give dem adgang til fortrolige oplysninger.

Der findes en brudt autentificeringssårbarhed i webapplikationer, der tillader automatiske login. En populær måde at rette godkendelsessårbarhed på er brugen af ​​multifaktorautentificering. Også en login-hastighedsgrænse kunne være med i webappen for at forhindre brute force-angreb.

Følsomme dataeksponering

Hvis webapplikationer ikke beskytter, kan følsomme angribere få adgang til og bruge dem til deres fordel. Et on-path-angreb er en populær metode til at stjæle følsomme oplysninger. Risikoen for eksponering er minimal, når alle følsomme data er krypteret. Webudviklere bør sikre, at ingen følsomme data eksponeres i browseren eller gemmes unødigt.

XML External Entities (XEE)

En cyberkriminel kan muligvis uploade eller inkludere skadeligt XML-indhold, -kommandoer eller -kode i et XML-dokument. Dette giver dem mulighed for at se filer på applikationsserverens filsystem. Når de har adgang, kan de interagere med serveren for at udføre server-side request forgery (SSRF) angreb.

XML eksterne enhedsangreb kan forhindres af tillader webapplikationer at acceptere mindre komplekse datatyper såsom JSON. Deaktivering af XML ekstern enhedsbehandling reducerer også chancerne for et XEE-angreb.

Ødelagt adgangskontrol

Adgangskontrol er en systemprotokol, der begrænser uautoriserede brugere til følsomme oplysninger. Hvis et adgangskontrolsystem er brudt, kan angribere omgå godkendelse. Dette giver dem adgang til følsomme oplysninger, som om de har autorisation. Adgangskontrol kan sikres ved at implementere autorisationstokens på brugerlogin. Ved hver anmodning, en bruger fremsætter, mens den er godkendt, bekræftes godkendelsestokenet hos brugeren, hvilket signalerer, at brugeren er autoriseret til at fremsætte denne anmodning.

Fejlkonfiguration af sikkerhed

Sikkerhedsfejlkonfiguration er et almindeligt problem cybersikkerhed specialister observerer i webapplikationer. Dette sker som et resultat af fejlkonfigurerede HTTP-headere, ødelagte adgangskontroller og visning af fejl, der afslører info i en webapp. Du kan rette en sikkerhedsfejlkonfiguration ved at fjerne ubrugte funktioner. Du bør også patche eller opgradere dine softwarepakker.

Cross-site scripting (XSS)

XSS-sårbarhed opstår, når en angriber manipulerer DOM API'et på et betroet websted til at udføre ondsindet kode i en brugers browser. Udførelsen af ​​denne ondsindede kode sker ofte, når en bruger klikker på et link, der ser ud til at være fra et pålideligt websted. Hvis webstedet ikke er beskyttet mod XSS-sårbarhed, kan det blive kompromitteret. Den ondsindede kode, der er henrettet giver en hacker adgang til brugernes login-session, kreditkortoplysninger og andre følsomme data.

For at forhindre Cross-site Scripting (XSS), skal du sørge for, at din HTML er godt renset. Dette kan opnås ved at vælge betroede rammer afhængigt af det valgte sprog. Du kan bruge sprog som .Net, Ruby on Rails og React JS, da de vil hjælpe med at parse og rense din HTML-kode. At behandle alle data fra godkendte eller ikke-godkendte brugere som upålidelige kan reducere risikoen for XSS-angreb.

Usikker deserialisering

Deserialisering er transformationen af ​​serialiserede data fra en server til et objekt. Deserialisering af data er en almindelig begivenhed i softwareudvikling. Det er usikkert, når data er deserialiseret fra en upålidelig kilde. Dette kan potentielt udsætte din applikation for angreb. Usikker deserialisering opstår, når deserialiserede data fra en kilde, der ikke er tillid til, fører til DDOS-angreb, angreb til fjernudførelse af kode eller omgåelser af godkendelse.

For at undgå usikker deserialisering er tommelfingerreglen aldrig at stole på brugerdata. Enhver brugerinputdata bør blive behandlet as potentielt ondsindet. Undgå deserialisering af data fra upålidelige kilder. Sørg for, at deserialiseringsfunktionen til bruges i din webapplikation er sikker.

Brug af komponenter med kendte sårbarheder

Biblioteker og rammer har gjort det meget hurtigere at udvikle webapplikationer uden at skulle genopfinde hjulet. Dette reducerer redundans i kodeevaluering. De baner vejen for, at udviklere kan fokusere på vigtigere aspekter af applikationer. Hvis angribere opdager udnyttelser i disse rammer, vil enhver kodebase, der bruger rammeværket, gøre det blive kompromitteret.

Komponentudviklere tilbyder ofte sikkerhedsrettelser og opdateringer til komponentbiblioteker. For at undgå komponentsårbarheder bør du lære at holde dine applikationer opdaterede med de nyeste sikkerhedsrettelser og opgraderinger. Ubrugte komponenter skal fjernes fra applikationen til at skære angrebsvektorer.

Utilstrækkelig logning og overvågning

Logning og overvågning er vigtigt for at vise aktiviteter i din webapplikation. Logning gør det nemt at spore fejl, overvåge brugerlogins og aktiviteter.

Utilstrækkelig logning og overvågning forekommer, når sikkerhedskritiske hændelser ikke logges korrekt. Angribere udnytter dette til at udføre angreb på din applikation, før der er nogen mærkbar respons.

Logning kan hjælpe din virksomhed med at spare penge og tid, fordi dine udviklere kan nemt finde fejl. Dette giver dem mulighed for at fokusere mere på at løse fejlene end at søge efter dem. Faktisk kan logning hjælpe med at holde dine websteder og servere oppe og køre hver gang, uden at de oplever nogen nedetid.

Konklusion

God kode er ikke lige om funktionalitet handler det om at holde dine brugere og applikationer sikre. OWASP Top 10 er en liste over de mest kritiske applikationssikkerhedsrisici er en fantastisk gratis ressource for udviklere til at skrive sikre web- og mobilapps. At træne udviklere på dit team til at vurdere og logge risici kan spare dit team tid og penge i det lange løb. Hvis du har lyst læs mere om, hvordan du træner dit hold på OWASP Top 10, klik her.

Omgåelse af TOR-censur

Omgå internetcensur med TOR

Omgå internetcensur med TOR Introduktion I en verden, hvor adgang til information i stigende grad reguleres, er værktøjer som Tor-netværket blevet afgørende for

Læs mere »