Alt hvad du behøver at vide om penetrationstest

Sikkerhed er hjertet og sjælen i alle digitale virksomheder. Med moderne sofistikeret teknologi er det altid muligt for en hacker at udnytte enhver form for sårbarhed i dit system til at påføre utallige skader. Dette er yderst problematisk for blockchain-baserede virksomheder, der normalt har at gøre med enorme beløb. For at beskytte deres investors interesser er det deres ansvar at sikre, at de tager alle mulige skridt til at teste og undersøge deres kode grundigt. Det er her, penetrationstest kommer ind.

Penetrationstest har vist sig at være den bedste metode til at opdage eventuelle sikkerhedsbrud. I denne vejledning skal vi undersøge, hvad penetrationstest betyder, og hvordan det kan hjælpe din virksomhed.

Hvad er penetrationstest?

En penetrationstest er grundlæggende et simuleret cyberangreb mod systemet for at kontrollere det for sårbarheder. Når det kommer til webapplikationssikkerhed, bruges penetrationstest ofte til at styrke firewalls. Indsigten fra disse gennemtrængningstest kan bruges til at finjustere produktet og tilslutte sårbarhederne.

Nu, hvorfor er det nødvendigt? Tak, tak til denne artikel, vi stødte på nogle ret interessante statistikker.

  • Over 69% af de organisationer, der er baseret i USA, tror ikke, at deres antivirusbeskyttelse eller firewalls effektivt kan beskytte dem mod angreb.
  • De gennemsnitlige omkostninger ved disse overtrædelser for det amerikanske firma har nået næsten $ 7,5 millioner, og det er næsten $ 5 millioner i Mellemøsten.
  • I 2017 blev der registreret et cyberangreb hvert 40. sekund, hvilket resulterede i samlede tab på $ 5 milliarder, en svimlende stigning fra 2015’s $ 325 millioner
  • Det forventes, at der inden 2019 vil ske et cyberangreb hvert 14. sekund i 2019 med samlede tab på 21,5 milliarder dollars.
  • Den medicinske og finansielle industri har lidt mest med tab, der tegner sig for henholdsvis $ 380 og $ 245 pr. Indbygger.

Følgende er den slags cyberangreb, som virksomheder har oplevet i august 2017:

Alt hvad du behøver at vide om penetrationstest

De fem faser af penetrationstest

De fem faser af penetrationstest ifølge Incapsula, ser sådan ud:

Alt hvad du behøver at vide om penetrationstest

Okay, så lad os nu se på hvert af disse trin.

Trin # 1: Planlægning og rekognoscering

Rekognoscering er handlingen ved at indsamle foreløbige data eller intelligens om dit mål.

Det giver mening, at dette er den første fase af testen, fordi det hjælper en med at lære mere om deres mål og dermed beslutte det bedste handlingsforløb. Der er to slags rekognoscering:

  • Aktiv rekognoscering: I dette tilfælde interagerer testeren direkte med deres mål og stiller dem spørgsmål for at hjælpe med at opbygge deres angrebsform
  • Passiv rekognoscering: De interagerer med en mellemmand for at få deres rekonformationsoplysninger.

I dette trin definerer testeren omfanget og målene for deres test, hvori de angiver de systemer, de skal adressere, og de testmetoder, som de skal bruge.

Trin # 2: Scanning

Scanningsfasen består i at bruge tekniske værktøjer til at indsamle intelligens om målet. Tænk på at bruge en sårbarhedsscanner på målnetværket. Denne fase hjælper testeren med at forstå, hvordan målet vil reagere på forskellige angrebsforsøg. Der er to former for test, der udføres i dette trin:

  • Statisk analyse: Dette inkluderer inspektion af applikationens kode for at forudsige, hvordan den opfører sig under kørsel. Denne analyse kan udføres i et enkelt pass.
  • Dynamisk analyse: I denne analyse inspicerer du applikationens kode, mens den kører. Denne analyse er meget mere praktisk, da den giver et indblik i realtid i, hvordan applikationen fungerer.

Trin # 3: Få adgang

I dette trin får du adgang ved at tage kontrol over en eller flere netværksenheder til enten:

  • Uddrag data fra målet
  • Brug enheden til at starte angreb på andre mål

Denne fase bruger forskellige metoder til at afdække målets sårbarheder såsom scripting på tværs af websteder og bagdøre. Testerne kan udnytte sårbarheder ved at eskalere privilegier, stjæle data, opfange trafik osv.

Trin # 4: Opretholdelse af adgang

Dette er den snigende del af testen. I denne forsøger testeren at opretholde adgangen til netværket ved at tage de nødvendige skridt for at være i stand til at gøre det.

Så hvad er formålet med denne fase?

