Hvordan du hacker et WordPress-websted – Ethical Hacking Tutorial

Velkommen tilbage fellow sikkerhedsentusiaster! I dag vil jeg vise dig hvordan man hacker et WordPress Website ved hjælp af Mr. Robot CTF som et eksempel. Jeg har netop selv arbejdet mig igennem denne fremragende CTF og har lært et ton i processen. Jeg ønskede at hæve mit spil om web-sårbarhedsanalyse et niveau og startede med denne CTF.

Hvis du virkelig ønsker at lære cybersikkerhed, anbefaler jeg stærkt at læse min store Getting started with Cybersecurity in 2019 begynderguide, hvor jeg lærer dig hvordan du kommer i gang, helt gratis! Også værd at tjekke ud er den Bedste Hacking Bøger i 2019 artikel.

DISCLAIMER: Denne “hvordan man hacker et WordPress-websted” er en Ethical Hacking Tutorial og rettet mod sikkerhedsprofessionelle. Du må ikke, jeg gentager, ikke bruge disse teknikker uden skriftlig tilladelse fra den modtagende part. Hvis du bruger denne tutorial i en ulovlig sammenhæng, kan lovlige anklager og / eller fængselstid vente på dig. Brug kun disse teknikker i et lukket laboratoriemiljø.

En CTF er et såkaldt Capture the Flag-spil, hvor dit mål er at samle et bestemt antal flag (eller nøgler, for den sags skyld). CTF’er bruges til at øve dine hackerfærdigheder i et sikkert og lovligt miljø. Jeg kan anbefale Vulnhub som en ressource for et udvalg af et fremragende CTF’s.

Ok, lad os komme i gang.

Trin 1 – Vurdering af, om et websted bruger WordPress

Hvis du ikke ved, om et websted bruger WordPress eller ej, er der for det meste en meget nem måde at finde ud af det på.

Du kan simpelthen skrive: www.addressofthewebsite.com/wp-admin

Hvilket i de fleste tilfælde vil bringe en wp-admin login gui frem, bortset fra at administratoren har deaktiveret den.

En anden god måde at tjekke, om et websted kører WordPress på, er ved at bruge wpscan. Wpscan er forudinstalleret i både Kali og ParrotSec.

wpscan -u www.addressofyourtarget.com

I mit tilfælde afslører scanning af Mr. Robot VM følgende.

Sådan hacker du wordpress
Et uddrag af resultaterne

Som du kan se, viser det tydeligt, at webstedet bruger WordPress. Desuden præsenterer den dig for 46 identificerede sårbarheder. Nu vil de fleste hostere og nyere versioner af WordPress som standard blokere en scanning som denne. Så højst sandsynligt vil dette kun fungere med forældede WordPress-versioner uden nogen beskyttelse fra en hoster.

Ok, så langt så godt. Nu kan vi verificere det ved at kontrollere, om login-siden eksisterer ved at navigere til websteds-URL + /wp-admin på denne måde:

Sådan hacker du wordpress
WordPress Login

Og sikkert nok, login-masken kommer frem.

Trin 2 – Grib koden med Burpsuite

Nu kommer den svære del, at finde ud af brugernavnet. Du kunne starte med admin, men WordPress genererer normalt et tilfældigt brugernavn, så det kan være svært at finde ud af, og du skal måske foretage yderligere research på målet.

I Mr. Robot-eksemplet ved jeg, at brugernavnet er Elliot (ikke for svært at gætte). Du kan også prøve at køre hydra mod et par brugernavnelister, men først skal vi bruge burpsuite til at hente noget kode fra login-siden.

Start burpsuite ved at skrive

sudo burpsuite

Opret et nyt midlertidigt projekt ved hjælp af Burp-defaults.

Navigér til fanen Target -> Scope og klik på Add for at inkludere wp-login-siden i scope. Vælg Ja i popup-dialogen.

Sådan hacker du WordPress
Hvis du tilføjer webstedet til anvendelsesområdet

Næst skal du gå til menuen Indstillinger i Firefox og rulle helt ned, indtil du finder Netværksproxy. Klik på Indstillinger.

Vælg Manuel proxykonfiguration, og indtast IP 127.0.0.0.1 og port 8080. Sæt kryds i “Brug denne proxyserver til alle protokoller”. Klik på OK.

Sådan hacker du WordPress
Optagelse af en proxy

Tilbage til Burpsuite. Åbn fanen Proxy. Nu tilbage til WP-Login-siden. Indtast et vilkårligt brugernavn og en tilfældig adgangskode, og klik på Log ind. Sørg for, at Privacy Badger, uBlock Origins og NoScript er deaktiveret for webstedet.

Når du har klikket på login, skal du gå tilbage til Burpsuite og se på output.

Sådan hacker du WordPress
Grabbing Code

log=root&pwd=1234&wp-submit=Log+In&redirect_to=http%3A%2F%2F192.168.1.109%2Fwp-admin%2F&testcookie=1

Nu har vi noget, som vi kan fodre Hydra med.

Trin 3 – Find det korrekte brugernavn

Lad os have det lidt sjovt for at give dig en idé om, hvordan du kan finde frem til et brugernavn til dit mål. Den VM, vi bruger til dette eksempel, er som nævnt ovenfor med Mr. Robot-tema. Så det er meget sandsynligt, at brugernavnet vil blive fundet i en eller anden trivia, der har noget med Mr. Robot at gøre.

Først skal du gå tilbage til din Burpsuite og lukke den. Vi har ikke brug for den mere lige nu. Gå også tilbage til dine Proxy-indstillinger og slå Proxy fra igen.

