信息收集

1简介

信息收集(Information Gathering),信息收集是指通过各种方式获取所需要的信息,在整个安全测试]环节中,信息搜集是整个测试过程中最为重要的一环,信息搜集可占据整个测试80%左右的工作量,同样的如果尽可能搜集更多的信息,对于后期的测试工作是非常有帮助的

在测试人员 进入一个内 网后,面对的是一片 “ 未知的区域 ”,所以 测试人员首先会对当前所 处的网络环境进行判断,通常的判断分为三种.

(1)我是谁?—— 对计算机的角色进行判断.

(2)我在哪?—— 对目前机器所处位置区域的判断。

(3)这是哪?—— 对目前机器所处网络环境的拓扑结构进行分析和判断。

2 工作组信息收集相关命令

命令1:ipconfig: 获取本地主机的IP地址,与子网

C:\>ipconfig
 
Windows IP 配置
以太网适配器 以太网:
 
   连接特定的 DNS 后缀 . . . . . . . :
   本地链接 IPv6 地址. . . . . . . . : fcc0::fbb0:8226:511e:bcc4%19
   IPv4 地址 . . . . . . . . . . . . : 192.168.1.2
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . : 192.168.1.1

命令2:net localgroup:查看域用户列表

C:\>net localgroup administrators
别名     administrators
注释     管理员对计算机/域有不受限制的完全访问权
-------------------------------------------------------------------------------
Administrator
zxhk

命令3:query user:可以查看当前在线用户

C:\Users\zxhk>query user
 用户名                会话名           ID  状态     空闲时间   登录时间
>zxhk                 console          2   运行中   3+17:48   2023-06-25 19:38

命令4:tasklist:查询 进程列表

C:\Users\zxhk>tasklist /v

命令5:netstat: 查询本机端口开放情况。

C:\>netstat -ano
 
活动连接
  协议  本地地址          外部地址        状态           PID
  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING       404
  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING       4
  TCP    0.0.0.0:902            0.0.0.0:0              LISTENING       4000
  TCP    0.0.0.0:912            0.0.0.0:0              LISTENING       4000
  TCP    0.0.0.0:5040           0.0.0.0:0              LISTENING       6364
  TCP    0.0.0.0:5357           0.0.0.0:0              LISTENING       4
  TCP    0.0.0.0:8082           0.0.0.0:0              LISTENING       1180
  TCP    0.0.0.0:49664          0.0.0.0:0              LISTENING       704
  TCP    0.0.0.0:49665          0.0.0.0:0              LISTENING       1432

命令6:systeminfo: 查询当前主机的详细信息,包括补丁信息

C:\>systeminfo
 
主机名:           DELL
OS 名称:          Microsoft Windows 10 企业版
OS 版本:          10.0.17763 暂缺 Build 17763
OS 制造商:        Microsoft Corporation
OS 配置:          独立工作站
OS 构件类型:      Multiprocessor Free
注册的所有人:     LyShark
注册的组织:       暂缺
产品 ID:          00425-00000-00002-AA474
初始安装日期:     2019/8/21, 19:53:20
系统启动时间:     2019/8/24, 7:31:16
系统制造商:       Dell Inc.
系统型号:         Inspiron 
系统类型:         x64-based PC
处理器:           安装了 1 个处理器。

扩展:过滤出系统版本和信息

C:\Users\zxhk>systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本"
OS 名称:          Microsoft Windows 10 企业版
OS 版本:          10.0.19045 暂缺 Build 19045

命令7:wmic product:查看 安装的软件及版本、路径.( 可以查看这些 软件有没有漏洞,然后再进行测试. )

C:\Users\zxhk>wmic product get name,version
Name                                                            Version
Microsoft Visual C++ 2019 X86 Additional Runtime - 14.28.29913  14.28.29913
Python Launcher                                                 3.10.7644.0
Microsoft Visual C++ 2010  x64 Redistributable - 10.0.40219     10.0.40219
Microsoft Visual C++ 2005 Redistributable (x64)                 8.0.61186
Microsoft Visual C++ 2013 x86 Minimum Runtime - 12.0.40664      12.0.40664
Microsoft Visual C++ 2010  x86 Redistributable - 10.0.40219     10.0.40219
Microsoft Visual C++ 2019 X64 Additional Runtime - 14.28.29913  14.28.29913