Nå, testeren kontrollerer grundlæggende, om den spottede sårbarhed kan udnyttes til at forblive inde i Dapp / projektets økosystem i lang tid. Med andre ord, hvis hacker udnytter sårbarheden, hvor længe kan de blive i systemet uden at blive opdaget.

Trin # 5: Analyse

Okay, så nu er vi i sidste fase.

I dette trin er alt, hvad testeren skal gøre, at dække deres spor for at fjerne alle chancer for detektion. Dybest set skal enhver ændring, som testeren har foretaget, vende tilbage til sin oprindelige tilstand eller en tilstand, hvor værtsnetværkets administratorer ikke genkender.

Alle resultaterne af testene samles derefter i en rapport, der beskriver følgende:

  • De sårbarheder, der blev udnyttet
  • Alle de følsomme data, der var adgang til
  • Den tid, som testeren var i stand til at forblive i systemet uopdaget.

Rapporten undersøges derefter for at tjekke alle sårbarheder.

Metoder til penetrationstest

Okay, så nu kender vi til de forskellige faser af penetrationstesten, lad os se på de forskellige testmetoder.

  • Ekstern test: Målretning mod virksomhedens aktiver, der er synlige på internettet. Eksempel på dette er virksomhedens websted, selve webapplikationen, e-mailen og domænenavnsserverne.
  • Intern test: En tester får adgang til applikationen bag sin firewall og simulerer et angreb, som en ondsindet angriber ville gøre. Denne angriber kan være en ondsindet medarbejder, eller det kan også være et phishing-angreb
  • Blindprøvning: I denne test får testeren kun navnet på den virksomhed, der er målrettet mod. Hvis du gør dette, hjælper sikkerhedspersonale med at undersøge, hvordan et faktisk angreb finder sted i realtid.
  • Dobbelt blind test: I dette tilfælde vil applikationen ikke have nogen forudgående viden om, hvornår angrebet fra testeren skal finde sted. Dette simulerer forhold i den virkelige verden, hvor en angriber ikke på forhånd fortæller virksomheden om deres angreb
  • Målrettet test: I dette scenarie arbejder både testeren og virksomheden sammen for at holde hinanden underrettet om deres bevægelser. Hvordan er dette nyttigt? Nå, det giver virksomheden feedback i realtid fra en potentiel hackers synspunkt.

Forskellige slags penetrationstest

Penetrationstestere skal foretage flere tests og kontroller. Lad os gå igennem nogle af de almindelige tests at pen-testere gør, når det kommer til blockchain-baserede virksomheder.

# 1 Test af konsensusalgoritme

En af de vigtigste ting, der skal testes, er konsensusalgoritmen, da den sandsynligvis er den mest vigtige del af blockchain. Konsensusalgoritmen skal kontrolleres for at se, om den er sårbar over for 51% -angrebet eller ej.

I et netværk som Bitcoin, der bruger Proof of Work, er det ekstremt dyrt at starte 51% angrebet. Det er dog ikke tilfældet med flere af de nye mønter. Lad os se på de teoretiske omkostninger ved et 51% angreb på flere netværk, der implementerer Proof of Work.

Alt hvad du behøver at vide om penetrationstest

Billedkredit: ICO Crowd

Husk en ting, angrebsomkostningerne her inkluderer ikke de blokbelønninger, som minearbejderen modtager for minedrift. I nogle tilfælde kan dette være ret betydeligt og reducere angrebsomkostningerne med op til 80%.

# 2 nøgler og tegnebøger

En af de vigtigste komponenter i disse projekter er sikkerheden af ​​brugerens tegnebøger ved brug af private nøgler og adgangskoder. Der er to tests, som en tester skal udføre for at gøre tegnebøgerne mere sikre:

  • Kontrol af adgangskodestyrke: Styrken af ​​adgangskoden er helt afgørende, da det kræves af en angriber sammen med den private nøgle for at få adgang til brugerens tegnebog. En ligefrem brute force og ordbog angreb kan gøres for at forsøge at bryde adgangskoden. Hvis adgangskoden let knækkes, betyder det, at den er svag.
  • Opbevaring af nøgler: Privat nøgleopbevaring er ekstremt vigtig og er en af ​​hjertet og sjælen i nutidens kryptografi. Der er åbenbart flere lagringsmetoder. Folk foretrækker varme og multi-signatur tegnebøger, men det er meget foretrukket at bruge kolde tegnebøger såsom hardware tegnebøger. Når det er sagt, er de ikke selv fri for hacks. Gennemtrængningstest sørger for, at nøgleopbevaring sker på en så sikker måde som muligt.

# 3 Synkroniseringstest

Da en blockchains netværk består af peer-to-peer-noder, er det ekstremt vigtigt, at de er i stand til at synkronisere indbyrdes. Derfor er det ekstremt vigtigt at teste synkronisering mellem noder for at sikre, at processen er hurtig og effektiv.

