|>>>简版先附上<<<|

Nmap基础学习

语法

nmap + [空格] + <选项|多选项|协议> + [空格]+ <目标>

nmap  <ip>

可迅速扫出目标端口开放情况

端口状态

Open对外开放状态。

Closed关闭状态(可能一会儿会打开哦)。

Filtered被防火墙或路由访问规则过滤掉了,也有可能是网络堵塞造成的。

Unfiltered未被过滤端口可以访问,但不知道端口开放还是关闭。此时可换一种扫描方式。

Open|Filtered说明探测报文没有得到目标端口的响应。此时可换一种扫描方式。

Closed|Filtered关闭或过滤,只出现在IPID Idle扫描中。

全面扫描

扫描目标的所有端口+目标系统信息

nmap -A <ip>

扫描指定段

在内网中用的较多,可以发现局域网下的所有主机目标

nmap 192.168.1.100-200

扫描结果如下,可以看到有7个主机存活(即在线)。



主机发现

目录

选项 解释
-sP Ping扫描
-P0 无Ping扫描
-PS TCP SYN Ping扫描
-PA TCP ACK Ping扫描
-PU UDP Ping 扫描
-PE;-PP;-PM ICMP Ping Types 扫描
-PR ARP Ping 扫描
-n 禁止DNS反向解析
-R 反向解析域名
--system-dns 使用系统域名解析器
sL 列表扫描
-6 扫描IPv6地址
--traceroute 路由跟踪
-PY SCTP INIT Ping

Ping扫描

nmap -sP <ip>

只进行Ping,然后返回做出响应的主机

你可能会觉得和Ping没什么区别,那你感觉对了,哈哈

如果你想一次性Ping很多主机,参考上面1.扫描指定段

无Ping扫描

nmap -P0 <ip>

当防火墙禁止Ping时可以用这个,可避免被防火墙发现

nmap -P0 【协议1,协议2】<ip>

-P0默认使用协议1,协议2,协议4进行扫描,我们还可以指定协议进行扫描

ICMP:协议编号1

IGMP:协议编号2

TCP:协议编号6

UDP:协议编号17

另:如果你想知道只写协议是如何判断主机状态的可以使用 --packet-trace(即namp -P0 --packe-trace )

如我们指定TCP,UDP,IGMP协议项目标发送包

namp -P06,17,2 www.heihei.work

TCP SYN Ping扫描

nmap -PS -v www.heihei.work

Nmap默认Ping扫描使用TCP ACK 和 ICMP Echo 请求目标,当请求被主机防火墙阻止时,可使用该方式。

TCP协议是一种可靠的传输层协议。

-PS选项发送一个设置SYN标志位的空TCP报文。

默认端口80(可修改,如-PS22,23,25,11,5,3306,3389 被指定的多个端口会被并发地扫描)

TCP ACK Ping扫描

nmap -PA <ip>

它与-PS的唯一区别就是设置TCP标志位时ACK而不是SYN。这样就可应付很多防火墙封锁SYN报文的情况。



我们也可以同时向目标发送ACK和SYN的报文

nmap -PA -PS <ip>

额额,发现两次扫描结果不一样就离谱,上图比第一次扫描多扫出来了6个端口!

UDP Ping 扫描

nmap -PU -v <ip>

-PU选项是发送一个空的UDP报文到指定端口。目标主机相应则返回一个ICMP端口不可达错误,否则返回各种ICMP错误。

ICMP Ping Types 扫描

使用-PE;-PP;-PM;选项可进行ICMP(Internet Control Message Protocol)扫描。

nmap -PE -v <ip>





上面是ICMP Echo 扫描方式。

nmap -PM -v <ip>



上面是ICMP 地址掩码Ping扫描

nmap -PP -v <ip>



上面是ICMP 时间戳Ping扫描

从上面可以看出不同的扫描方式对不同的防火墙有着不同的效果。

ARP Ping 扫描

nmap -PR <ip>

-PR常用于局域网,ARP(Address Resolution Protocol)地址解析协议。

他的功能是将ARP请求广播到网络上的所有主机,接收返回的信息从而确定目标的IP地址,记录IP地址和硬件地址到ARP缓存中,下次直接使用。

扫描列表

nmap -sL <ip>



他只会列出IP列表,如果IP对应的有他的域名也会被列出(即反向域名解析)。敢觉这个功能挺鸡肋的

