最近由于工作需求,开始对Nmap进行一点研究,主要是Nmap对于主机活跃性的探测,也就是存活主机检测的领域。

Nmap主机探测方法一:同网段优先使用arp探测:

  当启动Namp主机活跃扫描时候,Nmap会对目标地址参数进行检查,如果与自身IP地址匹配到同一个子网内,Nmap会对该类目标采用arp协议进行探测。即使命令参数规定的是其他探测手段,也会先使用arp进行探测。这种方式效率高,速度快,但仅限于同一子网广播域中。

arp探测原理:

在广播域内广播arp request报文,例如 who has 192.168.0.1 tell 192.168.1.4(nmap本机ip),收到arp response报文即为活跃。可以得到目标主机mac地址。

 nmap -R 192.168.1.1
nmap -R 192.168.1.0/24
nmap 192.168.1.1
nmap 192.168.1.0/24

Nmap主机探测方法二:跨网段ICMP协议探测:

ICMP探测一ICMP echo:

  常规PING探测,原理即为ping命令一样,但由于ping命令的滥用导致FW或者很多OS都会闲置ping包。特点:速度快,但探测不准确。

  测试:执行下文命令 或者-sP换成-sN 都会发送icmp echo 和 icmp timestamp报文。此时DNS114.114.114.114对timestamp有回应(奇怪)。

 nmap -sP 114.114.114.114

ICMP探测二ICMP timestamp:

  nmap发送ICMP timestamp报文,活跃主机会响应该报文,响应报文中包含当前系统时间。该请求ICMP type值13。

  测试DNS 114.114.114.114 对icmp echo有回应 对icmp timestamp无回应。-PP只发timestamp报文。

 nmap -PP 114.114.115.115

ICMP探测三ICMP netmask:

  nmap发送ICMP netmask报文,活跃主机会响应该报文,响应报文中包含当前地址掩码。该请求ICMP type值17。

  测试DNS 114.114.115.115 对icmp netmask无回应。

 nmap -PM 114.114.115.115

Nmap主机探测方法三:TCP探测:

  如同常见的端口扫描原理,syn类的,ack类的,fin类的,空扫描等等。通过回应报文判断主机是否活跃。

 nmap -sT 114.114.114.114 #TCP connect scan[three hand-shakes]
nmap -sS 114.114.114.114 #TCP SYN scan[syn->recv ack]
nmap -sA 114.114.114.114 #TCP ACK scan
nmap -sW 114.114.114.114 #TCP Window scan
nmap -sM 114.114.114.114 #TCP Maimon scan
nmap -sN 114.114.114.114 # TCP Null scan
nmap -sF 114.114.114.114 #TCP FIN scan

Nmap主机探测方法四:UDP探测:

  UDP探测原理是根据活跃主机对未开放的端口会响应一个ICMP不可达报文来判断的。

 nmap -PU 114.114.114.114#默认发送空UDP报文到40125端口
nmap -sU 114.114.114.114 -p 44444 #-p 指定端口
nmap -sU 114.114.114.114 -p 53 -Pn #-Pn 绕过ping扫描

Nmap主机探测方法五:IP探测:

  发送空的也可以指定负载大小的IP报文,可能收到响应报文为ICMP不可达报文。

 nmap -sO 114.114.114.114
nmap -PO 114.114.114.114

  

    