命令8:wmic share: 查看共享

C:\>wmic share get name,path,status
Name    Path        Status
ADMIN$  C:\Windows  OK
C$      C:\         OK
D$      D:\         OK
E$      E:\         OK
IPC$                OK

命令9:whoami: 获取域的SID,把这个作为访问令牌

  • 获取域 SID.(SID可以理解为域的身份认证.(每一个都是唯一的))
C:\>whoami
 
用户名
dell\zxhk

C:\>whoami /all
 
用户名       SID
============ =============================================
dell\zxhk S-1-5-21-2451337939-1222466721-1234564-1341

命令10:net user: 查询本机的用户信息

C:\>net accounts
强制用户在时间到期之后多久必须注销?:       从不
密码最短使用期限(天):                     0
密码最长使用期限(天):                     42
密码长度最小值:                           0
保持的密码历史记录长度:                   None
锁定阈值:                                从不
锁定持续时间(分):                        30
锁定观测窗口(分):                        30
计算机角色:                              WORK
命令成功完成。
 
C:\>net user
-----------------------------------------------------------
Administrator            Guest            zxhk
命令成功完成。

命令11:net user:查询 指定账户的详细信息

net user XXX /domain // “ XXX ” 是写入账号名.

命令12:netsh wlan: 查询本机无线网的连接密码。

C:\>netsh wlan show profiles
C:\>netsh wlan show profile name="lyshark" key=clear
 
接口 WLAN 上的配置文件 瑞发百货:
=======================================================================
 
已应用: 所有用户配置文件
 
配置文件信息
-------------------
    版本                   : 1
    类型                   : 无线局域网
    名称                   : lyshark
    控制选项               :
        连接模式           : 手动连接
        网络广播           : 只在网络广播时连接
        AutoSwitch         : 请勿切换到其他网络
        MAC 随机化: 禁用
 
安全设置
-----------------
    身份验证         : WPA2 - 个人
    密码                 : CCMP
    身份验证         : WPA2 - 个人
    密码                 : GCMP
    安全密钥               : 存在
    关键内容            : 1234567890     # 此处为密码

命令13:wmic qfe: 查询本机的补丁情况,并生成patch.html 文件

命令14:route: 查询路由记录。

C:\>route print
===========================================================================
IPv4 路由表
===========================================================================
活动路由:
网络目标          网络掩码          网关          接口            跃点数
0.0.0.0          0.0.0.0          192.168.1.1   192.168.1.2     35
127.0.0.0        255.0.0.0        在链路上       127.0.0.1       331
127.0.0.1        255.255.255.255  在链路上       127.0.0.1       331
127.255.255.255  255.255.255.255  在链路上       127.0.0.1       331
192.168.1.0      255.255.255.0    在链路上       192.168.1.2     291
192.168.1.2      255.255.255.255  在链路上       192.168.1.2     291

命令15:arp: 查询arp记录

C:\>arp -a
 
接口: 192.168.222.1 --- 0xd
  Internet 地址         物理地址              类型
  192.168.222.254       00-52-56-f3-a5-99     动态
  192.168.222.255       ff-ff-ff-ff-ff-ff     静态
  224.0.0.2             01-20-5e-00-60-02     静态
  224.0.0.22            01-30-5e-04-00-16     静态

命令16:net命令合集

net user /domain                        查看域用户
net view /domain                        查询域列表
net group /domain                       查看域里面的工作组
net group "domain admins" /domain       查询域管理员用户组 
net localgroup administrators /domain   查询登录本机的域管理员
net group "domain controllers" /domain  查看域控制器
net time /domain                        判断主域,主域服务器都做时间服务器
net config workstation                  查询当前登录域
net share                               查看共享文件路径
net view                                查询同一域内机器列表 
net view \\ip                           查询某IP共享
net view /domain:test.com               查看test域中计算机列表