禁止反向域名解析

nmap -n -sL <ip>

-n和上一个的区别就是不列出域名。

反向域名解析

nmap -R -sL <ip>

列出IP对应有域名的目标域名。

使用系统域名解析器

nmap --system-dns <ip1> <ip2>

多个请求并发执行可以提高性能。

扫描一个IPv6地址

nmap -6 <ip>

IPv6(Internet Protocol Version 6),它设计用于替代当前IPv4版本。

路由跟踪

nmap --traceroute -v <ip>





--traceroute 可以查出从本地到目标之间所经过的网络节点,及经过这些节点的时间。

默认使用主机配置的域名服务器域名解析,用该选项后会使用系统自带的解析器。

SCTP INIT Ping 扫描

nmap -PY -v <ip>



通过发送INIT包判断主机是否存活。

SCTP(Stream Control Transmission Protocol)流控制传输协议,SCTP可看做是传输层协议,可看做TCP协议的改进版。

探索网络

目录

选项 解释
-T 时序选项
-p 端口扫描顺序
-sS TCP SYN 扫描
-sT TCP连接扫描
-sU UDP扫描
-sN;-sF;-sX 隐蔽扫描
-sA TCP ACK 扫描
-sW TCP 窗口扫描
-sM TCP Maimon 扫描
--scanflags 自定义TCP扫描
-sI 空闲扫描
-sO IP协议扫描
-b FTP Bounce扫描

时序选择(扫描速度选择,一般我们使用-T4)

-T0非常慢,可IDS逃避。

-T1缓慢,可IDS逃避。

-T2有点慢,降低速度以减缓宽带的消耗。

-T3默认,根据目标反应自动调整时间

-T4快速,需要良好的网络环境,请求可能淹没目标。

-T5急速,牺牲准确度以提高扫描速度。

IDS:入侵检测系统



0.027s果然很快,哈哈

常用扫描方式

-p指定端口

nmap -p 445 <ip>

-p指定端口范围

nmap -p 445~1000 <ip>

-p指定不同类型端口(以同时扫描TCP,UDP为例)

nmap -p T:111 ,U:445 <ip>





-F快速扫描部分端口

namp -F <ip>



--top-ports开放概率最高的1000个端口

nmap --top-ports <number> <ip>

如我们扫描概率最高的200个端口。



--port-ratio开放概率高于一定数值的端口

nmap --top-ports <0~1> <ip>

TCP SYN 扫描

nmap -sS <ip>

较为隐蔽,不完成三次握手避免被主机发现。

TCP 连接扫描

namp -sT <ip>

用于SYN扫描(-sS)不能使用时。

UDP 扫描

nmap -sU <ip>

一种很慢的扫描方式(所以通常加上-p 80-100来指定端口范围),通常被管理员和安全审核人员忽略。

隐蔽扫描

-sNNULL扫描,发送非常规的TCP包探测。

-sFFIN扫描,发送FIN包比TCP FIN更隐蔽穿透效果更好。

-sXXmas扫描,数据包FIN,PSH,URG标记位打开即标志为1.

nmap -sN <ip>

