1
0
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:
dmiller
2018-03-10 03:09:39 +00:00
parent 4c1d93405a
commit 8ee963caee
47 changed files with 65 additions and 65 deletions

View File

@@ -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)

View File

@@ -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,

View File

@@ -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)

View File

@@ -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

View File

@@ -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,

View File

@@ -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,

View File

@@ -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,

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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 = {},

View File

@@ -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)

View File

@@ -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

View File

@@ -52,7 +52,7 @@ Driver = {
end,
connect = function(self)
return self.helper:connect()
return self.helper:connect(brute.new_socket())
end,
disconnect = function(self)

View File

@@ -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

View File

@@ -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 )

View File

@@ -51,7 +51,7 @@ Driver =
end,
connect = function( self )
self.helper:connect()
self.helper:connect(brute.new_socket())
return true
end,

View File

@@ -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)

View File

@@ -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,

View File

@@ -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

View File

@@ -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")

View File

@@ -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 )

View File

@@ -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)

View File

@@ -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

View File

@@ -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,

View File

@@ -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,

View File

@@ -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

View File

@@ -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

View File

@@ -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

View File

@@ -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)

View File

@@ -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,

View File

@@ -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,

View File

@@ -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

View File

@@ -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.

View File

@@ -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

View File

@@ -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)

View File

@@ -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 )

View File

@@ -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

View File

@@ -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.

View File

@@ -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

View File

@@ -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)

View File

@@ -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 )

View File

@@ -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)

View File

@@ -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,

View File

@@ -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 )

View File

@@ -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,

View File

@@ -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