Sikre APIer og nettapplikasjoner med Probely DAST Scanner

Gitt at omtrent en tredjedel av alle kjente brudd er et direkte resultat av et vellykket nettapplikasjonsangrep, er det viktig å teste nettapplikasjonene og APIenes sikkerhet.

Ikke bare må du sørge for at nettapplikasjonene dine er sikre av regulatoriske årsaker, men du (bør) også bry deg om kundens data og risikoeksponeringen til bedriften din.

Du har absolutt mange alternativer når det gjelder å sikre nettapplikasjonene dine, alle med fordeler og ulemper. Noen løsninger er avhengige av å identifisere sikkerhetsproblemer i kildekoden til programmene dine. Andre beskytter applikasjonene dine mot angrep. Og andre er avhengige av dynamisk testing av nettapplikasjonenes sikkerhet under kjøring, akkurat som en hacker ville gjort.

Fokuset i denne artikkelen er på denne sistnevnte saken, nemlig på Sannsynligvis. Det som gjør Probely interessant sammenlignet med andre, er at den takler to av hovedproblemene ved sårbarhetsskannere på nett: skanningen av moderne nettapplikasjoner og kvaliteten på resultatene.

Probely har to forskjellige utgaver: en selvbetjent rettet mot SMB og en annen rettet mot bedrifter eller selskaper med mange nettapplikasjoner og APIer.

Probely fokuserer på å gi eksepsjonell dekning på tvers av moderne utviklingsmiljøer og eliminere falske positiver med bevisbaserte skanningsresultater samtidig som du kan integrere DAST-skanning i utviklingslivssyklusen din.

For godt til å være sant?

Les videre for å lære om min analyse av Probely.

Hva gjør egentlig Probely?

Med utviklere og enhver bedriftsstørrelse i tankene, tester Probely applikasjonene og API-ene dine, skanner dem for å finne sikkerhetsproblemer og sårbarheter. Når testen er fullført, gir den veiledning om hvordan du kan fikse problemene som ble funnet.

Utviklerne og sikkerhetsingeniørene dine kan jobbe med Probely gjennom det intuitive brukergrensesnittet. Men hvis du trenger kraft og fleksibilitet, kan du stole på deres fullfunksjons API siden de følger en API-første utviklingstilnærming. Deres API gir alle funksjonene du ser på brukergrensesnittet, slik at du kan integrere Probely i en CI/CD-pipeline, sårbarhetshåndteringsverktøy, orkestrator eller problemsporer. Hvis du bruker de populære, kan det hende du har en ut av boksen integrasjon. Det er tilfellet for verktøy som JIRA, Jenkins, Azure DevOps, DefectDojo, CircleCI og Slack. Men hvis du utviklet din egen problemsporer eller orkestrator, er API-en veien å gå.

Dekning, gjennomgang og nøyaktighet

Probely bruker en neste generasjons edderkopp for å navigere i rike Javascript-applikasjoner på samme måte som en vanlig nettleser, noe som resulterer i utmerket dekning av nettstedet, noe som er et problem for mange andre DAST-verktøy. Denne edderkoppen er ideell for enkeltsideapper, for eksempel de som er basert på React eller Angular JS.

  7 grunner til å velge React Native for utvikling av mobilapper

Husk at en skanner bare kan identifisere sårbarheter på sider som ble funnet. Derfor er en god edderkopp av største betydning.

Probely tilbyr også ulike skanneprofiler, avhengig av hvilket miljø du vil teste. Du kan angi en mindre påtrengende skanneprofil hvis du ønsker å skanne produksjonsmiljøet ditt. Hvis du tester QA-miljøet ditt, kan du angi en mer grundig profil for mer fullstendige skanninger. Ved å teste et pre-produksjonsmiljø kan du identifisere og fikse sårbarheter før du distribuerer applikasjonen i produksjon.

Rapportering

Selv om Probely oppdager en omfattende liste over sårbarheter, fokuserer den på å rapportere det som er relevant og uten falske positiver. For visse klasser av sårbarheter gir det bevis på at sårbarheten er reell, og sparer teamets tid på å validere om sårbarhetene er reelle og relevante.

