| Server IP : 101.53.144.229 / Your IP : 216.73.216.181 Web Server : Apache System : Linux host.gdigitalindia.in 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 User : digitalshiksha ( 1179) PHP Version : 5.6.40 Disable Function : eval,show_source,system,shell_exec,escapeshellarg,escapeshellcmd,proc_close,proc_open,ini_alter,dl,show_source,curl_multi_exechellcmd, ini_restore,apache_get_modules,get_cfg_var,passthru, exec ,proc_get_status,fpassthru,c999_buff_prepare,c999_sess_put,c99_buff_prepare,c99_sess_put,proc_close,ini_alter,dl,symlink,link,proc_close,ini_alter,dl,symlink,link,mail MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/nmap/scripts/ |
Upload File : |
local shortport = require "shortport"
local socks = require "socks"
local stdnse = require "stdnse"
local table = require "table"
description = [[
Determines the supported authentication mechanisms of a remote SOCKS
proxy server. Starting with SOCKS version 5 socks servers may support
authentication. The script checks for the following authentication
types:
0 - No authentication
1 - GSSAPI
2 - Username and password
]]
---
-- @usage
-- nmap -p 1080 <ip> --script socks-auth-info
--
-- @output
-- PORT STATE SERVICE
-- 1080/tcp open socks
-- | socks-auth-info:
-- | No authentication
-- |_ Username and password
--
author = "Patrik Karlsson"
license = "Same as Nmap--See http://nmap.org/book/man-legal.html"
categories = {"discovery", "safe", "default"}
portrule = shortport.port_or_service({1080, 9050}, {"socks", "socks5", "tor-socks"})
action = function(host, port)
local helper = socks.Helper:new(host, port)
local auth_methods = {}
-- iterate over all authentication methods as the server only responds with
-- a single supported one if we send a list.
for _, method in pairs(socks.AuthMethod) do
local status, response = helper:connect( method )
if ( status ) then
table.insert(auth_methods, helper:authNameByNumber(response.method))
end
end
helper:close()
if ( 0 == #auth_methods ) then return end
return stdnse.format_output(true, auth_methods)
end