Nu går jeg til Mr. Robot Wikipedia-siden: https://en.wikipedia.org/wiki/Mr._Robot

Og jeg vil oprette en brugernavneliste fra netop denne side ved hjælp af CeWL.

Åbn et nyt terminalvindue, og skriv

sudo cewl -w usernames.txt -d1 -m4 https://en.wikipedia.org/wiki/Mr._Robot

Lad os bryde dette ned.

  • -w usernames.txt – burde være ret tydeligt, dette er navnet på den ordliste, der vil blive oprettet
  • -d1 – Definerer den dybde, som CeWL vil crawle webstedet i. 1 angiver, at den vil blive på netop dette websted og ikke åbne nogen links på det.
  • -m4 – Definerer minimumslængden af det ord, der vil blive sat på listen
  • https://en.wikipedia.org/wiki/Mr._Robot – naturligvis det websted, vi skal crawle.

Så som du kan se, kan du anvende denne teknik på ethvert målrelevant websted.

Den hurtige

ls

Kørsel af en hurtig

ls

Viser os, at vores brugernavne.txt blev oprettet.

Sådan hacker du WordPress
Kontrol af CeWL-output

I nogle tilfælde er du heldig ved at bruge wpscan til at opregne brugernavnet, så prøv også altid dette:

wpscan --url http://www.targetwebsite.com --enumerate u

Nu skal vi bruge Hydra til at Bruteforce denne liste mod wp-loginsiden.

Trin 4 – Bruteforcing brugernavne med Hydra

Okay, tid til at fodre brugernavnene til vores Hydra. Jeg fandt denne særlige metode på en af de mange Walkthroughs fra Vulnhub, selvom jeg ikke kan huske præcis hvilken en det var, men jeg giver kredit, hvor kredit skyldes. Åbn et nyt terminalvindue og skriv:

hydra -V -L usernames.txt -p whatever 192.168.1.109 http-post-form '/wp-login.php:log=^USER^&pwd=^PASS^&wp-submit=Log:F=Invalid username'

Lad os bryde dette ned.

  • -V – Verbose
  • -L – Vores brugernavne.txt list
  • -p whatever – Adgangskoden, vi er ligeglade, for vi ønsker at finde ud af brugernavnet
    • http-post-form – Den type Brute Force-angreb vi ønsker at køre
    • /wp-login.php – Stien til login-formularen
    • log = ^USER^&pwd=^PASS^&wp-submit=Log+In – De værdier, der vil blive sendt til formularen, hvor ^USER^ og ^PASS^ er pladsholdere for vores -L og -p indstillinger
    • F=Invalid username – Fortæller hydra, at forsøget mislykkedes, hvis det returnerer Invalid username

Okay, lad os køre den kommando, skal vi?

Sådan hacker du WordPress
Hydra-resultater

Og ganske rigtigt, vi får tilbage, at login med brugernavnet elliot lykkedes (Hvilket det ikke var, det bekræftede bare, at webformularen ikke returnerede ugyldigt brugernavn).

Så vi skal stadig finde ud af adgangskoden. Men i det mindste har vi et brugernavn.

Trin 5 – Brute Forcing af adgangskoden

Nu kunne vi også bruge Hydra til at Brute Force brugerens adgangskode, men jeg foretrækker at bruge wpscan, da syntaksen er nemmere.

wpscan --url http://192.168.1.109/wp-login.php --passwords /usr/share/wordlists/rockyou.txt.gz --usernames elliot --wp-content-dir http://192.168.1.109/wp-login.php

rockyou.txt.gz er bare et eksempel, erstat med hvilken som helst adgangskode liste du ønsker at bruge.

Og voila, vi har fået brugernavnet og adgangskoden.

Fange adgangskoden

Trin 6 – Implementering af ondsindet kode i WordPress

Okay, nu hvor vi har fået administratoradgang til WordPress, er der et par måder, vi kan gå videre herfra. Jeg vil vise dig en af de nemmere.

På din angribende computer skal du gå til Places -> File System -> usr -> share -> webshells -> php og åbne php-reverse-shell.php

Kopier hele indholdet:

Hvordan man hacker wordpress
Kopier teksten

Nu i WordPress skal du navigere til Udseende -> Redigering og vælge 404.php-skabelonen. Dette er blot et eksempel, du kan implementere koden på mange forskellige måder.

Indsæt nu din kode her, så den ser nogenlunde sådan ud:

Sådan hacker du WordPress
Rediger de gulmarkerede linjer

Rediger de gulmarkerede linjer, så IP’en peger på din angribende computer, og vælg en port.

Trin 7 – Start en Netcat-lytter

Nu tilbage på den angribende computer starter vi en Netcat-lytter:

nc -lvp 443

Så åbner du 404-siden som bare at gå til linket: www.yourtargetwebsite.com/404

Hvordan man hacker WordPress
Forbindelse etableret

Og vi er inde! Vi har ikke kun hacket WordPress Admin Account, vi har også fået adgang til selve serveren. Herfra skal du bruge dine evner til at få forhøjet adgang, men det burde ikke være så svært længere nu.

Du kan se, CTF’er er en fantastisk måde at lære nye ting på.

Til næste gang, keep on hacking!

*Alle teknikker i tutorials på ceos3c.com er udelukkende beregnet til undervisningsformål.
Alle de teknikker, der undervises i her, er kun beregnet til at blive brugt i et lukket laboratoriemiljø eller i samråd med en anden part.
Hvis du bruger nogen af disse teknikker til ulovlige formål, kan Ceos3c ikke holdes ansvarlig for eventuelle lovlige konsekvenser.

Please Share!

Like Loading…

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.