Probely gir omfattende rapportering fra grensesnittet, men den kan også synkronisere sårbarhetsinformasjon med en problemsporing eller sårbarhetshåndteringsverktøy, slik at du kan passe Probely inn i dine eksisterende sikkerhets- og utviklingsarbeidsflyter.

Probely kan teste programvaren din mot sårbarheter som de som er oppført i OWASP TOP 10 og mye mer. Det kan også hjelpe deg å oppnå samsvar ved å sjekke spesifikke krav i PCI-DSS, GDPR, HIPAA og ISO270-01.

Hentet fra OWASP TOP 10-rapporten, vil du med et øyeblikk se hva som er galt angående denne samsvar.

Grensesnitt

Grensesnittet er enkelt og lett å navigere, slik at du raskt kan komme i gang. Enterprise-utgaven lar deg kontrollere brukere, roller og angi egendefinerte roller. Du kan også bruke etiketter til å organisere brukere, eiendeler og sårbarheter for å administrere nettapplikasjonssikkerheten bedre. Siden alle funksjoner er tilgjengelige gjennom API, kan du enkelt integrere Probely i andre sikkerhetsapplikasjoner og prosesser for bedrifter.

Hvis du bruker Jira eller Azure Boards, kan du konfigurere Probely til automatisk å sende alle sårbarheter til problemsporeren. Når utvikleren fikser og lukker problemet på problemsporeren, vil den automatisk utløse en re-test på Probely, som vil sjekke om sårbarheten er riktig fikset. Hvis den ikke er det, åpnes problemet på nytt på problemsporingen. Dette lar utviklingsteamet ditt håndtere en sårbarhetsrapport som enhver annen feil, direkte på problemsporeren, uten engang å bruke Probelys grensesnitt. Fint, ikke sant? 🙂

Komme i gang 🚀

For mine testformål brukte jeg Probelys Enterprise-utgave.

De tilbyr også en standardutgave og forskjellige planer å velge mellom, inkludert en gratis plan. I gratisplanen tester skanningen bare tre klasser av sårbarheter: informasjonskapslerflagg, sikkerhetshoder og SSL/TLS-problemer. Pro-planen tilbyr de fleste funksjonene og fokuserer på SMB-er og organisasjoner som har fem eller færre mål å skanne.

  11 beste Keto-apper og diettsporere i 2021

Enterprise-utgaven fokuserer på organisasjoner som har et stort antall mål og inkluderer tilleggsfunksjoner som de som er vanlige i bedriftsprogramvare: brukere, grupper, roller og tillatelser. Den lar deg også skanne interne mål (på ditt private nettverk) ved å installere en agent som følger med.

Legger til et mål

Det er enkelt å legge til et mål. Når du logger på med kontoen din, må du navigere til siden Mål og klikke på Legg til. Deretter oppgir du et navn, en URL og en eller flere etiketter – dvs. testing, produksjon, utvikling osv. – for det nye målet. For å la Probely skanne dette målet som et frittstående API uten en støttende nettapp, bør du krysse av for det tilsvarende alternativet for å identifisere det som et API-mål.

Hvis målet ditt ikke er eksponert på Internett og du installerte en Probely-agent på ditt private nettverk, kan du velge hvilken agent du vil bruke mens du legger til et mål.

Etter å ha lagt til et mål, må du validere eierskapet fordi Probely trenger bevis på at du har de nødvendige rettighetene til å kjøre en skanning på det. Det er to alternative metoder for å validere målet: å laste en fil med gitt innhold på målets rot eller legge til en TXT-oppføring i DNS-posten din, med domenets navn og noe spesifikt postinnhold. Når målet er validert, er du klar til å skanne det bare ved å trykke på Skann-knappen.

Du kan sjekke fremdriften og statusen til en skanning ved å gå til fanen Skanninger på Probelys dashbord. Denne siden vil vise deg når skanningen startet og hva den har funnet så langt. Funnene er farget av alvorlighetsgrad, slik at du med et øyeblikk kan se om det er kritiske problemer som må løses umiddelbart.

