Book møde

Burp værktøjet

24. sep. 2022

Burp Suite: Den Ultimative Værktøjskasse til Webapplikationssikkerhed

Burp Suite repræsenterer guldstandarden inden for testning af webapplikationssikkerhed og tilbyder en integreret samling af værktøjer, der muliggør både automatiserede og manuelle sikkerhedsvurderinger. Denne artikel udfolder de essentielle aspekter af Burp Suite baseret på dybdegående teknisk litteratur.[1]

Grundlæggende Konfiguration og Optimering

Burp Suite distribueres som en enkelt Java Archive (.jar)-fil, der kræver Java Runtime Environment version 1.6 eller nyere. Mens mange brugere starter applikationen ved at dobbeltklikke på filen, er den professionelle tilgang at anvende kommandolinjen for præcis kontrol over systemressourcer.[1]

Hukommelsesallokering og Performance

For at sikre stabilitet under omfattende sikkerhedsvurderinger er det kritisk at allokere tilstrækkelig hukommelse fra starten. Standardkonfigurationen kan allokere ned til 128 MB på ældre systemer, hvilket er utilstrækkeligt for komplekse applikationer. Ved at specificere maksimal hukommelse undgås nedbrud og datatab:[1]

java -jar -Xmx2048M /path/to/burpsuite.jar
java -jar -Xmx2G /path/to/burpsuite.jar

Disse kommandoer tildeler 2 GB RAM til Burp Suite. Bemærk at allokering ud over 4 GB kan påvirke performance negativt på grund af Java Virtual Machines garbage collector, hvilket er vigtigt at overveje ved planlægning af ressourceforbrug.[1]

Netværkskonfiguration og IPv6-håndtering

En almindelig fejl på Windows 7 64-bit systemer med 32-bit JVM er java.net.SocketException: Permission denied, hvilket skyldes at Java vælger IPv6-interfacet frem for IPv4. Løsningen er at tvinge IPv4-stacken:[1]

java -Xmx2048M -Djava.net.preferIPv4Stack=true -jar /path/to/burpsuite.jar

Denne kommando deaktiverer IPv6-interfacet og sikrer korrekt forbindelse til websites, der returnerer IPv4-adresser.[1]

Browserkonfiguration og Proxyopsætning

Burp Suites Proxy-værktøj fungerer som en intercepting proxy, der fanger al trafik mellem klient og server. Korrekt browserkonfiguration er fundamentet for effektiv sikkerhedstestning.[1]

Konfiguration af Primære Browsere

Microsoft Internet Explorer konfigureres via Tools → Internet Options → Connections → LAN settings, hvor localhost og port 8080 angives som proxy.[1]

Google Chrome arver typisk systemets proxyindstillinger, men kan konfigureres direkte gennem chrome://settings/ ved at søge efter “Proxy”.[1]

Mozilla Firefox tilbyder den fineste kontrol og er foretrukket af sikkerhedsprofessionelle. Konfigurationen foregår via Tools → Options → Advanced → Network, hvor proxy-indstillinger kan angives specifikt for browseren uden at påvirke systemet.[1]

Avanceret Proxyhåndtering med FoxyProxy