# 4 Redundansprøvning

Denne test afslører alle problemer med redundans omkring datadeling på tværs af noder. Sådanne tests afslører virkningen af ​​flere noder, der fejler på samme tid.

# 5 Timejacking Attack

Hver gang en node tilslutter sig et netværk, skal de holde styr på tiden, OG den skal være synkroniseret med dens andre peer-noder. Den måde, det gør på, er ved at holde et internt ursystem, som tilfældigvis er det samme som den beregnede medianurstid for alle dets jævnaldrende. Hvis denne mediantid adskiller sig enormt fra systemtiden, justeres det interne ur og vender tilbage til systemtiden.

Så hvis en ondsindet node kommer ind i netværket med et unøjagtigt tidsstempel, vil de have mulighed for at ændre netværkstælleren. Dette kan føre til problemer som dobbeltforbrug og spild af minedrift.

# 6 Blockchain API-test

API er ekstremt vigtigt, da det hjælper brugere med at interagere med blockchain. Pen-test udføres for at sikre, at API-slutpunkterne er fri for alle sårbarheder.

# 7 DDoS Attack

DDos eller Distribueret lammelsesangreb er et af de dødbringende angreb derude. Det inkluderer at sende et stort antal lignende anmodninger om at tilstoppe netværket og nægte netværket at udføre nogen form for operationer. Test skal udføres for at sikre, at applikationerne er fri for potentielle DDos-angreb.

Gennemgangstest Casestudie

En interessant casestudie er blevet præsenteret af isecurion blog.Denne casestudie viser fordelene ved penetrationstest. Så lad os tage et kig.

Det pågældende emne var en kryptokurrencyudveksling baseret i Indien. Udfordringerne for testerne var som følger:

  • Kundens vigtigste forretningsmål var at give sine kunder en sikker og sikker handelsplatform.
  • Klienten ønskede forsikring om, at hjemmesiden og mobilapplikationen var sikker og indeholdt passende sikkerhedskontrol.
  • Klienten havde leveret kryptomønter som Bitcoin, Ethereum og Litecoin & Ripple til handel på deres platform.
  • Kundens forventning var at gå ud over det grundlæggende bevis for koncept for identificerede sårbarheder, og de ønsker at vide, om nogen kan få adgang til tegnebøger, der indeholder kryptokurrency for at stjæle fra dem.

ISECURION’s tilgang

  • Kombination af sort kasse & Testmetode med grå boks blev brugt til at efterligne alle mulige angrebsscenarier.
  • Identificerede alle indgangspunkter til internettet & Mobil platform.
  • Udførte forskellige scenarier baseret på angreb på børsen.

Resultater

  • I den indledende testfase fandt de ud af, at brugerens sociale sikkerhedsoplysninger under KYC-processen, hvor en bruger kan uploade dokumenter, var sårbare over for ondsindet filupload, og vi var i stand til at udføre shell-kode på serveren.
  • Under testning af SQL-injektion fandt de, at USER-AGENT-header var sårbar over for blind SQL-injektion, som gav fuldstændig adgang til database.
  • Under test af Android Mobile Application var de i stand til at omgå login-mekanismen og få adgang til andre brugers tegnebøger og var i stand til at overføre kryptokurrency til vores tegnebog.
  • Bruger komplette detaljer såsom Bank A / C nr, IFSC kode og komplette detaljer om brugere blev gemt i mobil i klar tekst.
  • Mobilapplikationen var sårbar over to-faktor-godkendelsesomgåelse.
  • Brugernes kryptokurrency blev gemt i en varm tegnebog på serveren, det betyder, at deres private nøgler er gemt på serveren, så enhver, der får de private nøgler, kunne have stjålet deres mønter.

Fordele

  • ISECURION minimerede sikkerhedsrisici ved at vurdere kundens applikationssårbarhed og anbefalede løsninger med gennemprøvede metoder til forbedring af sikkerheden.
  • Dybden af ​​dækningen, der blev båret af teamet og de leverede leverancer, hjalp klienten til ikke kun at identificere tekniske og procesrelaterede sårbarheder, men hjalp dem også med at vide, hvordan de løste.
  • Overholdt alle regler, fik evnen til at fokusere på højrisikobegivenheder og tage øjeblikkelig handling.

Sårbarhedsvurdering vs penetrationstest

Før vi går videre, er det vigtigt at kende forskellene mellem sårbarhedsvurdering og penetrationstest. Lad os lave en sammenlignende undersøgelse.

Alt hvad du behøver at vide om penetrationstest

Penetrationstestomkostninger

