Nmap是一款免费开源的网络发现和安全审计工具,支持Windows和Linux平台,有命令行版本和图形化版本。个人建议去学习 nmap 的命令行版本,因为与图形化版本 zenmap 相比,它提供了更多的灵活性。

Nmap以新颖的方式使用原始IP报文来发现网络上有哪些主机,那些 主机提供什么服务(应用程序名和版本),那些服务运行在什么操作系统(包括版本信息), 它们使用什么类型的报文过滤器/防火墙,以及一堆其它功能。虽然Nmap通常用于安全审核, 许多系统管理员和网络管理员也用它来做一些日常的工作,比如查看整个网络的信息, 管理服务升级计划,以及监视主机和服务的运行。

使用 nmap 的人既可能是善意的,也可能是恶意的。应该非常小心,确保你不要使用 nmap 对没有明确得到书面许可的系统进行扫描。请在使用 nmap 工具的时候注意安全!本人以自己的另一台虚拟机为例进行学习,虚拟机IP:192.168.123.57!!


一、主机发现(HOST DISCOVERY)

1、 –sP(Ping 扫描)

只进行ping扫描,打印出响应扫描的主机,不进行进一步的测试。

2、-PS[portlists](TCP syn Ping )

发送一个设置了SYN标志位的空TCP报文,默认端口为80,可以通过nmap.h文件中的DEFAULT_TCP_PROBE_PORT值进行配置。

3、–PA[portlists](TCP ack Ping)

和SYN Ping类似,二者区别为将SYN标志位换成ACK标志位。ACK表示确认一个连接,但是该连接尚未建立。如果远程主机在运行,则应返回一个RST报文。

4、–PU [portlists] (UDP Ping)

进行一个UDP ping 扫描,发送一个空的报文到给定的端口,也可改变。如果目标机器端口是关闭的,则应立即给一个ICMP端口无法到达的回应报文。优点:可以穿越只过滤TCP的防火墙后者过滤器。


二、扫描实例

Zenmap提供了10种模板供用户进行选择,下面分别介绍:

1、Intense scan 速度最快、最常见的TCP端口扫描,主要用于确定操作系统类型。

nmap –T4 –A –v 192.168.123.57

2、Intense scan plus UDP:除Intense scan 功能外,还扫描UDP端口。

nmap –sS –sU –T4 –A –v 192.168.123.57

3、Intense scan,all TCP ports:扫描所有的TCP端口

nmap –p 1-65535 –T4 –A –v 192.168.123.57

4、Ping scan:只进行ping扫描,不进行端口扫描

nmap –sP –PE 192.168.123.57

5、Quick scan:

nmap –T4 –F 192.168.123.57

6、Quick scan plus

nmap –sV –T4 –O –F 192.168.123.57

7、Quick traceroute

nmap –sP –PE –traceroute 192.168.123.57

8、Regular scan

nmap 192.168.123.57

9、Intense scan ,no ping

nmap –T4 –A –v –PN 192.168.123.57

10、Slow comprehensive scan

nmap –sS –sU –T4 –A –v –PE –PP –PS80,443 –PA3389 –PU40125 –PY –g 53 –script “default or (discovery and safe)”192.168.123.57

注:本文仅限于学习和研究使用,禁止非法用途。一切非法用途,与原作者无关。转载请注明,谢谢!本人是初学者,错误之处还希望能多多指出,谢谢!!