诸神之眼-Nmap 教程 2的更多相关文章

  1. 诸神之眼 - Nmap 教程

    *注: www.heihei.work 为本人测试网站,可由 官方测试网站 scanme.nmap.org代替. NO.11.扫描端口开放的服务nmap -T4 -A -v www.heiehi.wo ...

  2. nmap教程(下)

    九.脚本引擎 脚本文件存放在/usr/share/nmap/scripts目录下 SCRIPT SCAN: -sC: equivalent to --script=default #启用默认类脚本 - ...

  3. nmap教程(上)

    一.nmap的主要功能 1.端口扫描 2.主机探测:查找目标网络的在线主机 3.服务/版本检测:发现开放端口后,进一步检测目标主机的检测服务协议.应用程序名称.版本号等信息 4.操作系统检测 5.网络 ...

  4. ubuntu下程序员常用命令大全

    一.ubuntu下用命令查询系统版本 1.在终端中执行下列指令: cat /etc/issue 该命令可查看当前正在运行的ubuntu的版本号. 效果如图: 2.使用 lsb_release 命令也可 ...

  5. snmp默认团体名/弱口令漏洞及安全加固

    0x00基础知识 简单网络管理协议(SNMP)被广泛用于计算机操作系统设备.网络设备等领域监测连接到网络上的设备是否有任何引起管理上关注的情况.在运行SNMP服务的设备上,若管理员配置不当运行默认团体 ...

  6. 渗透测试工具Nmap从初级到高级使用教程

    本文由阿德马翻译自国外网站,请尊重劳动成果,转载请注明出处,谢谢 Nmap是一款网络扫描和主机检测的非常有用的工具.Nmap是不局限于仅仅收集信息和枚举,同时可以用来作为一个漏洞探测器或安全扫描器.它 ...

  7. Nessus漏洞扫描教程之使用Nmap工具扫描识别指纹

    Nessus漏洞扫描教程之使用Nmap工具扫描识别指纹 Nmap工具的准备工作 当用户对Nessus工具有清晰的认识后,即可使用该工具实施扫描.但是,在扫描之前需要做一些准备工作,如探测网络中活动的主 ...

  8. Nmap扫描教程之基础扫描详解

    Nmap扫描教程之基础扫描详解 Nmap扫描基础扫描 当用户对Nmap工具了解后,即可使用该工具实施扫描.通过上一章的介绍,用户可知Nmap工具可以分别对主机.端口.版本.操作系统等实施扫描.但是,在 ...

  9. Nmap扫描教程之网络基础服务DHCP服务类

    Nmap扫描教程之网络基础服务DHCP服务类 Nmap网络基础服务 网络基础服务是网络正常工作的基石,常见的网络基础服务包括DHCP服务和DNS服务.其中,DHCP服务用来为计算机动态分配IP地址:D ...

随机推荐

  1. 运行ASP.NET程序(4)

    运行ASP.NET程序有两种方式: 直接点击如图标志的按钮可直接运行,还可以选择浏览器 第二种:F5 两者没区别,看个人习惯

  2. day-6 xctf-hello_pwn

    xctf-hello_pwn 题目传送门:https://adworld.xctf.org.cn/task/answer?type=pwn&number=2&grade=0&i ...

  3. 从应用层到网络层排查 Dubbo 接口超时全记录

    大家好,我是坤哥 我们常说面试造火箭,很多人对此提出质疑,相信大家看了这篇文章会明白面试造火箭的道理,这篇排查问题的技巧涉及到索引,GC,容器,网络抓包,全链路追踪等基本技能,没有这些造火箭的本事,排 ...

  4. Salesforce学习之路(一)几个简单概念

    Salesforce是一款非常强大的CRM(Customer Relationship Management)系统,国外企业使用十分频繁,而国内目前仅有几家在使用(当然,国内外企使用的依旧较多),因此 ...

  5. Day09_45_Set集合_SortedSet02

    SortedSet * TreeSet是SortedSet接口的实现类,TreeSet底层是一个TreeMap,相当于TreeMap中的key. * SortedSet集合是如何实现自动排序的呢? - ...

  6. PHP laravel系列之Blade模版

    一.什么是Blade模版? Blade 是 Laravel 提供的一个既简单又强大的模板引擎. 和其他流行的 PHP 模板引擎不一样,Blade 并不限制你在视图中使用原生 PHP 代码.所有 Bla ...

  7. reset 去掉margin和padding的 默认代码,其余根据自己的情况做调整

    body, dl, dd, h2, h3, h4, h5, h6, p, form{margin:0;} ol,li,ul{margin:0; padding:0;} h1{margin:10px 0 ...

  8. 【布隆过滤器】基于Hutool库实现的布隆过滤器Demo

    布隆过滤器出现的背景: 如果想判断一个元素是不是在一个集合里,一般想到的是将集合中所有元素保存起来,然后通过比较确定.链表.树.散列表(又叫哈希表,Hash table)等等数据结构都是这种思路,存储 ...

  9. hdu4909 状态压缩(偶数字符子串)

    题意:       给你一个字符串,里面最多有一个'?','?'可以表示'a' - 'z',也可以什么都不表 示,这里要明确,什么都不表示不是不存在的意思,当aa什么都不表示的时候aa 也不等于aa? ...

  10. POJ1456贪心(set或者并查集区间合并)

    题意:       给你n商品,每个商品有自己的价值还有保质期,一天最多只能卖出去一个商品,问最大收益是多少? 思路:       比较好想的贪心,思路是这样,每一次我们肯定拿价值最大的,至于在那天拿 ...