nmap扫描工具
1、NMap工具
主要功能:探测主机是否在线、扫描主机开放端口和嗅探网络服务,用于网络探测和安全扫描。
NMap支持很多扫描技术,例如:UDP、TCPconnect()、TCPSYN(半开扫描)、ftp代理(bounce攻击)、反向标志、ICMP、FIN、ACK扫描、SYN扫描和null扫描。
命令格式:Nmap [ 扫描类型 ] [ 通用选项 ] { 扫描目标说明 }
扫描类型:
-sT |
TCP connect()扫描,这是最基本的TCP扫描方式,用来建立一个TCP连接,如果成功则认为目标端口正在监听,否则认为目标端口没有监听程序。这种扫描很容易被检测到,在目标主机的日志中会记录大批的连接请求以及错误信息。 |
-sS |
TCP同步扫描(TCP SYN),只向目标发出SYN数据包,如果收到SYN/ACK响应包就认为目标端口正在监听,并立即断开连接;否则认为目标端口没有监听程序。所以这项技术通常称为半开扫描(half-open)。这项技术最大的好处是,很少有系统能够把这记入系统日志。不过,你需要root权限来定制SYN数据包。 |
-sF,-sX,-sN |
秘密FIN数据包扫描、圣诞树(Xmas Tree)、空(Null)扫描模式。这些扫描方式的理论依据是:关闭的端口需要对你的探测包回应RST包,而打开的端口必需忽略有问题的包,通过这种扫描,可间接用于检测防火墙的健壮性。 |
-sP |
ping扫描,用ping方式检查网络上哪些主机正在运行。当主机阻塞ICMP echo请求包是ping扫描是无效的。nmap在任何情况下都会进行ping扫描,只有目标主机处于运行状态,才会进行后续的扫描。 |
-sU |
UDP扫描,如果你想知道在某台主机上提供哪些UDP服务,可以使用此选项。 |
-sA |
ACK扫描,这项高级的扫描方法通常可以用来穿过防火墙。 |
-sW |
滑动窗口扫描,非常类似于ACK的扫描。 |
-sR |
RPC扫描,和其它不同的端口扫描方法结合使用。 |
-b |
FTP反弹攻击(bounce attack),连接到防火墙后面的一台FTP服务器做代理,接着进行端口扫描。 |
通用选项:
-n |
不做反向DNS解析,以加快扫描速度 |
-P0 |
在扫描之前,不ping主机;有些网络防火墙可能禁止ICMP请求包,使用这种扫描类型可以跳过ping测试 |
-PT |
扫描之前,使用TCP ping确定哪些主机正在运行。 |
-PS |
对于root用户,这个选项让nmap使用SYN包而不是ACK包来对目标主机进行扫描。 |
-PI |
设置这个选项,让nmap使用真正的ping(ICMP echo请求)来扫描目标主机是否正在运行。 |
-PB |
这是默认的ping扫描选项。它使用ACK(-PT)和ICMP(-PI)两种扫描类型并行扫描。如果防火墙能够过滤其中一种包,使用这种方法,你就能够穿过防火墙。 |
-O |
这个选项激活对TCP/IP指纹特征(fingerprinting)的扫描,获得远程主机的标志,也就是操作系统类型。 |
-I |
打开nmap的反向标志扫描功能。 |
-f |
使用碎片IP数据包发送SYN、FIN、XMAS、NULL。包增加包过滤、入侵检测系统的难度,使其无法知道你的企图。 |
-v |
强烈推荐使用这个选项,它会给出扫描过程中的详细信息。 |
-S <IP> |
在一些情况下,nmap可能无法确定你的源地址(nmap会告诉你)。在这种情况使用这个选项给出你的IP地址。 |
-g port |
设置扫描的源端口。一些天真的防火墙和包过滤器的规则集允许源端口为DNS(53)或者FTP-DATA(20)的包通过和实现连接。显然,如果攻击者把源端口修改为20或者53,就可以摧毁防火墙的防护。 |
-oN |
把扫描结果重定向到一个可读的文件logfilename中。 |
-oS |
扫描结果输出到标准输出。 |
-A |
打开操作系统探测和版本探测。 |
扫描目标:
目标地址 |
可以为IP地址,CIRD地址等。如192.168.1.2,222.247.54.5/24 |
-iL filename |
从filename文件中读取扫描的目标。 |
-iR |
让nmap自己随机挑选主机进行扫描。 |
-p |
端口,这个选项让你选择要进行扫描的端口号的范围。可使用逗号分隔多个端口,减号连接一个端口范围,在列表前指定T:表示TCP端口,U:表示UDP端口 |
-exclude |
排除指定主机。 |
-exclude file |
排除指定文件中的主机。 |
端口的三种状态:
Open:意味着目标主机能够在这个端口使用accept()系统调用接受连接。
filtered:表示防火墙、包过滤和其它的网络安全软件掩盖了这个端口,禁止nmap探测其是否打开。
unfiltered:表示这个端口关闭,并且没有防火墙/包过滤软件来隔离nmap的探测企图。
举例说明:
直接使用 nmap 192.168.0.111 即可扫描出该IP机器所有已开放端口和服务名称
1、探测指定网段是否有FTP服务的主机,不做DNS反向解析
nmap -sS –n –p 21192.168.0.0/24
2、探测指定服务器是否启有特定端口的服务
nmap –n –p T:21-25,80,110,3389–sS 192.168.0.1
3、使用TCP连接扫描探测指定服务器,即使无法ping通也仍然继续探测
4、nmap -sT –PO 192.168.0.1
5、探测指定服务器的操作系统类型
nmap –O –n 192.168.0.1
6、探测局域网段中各主机开启了哪些服务
nmap –sS 192.168.0.0/24
7、探测192.168.0.0和172.16.0.0/16网段中有哪些主机在运行
nmap –sP –n 192.168.0.0/24 172.16.0.0/16
8、快速扫描主机开放端口
nmap -F 192.168.0.1
nmap扫描工具的更多相关文章
- Nmap扫描工具实验报告
实验报告 实验内容 通过ping进行操作系统探测 利用Zenmap/Nmap进行TCP connet扫描.TCP SYN扫描和操作系统扫描 实验目的 了解扫描的一般步骤 熟练使用ping命令并能够进行 ...
- nmap 扫描工具
Nmap 7.30 ( https://nmap.org ) 使用方法: nmap [扫描类型(s)] [选项] {目标说明}目标说明:通过主机名称, IP 地址, 网段, 等等.协议: scanme ...
- Linux下安装nmap扫描工具
NMAP是一款流行的网络扫描和嗅探工具,被广泛应用在黑客领域做漏洞探测以及安全扫描,更多的nmap是一个好用的网络工具,在生产和开发中也经常用到,主要做端口开放性检测和局域网信息的查看收集等,不同Li ...
- Linux抓包与扫描工具
一.nmap扫描工具介绍: 1.安装nmap,如下: 2.检查目标主机所开启的TCP服务: 3.检查x.x.x.x/24网段内哪些主机开启了FTP.SSH服务 二.使用tcpdump分析 1.执行FT ...
- NMAP分布式扫描工具dnmap
NMAP分布式扫描工具dnmap NMAP是一款知名的网络扫描工具.它提供丰富和强大的网络扫描功能.但很多时候,需要渗透测试人员从多个终端发起扫描任务,以快速扫描大型网络,或规避IP限制等安全策略 ...
- 『安全工具』Nmap 强悍的端口扫描工具
作为时下流行的端口扫描工具,Nmap有因其扫描的隐密性有“端口扫描之王”之称 上图是黑客帝国(The Matrix)中崔妮蒂用Nmap入侵核发电站的能源管理系统 0x 01 Nmap介绍 Nmap是一 ...
- 网络扫描工具nmap
nmap一般就用来扫描主机是否在线(特别是扫描局域网内存活的机器).开放了哪些端口.其他的功能用的比较少,做渗透的人可能要了解的多些. 1.1 选项说明 nmap需要自行安装. shell> y ...
- NMAP网络扫描工具的安装与使用
简介 NMAP是一款流行的网络扫描和嗅探工具也是一个强大的端口扫描类安全测评工具,被广泛应用在黑客领域做漏洞探测以及安全扫描,更多的nmap是一个好用的网络工具,在生产和开发中也经常用到,主要做端口开 ...
- 基于nmap扫描结果的端口爆破工具:BrutesPray
大家搞内网或者C段渗透测试的时候可能遇到很多时候需要对大批的主机进行精确爆破,这时候BruteSpray就派上用场了. BruteSpray是一款基于nmap扫描输出的gnmap/XML文件.自动 ...
随机推荐
- Word中回车和网页换行替换
回车^p 换行^l 用编辑中的查找替换即可 查找^l,替换为^p (一)有建议说按Delete键一个一个将其删除,这是麻烦的,其实可用WORD的查找替换工具一次性替换成回车符.查找--点特殊字符--手 ...
- golang panic的捕获
panic发生时, 会导致进程挂掉.为了处理panic, 可以使用recover捕获,然后处理. 下面以下标引用越界问题为例进行说明. 正常情况下,代码中如果出现下标越界,会直接触发panic, 导致 ...
- js 取整
1.丢弃小数部分,保留整数部分 js:parseInt(7/2) 2.向上取整,有小数就整数部分加1 js: Math.ceil(7/2) 3,四舍五入. js: Math.round(7/2 ...
- 1、搭建HBase完全分布式集群
搭建完全分布式集群 HBase集群建立在hadoop集群基础之上,所以在搭建HBase集群之前需要把Hadoop集群搭建起来,并且要考虑二者的兼容性.现在就以5台机器为例,搭建一个简单的集群. 软件版 ...
- WPF Demo10 嵌套Winform、RadGridView、
<Window x:Class="控件Demo.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006 ...
- platform device和platform driver简述
首先我们在module_init中使用platform_driver_register来注册我们的驱动.一般来说platform_driver_register放在module_init的最后调用,因 ...
- 【Hibernate学习笔记-5.1】使用@Transient修饰不想持久保存的属性
作者:ssslinppp 1. 摘要 在默认情况下,持久化类的所有属性会自动映射到数据表的数据列.如果在实际应用中不想持久化保存某些属性,则可以考虑使用@Transient来修饰他们. ...
- SpringMVC中的重定向和转发的实现
1.请求转发和重定向的区别 请求重定向和请求转发都是web开发中资源跳转的方式. 请求转发是服务器内部的跳转 地址栏比发生变化 只有一个请求相应 可以通过request域对跳转目标的请求 请求重定向是 ...
- 求两点之间距离 C++
求两点之间距离(20 分) 定义一个Point类,有两个数据成员:x和y, 分别代表x坐标和y坐标,并有若干成员函数. 定义一个函数Distance(), 用于求两点之间的距离.输入格式: 输入有两行 ...
- 正则的使用及replace细讲
1.var reg=/./ 与 var reg=/\./的区别? .代表任意一个字符 \.而后者代表这个字符串中得有一个. 2.?的使用 如果单独的一个字符后面带? /\d?/ 代表1个或0个这个字符 ...