For professionelle testere er FoxyProxy Standard-udvidelsen til Firefox uundværlig. Denne add-on muliggør mønsterbaseret proxykonfiguration, så kun trafik til specifikke domæner sendes gennem Burp Suite. Opsætningen inkluderer:[1]

  1. Installation af FoxyProxy Standard fra Mozilla Add-ons
  2. Konfiguration af proxy med localhost:8080
  3. Oprettelse af URL-mønstre (f.eks. *example.com/*) for præcis trafikstyring
  4. Aktivering af “Use proxies as their pre-defined patterns and priorities”-tilstand[1]

Denne tilgang sikrer, at kun målrettet trafik interceptes, hvilket reducerer støj og forbedrer fokus under sikkerhedsvurderinger.[1]

Scope Management og Upstream Proxies

Definering af scope er afgørende for etisk og effektiv sikkerhedstestning. Burp Suite tilbyder robuste mekanismer til at kontrollere, hvilke mål der inkluderes eller ekskluderes fra testning.[1]

Scope Inclusion og Exclusion

Scope fungerer på URL-mønstre, der kan være enten inkluderende eller ekskluderende. Inkluderende mønstre tillader alle matchende URLs, mens ekskluderende mønstre blokerer specifikke stier. Burp behandler inkluderingsmønstre først, derefter ekskluderingsmønstre, hvilket giver fleksibel kontrol. For eksempel kan man ekskludere logout-sider for at undgå at blive logget ud under testning eller ekskludere funktioner, der udløser masse-e-mails.[1]

Håndtering af Upstream Proxies

Mange corporate applikationer kræver adgang gennem white-listede IP-adresser eller interne proxier. Burp understøtter sofistikeret proxy-kædning gennem Options → Connections. Systemet understøtter:[1]

  • Standard HTTP/HTTPS proxier med authentication
  • NTLM-authentication til Microsoft Active Directory miljøer
  • SOCKS proxier, herunder TOR
  • SSH tunneling som SOCKS proxy[1]

SSH-tunneling oprettes med kommandoen ssh -D 12345 user@hostname.com, hvorefter Burp konfigureres til at bruge localhost:12345 som SOCKS proxy.[1]

Multi-Device Interception

Burp kan konfigureres til at intercepte trafik fra mobile enheder, IoT-enheder og andre netværksenheder ved at oprette ekstra proxy listeners på eksterne interfaces. Dette muliggør testning af applikationer på iOS, Android og andre platforme, der ikke direkte understøtter proxykonfiguration.[1]

SSL/TLS Konfiguration og Avancerede Indstillinger

Testning af HTTPS-applikationer kræver yderligere konfiguration, da Burp fungerer som en man-in-the-middle for krypteret trafik.[1]

Certifikathåndtering

Burp genererer per-site certifikater, der ikke er underskrevet af et kendt Certificate Authority (CA), hvilket resulterer i certifikatfejl i browsere. Løsningen er at importere Burps CA-certifikat:[1]

  1. Naviger til http://burp mens Burp kører
  2. Download CA Certificate-filen
  3. Importer certifikatet i browserens trust store[1]

For Mozilla Firefox sker dette gennem Options → Advanced → Certificates → View Certificates → Import. Microsoft IE og Google Chrome deler certifikatstore, så import i én browser gælder for begge.[1]

SSL Pass-Through og Invisible Proxy

For applikationer, der ikke er proxy-aware, tilbyder Burp Invisible Proxy-tilstand, der lader Burp fungere som transparent proxy uden at kræve klient-side konfiguration. Dette er essentielt for testning af thick clients og andre ikke-browser-baserede applikationer.[1]

Kerneværktøjer i Burp Suite

Burp Suites styrke ligger i dets integrerede værktøjssæt, der understøtter forskellige faser af sikkerhedstestning.[1]

Proxy og Interception

Proxy-værktøjet er arbejdshesten i Burp Suite. Det tillader:

  • Real-time interception af requests og responses
  • Modifikation af data inden videre sendelse
  • Historik og genafspilning af requests
  • Fin-granulær kontrol over hvad der interceptes baseret på scope[1]

Intruder til Automatiserede Angreb

Intruder er Burps automatiseringssværktøj til at udføre tilpassede angreb som brute-force, fuzzing og parameter manipulation. Det tillader:

  • Positionering af angrebspayloads i requests
  • Konfiguration af angrebsteknikker (sniper, battering ram, pitchfork, cluster bomb)
  • Integration med wordlists og dynamiske payloads[1]

Scanner til Sårbarhedsidentifikation

Burp Scanner (kun i Pro-versionen) udfører automatiseret scanning for kendte sårbarheder. Scanneren kan optimeres til forskellige typer applikationer og integreres sømløst med andre værktøjer.[1]

Repeater til Manuel Testning

Repeater muliggør manuel inspektion og manipulation af individuelle requests med real-time opdatering af responses. Dette er essentielt for business logic-testning og komplekse angrebsscenarier.[1]

Avancerede Funktioner og Udvidelser

Burp Suites funktionalitet kan udvides gennem API’er og brugerdefinerede udvidelser.[1]

Engagement Tools (Pro-versionen)

Engagement Tools automatiserer repetitive opgaver:

  • Target Analyzer: Identificerer applikationskomponenter og angrebsflader
  • Content Discovery: Finder skjulte stier og filer
  • Task Scheduler: Planlægger automatiske opgaver og backup[1]

Burp Extensions

Burp understøtter udvidelser skrevet i Python (Jython) og Ruby (JRuby). Processen inkluderer:

  1. Opsætning af Python- eller Ruby-runtime
  2. Installation fra Burp App Store eller manuel indlæsning af .bapp-filer
  3. Håndtering af hukommelsesforbrug for udvidelser[1]

En simpel Python-udvidelse kan intercepte requests/responses og udføre tilpasset analyse, hvilket demonstrerer fleksibiliteten i Burps API.[1]

Vedligeholdelse og Backup

Professionel sikkerhedstestning kræver ordentlig datahåndtering.[1]

State Management

Burp Pro tillader gemning og genindlæsning af komplette arbejdstilstande, inklusive alle requests, responses og konfigurationer. Dette er kritisk for lange engagementer og compliance-rapportering.[1]

Automatisk Backup

Automatisk backup kan konfigureres til at køre på faste intervaller, hvilket sikrer at intet arbejde går tabt ved uventede nedbrud.[1]

Logging

Komplet logning af alle aktiviteter muliggør efterfølgende analyse og dokumentation af testprocedurer.[1]

Konklusion

Burp Suite er mere end blot et proxy-værktøj; det er en komplet platform til webapplikationssikkerhedstestning. Fra grundlæggende konfiguration til avancerede angrebsteknikker og udvidelsesmuligheder, tilbyder Burp Suite de nødvendige værktøjer til moderne sikkerhedsprofessionelle.[1]

Nøglen til effektiv brug ligger i forståelsen af de underliggende koncepter: hukommelsesforvaltning, netværkskonfiguration, scope-definition og integration af forskellige værktøjer i en sammenhængende testproces. Ved at mestre disse aspekter kan sikkerhedstestere maksimere effektiviteten og minimere risikoen for datatab eller uønskede handlinger.[1]

For organisationer, der tager webapplikationssikkerhed alvorligt, er Burp Suite Pro en værdifuld investering, der giver avancerede funktioner som automatisk scanning, engagement tools og professionel support. Kombineret med korrekt træning og etiske retningslinjer udgør Burp Suite fundamentet for robust sikkerhedsvurdering af moderne webapplikationer.[1]

1

Har du brug for en penetrationstest?

Kontakt os for en uforpligtende snak om dine sikkerhedsbehov.

Kontakt os