BadStore is een webapplicatie gebouwd op de Linux-distributie (Trinux). De distributie maakt het mogelijk om een server te simuleren met alle actieve services en een geïnstalleerde boekwinkel die verschillende beveiligingsfouten bevat, om hacking- en penetratietests uit te voeren.
BadStore weegt slechts 10 mb en kan vanuit virtualbox worden gebruikt om een server te simuleren en aanvallen uit te voeren vanaf een andere computer of vanaf dezelfde computer.
De BadStore-webplatform draait met Perl, Apache en MySQL.
De Voordelen van BadStore zijn:
- Eenvoudig te configureren.
- Het kan worden uitgevoerd vanaf een virtuele machine.
- We kunnen toegang krijgen tot de virtuele machine door een IP te configureren alsof het een VPS is.
We kunnen de ISO downloaden van de officiële BadStore-pagina.
Vervolgens zullen we de BadStore ISO gebruiken in een virtuele machine zoals Virtualbox. We moeten VirtualBox hebben geïnstalleerd, de installatie ervan is heel eenvoudig, zoals uitgelegd in de tutorials Maak een VPS-server op een thuiscomputer en Linux - Ubuntu installeren.
Vervolgens starten we Virtualbox en gaan we de virtuele machine maken om BadStore te hosten. We moeten een 32-bits versie van Linux selecteren.
Dan klikken we op Volgende en we zullen geheugen toewijzen voor virtuele machineIn dit geval wijzen we 1,7 gig RAM meer dan genoeg toe voor deze versie van Trinux.
We klikken op Volgende en we zullen de virtuele schijf maken voor installeer onze virtuele machine.
Dan klikken we op Volgende en we moeten het type virtuele schijf toewijzen. De meest gebruikte formaten die Virtualbox ons biedt zijn:
- VDI: Het is het standaardformaat van Virtualbox.
- VMDK: is een open source-indeling, dit type virtuele schijfbestand kan werken op andere virtualisatieplatforms zoals VMWare.
Er zijn andere, meer specifieke, maar de vorige zijn multiplatform en worden het meest aanbevolen. Voordat we de virtuele machine maken, moeten we er rekening mee houden of we de virtuele machine op andere platforms gaan gebruiken of niet, beide formaten werken op andere besturingssystemen. In deze tutorial zullen we het VDI-formaat gebruiken.
Nu klikken we op Volgende en we moeten een naam toewijzen aan de map die zal functioneren als een virtuele harde schijf. We zullen ook de grootte van de virtuele harde schijf moeten definiëren. BadStore Het neemt slechts 11 MB in beslag, maar we wijzen tussen 4 GB en 50 GB toe voor het geval we beveiligings- of testtools willen installeren.
VERGROTEN
Dan klikken we op Volgende en we zullen naar de ISO moeten zoeken om aan te geven welke wordt geïnstalleerd.
Vervolgens zullen we BadStore starten en zullen we zien hoe we verbinding kunnen maken met deze VPS.
Het start het systeem in console-modus: en we geven een Binnenkomen Om de opdrachtregel te activeren, hebben we in dit geval geen domein, dus we zullen het IP van de VPS gebruiken om onze aanvallen uit te voeren, wat we moeten uitzoeken om te beginnen is het IP van de VPS. Hiervoor gebruiken we het commando:
bash # ifconfigZo verkrijgen we de configuratie van een Ethernet-netwerk met ip 192.168.0.15, vervolgens plaatsen we vanuit een browser op de computer, buiten de virtuele machine, het IP.
We hebben toegang tot internet en we kunnen beginnen met de kwetsbaarheidsanalyse en pentesting of hackingtests die we hierna zullen zien.
TOT) Zoekfout
De winkel heeft een zoekmachine in de linkerkolom, we voeren elke waarde in die het zoeken naar een boek zou zijn en we zullen het laten mislukken, als resultaat zal het ons de SQL-query tonen.
Dit gebeurt door het niet valideren van de ingevoerde gegevens en de fouten die optreden.
B) Kwetsbaarheid met Cross Site Scripting (XSS)
We gaan een opmerking achterlaten in het Gastenboek, maar we gaan Javascript-code in de formuliervelden plaatsen.
We voegen een opmerking toe met behulp van de Javascript-waarschuwingsfunctie om een bericht te tonen, deze code wordt opgeslagen in de database en wordt vervolgens uitgevoerd elke keer dat de gastenboekwebpagina wordt geladen. Deze kwetsbaarheid stelt ons in staat om elke Javascript-code in te voeren, We kunnen zelfs elke keer dat iemand het gastenboek opent, doorverwijzen naar een andere website, zoals:
Daarmee sturen we het om.
C) Gebruik: Scantools
We kunnen de computerterminal gebruiken om de VPS te scannen met verschillende tools om meer informatie te verkrijgen,
Bijvoorbeeld:
Nmap: Met de Nmap-tool kunnen we poorten scannen om te bepalen welke open zijn:
Nmap 192.168.0.15
We kunnen zien dat de mysql-service actief is, dus er kan een database met internet zijn.
D) MySQL-server aanvallen met SQLMAP
Om deze kwetsbaarheid te testen zullen we SQLMAP gebruiken, zoals we in een eerdere tutorial zagen:
SQLMAP SQL-injectietool en ethische database-hacking.
We moeten zoeken naar een URL waar parameters worden verzonden, daarvoor is niets beters dan de zoekmachine, als we de code van een boek bijvoorbeeld 1000 plaatsen, krijgen we de link in de browser. Vervolgens gebruiken we de sqlmap-opdracht om te zien welke database-engine het web gebruikt.
Ik verifieer welke database-engine het web gebruikt en of het aangevallen kan worden en we doorzoeken de database met het volgende commando:
./sqlmap.py -u "http://192.168.0.21/cgi-bin/badstore.cgi?searchquery=hi&action=search&x=0&y=0" --current-db
We kunnen constateren dat de server is Apache en de database-engine is Mysql 5.0.
Vervolgens zullen we proberen de databasetabellen die we vinden te scannen en op te sommen, hiervoor gebruiken we de volgende opdracht:
./sqlmap.py -u "http://192.168.0.15/cgi-bin/badstore.cgi?searchquery=hi&action=search&x=0&y=0" --tables
E) Verkrijgen Beheerderstoegang
Een van de kwetsbaarheden is het gebruik van URL-parameters om secties of pagina's van internet te wijzigen. BadStore heeft dit beveiligingslek, bijvoorbeeld http://192.168.0.15/… ction = mijnaccount, als we in de actieparameter doorgaan als een sectie, gaan we ernaartoe, daarom kunnen we het proberen met admin, panel of een ander woord dat een controlepaneel, bijvoorbeeld http://192.168.0.15/… i?action = admin, stelt ons in staat om het controlepaneel te zien, maar niets te wijzigen.
Een veelgemaakte fout is dat wanneer een gebruiker zich registreert, we verborgen parameters verzenden om de ene gebruiker van de andere te onderscheiden, bijvoorbeeld een klant van een provider of een beheerder. Om te zien of dit gebeurt, gaan we een plug-in installeren voor de browser genaamd Tamper Data en die de parameters toont die vanaf een formulier worden verzonden, zodat we kunnen zien of er verborgen parameters zijn.
Vervolgens we activeren de plug-in vanuit het Firefox-menu Hulpmiddelen> Sabotagegegevens, hierdoor kunnen de gegevens worden vastgelegd die via een formulier worden verzonden, als we naar het registratieformulier gaan en vervolgens op de verkoop van Tamper-gegevens klikken Wijziging starten, bij het verzenden worden de gegevens vastgelegd.
We kunnen zien dat er een verborgen veld is genaamd rol en het is degene die de rol bepaalt, dus U wordt gebruiker en A-beheerder, als we de parameter wijzigen, registreren we ons als beheerder en hebben we volledige controle over het configuratiescherm.
Nu hebben we toegang tot het administratiepaneel, want wanneer we ons registreren, zijn we al ingelogd. We hebben ook toegang tot alle vermeldingen in het administratiepaneel.
BadStore helpt ons bij het uitvoeren van allerlei tests op kwetsbaarheden en biedt een praktische benadering voor het vinden en exploiteren van webgebaseerde kwetsbaarheden. Het is een vorm van training om te weten hoe u uw websites goed kunt beveiligen.
We kunnen een gebruiken software om kwetsbaarheden te detecteren, hadden we gezien in een tutorial zoals:
Scan een websitekwetsbaarheid met ZAP
Nessus - Analyseer netwerkbeveiligingsproblemen op websites.
We kunnen een voorbeeld van de scan bekijken en een rapport genereren om te visualiseren wat elke kwetsbaarheid is.
Vond je deze Tutorial leuk en heb je eraan geholpen?Je kunt de auteur belonen door op deze knop te drukken om hem een positief punt te geven