Lucene search
K

smbv2-enabled NSE Script

🗓️ 08 Nov 2009 21:31:06Reported by Ron BowesType 
nmap
 nmap
🔗 nmap.org👁 74 Views

Checks SMBv2 protocol support on serve

Code
local nmap = require "nmap"
local smb = require "smb"
local string = require "string"
local stdnse = require "stdnse"

description = [[
Checks whether or not a server is running the SMBv2 protocol.
]]
---
--@usage
-- nmap --script smbv2-enabled.nse -p445 <host>
-- sudo nmap -sU -sS --script smbv2-enabled.nse -p U:137,T:139 <host>
--
--@output
-- Host script results:
-- |_ smb-v2-enabled: Server supports SMBv2 protocol
--
-- Host script results:
-- |_ smb-v2-enabled: Server doesn't support SMBv2 protocol
--
-- @xmloutput
-- false

author = "Ron Bowes"
copyright = "Ron Bowes"
license = "Same as Nmap--See https://nmap.org/book/man-legal.html"
categories = {"default", "safe"}


hostrule = function(host)
  return smb.get_port(host) ~= nil
end

local function go(host)
  local status, smbstate, result
  local dialects = { "NT LM 0.12", "SMB 2.002", "SMB 2.???" }
  local overrides = {dialects=dialects}

  status, smbstate = smb.start(host)
  if(not(status)) then
    return false, "Couldn't start SMB session: " .. smbstate
  end

  status, result = smb.negotiate_protocol(smbstate, overrides)
  if(not(status)) then
    if(string.find(result, "SMBv2")) then
      return true, "Server supports SMBv2 protocol", true
    end
    return false, "Couldn't negotiate protocol: " .. result
  end

  return true, "Server doesn't support SMBv2 protocol", false
end

action = function(host)
  local status, result, flag = go(host)

  if(not(status)) then
    return stdnse.format_output(false, result)
  end

  return flag, result
end



Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

05 Nov 2015 20:41Current
0.2Low risk
Vulners AI Score0.2
74