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

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. 全网最详细的Linux命令系列-cat命令

    cat命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用. 命令格式: cat [选项] [文件].. ...

  2. Visual Studio 2015 无法加载.Net FrameWork4.6.2

    默认的VS2015是没有.Net Framework4.6.2的 需要我们去到微软官网下载对应的.NET Framework 4.6.2的安装包 安装包分两种,一种是应用级别的还一种是开发级别的,如果 ...

  3. Hadoop完整搭建过程(三):完全分布模式(虚拟机)

    1 完全分布模式 完全分布模式是比本地模式与伪分布模式更加复杂的模式,真正利用多台Linux主机来进行部署Hadoop,对集群进行规划,使得Hadoop各个模块分别部署在不同的多台机器上,这篇文章介绍 ...

  4. 源码编译安装MySQL8.0.20

    1 概述 本文章主要讲述了如何从源码编译安装MySQL社区版8.0.20,首先会介绍一些编译安装的相关知识,然后开始编译安装 2 源码编译安装的相关知识 2.1 make与configure make ...

  5. 号外号外!DevUI Admin V1.0 发布啦!

    4月是鸟儿的月份,是木棉花的月份,是 DevUI Admin 发布的月份. 广受大家期待的 DevUI Admin 终于迎来了第一个开源 Angular 版本! DevUI Admin 是一个企业级中 ...

  6. Java中常见方法详解合集(方法的定义及语法结构)

    Java的方法定义 1.方法的定义 方法是控制对象的动作行为方式与准则,在Java中方法位于类体下又有另一种含义. 普通的方法在类中称为"实例方法",因为方法的调用需要创建对象,而 ...

  7. 【MySQL】实现线上千万数据表添加字段操作以及缓存刷新

    需求背景: 由于业务需求,需要在线上用户表添加渠道字段,用于区分不同渠道注册的用户,目前该表有20+个字段,8个索引 线上用户数据大概1500W左右,需要不停机增加数据库字段,同时需要刷新Redis缓 ...

  8. SpringCloud-Stream消息通信

    SpringCloud微服务实战系列教程 Spring Cloud Stream 消息驱动组件帮助我们更快速,更⽅便,更友好的去构建消息驱动微服务的.当时定时任务和消息驱动的⼀个对⽐.(消息驱动:基于 ...

  9. Pytorch系列:(四)IO操作

    首先注意pytorch中模型保存有两种格式,pth和pkl,其中,pth是pytorch默认格式,pkl还支持pickle库,不过一般如果没有特殊需求的时候,推荐使用默认pth格式保存 pytorch ...

  10. poj1182 and 携程预赛2第一题 带权并查集

    题意:       动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形.A吃B, B吃C,C吃A.  现有N个动物,以1-N编号.每个动物都是A,B,C中的一种,但是我们并不知道它到底 ...