命令17:查看防火墙的配置

C:\Users\zxhk>netsh firewall show config

域 配置文件配置:
-------------------------------------------------------------------
操作模式                          = 禁用
例外模式                          = 启用
多播/广播响应模式                  = 启用
通知模式                          = 启用

域 配置文件的服务配置文件:
模式     自定义      名称
-------------------------------------------------------------------
启用       否           远程桌面

域 配置文件的允许的程序配置:
模式     流量方向             名称/程序
-------------------------------------------------------------------
启用       入站       360手机助手-连接模块 / C:\soft\360safe\mobilemgr\360MobileSrv.exe
启用       入站       Sogou Pinyin Service / C:\Users\Public\SogouInput\USBDT\OctopusDownloader.exe
启用       入站       Sogou Pinyin Service / C:\Program Files (x86)\SogouInput\13.5.0.7770\SGWebRender.exe
启用       入站       Sogou Pinyin Service / C:\Program Files (x86)\SogouInput\13.5.0

命令18:关闭防火墙.

netsh firewall set opmode disable                  //Windows Server 2003 系统及之前版本
netsh advfirewall set allprofiles state off        //Windows Server 2003 之后系统版本

3 域内信息收集

3.1 判断是否在域中

判断方法其实很多,最简单的一个方法就是执行ipconfig命令,如果看到指定的信息,就说明在域中

3.2 域信息收集相关命令

命令1:查看域中的主机列表

net view /domain:XXX                //"XXX" 是输入域名.

命令2:查询 域内所有用户组列表

net group /domain

命令3:查询 所有域成员计算机列表

net group "domain computers" /domain

命令4:获取 域密码信息

net accounts /domain

命令5:获取 域信任信息.

nltest /domain_trusts

命令6:查看 域内控制器的机器名.

nltest /DCLIST:XXX        //"XXX"是输入域名.

命令7:查看 域控制器的 主机名 和 IP地址.

Nslookup -type=SRV _ldap._tcp

命令9:查询 域内的用户.

net user /domain

命令10:查询 域内置本地管理员组用户.

net localgroup administrators /domain

命令12:查询 域管理员用户.

net group "domain admins" /domain

命令13:查询 管理员用户组.

net group "Enterprise Admins" /domain

命令14:探测 域内存活主机

利用 Nbtscan 探测内网 存活主机.
nbtscan.exe IP

命令15: 查看最后登录时间

net user administrator  // 查看最后登录时间

3 Nmap探测网络

3.1 nmap简介

Nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端,确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统,正如大多数被用于网络安全的工具,Nmap也是不少黑客及骇客爱用的工具

3.2 nmap应用举例

例1:主机发现: 通过使用 -sn 参数发现内网中存活的主机,也可以使用 -sP 选项。

root@kali:~# nmap -sn 192.168.1.0/24 | grep "Nmap scan" | awk '{print $5}'
192.168.1.1
192.168.1.2
192.168.1.4
192.168.1.5
192.168.1.10
192.168.1.40

例2:端口扫描: 扫描主机 192.168.1.10 的前1-1024端口是否开放

root@kali:~# nmap -sS -p1-1024 192.168.1.10 | grep "open"
80/tcp  open  http
100/tcp open  newacct
135/tcp open  msrpc
139/tcp open  netbios-ssn
443/tcp open  https
902/tcp open  iss-realsecure
912/tcp open  apex-mesh

例3:系统识别: 检测指定主机安装了什么操作系统,通过指纹识别

root@kali:~# nmap -O 192.168.1.2 | grep "Running"
Running (JUST GUESSING): FreeBSD 6.X|10.X (89%), AVtech embedded (89%)
 
root@kali:~# nmap -O 192.168.1.3 | grep "Running"
Running: Google Android 5.X|6.X, Linux 3.X
 
