WordPress-sikkerhed
WPScan – WordPress Security Scanner
Dybdegående guide til WPScan: Lær at scanne WordPress for sårbarheder, opsætte kommandolinjen, forstå WPScan API og styrke din WordPress-sikkerhed.
Af Kasper Stück 8 min. læsetid
En lås er kun effektiv, hvis du ved, at selve døren ikke er pilrådden. For administratorer af WordPress betyder det, at du ikke blot kan stole på et tilfældigt sikkerhedsplugin uden at kende de underliggende sårbarheder i din specifikke installation. For at forsvare dig effektivt, skal du tænke som en angriber – og her kommer WPScan ind i billedet.
WPScan er et af de mest anerkendte og respekterede værktøjer til præcis dette formål: At scanne dit websted for kendte sikkerhedshuller i kernefiler, temaer og plugins, før ondsindede aktører udnytter dem. Denne guide giver dig en dybdegående gennemgang af, hvordan WPScan fungerer, hvilke begrænsninger værktøjet har, hvordan det benyttes i praksis via kommandolinjen (CLI) eller plugin, og hvordan du bedst integrerer det i din daglige sikkerhedsrutine.
Hvad er WPScan?
WPScan er en specialiseret sårbarhedsscanner, der oprindeligt blev udviklet som et kommandolinjeværktøj (CLI) af sikkerhedsforskere for at teste og vurdere sikkerheden i WordPress-installationer. Værktøjet er skrevet i Ruby og er i dag standardudstyr i mange penetration testeres værktøjskasse, herunder operativsystemer som Kali Linux. Databasen bag WPScan drives i dag af Automattic (virksomheden bag WordPress.com).
I modsætning til en traditionel Web Application Firewall (WAF), der blokerer trafik aktivt, arbejder WPScan ved proaktivt at identificere svaghederne, så du kan nå at lappe dem. Værktøjet tjekker dit websteds komponenter op mod en omfattende database med over 55.000 kendte WordPress-sårbarheder.
Primære funktioner i WPScan
WPScan analyserer din installation på en række kritiske parametre:
- Detektion af forældede versioner: Tjekker præcist om din WordPress-kerne, dine plugins og dine temaer er opdaterede og fri for kendte CVE’er (Common Vulnerabilities and Exposures).
- Enumeration af brugere: Afslører om dit websted utilsigtet lækker brugernavne via forfatter-arkiver eller REST API. Angribere udnytter disse brugernavne til at målrette “brute-force” angreb mod administratorerne.
- Søgning efter svage adgangskoder: WPScan kan teste sikkerheden af specifikke brugerkonti mod en ordbog (dictionary attack) for at finde svage eller standard-adgangskoder.
- Identifikation af offentligt tilgængelige filer: Scanner for blottede backup-filer (f.eks.
wp-config.php.bak), fejlfindingslogs somdebug.logog andre følsomme konfigurationsfiler.
Databasen bag: WPScan Vulnerability Database
Kernen i hele systemet er WPScan Vulnerability Database. Den vedligeholdes af dedikerede sikkerhedseksperter, der indsamler data fra sikkerhedsrapporter, forskningsartikler, bug bounty-programmer og brugerindberetninger. Som en autoriseret CVE-nummereringsmyndighed (CNA) er holdet bag WPScan ofte blandt de første til at registrere og klassificere nye sårbarheder i WordPress-økosystemet.
Når et sårbarhedstjek køres, sender scanneren en liste af dine installerede plugins og temaer med deres specifikke versionsnumre op mod denne database via et API. Databasen returnerer derefter en detaljeret rapport over, hvilke komponenter der indeholder kritiske fejl, og hvilken version fejlen er rettet i.
Sådan bruger du WPScan i praksis
WPScan er fleksibelt og henvender sig både til den gennemsnitlige webmaster og den erfarne sikkerhedsspecialist. Her er de tre mest almindelige metoder til at anvende scanneren.
Metode 1: WPScan WordPress-plugin
Dette er den mest tilgængelige metode for de fleste webstedsejere. Ved at installere det officielle plugin direkte i dit WordPress-kontrolpanel, får du løbende sårbarhedsadvarsler præsenteret på en letlæselig måde.
Trin til opsætning af plugin:
- Log ind på din WordPress-administration og naviger til Plugins > Tilføj nyt.
- Søg efter “WPScan”, installer og aktivér det officielle plugin.
- Opret en gratis konto på WPScans hjemmeside for at få udleveret en API-nøgle. Den gratis konto tillader typisk op til 25 API-kald pr. dag, hvilket er tilstrækkeligt for de fleste mindre websteder (hvert plugin tæller som ét kald under en scanning).
- Indtast API-nøglen under WPScan-indstillingerne i dit kontrolpanel og opsæt automatiske baggrundsscanninger. Sørg for, at e-mailnotifikationer er aktiveret.
Metode 2: Kommandolinjeværktøjet (CLI)
For systemadministratorer, udviklere og penetration-testere er kommandolinje-versionen langt det stærkeste redskab. Her afvikles WPScan typisk fra et Linux-miljø eller et Docker-image uafhængigt af webserveren. Dette tillader mere aggressive scanninger (f.eks. adgangskodeknækning og dybdegående enumeration), som et simpelt WordPress-plugin ikke har rettigheder eller ressourcer til at udføre.
Klassiske WPScan CLI-kommandoer:
- Standard scan af et websted:
wpscan --url https://ditdomæne.dk - Scan med API-nøgle (viser sårbarhedsdata):
wpscan --url https://ditdomæne.dk --api-token DIN_API_NØGLE - Enumeration af brugernavne:
wpscan --url https://ditdomæne.dk --enumerate u - Søgning efter sårbare plugins:
wpscan --url https://ditdomæne.dk --enumerate vp - Ordbogsangreb mod bestemte brugere (brute-force test):
wpscan --url https://ditdomæne.dk --passwords ordbog.txt --usernames admin,kasper
Advarsel: Benyt kun CLI-værktøjet med aggressive flag på websteder, hvor du har eksplicit tilladelse til at udføre sikkerhedstests, da mange webhoteller vil blokere trafikken eller anse det som et angreb.
Metode 3: API-integration og CI/CD pipelines
Virksomheder med behov for at overvåge hundredvis af hjemmesider eller webbureauer, der drifter mange klienter, kan integrere WPScans API direkte i deres egne sikkerhedsovervågningssystemer eller CI/CD pipelines. Dette kræver ofte en betalt licens (Enterprise) for at opnå en højere grænse for daglige API-kald, men tillader fuld automatisering og centraliseret rapportering uden at belaste de enkelte WordPress-installationer.
Det finder WPScan (og begrænsningerne)
Udover forældede plugins, brillerer WPScan ved at afsløre kritiske konfigurationsfejl, som standard-scannere overser.
Fejlfindingslogfiler (Debug.log)
Når udviklere arbejder på at løse problemer, aktiveres ofte WP_DEBUG. Hvis dette efterlades tændt på et produktionssite, og loggen (wp-content/debug.log) er frit tilgængelig via browseren, kan angribere aflæse interne serverstier, databasefejl og nogle gange følsomme kundedata. WPScan gør dig opmærksom, hvis denne logfil er eksponeret.
Efterladte backup-filer
Mange systemadministratorer sletter ikke deres manuelle sikkerhedskopier korrekt. Hvis du manuelt laver en kopi af konfigurationsfilen via FTP (f.eks. wp-config.php.bak eller wp-config.old), vil webserveren servere den som ren tekst. Den fortolkes ikke som PHP, hvilket giver angribere direkte adgang til dine databaseadgangskoder. For at undgå dette bør du anvende et pålideligt webhotel eller en professionel backup løsning frem for manuelle filkopier.
Begrænsninger: Hvad WPScan ikke kan
Selvom WPScan er uundværligt, bør du kende systemets begrænsninger, så du ikke overvurderer din sikkerhed:
- Ingen aktiv blokering (Ikke en WAF): WPScan advarer dig, hvis du har et sårbart plugin, men det blokerer ikke den hacker, der netop nu forsøger at udnytte det. Du mangler stadig et skjold.
- Ikke en malware-scanner for inficerede sites: Hvis dit websted allerede er kompromitteret og ondsindet kode ligger gemt i databasen, vil WPScan typisk ikke finde det. Det leder efter sårbarheder – ikke skadelig kode. Hvis skaden er sket, bør du læse vores vejledning til et hacket WordPress websted.
- Afhængig af HTTP-respons: WPScan analyserer dit websted udefra (medmindre du bruger pluginet). Hvis et sikkerhedsplugin skjuler versionsnumrene i din kildekode, kan CLI-versionen af WPScan have svært ved præcist at vurdere, om dine plugins er forældede.
Tjekliste: Håndtering af WPScan-advarsler
Når WPScan genererer en rapport med sårbarheder, skal der handles. Følg disse trin systematisk:
- Bekræft og valider: Tjek om det flaggede plugin rent faktisk bruges. Slet altid inaktive plugins og temaer helt.
- Klargør et staging-miljø: Opdater aldrig kritiske kerne-komponenter direkte på dit live-site, hvis du kan undgå det. Test opdateringen på et staging-site.
- Udfør fuld backup: Inden du påbegynder lappeløsninger, skal du tage en komplet backup af både filer og database.
- Opdater komponenten: Hvis udvikleren har udgivet en sikkerhedsopdatering, skal denne installeres øjeblikkeligt.
- Afdæk “Zero-days”: Hvis sårbarheden ikke er rettet af udvikleren (en såkaldt zero-day), kan det være nødvendigt midlertidigt at deaktivere pluginet eller anvende en Web Application Firewall (WAF) til at filtrere skadelige requests, indtil en patch foreligger.
Overvej en professionel WordPress serviceaftale, hvis processen med rettidig overvågning og patching af sårbarheder bliver for tidskrævende.
WPScan vs. Jetpack Protect
Siden Automattic opkøbte WPScan, har de integreret meget af sårbarhedsdatabasen i deres eget plugin, Jetpack Protect. Mange WordPress-brugere overvejer, hvilken løsning de skal vælge:
- Jetpack Protect anbefales til brugere, der blot ønsker en gratis, brugervenlig oversigt inde i WordPress, som ikke kræver API-nøgler, registreringer eller teknisk forståelse.
- WPScan (Plugin eller CLI) anbefales til udviklere og systemadministratorer, der ønsker at integrere scanningen i kommandolinjescripts, opsætte præcise automatiseringer, og som har brug for en mere finkornet kontrol over sikkerhedsrapporter og bruger-enumeration.
Byg et stærkt WordPress-forsvar
WPScan udgør dit proaktive, diagnostiske fundament. Men for at opnå reel modstandsdygtighed skal du kombinere overvågningen med defensive mekanismer:
- Invester i god hosting: Det hele starter ved fundamentet. Et solidt og specialiseret WordPress webhotel yder server-niveau isolation og filtrerer massive overbelastningsangreb.
- Implementér en Firewall (WAF): Et WAF-produkt (f.eks. Wordfence, Patchstack eller Cloudflare) blokerer de sårbarheder, WPScan finder, før du når at opdatere dem.
- Slå To-Faktor Godkendelse (2FA) til: Da WPScan nemt kan enumerere dine brugernavne, er det afgørende, at adgangskoden ikke er det eneste lag af beskyttelse for dine administratorer.
Konklusion
WPScan er et kompromisløst og essentielt redskab for enhver professionel WordPress-administrator. Ved konsekvent at lede efter og udbedre forældede plugins, blottede konfigurationsfiler og svage adgangskoder mindsker du din angrebsflade betragteligt.
Selvom WPScan alene ikke blokerer ondsindet trafik, giver værktøjet den kritiske intelligens, du behøver for at fjerne svaghederne, før en hacker udnytter dem. Hvis du implementerer scanneren som en fast del af dine vedligeholdelsesrutiner og kombinerer den med en robust Web Application Firewall, er du et stort skridt foran i kapløbet om at sikre dit WordPress-websted.
- #wordpress-sikkerhed
- #wpscan
- #malware-scanning
- #sårbarheder
- #cli