mirror of
https://github.com/nmap/nmap.git
synced 2025-12-06 04:31:29 +00:00
Use BruteSocket in a bunch of brute scripts
This commit is contained in:
@@ -281,8 +281,8 @@ Comm = {
|
||||
-- @name Comm.connect
|
||||
-- @return status true on success, false on failure
|
||||
-- @return err string containing error message on failure
|
||||
connect = function(self)
|
||||
self.socket = nmap.new_socket()
|
||||
connect = function(self, socket)
|
||||
self.socket = socket or nmap.new_socket()
|
||||
self.socket:set_timeout(self.options.timeout or 5000)
|
||||
return self.socket:connect(self.host, self.port)
|
||||
end,
|
||||
@@ -371,9 +371,9 @@ Helper = {
|
||||
-- @name Helper.connect
|
||||
-- @return status true on success, false on failure
|
||||
-- @return err string containing error message on failure
|
||||
connect = function(self)
|
||||
connect = function(self, socket)
|
||||
self.comm = Comm:new(self.host, self.port, self.opt)
|
||||
return self.comm:connect()
|
||||
return self.comm:connect(socket)
|
||||
end,
|
||||
|
||||
getOption = function(self, options, key)
|
||||
|
||||
@@ -25,8 +25,8 @@ Helper = {
|
||||
return o
|
||||
end,
|
||||
|
||||
connect = function(self)
|
||||
self.socket = nmap.new_socket()
|
||||
connect = function(self, socket)
|
||||
self.socket = socket or nmap.new_socket()
|
||||
return self.socket:connect(self.host, self.port)
|
||||
end,
|
||||
|
||||
|
||||
@@ -1173,7 +1173,6 @@ Helper = {
|
||||
self.__index = self
|
||||
o.host = host
|
||||
o.port = port
|
||||
o.socket = nmap.new_socket()
|
||||
o.instance = instance or "nmap_probe"
|
||||
return o
|
||||
end,
|
||||
@@ -1182,9 +1181,10 @@ Helper = {
|
||||
--
|
||||
-- @return true on success, false on failure
|
||||
-- @return err containing error message when status is false
|
||||
Connect = function( self )
|
||||
Connect = function( self, socket )
|
||||
local status, data
|
||||
local conn, packet
|
||||
self.socket = socket or nmap.new_socket()
|
||||
|
||||
-- Some Informix server seem to take a LOT of time to respond?!
|
||||
self.socket:set_timeout(20000)
|
||||
|
||||
@@ -550,7 +550,6 @@ Helper = {
|
||||
setmetatable(o, self)
|
||||
self.__index = self
|
||||
o.host, o.port = host, port
|
||||
o.socket = nmap.new_socket()
|
||||
return o
|
||||
end,
|
||||
|
||||
@@ -558,7 +557,8 @@ Helper = {
|
||||
--
|
||||
-- @return status true on success, false on failure
|
||||
-- @return err string containing error message is status is false
|
||||
connect = function( self )
|
||||
connect = function( self, socket )
|
||||
self.socket = socket or nmap.new_socket()
|
||||
self.socket:set_timeout(10000)
|
||||
local status, err = self.socket:connect(self.host, self.port, "tcp")
|
||||
if ( not(status) ) then return false, err end
|
||||
|
||||
@@ -259,8 +259,8 @@ Helper = {
|
||||
|
||||
-- Connects the socket to the server
|
||||
-- @return true on success, false on failure
|
||||
connect = function(self)
|
||||
self.socket = nmap.new_socket()
|
||||
connect = function(self, socket)
|
||||
self.socket = socket or nmap.new_socket()
|
||||
self.socket:set_timeout(self.options.timeout or 10000)
|
||||
return self.socket:connect(self.host, self.port)
|
||||
end,
|
||||
|
||||
@@ -43,15 +43,15 @@ end
|
||||
Session = {
|
||||
|
||||
--- Creates a new session object
|
||||
new = function(self, o)
|
||||
new = function(self, socket)
|
||||
|
||||
o = o or {}
|
||||
local o = {}
|
||||
setmetatable(o, self)
|
||||
self.__index = self
|
||||
|
||||
o.username = nmap.registry.args["omp2.username"]
|
||||
o.password = nmap.registry.args["omp2.password"]
|
||||
o.socket = nmap.new_socket()
|
||||
o.socket = socket or nmap.new_socket()
|
||||
|
||||
return o
|
||||
end,
|
||||
|
||||
@@ -125,8 +125,8 @@ Helper = {
|
||||
return o
|
||||
end,
|
||||
|
||||
connect = function(self)
|
||||
self.socket = nmap.new_socket()
|
||||
connect = function(self, socket)
|
||||
self.socket = socket or nmap.new_socket()
|
||||
return self.socket:connect(self.host, self.port)
|
||||
end,
|
||||
|
||||
|
||||
@@ -289,8 +289,8 @@ Comm = {
|
||||
-- @param host table
|
||||
-- @param port table
|
||||
-- @return o instance of Comm
|
||||
new = function(self, host, port)
|
||||
local o = { host = host, port = port, socket = nmap.new_socket() }
|
||||
new = function(self, host, port, socket)
|
||||
local o = { host = host, port = port, socket = socket or nmap.new_socket() }
|
||||
setmetatable(o, self)
|
||||
self.__index = self
|
||||
return o
|
||||
|
||||
@@ -49,8 +49,8 @@ Helper = {
|
||||
-- Connects to the rsync server
|
||||
-- @return status, true on success, false on failure
|
||||
-- @return err string containing an error message if status is false
|
||||
connect = function(self)
|
||||
self.socket = nmap.new_socket()
|
||||
connect = function(self, socket)
|
||||
self.socket = socket or nmap.new_socket()
|
||||
self.socket:set_timeout(self.options.timeout or 5000)
|
||||
local status, err = self.socket:connect(self.host, self.port)
|
||||
if ( not(status) ) then
|
||||
|
||||
@@ -198,8 +198,8 @@ Helper = {
|
||||
-- @param auth_method table containing the auth. methods to request
|
||||
-- @return status true on success, false on failure
|
||||
-- @return response table containing the response or err string on failure
|
||||
connect = function(self, auth_method)
|
||||
self.socket = nmap.new_socket()
|
||||
connect = function(self, auth_method, socket)
|
||||
self.socket = socket or nmap.new_socket()
|
||||
self.socket:set_timeout(self.options.timeout or 10000)
|
||||
local status, err = self.socket:connect(self.host, self.port)
|
||||
if ( not(status) ) then
|
||||
|
||||
@@ -232,9 +232,9 @@ Telnet = {
|
||||
|
||||
--- Creates a new TN3270 Client object
|
||||
|
||||
new = function(self)
|
||||
new = function(self, socket)
|
||||
local o = {
|
||||
socket = nmap.new_socket(),
|
||||
socket = socket or nmap.new_socket(),
|
||||
-- TN3270 Buffers
|
||||
buffer = {},
|
||||
fa_buffer = {},
|
||||
|
||||
@@ -1569,11 +1569,11 @@ Helper = {
|
||||
-- @param port table containing the port table as received by action
|
||||
-- @param instance string containing the instance name
|
||||
-- @return o new instance of Helper
|
||||
new = function(self, host, port, instance )
|
||||
new = function(self, host, port, instance, socket )
|
||||
local o = {
|
||||
host = host,
|
||||
port = port,
|
||||
socket = nmap.new_socket(),
|
||||
socket = socket or nmap.new_socket(),
|
||||
dbinstance = instance or stdnse.get_script_args('tns.sid') or "orcl"
|
||||
}
|
||||
o.socket:set_timeout(30000)
|
||||
|
||||
@@ -187,13 +187,13 @@ XMPP = {
|
||||
-- @name XMPP.connect
|
||||
-- @return status true on success, false on failure
|
||||
-- @return err string containing an error message if status is false
|
||||
connect = function(self)
|
||||
connect = function(self, socket)
|
||||
assert(self.servername,
|
||||
"Cannot connect to XMPP server without valid server name")
|
||||
|
||||
-- we may be reconnecting using SSL
|
||||
if ( not(self.socket) ) then
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = socket or nmap.new_socket()
|
||||
self.socket:set_timeout(self.options.timeout * 1000)
|
||||
local status, err = self.socket:connect(self.host, self.port)
|
||||
if ( not(status) ) then
|
||||
@@ -412,13 +412,13 @@ Helper = {
|
||||
-- @name Helper.connect
|
||||
-- @return status true on success, false on failure
|
||||
-- @return err string containing an error message is status is false
|
||||
connect = function(self)
|
||||
connect = function(self, socket)
|
||||
if ( not(self.host.targetname) and
|
||||
not(self.options.servername) ) then
|
||||
return false, "ERROR: Cannot connect to XMPP server without valid server name"
|
||||
end
|
||||
self.state = "CONNECTED"
|
||||
return self.xmpp:connect()
|
||||
return self.xmpp:connect(socket)
|
||||
end,
|
||||
|
||||
--- Login to the XMPP server
|
||||
|
||||
@@ -52,7 +52,7 @@ Driver = {
|
||||
end,
|
||||
|
||||
connect = function(self)
|
||||
return self.helper:connect()
|
||||
return self.helper:connect(brute.new_socket())
|
||||
end,
|
||||
|
||||
disconnect = function(self)
|
||||
|
||||
@@ -37,7 +37,7 @@ portrule = shortport.port_or_service({9160}, {"cassandra"})
|
||||
Driver = {
|
||||
|
||||
new = function(self, host, port, options)
|
||||
local o = { host = host, port = port, socket = nmap.new_socket() }
|
||||
local o = { host = host, port = port, socket = brute.new_socket() }
|
||||
setmetatable(o, self)
|
||||
self.__index = self
|
||||
return o
|
||||
|
||||
@@ -58,7 +58,7 @@ Driver = {
|
||||
o.host = host
|
||||
o.port = port
|
||||
o.options = options
|
||||
o.tn3270 = tn3270.Telnet:new()
|
||||
o.tn3270 = tn3270.Telnet:new(brute.new_socket())
|
||||
return o
|
||||
end,
|
||||
connect = function( self )
|
||||
|
||||
@@ -51,7 +51,7 @@ Driver =
|
||||
end,
|
||||
|
||||
connect = function( self )
|
||||
self.helper:connect()
|
||||
self.helper:connect(brute.new_socket())
|
||||
return true
|
||||
end,
|
||||
|
||||
|
||||
@@ -92,7 +92,7 @@ Driver = {
|
||||
|
||||
connect = function(self)
|
||||
local status, err
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = brute.new_socket()
|
||||
self.socket:set_timeout(
|
||||
((self.host.times and self.host.times.timeout) or 8) * 1000)
|
||||
|
||||
|
||||
@@ -45,7 +45,7 @@ Driver = {
|
||||
end,
|
||||
|
||||
connect = function( self )
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = brute.new_socket()
|
||||
self.socket:set_timeout(5000)
|
||||
return self.socket:connect(self.host, self.port, "tcp")
|
||||
end,
|
||||
|
||||
@@ -59,7 +59,7 @@ Driver =
|
||||
local status, data
|
||||
self.helper = informix.Helper:new( self.host, self.port, "on_nmap_dummy" )
|
||||
|
||||
status, data = self.helper:Connect()
|
||||
status, data = self.helper:Connect(brute.new_socket())
|
||||
if ( not(status) ) then
|
||||
return status, data
|
||||
end
|
||||
|
||||
@@ -39,7 +39,7 @@ Driver = {
|
||||
end,
|
||||
|
||||
connect = function(self)
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = brute.new_socket()
|
||||
self.socket:set_timeout(
|
||||
((self.host.times and self.host.times.timeout) or 8) * 1000)
|
||||
self.socket:connect(self.host, self.port, "udp")
|
||||
|
||||
@@ -44,7 +44,7 @@ Driver = {
|
||||
|
||||
connect = function( self )
|
||||
self.helper = iscsi.Helper:new( self.host, self.port )
|
||||
return self.helper:connect()
|
||||
return self.helper:connect(brute.new_socket())
|
||||
end,
|
||||
|
||||
login = function( self, username, password )
|
||||
|
||||
@@ -46,7 +46,7 @@ Driver = {
|
||||
|
||||
connect = function(self)
|
||||
self.helper = membase.Helper:new(self.host, self.port)
|
||||
return self.helper:connect()
|
||||
return self.helper:connect(brute.new_socket())
|
||||
end,
|
||||
|
||||
login = function(self, username, password)
|
||||
|
||||
@@ -44,7 +44,7 @@ Driver =
|
||||
end,
|
||||
|
||||
connect = function ( self )
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = brute.new_socket()
|
||||
if ( not(self.socket:connect(self.host, self.port, self.opts)) ) then
|
||||
return false
|
||||
end
|
||||
|
||||
@@ -48,7 +48,7 @@ Driver =
|
||||
end,
|
||||
|
||||
connect = function( self )
|
||||
self.s = nmap.new_socket("tcp")
|
||||
self.s = brute.new_socket()
|
||||
self.s:set_timeout(self.options['timeout'])
|
||||
return self.s:connect(self.host, self.port, "tcp")
|
||||
end,
|
||||
|
||||
@@ -49,7 +49,7 @@ Driver = {
|
||||
end,
|
||||
|
||||
connect = function( self )
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = brute.new_socket()
|
||||
self.socket:set_timeout(arg_timeout)
|
||||
return self.socket:connect(self.host, self.port)
|
||||
end,
|
||||
|
||||
@@ -38,7 +38,7 @@ portrule = shortport.port_or_service({27017}, {"mongodb"})
|
||||
Driver = {
|
||||
|
||||
new = function(self, host, port, options)
|
||||
local o = { host = host, port = port, sock = nmap.new_socket() }
|
||||
local o = { host = host, port = port, sock = brute.new_socket() }
|
||||
setmetatable(o, self)
|
||||
self.__index = self
|
||||
return o
|
||||
|
||||
@@ -53,7 +53,7 @@ Driver = {
|
||||
end,
|
||||
|
||||
connect = function( self )
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = brute.new_socket()
|
||||
local status, err = self.socket:connect(self.host, self.port)
|
||||
self.socket:set_timeout(arg_timeout)
|
||||
if(not(status)) then
|
||||
|
||||
@@ -48,7 +48,7 @@ Driver =
|
||||
end,
|
||||
|
||||
connect = function( self )
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = brute.new_socket()
|
||||
if ( not(self.socket:connect(self.host, self.port, "ssl")) ) then
|
||||
return false
|
||||
end
|
||||
|
||||
@@ -48,7 +48,7 @@ local function authenticate(host, port, username, password)
|
||||
}
|
||||
|
||||
local data = table.concat(headers, "\r\n") .. "\r\n\r\n" .. post_data
|
||||
local socket = nmap.new_socket()
|
||||
local socket = brute.new_socket()
|
||||
socket:set_timeout(arg_timeout)
|
||||
|
||||
local status, err = socket:connect(host, port)
|
||||
|
||||
@@ -126,7 +126,7 @@ Driver =
|
||||
end,
|
||||
|
||||
connect = function(self)
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = brute.new_socket()
|
||||
return self.socket:connect(self.host, self.port)
|
||||
end,
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@ Driver = {
|
||||
self.__index = self
|
||||
o.host = host
|
||||
o.port = port
|
||||
o.session = omp2.Session:new()
|
||||
o.session = omp2.Session:new(brute.new_socket())
|
||||
return o
|
||||
end,
|
||||
|
||||
|
||||
@@ -43,7 +43,7 @@ Driver =
|
||||
end,
|
||||
|
||||
connect = function ( self )
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = brute.new_socket()
|
||||
if ( not(self.socket:connect(self.host, self.port, "ssl")) ) then
|
||||
return false
|
||||
end
|
||||
|
||||
@@ -98,7 +98,7 @@ Driver =
|
||||
self.helper = ConnectionPool[coroutine.running()]
|
||||
if ( self.helper ) then return true end
|
||||
|
||||
self.helper = tns.Helper:new( self.host, self.port, self.sid )
|
||||
self.helper = tns.Helper:new( self.host, self.port, self.sid, brute.new_socket() )
|
||||
|
||||
-- This loop is intended for handling failed connections
|
||||
-- A connection may fail for a number of different reasons.
|
||||
|
||||
@@ -70,7 +70,7 @@ Driver = {
|
||||
end,
|
||||
|
||||
connect = function( self )
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = brute.new_socket()
|
||||
local response
|
||||
local err
|
||||
local status = false
|
||||
|
||||
@@ -46,7 +46,7 @@ Driver = {
|
||||
-- @return false, brute.Error object on failure
|
||||
connect = function(self)
|
||||
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = brute.new_socket()
|
||||
local opts = {timeout=10000, recv_before=true}
|
||||
local best_opt, line, _
|
||||
self.socket, _, best_opt, line = comm.tryssl(self.host, self.port, "" , opts)
|
||||
|
||||
@@ -43,7 +43,7 @@ Driver = {
|
||||
|
||||
connect = function( self )
|
||||
self.helper = redis.Helper:new(self.host, self.port)
|
||||
return self.helper:connect()
|
||||
return self.helper:connect(brute.new_socket())
|
||||
end,
|
||||
|
||||
login = function( self, username, password )
|
||||
|
||||
@@ -62,7 +62,7 @@ Driver = {
|
||||
end,
|
||||
|
||||
connect = function(self)
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = brute.new_socket()
|
||||
self.socket:set_timeout(self.timeout)
|
||||
local status, err = self.socket:connect(self.host, self.port)
|
||||
if ( not(status) ) then
|
||||
|
||||
@@ -56,7 +56,7 @@ Driver = {
|
||||
|
||||
local status
|
||||
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = brute.new_socket()
|
||||
-- apparently wee need a source port below 1024
|
||||
-- this approach is not very elegant as it causes address already in
|
||||
-- use errors when the same src port is hit in a short time frame.
|
||||
|
||||
@@ -33,7 +33,7 @@ portrule = shortport.port_or_service(2002, "rpcap", "tcp")
|
||||
Driver = {
|
||||
|
||||
new = function(self, host, port)
|
||||
local o = { helper = rpcap.Helper:new(host, port) }
|
||||
local o = { helper = rpcap.Helper:new(host, port, brute.new_socket()) }
|
||||
setmetatable(o, self)
|
||||
self.__index = self
|
||||
return o
|
||||
|
||||
@@ -44,7 +44,7 @@ Driver = {
|
||||
|
||||
connect = function(self)
|
||||
self.helper = rsync.Helper:new(self.host, self.port, self.options)
|
||||
return self.helper:connect()
|
||||
return self.helper:connect(brute.new_socket())
|
||||
end,
|
||||
|
||||
login = function(self, username, password)
|
||||
|
||||
@@ -40,7 +40,7 @@ Driver = {
|
||||
|
||||
connect = function ( self )
|
||||
self.helper = socks.Helper:new(self.host, self.port, { timeout = 10000 })
|
||||
return self.helper:connect()
|
||||
return self.helper:connect(nil, brute.new_socket())
|
||||
end,
|
||||
|
||||
login = function( self, username, password )
|
||||
|
||||
@@ -67,7 +67,7 @@ svn =
|
||||
local repo_url = ( "svn://%s/%s" ):format(self.host.ip, self.repo)
|
||||
local status, msg
|
||||
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = brute.new_socket()
|
||||
|
||||
local result
|
||||
status, result = self.socket:connect(self.host, self.port)
|
||||
|
||||
@@ -145,7 +145,7 @@ local Connection = { methods = {} }
|
||||
-- @param port Telnet port
|
||||
-- @return Connection object or nil (if the operation failed)
|
||||
Connection.new = function (host, port, proto)
|
||||
local soc = nmap.new_socket(proto)
|
||||
local soc = brute.new_socket(proto)
|
||||
if not soc then return nil end
|
||||
return setmetatable({
|
||||
socket = soc,
|
||||
|
||||
@@ -73,7 +73,7 @@ Driver = {
|
||||
o.host = host
|
||||
o.port = port
|
||||
o.options = options
|
||||
o.tn3270 = tn3270.Telnet:new()
|
||||
o.tn3270 = tn3270.Telnet:new(brute.new_socket())
|
||||
return o
|
||||
end,
|
||||
connect = function( self )
|
||||
|
||||
@@ -41,7 +41,7 @@ Driver = {
|
||||
end,
|
||||
|
||||
connect = function(self)
|
||||
self.socket = nmap.new_socket()
|
||||
self.socket = brute.new_socket()
|
||||
return self.socket:connect(self.host, self.port)
|
||||
end,
|
||||
|
||||
|
||||
@@ -64,7 +64,7 @@ Driver =
|
||||
self.helper = ConnectionPool[coroutine.running()]
|
||||
if ( not(self.helper) ) then
|
||||
self.helper = xmpp.Helper:new( self.host, self.port, self.options )
|
||||
local status, err = self.helper:connect()
|
||||
local status, err = self.helper:connect(brute.new_socket())
|
||||
if ( not(status) ) then return false, err end
|
||||
ConnectionPool[coroutine.running()] = self.helper
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user