Nmap一些参数的具体作用
目标说明
1 |
-iL <inputfilename> 读取文档 |
主机发现
1 |
-sL 列表扫描 |
端口扫描基础
端口状态
| 名称 | 状态 |
|---|---|
| open | 开放 |
| closed | 关闭 |
| filtered | 被过滤的 |
| unfiltered | 未被过滤的 |
| open or filtered | 开放或被过滤的 |
| closed or filtered | 关闭或被过滤的 |
端口扫描技术
-sS
TCP SYN扫描,半开放扫描,需要root权限
-sT
TCP Connect扫描,用户没有权限发送原始报文或扫描IPv6时,Nmap默认使用该扫描方式。Nmap调用connect()对目标端口建立连接,这种方式会花费更长的时间、会在目标机留下连接记录。
-sU
UDP扫描,可以和TCP扫描同时使用检查两种协议。
扫描比较慢,Linux 2.4.20内核限制一秒钟只发送一条目标不可到达消息。加速UDP扫描,可以并发扫描更多的主机,先只对主要端口进行快速扫描,从防火墙后面扫描,使用--host-timeout跳过慢速的主机。
-sN
TCP Null 扫描
不设置任何标志位(tcp标志头是0)
-sF
TCP FIN 扫描
只设置TCP FIN标志位
-sX
Xmas 扫描
设置FIN,PSH,URG标志位,就像点亮圣诞树上所有的灯一样
-sN,-sF,-sX都基于TCP RFC来区分open和closed端口。IDS可以发现这三种方式,而且并不是所有系统都严格遵循RFC 793,例如Microsoft Windows,Cisco,BSDI,IBM OS/400,不过Unix系统都能工作。这三种模式无法区分open还是filtered
-sA
TCP ACK扫描
不能区分open和open|filtered端口。用于发现防火墙规则,确定它们是有状态还是无状态,哪些端口是被过滤掉的。当扫描未被过滤的系统时,open(开放的)和closed(关闭的) 端口都会返回RST报文。Nmap把它们标记为 unfiltered(未被过滤的),意思是 ACK报文不能到达,但至于它们是open(开放的)或者 closed(关闭的) 无法确定。不响应的端口或者发送特定的ICMP错误消息(类型3,代号1,2,3,9,10, 或者13)的端口,标记为 filtered(被过滤的)
-sW
TCP窗口扫描
TCP窗口值为整数,表示端口开启,TCP窗口值为0表示端口关闭
-sM
Mainmon扫描
和-sN,-sF,-sX方式完全一样,除了探测报文是FIN/ACK
–scanflags
定制的TCP扫描--scanflags选项可以指定任意TCP标志位来设计扫描。
1 |
--scanflags URGACKPSHRTSSYNFIN |
-sI
TCP端口盲扫描,没有报文从真实的IP地址发送到目标
1 |
-sI <zombie host[:probeport]> |
默认端口80
可以尝试使用可能被信任的zombies扫描目标
端口说明和扫描顺序
默认情况下,Nmap用指定的协议对端口1-1024以及nmap-services文件中列出的更高的端口进行扫描
-p
只扫描指定的端口
1 |
-p <port ranges> |
-F
快速,有限的端口扫描
只扫描nmap-services文件中的端口
-r
不要按随机顺序扫描端口
Nmap默认按随机顺序扫描端口,使用-r来顺序端口扫描
服务和版本探测
-sV
版本探测
也可使用-A同时打开操作系统探测和版本探测
–allports
不为版本探测排除任何端口
--version-intensity
设置 版本扫描强度
1 |
--version-intensity <intensity> |
强度:1-9 默认为7
数值越高,服务越有可能被正确识别,高强度扫描花费更多的时间。
--version-light
打开轻量级模式,是--version-intensity 2的别名
--version-all
--version-intensity 9的别名
--version-trace
跟踪版本扫描活动
Nmap打印出详细的关于正在进行的扫描的调试信息
-sR
RPC扫描
可以与许多端口扫描方法联合使用,对所有被发现开放的TCP/UDP端口执行SunRPC程序NULL命令,来确定他们是否有RPC端口并确定程序和版本号。
操作系统探测
--O
启动操作系统检测
也可以使用-A来同时启动操作系统检测和版本检测
--osscan-limit
针对指定的目标进行操作系统检测
--osscan-guess
--fuzzy
推测操作系统检测结果
时间和性能
防火墙/IDS躲避和哄骗
-f
报文分段
--mtu
使用指定的MTU
-f和-mtu都是将数据包分段的参数,-f使用一次是将包分成8字节或更小,使用两次是将包分为16字节的分段。使用-mtu可以自定义偏移的大小,偏移量必须是8的倍数。一些网络会禁止分段包进入网络
-D
使用诱饵隐蔽扫描
1 |
-D <decoy1 [,decoy2] [,ME],...> |
为使诱饵扫描起作用,需要使远程主机认为是诱饵在扫描目标网络。使用逗号分隔每个诱饵主机,也可用真实IP作为诱饵,这时可使用 ME选项说明。如果在第6个位置或更后的位置使用ME选项,一些常用端口扫描检测器(如Solar Designer’s excellent scanlogd)就不会报告 这个真实IP。如果不使用ME选项,Nmap将真实IP放在一个随机的位置
-S
源地址哄骗
1 |
-S <IP_Address> |
-e
使用指定的网卡
1 |
-e <interface> |
源端口哄骗
1 |
--source-port <portnumber> |
MAC地址哄骗
1 |
--spoof-mac <mac address,prefix,or vendor name> |
使用字符串"0",Nmap会选择一个完全随机的MAC地址。
--data-length
发送报文时,附加随机数据
1 |
--data-length <number> |
--ttl
设置IPV4报文的time-to-live域
1 |
--ttl <value> |
--randomize-hosts
对目标主机的顺序随机排列
输出
-oN
标准输出
1 |
-oN <filename> |
-oX
XML输出
1 |
-oX <filename> |
-oG
Grep输出
1 |
-oG <filename> |
-oA
输出至所有格式
1 |
-oA <basename> |
-v
提高输出信息的详细度
-d
提高或设置调试级别
1 |
-d [level] |
--packet-trace
跟踪发送和接收的报文
要求Nmap打印发送和接收的每个报文摘要。为了避免输出过多的行,可以限制扫描的端口数,如-p 20-30,如果只需进行版本检测,使用--version-trace
--iflist
列举接口和路由
--append-output
在输出文件中添加
--resume
继续中断的扫描
1 |
--resume <filename> |
--stylesheet
设置XSL样式表,转换XML输出
--no-stylesheet
忽略XML声明的XSL样式表
其他选项
-6
启用IPv6扫描
-A
操作系统检测和版本扫描
打印版本信息
1 |
-V |
帮助信息
1 |
-h |
Nmap一些参数的具体作用的更多相关文章
- nn.ConvTranspose2d的参数output_padding的作用
参考:https://blog.csdn.net/qq_41368247/article/details/86626446 使用前提:stride > 1 补充:same卷积操作 是通过padd ...
- nmap常用参数详解
nmap常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 借用英雄联盟的一个英雄赵信的一句话:“即使敌众我寡,末将亦能万军丛中取敌将首级!”.三国关羽,万军丛中斩了颜良, ...
- python中特殊参数self的作用
特殊参数self的作用:self会接收实例化过程中传入的数据,当实例对象创建后,实例便会代替 self,在代码中运行. self代表的是类的实例本身,方便数据的流转.对此,我们需要记住两点: 第一点: ...
- nmap所有参数详解
QQ:1258496116 端口:80http 443https 53dns 25smtp 22ssh 23telnet20.21ftp 110pop3 119nntp 143imap 179bgp ...
- MessageBox函数第一个参数hwnd的作用
MessageBox 函数用于创建.显示并操作一个消息对话框.该对话框包含由调用程序定义的信息和标题,以及预先定义的图标和按钮. 这个方法的第一个参数hWnd,代表消息框拥有的窗口.这个参数到底有什么 ...
- mysql中参数--init-file的作用是什么呢?
需求描述: 今天在修改测试环境mysql数据库中root用户密码的时候,用到了--init-file参数, 所以,就在这里说下该参数的作用. 概念解释: 参数:--init-file=file_nam ...
- Nmap扫描参数解析
Nmap是一款开源免费的网络发现(Network Discovery)和安全审计(Security Auditing)工具.软件名字Nmap是Network Mapper的简称.Nmap最初是由Fyo ...
- moviepy音视频剪辑:视频剪辑基类VideoClip的__init__构造方法参数has_constant_size的作用
☞ ░ 前往老猿Python博文目录 ░ moviepy音视频剪辑模块的视频剪辑基类VideoClip构造方法: __init__(self, make_frame=None, ismask=Fals ...
- nmap使用/参数,及绕过防火墙
nmap是什么? 它是一种一个很强大的扫描工具,端口,版本号,统统都可以给你扫出来 我的IP网段:192.168.1.0 咱们先找一个主机随便玩玩把,反正没有害处,最多被防火墙拦截了 nmap -sP ...
随机推荐
- node.js http-server 搭建本地服务器
使用vue-cli创建的项目,能够实现浏览器中自动刷新,实时查看项目效果,其中的原理在于,webpack在本地启动了一个本地服务器,将本机当作一台服务器: 打包后的文件是一个html静态页面,在本地文 ...
- Python之可变参数,*参数,**参数,以及传入*参数,进行解包
1.定义了一个需要两个参数的函数 def print_str(first, second): print first print second if __name__ == "__main_ ...
- socket编程(二)
TCP下粘包问题 两种情况下会发生粘包. 1.发送端需要等缓冲区满才发送出去,造成粘包(发送数据时间间隔很短,数据了很小,会合到一起,产生粘包) 发送方:AB #其实放在缓存里没发送 发送方:B #其 ...
- 代理工具WebScarab安装(转载)
原文地址:https://blog.csdn.net/shiyuqing1207/article/details/46428443 2015年06月09日 16:31:52 shiyuqing1207 ...
- Spring初解
1,关于spring容器: spring容器是Spring的核心,该 容器负责管理spring中的java组件, ApplicationContext ctx = new ClassPathXmlA ...
- [C#] - 从 HTML 代码中 转换 / 提取 可读文字(PlainText)的方法
背景 在做网页数据分析的时候,我们关注的部分是内容,可以过滤掉HTML标签.Javascript.CSS等代码. 目标输入 <b>Hello World.</b><br/ ...
- (一)SpringBoot Demo之 Hello World
文章目录 最终效果 pom文件编写 编写资源类 编写控制器 运行项目 原文 : https://spring.io/guides/gs/rest-service/ 类型:官网入门指南 要求:JDK1. ...
- 开始使用 Manjaro(添加源+字体渲染去模糊+软件安装+优化配置+常见错误)(30)
1. 添加 archlinux 镜像源 1. 步骤一 向 /etc/pacman.d/mirrorlist 中添加国内镜像地址 1.1 方法1:自动添加 1. 输入如下命令查看国内镜像源,并按质量排序 ...
- 10分钟搭建一个小型网页(python django)(hello world!)
10分钟搭建一个小型网页(python django)(hello world!) 1.安装django pip install django 安装成功后,在Scripts目录下存在django-ad ...
- Linux大道——博客目录
Linux基础 第一章 计算机基础 计算机基础 网络基础 第二章 Linux基础