OXIESEC PANEL
- Current Dir:
/
/
usr
/
share
/
nmap
/
nselib
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
08/07/2020 12:36:00 PM
rwxr-xr-x
📄
afp.lua
71.92 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
ajp.lua
16.69 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
amqp.lua
10.5 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
anyconnect.lua
4.45 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
asn1.lua
14.57 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
base32.lua
7.33 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
base64.lua
5.67 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
bin.lua
12.89 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
bit.lua
2.43 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
bitcoin.lua
16.99 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
bits.lua
1.82 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
bittorrent.lua
40.77 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
bjnp.lua
9.45 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
brute.lua
50.04 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
cassandra.lua
5.78 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
citrixxml.lua
16 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
coap.lua
76.24 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
comm.lua
10.75 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
creds.lua
18.22 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
cvs.lua
3.13 KB
04/16/2018 01:11:39 AM
rw-r--r--
📁
data
-
08/07/2020 12:36:00 PM
rwxr-xr-x
📄
datafiles.lua
11.05 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
datetime.lua
1.16 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
dhcp.lua
29.17 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
dhcp6.lua
19.87 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
dns.lua
51.44 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
dnsbl.lua
19.02 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
dnssd.lua
12.57 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
drda.lua
24.2 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
eap.lua
7.64 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
eigrp.lua
14.47 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
formulas.lua
5.35 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
ftp.lua
9.03 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
geoip.lua
1.71 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
giop.lua
18.44 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
gps.lua
3.05 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
http.lua
105.81 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
httpspider.lua
36.15 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
iax2.lua
9.6 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
ike.lua
15.02 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
imap.lua
9.59 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
informix.lua
39.76 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
ipOps.lua
26.92 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
ipmi.lua
10.02 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
ipp.lua
12.54 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
irc.lua
757 bytes
04/16/2018 01:11:39 AM
rw-r--r--
📄
iscsi.lua
21.45 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
isns.lua
15.34 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
jdwp.lua
43.57 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
json.lua
11.65 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
ldap.lua
31.86 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
lfs.luadoc
1.68 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
libssh2-utility.lua
4.39 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
libssh2.luadoc
4.75 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
listop.lua
4.66 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
lpeg-utility.lua
5.64 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
lpeg.luadoc
351 bytes
04/16/2018 01:11:39 AM
rw-r--r--
📄
ls.lua
10.96 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
match.lua
2.05 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
membase.lua
9.88 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
mobileme.lua
8.46 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
mongodb.lua
21.29 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
mqtt.lua
28.95 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
msrpc.lua
179.93 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
msrpcperformance.lua
29.72 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
msrpctypes.lua
167.61 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
mssql.lua
110.87 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
multicast.lua
6.1 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
mysql.lua
17.09 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
natpmp.lua
5.04 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
ncp.lua
36 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
ndmp.lua
11.58 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
netbios.lua
13.9 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
nmap.luadoc
40.34 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
nrpc.lua
4.42 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
nsedebug.lua
3.49 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
omp2.lua
4.77 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
openssl.luadoc
7.08 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
ospf.lua
15.29 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
packet.lua
36.65 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
pcre.luadoc
6.79 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
pgsql.lua
20.61 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
pop3.lua
5.7 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
pppoe.lua
29.95 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
proxy.lua
12.04 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
rdp.lua
11.05 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
re.lua
8.22 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
redis.lua
3.59 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
rmi.lua
47.89 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
rpc.lua
106.22 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
rpcap.lua
11.19 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
rsync.lua
5.19 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
rtsp.lua
8.67 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
sasl.lua
16.38 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
shortport.lua
8.01 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
sip.lua
30.56 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
slaxml.lua
17.9 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
smb.lua
175.85 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
smb2.lua
16.32 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
smbauth.lua
37.53 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
smtp.lua
19.81 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
snmp.lua
15.99 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
socks.lua
8.26 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
srvloc.lua
12.25 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
ssh1.lua
8.88 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
ssh2.lua
11.88 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
sslcert.lua
33.34 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
sslv2.lua
9.63 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
stdnse.lua
45.93 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
strbuf.lua
4.52 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
strict.lua
2.53 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
stun.lua
11.51 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
tab.lua
3.35 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
target.lua
3.93 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
tftp.lua
9.38 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
tls.lua
56.16 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
tn3270.lua
43.75 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
tns.lua
64.17 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
unicode.lua
14.32 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
unittest.lua
12.33 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
unpwdb.lua
10.08 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
upnp.lua
11.18 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
url.lua
12.09 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
versant.lua
8.6 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
vnc.lua
23.3 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
vulns.lua
76.29 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
vuzedht.lua
16.62 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
wsdd.lua
12.03 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
xdmcp.lua
11.9 KB
04/16/2018 01:11:39 AM
rw-r--r--
📄
xmpp.lua
15.88 KB
04/16/2018 01:11:39 AM
rw-r--r--
Editing: amqp.lua
Close
--- -- The AMQP library provides some basic functionality for retrieving information -- about an AMQP server's properties. -- -- Summary -- ------- -- The library currently supports the AMQP 0-9 and 0-8 protocol specifications. -- -- Overview -- -------- -- The library contains the following classes: -- -- o AMQP -- - This class contains the core functions needed to communicate with AMQP -- -- @args amqp.version Can be used to specify the client version to use (currently, 0-8, 0-9 or 0-9-1) -- -- @copyright Same as Nmap--See https://nmap.org/book/man-legal.html -- @author Sebastian Dragomir <velorien@gmail.com> -- Version 0.1 -- Created 05/04/2011 - v0.1 - created by Sebastian Dragomir <velorien@gmail.com> local bin = require "bin" local match = require "match" local nmap = require "nmap" local stdnse = require "stdnse" local table = require "table" _ENV = stdnse.module("amqp", stdnse.seeall); AMQP = { -- protocol versions sent by the server versions = { [0x0800] = "0-8", [0x0009] = "0-9" }, -- version strings the client supports client_version_strings = { ["0-8"] = "\x01\x01\x08\x00", ["0-9"] = "\x00\x00\x09\x00", ["0-9-1"] = "\x00\x00\x09\x01" }, new = function(self, host, port) local o = {} setmetatable(o, self) self.__index = self o.host = host o.port = port o.amqpsocket = nmap.new_socket() o.cli_version = self.client_version_strings[nmap.registry.args['amqp.version']] or self.client_version_strings["0-9-1"] o.protover = nil o.server_version = nil o.server_product = nil o.serer_properties = nil return o end, --- Connects the AMQP socket connect = function(self) local data, status, msg status, msg = self.amqpsocket:connect(self.host, self.port, "tcp") return status, msg end, --- Disconnects the AMQP socket disconnect = function(self) self.amqpsocket:close() end, --- Decodes a table value in the server properties field. -- -- @param tbl the decoded table -- @param tsize number, the table size in bytes -- @return status, true on success, false on failure -- @return error string containing error message if status is false -- @return decoded value decodeTable = function(self, tbl, tsize) local status, err, tmp, read, value read = 0 while read < tsize do local key, value status, tmp = self.amqpsocket:receive_buf(match.numbytes(1), true) if ( not(status) ) then return status, "ERROR: AMQP:handshake connection closed unexpectedly while reading key length", nil end read = read + 1 tmp = select( 2, bin.unpack("C", tmp) ) status, key = self.amqpsocket:receive_buf(match.numbytes(tmp), true) if ( not(status) ) then return status, "ERROR: AMQP:handshake connection closed unexpectedly while reading key", nil end read = read + tmp status, tmp = self.amqpsocket:receive_buf(match.numbytes(1), true) if ( not(status) ) then return status, "ERROR: AMQP:handshake connection closed unexpectedly while reading value type for " .. key, nil end read = read + 1 if ( tmp == 'F' ) then -- table type status, tmp = self.amqpsocket:receive_buf(match.numbytes(4), true) if ( not(status) ) then return status, "ERROR: AMQP:handshake connection closed unexpectedly while reading table size", nil end read = read + 4 value = {} tmp = select( 2, bin.unpack(">I", tmp) ) status, err, value = self:decodeTable(value, tmp) read = read + tmp table.insert(tbl, key .. ": ") table.insert(tbl, value) elseif ( tmp == 'S' ) then -- string type status, err, value, read = self:decodeString(key, read) if ( key == "product" ) then self.server_product = value elseif ( key == "version" ) then self.server_version = value end table.insert(tbl, key .. ": " .. value) elseif ( tmp == 't' ) then -- boolean type status, err, value, read = self:decodeBoolean(key, read) table.insert(tbl, key .. ": " .. value) end if ( not(status) ) then return status, err, nil end end return true, nil, tbl end, --- Decodes a string value in the server properties field. -- -- @param key string, the key being read -- @param read number, number of bytes already read -- @return status, true on success, false on failure -- @return error string containing error message if status is false -- @return decoded value -- @return number of bytes read after decoding this value decodeString = function(self, key, read) local value, status, tmp status, tmp = self.amqpsocket:receive_buf(match.numbytes(4), true) if ( not(status) ) then return status, "ERROR: AMQP:handshake connection closed unexpectedly while reading value size for " .. key, nil, 0 end read = read + 4 tmp = select( 2, bin.unpack(">I", tmp) ) status, value = self.amqpsocket:receive_buf(match.numbytes(tmp), true) if ( not(status) ) then return status, "ERROR: AMQP:handshake connection closed unexpectedly while reading value for " .. key, nil, 0 end read = read + tmp return true, nil, value, read end, --- Decodes a boolean value in the server properties field. -- -- @param key string, the key being read -- @param read number, number of bytes already read -- @return status, true on success, false on failure -- @return error string containing error message if status is false -- @return decoded value -- @return number of bytes read after decoding this value decodeBoolean = function(self, key, read) local status, value status, value = self.amqpsocket:receive_buf(match.numbytes(1), true) if ( not(status) ) then return status, "ERROR: AMQP:handshake connection closed unexpectedly while reading value for " .. key, nil, 0 end value = select( 2, bin.unpack("C", value) ) read = read + 1 return true, nil, value == 0x01 and "YES" or "NO", read end, --- Performs the AMQP handshake and determines -- * The AMQP protocol version -- * The server properties/capabilities -- -- @return status, true on success, false on failure -- @return error string containing error message if status is false handshake = function(self) local _, status, err, version, tmp, value, properties status = self.amqpsocket:send( "AMQP" .. self.cli_version ) if ( not(status) ) then return false, "ERROR: AMQP:handshake failed while sending client version" end status, tmp = self.amqpsocket:receive_buf(match.numbytes(11), true) if ( not(status) ) then return status, "ERROR: AMQP:handshake connection closed unexpectedly while reading frame header" end -- check if the server rejected our proposed version if ( #tmp ~= 11 ) then if ( #tmp == 8 and select( 2, bin.unpack(">I", tmp) ) == 0x414D5150 ) then local vi, vii, v1, v2, v3, v4, found _, vi = bin.unpack(">I", tmp, 5) found = false -- check if we support the server's version for _, v in pairs( self.client_version_strings ) do _, vii = bin.unpack(">I", v) if ( vii == vi ) then version = v found = true break end end -- try again with new version string if ( found and version ~= self.cli_version ) then self.cli_version = version self:disconnect() status, err = self:connect() if ( not(status) ) then return status, err end return self:handshake() end -- version unsupported _, v1, v2, v3, v4 = bin.unpack(">CCCC", tmp, 5) return false, ("ERROR: AMQP:handshake unsupported version (%d.%d.%d.%d)"):format( v1, v2, v3, v4 ) else return false, ("ERROR: AMQP:handshake server might not be AMQP, received: %s"):format( tmp ) end end -- parse frame header local frametype, chnumber, framesize, method _, frametype, chnumber, framesize, method = bin.unpack(">CSII", tmp) stdnse.debug1("frametype: %d, chnumber: %d, framesize: %d, method: %d", frametype, chnumber, framesize, method) if (frametype ~= 1) then return false, ("ERROR: AQMP:handshake expected header (1) frame, but was %d"):format(frametype) end if (method ~= 0x000A000A) then return false, ("ERROR: AQMP:handshake expected connection.start (0x000A000A) method, but was %x"):format(method) end -- parse protocol version status, tmp = self.amqpsocket:receive_buf(match.numbytes(2), true) if ( not(status) ) then return status, "ERROR: AMQP:handshake connection closed unexpectedly while reading version" end version = select( 2, bin.unpack(">S", tmp) ) self.protover = AMQP.versions[version] if ( not(self.protover) ) then return false, ("ERROR: AMQP:handshake unsupported version (%x)"):format(version) end -- parse server properties status, tmp = self.amqpsocket:receive_buf(match.numbytes(4), true) if ( not(status) ) then return status, "ERROR: AMQP:handshake connection closed unexpectedly while reading server properties size" end local tablesize = select( 2, bin.unpack(">I", tmp) ) properties = {} status, err, properties = self:decodeTable(properties, tablesize) if ( not(status) ) then return status, err end status, err, value, tmp = self:decodeString("mechanisms", 0) if ( not(status) ) then return status, err end table.insert(properties, "mechanisms: " .. value) status, err, value, tmp = self:decodeString("locales", 0) if ( not(status) ) then return status, err end table.insert(properties, "locales: " .. value) self.server_properties = properties return true end, --- Returns the protocol version reported by the server -- -- @return string containing the version number getProtocolVersion = function( self ) return self.protover end, --- Returns the product version reported by the server -- -- @return string containing the version number getServerVersion = function( self ) return self.server_version end, --- Returns the product name reported by the server -- -- @return string containing the product name getServerProduct = function( self ) return self.server_product end, --- Returns the properties reported by the server -- -- @return table containing server properties getServerProperties = function( self ) return self.server_properties end, } return _ENV;