Nmap 使用技巧及其攻略的更多相关文章

  1. (转)战斗bug技巧全攻略

    原文地址:http://www.cnblogs.com/manuosex/p/3736077.html 程序员不是有一幅这样的对联吗 上联:一个项目两部电脑三餐盒饭只为四千工资搞得五脏俱损六神无主仍然 ...

  2. 战斗bug技巧全攻略

    程序员不是有一幅这样的对联吗 上联:一个项目两部电脑三餐盒饭只为四千工资搞得五脏俱损六神无主仍然七点起床八点开会处理九个漏洞十分辛苦: 下联:十年编码九年加班八面无光忙的七窍生烟到头六亲不认五体投地依 ...

  3. Java数组技巧攻略

      Java数组技巧攻略 0.  声明一个数组(Declare an array) String[] aArray = new String[5]; String[] bArray = {" ...

  4. VS2013全攻略(安装,技巧,快捷键,插件)!

    工欲善其事,必先利其器.VS2013全攻略(安装,技巧,快捷键,插件)! 之前一篇<c++的性能, c#的产能?!鱼和熊掌可以兼得,.NET NATIVE初窥>承蒙大家喜爱和编辑推荐,在此 ...

  5. VSCode插件开发全攻略(六)开发调试技巧

    更多文章请戳VSCode插件开发全攻略系列目录导航. 前言 在介绍完一些比较简单的内容点之后,我觉得有必要先和大家介绍一些开发中遇到的一些细节问题以及技巧,特别是后面一章节将要介绍WebView的知识 ...

  6. Windows下LATEX排版论文攻略—CTeX、JabRef使用介绍

    Windows下LATEX排版论文攻略—CTeX.JabRef使用介绍 一.工具介绍 TeX是一个很好排版工具,在学术界十分流行,特别是数学.物理学和计算机科学界. CTeX是TeX中的一个版本,指的 ...

  7. 从小工到专家 ——读《Java程序员职场全攻略》有感

    从小工到专家 ——读<Java程序员职场全攻略>有感   <Java程序员职场全攻略>是以故事的形式,向读者介绍Java程序员的职场经验.作者牛开复在北京从事软件开发,已经是一 ...

  8. 经典DOS游戏皇帝攻略(曾经的回忆)

    最完美攻略>>>>> -------------------------------------------------------------------------- ...

  9. 用C#制作PDF文件全攻略

    用C#制作PDF文件全攻略 目  录 前    言... 3 第一部分 iText的简单应用... 4 第一章 创建一个Document 4 第一步 创建一个Document实例:... 5 第二步 ...

随机推荐

  1. Java 8 新特性-菜鸟教程 (2) -Java 8 方法引用

    Java 8 方法引用 方法引用通过方法的名字来指向一个方法. 方法引用可以使语言的构造更紧凑简洁,减少冗余代码. 方法引用使用一对冒号 :: . 下面,我们在 Car 类中定义了 4 个方法作为例子 ...

  2. 浅析Java源码之HashMap

    写这篇文章还是下了一定决心的,因为这个源码看的头疼得很. 老规矩,源码来源于JRE1.8,java.util.HashMap,不讨论I/O及序列化相关内容. 该数据结构简介:使用了散列码来进行快速搜索 ...

  3. 反射实现Model修改前后的内容对比

    在开发过程中,我们会遇到这样一个问题,编辑了一个对象之后,我们想要把这个对象修改了哪些内容保存下来,以便将来查看和追责. 首先我们要创建一个User类 public class User { priv ...

  4. 【C#设计模式-抽象工厂模式】

    一.抽象工厂模式的定义: 为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类. 二.抽象工厂模式的结构: 抽象工厂模式是所有形态的工厂模式中最为抽象和最具一般性的一种形态.抽象工厂模 ...

  5. 配置Windows 防火墙,允许SQL Server的远程连接

    在运行SQL Server的服务器上,我们要找到哪些是SQL Server正在侦听的端口,并将其添加到Windows防火墙的入站例外. 首先,我们需要添加 SQL Server 服务侦听 Window ...

  6. 关于 luv_letters

    luv_letters是一枚现高二文化课菜鸡,是一枚临汾一中联赛oier(我太菜了),也是一名Cher. (好像没有好的地方 真名不提跟某个当红女明星一样(正经汉子不女装 话说当初选择竞赛科目的时候( ...

  7. Mock session,cookie,querystring in ASB.NET MVC

    写测试用例的时候经常发现,所写的功能需要Http上下文的支持(session,cookie)这类的. 以下介绍2种应用场景. 用于控制器内Requet获取参数 控制器内的Requet其实是控制器内的属 ...

  8. ThreadLocal的用法

    阿里巴巴 java 开发手册中推荐的 ThreadLocal 的用法: public class DateUtil { public static final ThreadLocal<DateF ...

  9. zsh: command not found cnpm,gulp等命令在zsh终端上报错的问题

    以cnpm包为例,使用 npm install -g cnpm 创建了cnpm包.而在zsh终端上运行cnpm,出现 zsh: command not found: cnpm 的报错.同样的,gulp ...

  10. python学习之老男孩python全栈第九期_day004知识点总结

    1. 列表list: 列表转换成字符串: s = 'kidd' s1 = '_'.join(s) # 用_连接 字符串转换成列表: split() range(头,尾,步长): [0,1,2,3,4, ...