root@kali:~# nmap -O 192.168.1.10 | grep "Running"
Running: Microsoft Windows XP

例4:服务识别: 识别目标主机常用端口开放服务的具体版本,仅供参考

root@kali:~# nmap -sV 192.168.1.10 | grep "open"
 
80/tcp   open  http        Apache httpd 2.4.18 ((Win32) OpenSSL/1.0.2e mod_fcgid/2.3.9)
135/tcp  open  msrpc       Microsoft Windows RPC
139/tcp  open  netbios-ssn Microsoft Windows netbios-ssn
443/tcp  open  ssl/https?
902/tcp  open  nagios-nsca Nagios NSCA
912/tcp  open  vmware-auth VMware Authentication Daemon 1.0 (Uses VNC, SOAP)
1433/tcp open  ms-sql-s    Microsoft SQL Server 2000 8.00.2039; SP4
2869/tcp open  http        Microsoft HTTPAPI httpd 1.0 (SSDP/UPnP)
3306/tcp open  mysql       MySQL (unauthorized)

例5:UDP端口扫描: 指定 -sU 扫描UDP,-p指定扫描端口

root@kali:~# nmap -sU -T5 -sV --max-retries 1 -p 139 192.168.1.10
 
Starting Nmap 7.70 ( https://nmap.org ) at 2019-08-24 19:32 CST
Nmap scan report for 192.168.1.10
Host is up (0.00022s latency).
 
PORT    STATE  SERVICE     VERSION
139/udp closed netbios-ssn
MAC Address: ZZ:9C:PP:3A:11 (Elitegroup Computer Systems)
 
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 0.91 seconds

例6:通过NetBios发现主机: 使用script指定一个脚本,-p指定端口

root@kali:~# nmap -sU --script nbstat.nse -p137 192.168.1.10 -T4
Starting Nmap 7.70 ( https://nmap.org ) at 2019-08-24 19:40 CST
Nmap scan report for 192.168.1.10
Host is up (0.00022s latency).
 
PORT    STATE SERVICE
137/udp open  netbios-ns
 
Host script results:
|_nbstat: NetBIOS name: WANG, NetBIOS user: <unknown>, NetBIOS (Elitegroup Computer Systems)
Nmap done: 1 IP address (1 host up) scanned in 0.76 seconds

例7:通过ARP发现主机: ARP 协议发现内网存活主机

root@kali:~# nmap -sn -PR 192.168.1.0/24
Starting Nmap 7.70 ( https://nmap.org ) at 2019-08-24 19:41 CST
Nmap scan report for 192.168.1.1
Host is up (0.00039s latency).
Nmap scan report for 192.168.1.2
Host is up (0.00020s latency).
Nmap scan report for 192.168.1.10
Host is up (0.00010s latency).
Nmap scan report for 192.168.1.40
Host is up.
Nmap done: 256 IP addresses (4 hosts up) scanned in 2.06 seconds

例8:broadcast脚本: 在局域网内探查更多服务开启状况,如dhcp/dns/sqlserver等服务

root@kali:~# nmap --script=broadcast 192.168.1.10
Starting Nmap 7.70 ( https://nmap.org ) at 2019-08-24 19:56 CST
Pre-scan script results:
| broadcast-dhcp-discover: 
|   Response 1 of 1: 
|     IP Offered: 192.168.1.7
|     Server Identifier: 192.168.1.1
|     Subnet Mask: 255.255.255.0
|     Router: 192.168.1.1
|_    Domain Name Server: 192.168.1.1
...More...

例9:vuln检测漏洞: 用于检测系统常见漏洞,并有相应的解释

root@kali:~# nmap --script=vuln 192.168.1.10
 
Starting Nmap 7.70 ( https://nmap.org ) at 2019-08-24 20:00 CST
Host script results:
| smb-vuln-cve2009-3103: 
|   VULNERABLE:
|   SMBv2 exploit (CVE-2009-3103, Microsoft Security Advisory 975497)
|     State: VULNERABLE
|     IDs:  CVE:CVE-2009-3103
|           Array index error in the SMBv2 protocol implementation in srv2.sys in Microsoft Windows Vista Gold, SP1, and SP2,
|           Windows Server 2008 Gold and SP2, and Windows 7 RC allows remote attackers to execute arbitrary code or cause a
|           denial of service (system crash) via an & (ampersand) character in a Process ID High header field in a NEGOTIATE
|           PROTOCOL REQUEST packet, which triggers an attempted dereference of an out-of-bounds memory location,
|           aka "SMBv2 Negotiation Vulnerability."
|           
|     Disclosure date: 2009-09-08
|     References:
|       https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-3103
|_      http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-3103

例10:searchsploit: 通过本地漏洞数据库,查询漏洞的详细描述和使用方法。

root@kali:~# searchsploit ms17-010
-------------------------------------------------------------------------- ----------------------------------------
 Exploit Title                                                                               |  Path
                                                                                             | (/usr/share/exploitdb/)
------------------------------------------------------------------------- ----------------------------------------
Microsoft Windows - 'EternalRomance'/'EternalSynergy'/'EternalChampion' SMB Remote Code Exec | exploits/windows/remote/43970.rb
Microsoft Windows - SMB Remote Code Execution Scanner (MS17-010) (Metasploit)                | exploits/windows/dos/41891.rb

例11:在线主机探测: 探测目标主机是否在线,用于收集网络主机或内部网段在线情况.

# ----------------------------------------------------------------------------------------
nmap -F 192.168.1.0/24             # 执行快速扫描
nmap -p T:80,8080,22 192.168.1.20  # 扫描TCP端口
nmap -p U:80,8080,22 192.168.1.20  # 扫描UDP端口
 
nmap -sV 192.168.1.20         # 扫描并查询主机服务号
nmap -sP 192.168.1.0/24       # 批量ping探测,探测主机存活数
nmap -P0 192.168.1.1          # 跳过ping探测,加快扫描速度(有些主机屏蔽了ping,这里就要跳过)
nmap -sn 192.168.1.0/24       # 扫描网段内的在线主机
nmap -sP 27.201.193.100-200   # 指定探测的网段,看是否在线.
nmap -sL 192.168.1.0/24       # 计算网段主机数,不发送任何报文到目标主机
nmap -PR 192.168.1.0/24       # 通过ARP协议探测网络
 
nmap --packet-trace 192.168.1.20            # 跟踪报文(tracert) 跟踪发送和接收报文
nmap -sP --scan-delay 1 192.168.1.0/24      # 探测主机在线情况,设置超时时间为1秒
nmap -sP --max-scan-delay 1 192.168.1.0/24  # 探测主机在线情况,最多等待1秒
nmap -sP --max-retries 1 192.168.1.0/24     # 探测主机在线情况,数据包最多重传1次

例12:开放端口与协议探测: 探测方式有两种TCP开放扫描,SYN半开放扫描,后者更加的安全

nmap -sS 192.168.1.10       # TCP SYN 半开放扫描(隐蔽性好)
nmap -sT 192.168.1.10       # TCP 开放扫描
nmap -sU 192.168.1.10       # UDP 服务扫描
nmap -sA 192.168.1.10       # TCP ACK扫描
nmap -sN 192.168.1.10       # 空扫描: 不设置任何标志位(tcp 标志头是0)
nmap -sF 192.168.1.10       # 只设置 TCP FIN 标志位
nmap -sX 192.168.1.10       # Xmas扫描 设置 FIN,PSH,和 URG 标志位
nmap -sO 192.168.1.10       # IP协议扫描,可以确定目标机支持哪些IP协议
 
nmap -p T:0-1000,U:100-200 192.168.1.10     # 探测目标端口,T=TCP,U=UDP协议
nmap -p smtp,http,https 192.168.1.10        # 根据服务名称进行探测

例13:探测目标主机版本: 用于扫描目标主机服务的具体版本号,扫描探测目标主机操作系统.

nmap -sV 192.168.1.10       # 探测目标主机服务详细情况
nmap -O 192.168.1.10        # 识别目标主机操作系统版本
nmap -A 192.168.1.10        # 输出详细扫描信息

例14:扫描时排除主机: 扫描主机时,我们需要排除掉指定主机,此时就需要使用exclude来排除

nmap -PR 192.168.1.0/24 --exclude 192.168.1.1,192.168.1.9     # 扫描时排除单个主机
nmap -PR 192.168.1.0/24 --exclude 192.168.1.1-10              # 扫描时排除连续主机
nmap -PR 192.168.1.0/24 --excludefile lyshark.log             # 扫描时排除文件里的主机,每行一个
nmap -PR -iL lyshark.log                                      # 从一个文件中导入IP,并进行扫描

例15:规避IDS检测: 通过设置时间模板(<Paranoid=0|Sneaky=1)的方式,来规避IDS的检测.

nmap -T0 192.168.1.10
nmap -T1 192.168.1.10
nmap -f 192.168.1.10                # 自动分段
nmap --mtu 4/8/16 192.168.1.10      # 自定义分段,必须是4的倍数
nmap -D 192.168.1.1 192.168.1.10    # 使用诱饵扫描
nmap -sS -P0 -sV -O -v 27.200.22.0/24
nmap -sS -P0 -A -T5 -version-intensity 9  192.168.1.110

例16:输出漂亮的报表: 通过相关选项,可以让Nmap输出指定的文件格式,通过模板转换为HTML文件.

nmap -PR -oX lyshark.xml 192.168.1.0/24      # 以XML格式输出扫描结果
nmap -PR -oN lyshark.log 192.168.1.0/24      # 以标准格式输出扫描结果
nmap -PR -oG lyshark.log 192.168.1.0/24      # 以Grep可识别的格式输出
 
# --------------------------------------------------------------------
# 输出漂亮的html报告
nmap -PR -sV -oX lyshark.xml 192.168.1.0/24
wget https://www.blib.cn/cdn/nmap/mode.xsl
xsltproc -o index.html mode.xsl lyshark.xml
 
# --------------------------------------------------------------------
# 输出成.xls结尾的报告
wget https://www.blib.cn/cdn/nmap/converter.py
pip install python-libnmap XlsxWriter
nmap-converter.py -o lyshark.xls lyshark.xml

例17:基本扫描脚本:

nmap --script=vuln 192.168.1.20                                    # 检测常见漏洞
nmap -p 80 --script=http-enum.nse 192.168.1.20                     # 扫描WEB敏感目录
nmap -p 80 --script=http-robots.txt www.baidu.com                  # 发现WEB中Robots文件
nmap -p 443 --script http-date.nse www.baidu.com                   # 检查WEB服务器当前时间
nmap -n --script=broadcast 127.0.0.1                               # 内网服务探测(收集局域网数据)
nmap --script=broadcast-netbios-master-browser 192.168.1.1         # 发现内网网关
nmap --script http-slowloris --max-parallelism 1000 192.168.1.20   # 执行DOS攻击
nmap --script=whois www.baidu.com                                  # 简单的Whois查询
nmap --script=dns-brute.nse baidu.com                              # 暴力破解DNS记录

例18:第三方漏洞扫描脚本: 首先下载zip压缩包,然后直接解压到script目录下,即可使用

wget https://www.blib.cn/upload/vulscan.zip
 
#使用默认的库进行漏洞扫描
nmap -sV --script=vulscan/vulscan.nse --script-args vulscandb=cve.csv 192.168.1.10
 
#使用特定的库cve.csv扫描
nmap -sV --script=vulscan/vulscan.nse --script-args vulscandb=exploitdb.csv 192.168.1.10

例19:内网VNC扫描: 通过使用脚本,检查VNC版本等一些敏感信息.

[root@localhost ~]# nmap --script=realvnc-auth-bypass 127.0.0.1                                            #检查VNC版本
[root@localhost ~]# nmap --script=vnc-auth 127.0.0.1                                                       #检查VNC认证方式
[root@localhost ~]# nmap --script=vnc-info 127.0.0.1                                                       #获取VNC信息
[root@localhost ~]# nmap --script=vnc-brute.nse --script-args=userdb=/user.txt,passdb=/pass.txt 127.0.0.1  #暴力破解VNC密码

例20:内网SMB扫描: 检查局域网中的Samba服务器,以及对服务器的暴力破解.

[root@localhost ~]# nmap --script=smb-brute.nse 127.0.0.1                                                            #简单尝试破解SMB服务
[root@localhost ~]# nmap --script=smb-check-vulns.nse --script-args=unsafe=1 127.0.0.1                               #SMB已知几个严重漏
[root@localhost ~]# nmap --script=smb-brute.nse --script-args=userdb=/user.txt,passdb=/pass.txt 127.0.0.1            #通过传递字段文件,进行暴力破解
[root@localhost ~]# nmap -p445 -n --script=smb-psexec --script-args=smbuser=admin,smbpass=1233 127.0.0.1             #查询主机一些敏感信息:nmap_service
[root@localhost ~]# nmap -n -p445 --script=smb-enum-sessions.nse --script-args=smbuser=admin,smbpass=1233 127.0.0.1  #查看会话
[root@localhost ~]# nmap -n -p445 --script=smb-os-discovery.nse --script-args=smbuser=admin,smbpass=1233 127.0.0.1   #查看系统信息

例21:MSSQL扫描: 检查局域网中的SQL Server服务器,以及对服务器的暴力破解.

[root@localhost ~]# nmap -p1433 --script=ms-sql-brute --script-args=userdb=/var/passwd,passdb=/var/passwd 127.0.0.1  #暴力破解MSSQL密码
[root@localhost ~]# nmap -p 1433 --script ms-sql-dump-hashes.nse --script-args mssql.username=sa,mssql.password=sa 127.0.0.1   #dumphash值
[root@localhost ~]# nmap -p 1433 --script ms-sql-xp-cmdshell --script-args mssql.username=sa,mssql.password=sa,ms-sql-xp-cmdshell.cmd="net user" 192.168.137.4 xp_cmdshell      #执行命令

例22:MYSQL扫描: 检查局域网中的MySQL服务器,以及对服务器的暴力破解.

root@localhost ~]# nmap -p3306 --script=mysql-empty-password.nse 127.0.0.1                                             #扫描root空口令
[root@localhost ~]# nmap -p3306 --script=mysql-users.nse --script-args=mysqluser=root 127.0.0.1                         #列出所有用户
[root@localhost ~]# nmap -p3306 --script=mysql-brute.nse --script-args=userdb=/var/passwd,passdb=/var/passwd 127.0.0.1  #暴力破解MYSQL口令

例23:Oracle扫描: 检查局域网中的Oracle服务器,以及对服务器的暴力破解.

[root@localhost ~]# nmap --script=oracle-sid-brute -p 1521-1560 127.0.0.1    #oracle sid扫描
[root@localhost ~]# nmap --script oracle-brute -p 1521 --script-args oracle-brute.sid=ORCL,userdb=/var/passwd,passdb=/var/passwd 127.0.0.1     #oracle弱口令破解

例24:爆破其他一些服务:

nmap -p 23 --script telnet-brute --script-args userdb=myusers.lst,passdb=.mypwds.lst,telnet-brute.timeout=8s 192.168.1.103
nmap --script=broadcast-netbios-master-browser 192.168.137.4   发现网关
nmap -p 873 --script rsync-brute --script-args 'rsync-brute.module=www' 192.168.137.4  破解rsync
nmap --script informix-brute -p 9088 192.168.137.4    informix数据库破解
nmap -p 5432 --script pgsql-brute 192.168.137.4       pgsql破解
nmap -sU --script snmp-brute 192.168.137.4            snmp破解
nmap -sV --script=telnet-brute 192.168.137.4          telnet破解