Nmap的活跃主机探测常见方法的更多相关文章

  1. python nmap模块使用进行主机探测(ICMP)

    终于审核通过了......第一次用博客,想记录自己的学习情况,分享知识. 废话不多说,第一篇blog,大牛请轻喷. 资产清点首先需要进行主机探测,将存活主机统计下来再进行进一步的指纹识别及端口探测.若 ...

  2. DDos攻击的常见方法及防御方法

    什么是DDoS? DDoS是英文Distributed Denial of Service的缩写,意即“分布式拒绝服务”,那么什么又是拒绝服务(Denial of Service)呢?可以这么理解,凡 ...

  3. Nmap原理02 - 版本探测介绍(上)

    Nmap原理02 - 版本探测介绍(上) 1.介绍 本文将介绍如何通过修改或添加nmap-service-probes文件来实现对nmap中未知服务的探测,首先介绍服务和版本探测的相关信息,然后介绍服 ...

  4. Python爬虫突破封禁的6种常见方法

    转 Python爬虫突破封禁的6种常见方法 2016年08月17日 22:36:59 阅读数:37936 在互联网上进行自动数据采集(抓取)这件事和互联网存在的时间差不多一样长.今天大众好像更倾向于用 ...

  5. MSF魔鬼训练营-3.2.1活跃主机扫描

    概要: msf的arp_sweep .udp_sweep模块 Nmap -sn使用ping探测 -PU -sn 使用UDP协议端口探测 msf模块 arp_sweep     常用 ipv6_mult ...

  6. Linux下编程获取本地IP地址的常见方法

    转载于:http://blog.csdn.net/k346k346/article/details/48231933 在进行linux网络编程时,经常用到本机IP地址.本文罗列一下常见方法,以备不时之 ...

  7. C#图片处理常见方法性能比较

    C#图片处理常见方法性能比较 来自:http://www.cnblogs.com/sndnnlfhvk/archive/2012/02/27/2370643.html   在.NET编程中,由于GDI ...

  8. linux修改主机名的方法

    linux修改主机名的方法 用hostname命令可以临时修改机器名,但机器重新启动之后就会恢复原来的值. #hostname   //查看机器名#hostname -i  //查看本机器名对应的ip ...

  9. window对象中的常见方法

    <body><!-- window对象中的常见方法--><script type="text/javascript"> var timeid; ...

随机推荐

  1. PHP7新特性的介绍

    关于PHP 20年的发展历史: 迄今为止最流行的WEB开发语言: 超过82%的网站都会使用PHP作为他们的服务端开发语言: 新特性介绍 PHP NG – Zend Engine 3 抽象语法树 64位 ...

  2. HTML坦克大战学习01

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <t ...

  3. Namenode HA原理详解

    社区hadoop2.2.0 release版本开始支持NameNode的HA,本文将详细描述NameNode HA内部的设计与实现. 为什么要Namenode HA? 1. NameNode High ...

  4. 关于在Android中添加事件监听器的方法

    一.匿名内部类 1.先找到那个控件(初始化) private Button bt1;  //onCreate方法外 bt1 = (Button)findViewById(R.id.button1); ...

  5. matlab中常用见的小知识点

    矩阵相关: 在matlab中,矩阵或向量是 column-major 表示形式.用 [] 来构建向量或矩阵, 用()来引用向量或矩阵中的元素:用:表示矩阵中的该index下的所以元素: matlab中 ...

  6. 转载: erlang连接mysql

    转自:http://blog.csdn.net/flyinmind/article/details/7740540 项目中用到erlang,同时也用到mysql.惯例,google. 但是,按照网上说 ...

  7. 【转载】关于quartus ii软件中注释乱码问题的解决方法

    最近在看Verilog代码,由于我的quartus版本打开他们的文件注释会全部乱码,痛苦万分!从网上找了下原因,解决方法基本没有,不过看到有人提出是编码的问题,立马我就想到一个解决方法,经过实验果然有 ...

  8. Ajax分页(MVC下)(附源码,前后台)

    网上找的一个分页js,自己改了改.. 前台页面 @{ ViewBag.Title = "Index"; } <h1>分页方法封装</h1> <scri ...

  9. 【Java面试题】56 在JAVA中如何跳出当前的多重嵌套循环?

    在Java中,要想跳出多重循环,可以在外面的循环语句前定义一个标号,然后在里层循环体的代码中使用带有标号的break 语句,即可跳出外层循环.例如, public class xunhuan { pu ...

  10. fireworks切图

    下载安装完成后打开软件 打开一张图片 首选参数的撤销次数改成999 按住空格键 鼠标会变成小手的形状 这时候可以拖拽图像 找到切片工具 记住缩放比例的快捷键 ctrl+空格 放大某个区域 切的时候按住 ...