BadStore: Web per i test pentest

BadStore è un'applicazione web costruita sulla distribuzione Linux (Trinux). La distribuzione permette di simulare un server con tutti i servizi attivi e una libreria installata che contiene diverse falle di sicurezza, per fare hacking e penetration test.

BadStore pesa solo 10 mb e può essere utilizzato da virtualbox per simulare un server ed effettuare attacchi da un altro computer o dallo stesso.

Il Piattaforma web BadStore funziona con Perl, Apache e MySQL.

Il Vantaggi di BadStore sono:

  • Facile da configurare.
  • Può essere eseguito da una macchina virtuale.
  • Possiamo accedere alla macchina virtuale configurando un IP come se fosse un VPS.

Possiamo scaricare l'ISO dalla pagina ufficiale di BadStore.

Successivamente utilizzeremo l'ISO BadStore in una macchina virtuale come Virtualbox. Avremo bisogno di avere installato VirtualBox, la sua installazione è molto semplice come spiegato nei tutorial Creare un Server VPS su un computer di casa e Linux - Installazione di Ubuntu.

Successivamente avviamo Virtualbox e creeremo la macchina virtuale per ospitare BadStore. Dobbiamo selezionare una versione a 32 bit di Linux.

Quindi clicchiamo su Prossimo e lo faremo allocare memoria per la macchina virtualeIn questo caso allochiamo 1,7 giga di RAM più che sufficienti per questa versione di Trinux.

Clicchiamo su Prossimo e creeremo il disco virtuale per installa la nostra macchina virtuale.

Quindi clicchiamo su Prossimo e dobbiamo assegnare il tipo di disco virtuale. I formati più utilizzati che Virtualbox ci offre sono:

  • VDI: È il formato predefinito di Virtualbox.
  • VMDK: è un formato open source, questo tipo di file del disco virtuale può funzionare su altre piattaforme di virtualizzazione come VMWare.

Ce ne sono altri più specifici, ma i precedenti sono multipiattaforma e i più consigliati. Dobbiamo prendere in considerazione prima di creare la macchina virtuale se eseguiremo la macchina virtuale su altre piattaforme o meno, entrambi i formati funzionano su altri sistemi operativi. In questo tutorial utilizzeremo il formato VDI.

Ora clicchiamo su Prossimo e dobbiamo assegnare un nome alla cartella che funzionerà come un disco rigido virtuale. Dovremo anche definire la dimensione del disco rigido virtuale. BadStore Occupa solo 11 MB ma assegniamo tra 4 GB e 50 GB nel caso in cui desideriamo installare strumenti di sicurezza o di test.

INGRANDIRE

Quindi clicchiamo su Prossimo e dovremo cercare l'ISO per indicare quale verrà installato.

Successivamente avvieremo BadStore e vedremo come collegarci a questo VPS.

Inizierà il sistema in modalità console e daremo un accedere Per attivare la riga di comando, in questo caso non abbiamo un dominio quindi utilizzeremo l'IP del VPS per eseguire i nostri attacchi, quello che dobbiamo scoprire per iniziare è l'IP del VPS. Per questo useremo il comando:

 bash # ifconfig
Otteniamo così la configurazione di una rete Ethernet con ip 192.168.0.15, poi da un browser sul computer, fuori dalla macchina virtuale, mettiamo l'IP.

Abbiamo effettuato l'accesso al web e possiamo iniziare il analisi di vulnerabilità e test pentest o hacking che vedremo dopo.

A) Ricerca fallita


Il negozio ha un motore di ricerca nella colonna di sinistra, inseriamo qualsiasi valore che sarebbe la ricerca di un libro e lo faremo fallire, di conseguenza ci mostrerà la query SQL.

Ciò si verifica non convalidando i dati immessi e gli errori che si verificano.

B) Vulnerabilità con Cross Site Scripting (XSS)


Lasceremo un commento nel Guestbook, ma inseriremo il codice Javascript nei campi del modulo.

Aggiungiamo un commento utilizzando la funzione di avviso Javascript per mostrare un messaggio, questo codice verrà salvato nel database e quindi verrà eseguito ogni volta che viene caricata la pagina web del guestbook. Questa vulnerabilità ci consente di inserire qualsiasi codice Javascript, Potremmo persino reindirizzare a un altro sito Web ogni volta che qualcuno accede al libro degli ospiti, ad esempio

 
Con ciò lo reindirizziamo.

