在前面十五篇博客中,几乎每一篇都有介绍Nmap,这里系统地介绍下每个参数:

注意:区分每个参数的大小写

-iL:列好的IP放在一个文本里面,可以直接扫描这个文本

用法:namp -iL <文本名>

-iR:随机扫指定数目的IP:

用法:nmap -iR <IP数量>

示例:我现在随机扫描50个IP的80端口,把其中是open的显示出来

显然,随机的这50个IP没有开放80端口的或者开了防火墙

--exclude:指定不扫描的IP

用法:nmap <IP> --exclude <IP/IPs>

示例:我现在要扫描192.168.163这一网段,但我不想扫描192.168.163.1-100:

--excludefile:类似上一条,不过把不扫描的IP放在一个文本文件中

用法:类似上一条

主机发现系列:

-sL:并不扫描,只是把要扫描的IP列出来

用法:nmap <IP> -sL

示例:

-sn:扫描目标,但不扫描端口

用法:nmap <IP> -sn

-Pn:有时候目标开启防火墙,无法收到回包,Nmap会不再扫描该目标,但是我向彻底扫描这个目标,需要这个参数

用法:nmap <IP> -Pn

-PS/-PA/-PU/-PY:使用相对应的协议扫描发现:PS:TCP[SYN]、PA:TCP[ACK]、PU:UDP、PY:SCTP

用法:nmap <IP> -PS/-PA/-PU/-PY

以下内容,如果可以直接加的参数,不在写用法(比如-Pn和-sn)

-PE:使用ICMP的echo

-PP:使用时间戳

-PM:查子网掩码(通常扫不到结果)

-PO:使用IP协议

-n:不做DNS解析

-R:反向DNS解析

--dns-servers:扫描的时候不使用本地配置的DNS服务器而使用指定的

示例:使用美国的DNS服务器扫描新浪

--traceroute:路由追踪(类似Kali的traceroute命令)

端口扫描系列:

-sS:使用TCP【SYN】扫描

-sT:使用TCP扫描:建立完整的三次握手

-sA:使用TCP【ACK】扫描

-sW:TCP:window扫描(没用过)

-sM:TCP:maimon扫描(没用过)ACK+FIN(17)

-sU:使用UDP扫描(事实证明没有TCP协议准确)

-sN:使用TCP空FLAG扫描

-sF:TCP:FIN扫描

-sX:xMas扫描(没用过,使用罕见的TCP的FLAG的组合)

--scanflags:自定义FLAG扫描(高手才可以用:需要熟练了解协议,针对不同情况使用)

-sI:僵尸扫描:具体僵尸扫描和实现这里是我写的案例:

https://www.cnblogs.com/xuyiqing/p/9650391.html

-sY/-sZ:SCTP相关的扫描

-sO:IP协议扫描

-b:FTP中继扫描

-p:指定扫描端口,天天有,方法就不说了

不过可以有多种写法:

-F:快速扫描(扫描常见的少量端口)

-r:按顺序扫描端口(Nmap默认随意扫描指定范围的端口)

--top-ports:扫描指定数量的端口

示例:只扫描常见一千端口中的前十个:

-sV:已经扫描到端口之后,探测服务

--version-intensity:配合sV参数,探测服务程度(1-9表示程度深浅)

示例:我要非常详细地扫描某IP的服务

这里可以看出,的确是非常的详细

--version-trace:显示更多的过程

脚本扫描:脚本在/usr/share/nmap/scripts里面

-sC=:和--scrip=t参数一样

--script-args=:脚本参数

具体脚本有哪些,可以上网查看当前版本对于的脚本

--script-updatedb:更新nmap的脚本(没有扫描作用)

--script-help:脚本帮助

-O:检测操作系统

-f:设置最大传输单元

-D:伪造源地址(需要一些混淆IP)

示例:我设置了三个虚假的IP,用来掩护我的IP来进行扫描

可以抓包发现确实存在伪造源地址:

-S:欺骗源地址

示例:

这里还用了-e参数:指定网卡

缺陷:收不到回包

-g:使用源端口发送

示例:我指定所有发出的包都是8888端口:

--proxies:代理(不推荐)