Ifølge hacken, de gennemsnitlige omkostninger ved en penetrationstest kan variere fra $ 4.000 til $ 100.000. Årsagen til prisen er:

  • Du ansætter en specialist eller et team af specialister til at køre tests på dit projekt
  • Du modtager også en anbefaling med hensyn til de opdagede sårbarheder.
  • Gennemtrængningstest skal også udføres regelmæssigt for at sikre, at alle mulige gennemløb foretages, og ingen sårbarheder kommer til overfladen. Disse gentagne tests øger prisen

I stedet for specialister kan du også få penetrationstests udført via software, der kan koste fra $ 1000 – $ 2000. Selvom dette bestemt er en billigere mulighed, er kontrollerne ikke så grundige, plus kun en specialist kan rådgive dig om, hvordan du tilslutter hullerne i systemet.

Selvom du ansætter specialister, er der nogle faktorer, der kan bestemme priserne for dine tests:

  • Graden af ​​kompleksitet i dit system. Jo mere komplekst dit system er, desto dyrere penetrationstest bliver det.
  • Størrelsen på dit netværk. Mere arbejde kræves af testerne, hvis størrelsen på netværket er stor
  • Hvis der kræves yderligere værktøjer til testen, kan det bumpe prisen på testen. Faktisk lad os udvide disse værktøjer, så du kan få bedre forståelse af priserne.

Her er de typer værktøjer, du kan bruge:

  • Statiske værktøjer til at udnytte kendte sårbarheder i koden
  • Dynamiske værktøjer til at simulere crashtests på systemet for at finde ud af sårbarheder under løbetiden.
  • Interaktive analyseværktøjer til at køre en agent på en server eller et indbygget kodebibliotek for lettere registrering af sårbarheder.

Disse værktøjer kan skabe en enorm mængde data, som testeren kan behandle, og derfor skal de tilpasses til at imødekomme virksomhedens behov.

Fordele ved penetrationstest

penetrationstest

Som du kan se, er der masser af fordele til penetrationstest. Lad os gennemgå nogle af dem:

  • Hjælper os med at bestemme, hvilken slags angrebsvektorer der kan påvirke applikationen
  • Hjælper os med at opdage sårbarhedens punkt
  • Identificerer de store sårbarheder, der kan graves op på grund af en kombination af flere lavrisikosårbarheder
  • Identificerer den virkelige indvirkning af vellykkede angreb på virksomheden og den generelle drift.
  • Det afslører også, hvor god sikkerheden i systemet virkelig er
  • Omvendt, hvis systemet let brydes ind, så viser det virksomheden, at de har brug for at investere i bedre sikkerhedsmålinger
  • På grund af rapporten opnået efter penetrationstest kan virksomheden foretage alle de nødvendige justeringer for at gøre deres drift og forretning bedre.

BountyOne: Penetration Test Experts

En pen-test skal altid udføres af en certificeret specialist med dokumenteret track record. Som du kan forestille dig, er de svære at finde, altid i høj efterspørgsel og dyre.

Men hvad hvis vi havde en platform, der bragte alle disse testere sammen og tilskyndede dem økonomisk til at udføre det bedste job, de muligvis kunne gøre? Det er præcis, hvad BountyOne handler om.

Tænke på BountyOne som ”Uber” af penetrationstestere. Enhver tester kan vælge at arbejde på enhver kontrakt, der i øjeblikket er aktiv på platformen. Hver og en af ​​disse testere er udførligt undersøgt af os. De gennemgår en detaljeret ansøgningsproces, der sikrer, at kun de bedste testere kommer på vores platform.

Du kan tjekke dette ud infografik for at lære, hvordan hele processen fungerer. For at opsummere det hele:

  • Testerne kan beslutte at arbejde på det projekt, de ønsker.
  • Alt det arbejde, der er udført af testerne, tredobles af andre medlemmer af økosystemet
  • Hvis testerne ikke gør et godt stykke arbejde, bliver deres indsats skåret ned, og de går glip af alle deres penge

Så hvorfor skal du vælge BountyOne over en anden auditing / pen-test platforme? Lad os se på:

  • Det er billigere, fordi vi ikke har en fuldtids test, som vi skal betale hundreder af tusinder af dollars for at beholde. De har andre soliditetsudviklingsjob og gør det bare på siden som en Uber-driver.
  • Vi betaler dem baseret på ydeevne og ikke blot for at sige, at de læser koden. Dette er grunden til, at testere er økonomiske incitamenter til at udføre det bedst mulige arbejde.
  • Testerne risikerer at miste alle deres indsatte penge, hvis de ikke gør et godt stykke arbejde og ikke indsender deres arbejde i tide. Dette sikrer, at der ikke er unødvendige forsinkelser.
  • Også samfundet (inklusive andre testere) kan tjene et betydeligt beløb ved at modbevise de arbejder, som andre har udført.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me