C) Uso Strumenti di scansione


Possiamo utilizzare il terminale del computer per scansionare il VPS con diversi strumenti per ottenere maggiori informazioni,

Ad esempio:

Mappa: Con lo strumento Nmap possiamo scansionare le porte per determinare quali sono aperte:

 Nmap 192.168.0.15

Possiamo vedere che il servizio mysql è attivo quindi potrebbe esserci un database in esecuzione con il web.

D) Attaccare il server MySQL con SQLMAP


Per testare questa vulnerabilità utilizzeremo SQLMAP, come abbiamo visto in un precedente tutorial:

SQLMAP strumento SQL Injection e hacking di database etici.

Dobbiamo cercare un URL in cui vengono inviati i parametri, per questo, niente di meglio del motore di ricerca, se mettiamo il codice di un libro ad esempio 1000, otterremo il collegamento nel browser. Successivamente usiamo il comando sqlmap per trovare quale motore di database utilizza il web.

Verifico quale motore di database utilizza il Web e se è attaccabile e cerchiamo nel database utilizzando il seguente comando:

 ./sqlmap.py -u "http://192.168.0.21/cgi-bin/badstore.cgi?searchquery=hi&action=search&x=0&y=0" --current-db

Possiamo osservare che il server è Apache e il motore di database è Mysql 5.0.

Successivamente cercheremo di scansionare ed elencare le tabelle del database che troviamo, per questo usiamo il seguente comando:

 ./sqlmap.py -u "http://192.168.0.15/cgi-bin/badstore.cgi?searchquery=hi&action=search&x=0&y=0" --tables

E) Ottenere Accesso amministratore


Una delle vulnerabilità è l'utilizzo dei parametri URL per modificare sezioni o pagine del Web. BadStore ha questa vulnerabilità, ad esempio http://192.168.0.15/… ction = myaccount, se nel parametro action passiamo come sezione andremo ad essa, quindi possiamo provare con admin, panel o un'altra parola che indica un pannello di controllo, esempio http://192.168.0.15/… i?action=admin, ci permette effettivamente di vedere il pannello di controllo ma non di modificare nulla.

Un errore comune è che quando un utente si registra, inviamo parametri nascosti per differenziare un utente da un altro, ad esempio un cliente di un provider o un amministratore. Per vedere se ciò accade, installeremo un plug-in per il browser chiamato Tamper Data e che mostra i parametri inviati da un modulo in modo da poter vedere se ci sono parametri nascosti.

Quindi attiviamo il plugin dal menu di Firefox Strumenti> Dati manomissione, questo consentirà di acquisire i dati che vengono inviati tramite un modulo, se andiamo al modulo di registrazione e quindi clicchiamo sulla vendita dei dati di manomissione l'opzione Avvia modifica, durante l'invio acquisisce i dati.

Possiamo vedere che c'è un campo nascosto chiamato ruolo ed è quello che determina il ruolo quindi U sarà utente e A amministratore, se cambiamo il parametro ci registreremo come amministratore e avremo il pieno controllo del pannello di controllo.

Ora possiamo accedere al pannello di amministrazione perché quando ci registriamo siamo già registrati. Possiamo anche accedere a tutti gli elenchi nel pannello di amministrazione.

BadStore ci aiuta a eseguire tutti i tipi di test sulle vulnerabilità e offre un approccio pratico per trovare e sfruttare le vulnerabilità basate sul web. È una forma di formazione per sapere come proteggere adeguatamente i tuoi siti web.

Possiamo usare a software per rilevare le vulnerabilità, avevamo visto in un tutorial come:

Scansiona una vulnerabilità del sito web con ZAP

Nessus - Analizza i problemi di sicurezza della rete sui siti web.

Possiamo vedere un esempio della scansione e generare un report per visualizzare quale sia ogni vulnerabilità.

Ti è piaciuto e hai aiutato questo Tutorial?Puoi premiare l'autore premendo questo pulsante per dargli un punto positivo
wave wave wave wave wave