如果要代理的话,建议用proxychains方便使用

我以前这篇文章有介绍如何在Kali中使用代理:

https://www.cnblogs.com/xuyiqing/p/9680124.html

--data=:给扫描包加上数据

--data-string=/--data-length:类似上边

--spoof-mac:欺骗mac地址:

示例:

--badsum:故意发送错误的checksum(有时可以欺骗防火墙)

其他的参数没什么好说的,都是些杂项用不着的

Kali学习笔记16:Nmap详细讲解的更多相关文章

  1. Linux 学习笔记之超详细基础linux命令(the end)

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 14---------------- ...

  2. Linux 学习笔记之超详细基础linux命令 Part 14

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 13---------------- ...

  3. Linux 学习笔记之超详细基础linux命令 Part 13

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 12---------------- ...

  4. Linux 学习笔记之超详细基础linux命令 Part 9

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 8----------------- ...

  5. Linux 学习笔记之超详细基础linux命令 Part 7

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 6----------------- ...

  6. Linux 学习笔记之超详细基础linux命令 Part 1

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122   说明:主要是在REHL Server 6操作系统下进行的测试 --字符界面虚拟终端与图形界面之间的切 方法:[ ...

  7. Ext.Net学习笔记16:Ext.Net GridPanel 折叠/展开行

    Ext.Net学习笔记16:Ext.Net GridPanel 折叠/展开行 Ext.Net GridPanel的行支持折叠/展开功能,这个功能个人觉得还说很有用处的,尤其是数据中包含图片等内容的时候 ...

  8. SQL反模式学习笔记16 使用随机数排序

    目标:随机排序,使用高效的SQL语句查询获取随机数据样本. 反模式:使用RAND()随机函数 SELECT * FROM Employees AS e ORDER BY RAND() Limit 1 ...

  9. Linux 学习笔记之超详细基础linux命令 Part 12

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 11---------------- ...

随机推荐

  1. Linux 查看网络状态工具

    1. iftop 效果如下图: 界面上面显示的是类似刻度尺的刻度范围,为显示流量图形的长条作标尺用的. 中间的<= =>这两个左右箭头,表示的是流量的方向. TX:发送流量RX:接收流量T ...

  2. Python批量执行oracle中的insert语句

    从oracle导出一个表的数据,导出的格式是insert语句,数据量30万. 直接在PL/SQL Developer中执行,速度非常慢,脚本中也是100条数据提交一次.因为需要的时间太长,每次中断后, ...

  3. Python之路(第三十九篇)管道、进程间数据共享Manager

    一.管道 概念 管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信. 先画一幅图帮助大家理解下管道的基本原理 现有2个 ...

  4. Flip String to Monotone Increasing LT926

    A string of '0's and '1's is monotone increasing if it consists of some number of '0's (possibly 0), ...

  5. 1-spring boot 入门

    我从08年到现在,毕业马山就10年了,一直从事.net平台开发工作(期间应该有1年时间从事java开发). 一.为什么要转java: 1.目前市场很多招聘java架构师的职位,且薪资都不错,但.net ...

  6. 解决build workspace 缓慢的问题

    (1).解决方法         方法1.修改eclipse启动文件 eclipse.ini 中添加启动参数参数: -vmargs -Xmx512m         方法2.关闭自动构建工作区: pr ...

  7. 前端页面播放 rtmp 流与 flv 格式视频文件

    技术 :angular/cli , html5 , typescript , scss ,es 6 ... 项目类型:直播视频与视频回放 使用到 插件 : videojs + ckplayer 遇到的 ...

  8. python (创建虚拟环境)

    Python python 介绍 Python是一门计算机编程语言.是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的 ...

  9. abaqus的umat在vs中debug调试

    配置参考:https://www.jishulink.com/content/post/333909 常见错误:http://blog.sina.com.cn/s/blog_6116bc050100e ...

  10. 关闭iptables服务及命令行连接wifi及locale设置

    Ubuntu系统启动时都会自动启动iptables服务.如果想关闭该服务的自动启动,可以执行: sudo ufw disable 命令行方式连接某个SSID: sudo nmcli d wifi co ...