Hvis nettstedet ditt har en påloggingsside og du vil at Probely skal utføre en skanning bak den, må du oppgi legitimasjon som lar den gjennomsøke nettstedet som en autentisert bruker. Probely støtter de fleste autentiseringsmetoder for påloggingssider.

Skanner et API

For å skanne et API-mål, trenger Probely at du oppgir skjemaet. Du gjør dette når du legger til et API-mål, enten ved å oppgi OpenAPI-skjema-URLen eller ved å laste opp skjemaet hvis du tidligere har lagret det som en lokal fil. URL-alternativet lar Probely hente skjemaet før hver skanning, og sikrer at det alltid fungerer med den nyeste versjonen av skjemaet ditt.

Det er også forskjellige alternativer når det gjelder autentiseringsmetoder for API-tilgang. Probely støtter ikke bare statiske tokens, men tillater også dynamisk autentiseringskonfigurasjon ved skanning av APIer. Du kan konfigurere et påloggingsendepunkt der Probely kan få et autentiseringstoken, eller du kan sette en egendefinert overskrift med en fast API-nøkkel i den. Du kan også oppgi egendefinerte parameterverdier som Probely vil bruke for de som finnes i skjemaet.

  Fix InputMapper kunne ikke åpne DS4 eksklusivt

Når du er ferdig med å konfigurere API-autentiseringen og parametrene, kan du starte skanningen ved å trykke på Skann nå-knappen. Etter noen sekunder vil du kunne følge skannefremdriften på samme skanneside. Når skanningen avsluttes, kan du laste ned en dekningsrapport som viser alle funnet endepunkter og hver responskode. Denne rapporten vil også fortelle om det var sviktende endepunkter.

Sjekker funnene dine

Funnsiden viser skanneresultatene så snart de er funnet, selv når skanninger pågår. Hvert funn viser en alvorlighetsgrad (høy, middels eller lav), det korresponderende målet og URL-en, funnbeskrivelsen, klokkeslettet og datoen da det ble funnet, dets tilstand (fast eller ikke fast) og mottaker, og om det påvirker PCI- DSS- eller OWASP-samsvar.

I tillegg til å holde deg informert om de oppdagede sårbarhetene, er funnsiden også nyttig for å tildele sårbarheter til teamet ditt for å fikse. For å gjøre det, klikker du på avmerkingsboksen til venstre og velger mottakeren fra en rullegardinmeny.

Probely gir også informasjon om hvordan du kan fikse sårbarhetene som er funnet. Sammen med disse instruksjonene kan du se hele forespørselen og svaret og bevisene.

På Dashboard-siden kan du se ulike diagrammer som oppsummerer de skannede målenes sikkerhetsrisiko. Grafene viser trender i forskjellige interessante beregninger, for eksempel risikoscore, gjennomsnittlig tid for å fikse problemer og alvorlighetsnivåer. Du kan også se på nettstedene som krever mest oppmerksomhet og en topp 5-rangering av sårbarheter med høyest forekomst.

Til slutt, på Integrations-siden, kan du konfigurere Probely til å integrere med mange forskjellige verktøy for å administrere prosjekter, teamkommunikasjon, problemsporing og mer. De tilgjengelige integrasjonene inkluderer Azure Boards, DefectDojo, Slack, Jira, Jenkins og CircleCI.

Et verktøy for utviklere og sikkerhetsteam

For smidige utviklingsteam er time-to-market en toppprioritet. Uansett hva du kan gjøre for å minimere tiden det tar før programvaren din går i produksjon uten at det går på bekostning av kvaliteten, er det hjertelig velkommen. Probely tilbyr nettopp det – en kostnadseffektiv måte å forbedre sikkerheten til nettstedene og APIene dine på, som hjelper deg med å holde timeplanrelaterte løfter og levere programvareprodukter av høy kvalitet.

For sikkerhetsteam gir Probely deg en plattform for å sikre nettapplikasjonene dine og administrere sårbarhetene som krever utbedring. Den lar deg også overføre noen av sikkerhetstestingene direkte til utviklingsteam mens du har en tilsynsrolle.

Probely tilbyr gratis prøveversjoner, lisenser for bedriftsevaluering og produktdemoer. Ta kontakt med Sannsynligvis for å komme i gang.