渗透测试之Nmap命令(一)

1.介绍

  相信很多朋友在这之前已经对nmap有所了解,或者已经使用过nmap了,这里做一下简单的介绍。nmap(Network Mapper)最初由Gordon Fyodor Lyon于1997年创建。nmap可以用来扫描一个网络,监控服务,列出网络主机等等。namp还可以提供操作系统的类型、开放端口信息,可用过namp的配置实现。

  根据官网http://namp.org介绍,nmap包含众多脚本,这些脚本的功能从猜测Apple Filing Protocol密码到确认是否与X-servers建立连接等等。

  Nmap家族还包括:

  

  • ZenMap——Nmap的图形界面版。
  • Ncat——基于netcat,扩展了一些功能,如:ncat链、SSL支持、支持二进制等。
  • Ncrack——测试已部署的认证系统和密码强度,支持常用协议。
  • Ndiff——用于网络基线测试,对比Nmap扫描结果之间的差异。
  • Nping——允许将自己构造的数据包整合在扫描过程中,并能够对原始数据报进行操控。

2. Nmap常用扫描选项和类型

  Nmap命令语法如下:

namp - {type(s)} -{opt(s)} {target}

常用选项:

扫描选项 名称 功能
-g 指定源端口 使用特定源端口发送数据包
–spoofmac Mac欺骗 创建虚假mac,随机化mac地址
-S 源Ip地址 伪造源IP,或指定源IP
-e 选择网口 选择发送和接受数据的网口
-F 快速扫描 namp-services文件中默认扫描减到100个端口
-p 确定端口范围 选择扫描端口
-N NDS解析 执行反向lookup
-R 反向lookup 强制反向lookup
-A 激进型 启用许多扫描选项,如版本扫描和脚本扫描(慎用)

常用扫描类型:

扫描类型 名称 功能
-sA ACK扫描 检查端口是否开放,可用于探测防火墙
-sP Ping扫描 快速发现网络
-sR PRC扫描 定位PRC,对成功扫描的机器记录
-sS TCP SYN扫描 快速和隐蔽的扫描,半开放扫描
-sU UDP扫描 确定符合特定UDP端口是否开放
-sX XMAS扫描 隐蔽扫描,扫描特定配置的防火墙
-sL 列出扫描对象 列出要扫描的IP,使用-n选项确保不向网络中发数据包
-sO IP协议扫描 寻找使用IP协议的主机
-sM FIN/ACK 隐蔽扫描,适用于unix系统。查找RST数据包
-sI 闲置扫描 僵尸主机扫描,非常隐蔽

输出格式:

输出格式 名称 功能
-oA 所有 可检索的、常规的和XML文件
-oG 可检索的 可检索格式
-oX XML XML格式
-oN 常规 常规格式,适合人阅读

3. 基本扫描

  在这里,我开始对上一篇搭建的Ubuntu虚拟主机进行基本扫描,只进行简单的扫描,确定那些端口是开放的,使用-A选项(-A 选项扫描非常易于被发现,不适合在需要隐蔽条件下使用)。

  # nmap -A 192.168.50.12

  

  从结果看,可以判定目标主机开放了TCP的80端口,运行了Apache server 2.2.22版本,目标操作系统为Ubuntu Linux 2.6.X|3.X。 此外,-A选项启用了traceroute命令,根据结果显示,距离目标主机只有一条路由。

4. 隐蔽扫描

  网络扫描的过程包括发送特殊够早的数据包给目标主机和对返回的结果进行基于某种标准的检查。从扫描结果中,我们可以知道那些主机在线,运行了哪些服务以及这些服务的版本信息等。

  在一个安全的网络中,我们有可能根据需要来对抗IDS的异常行为捕捉。发送数据包的数量和速度,流量是否异常等,防火墙一般都会标记。为减少被检测到的概率,我们可以采取一些措施。

  控制时间。

  nmap控制扫描时间选项:

  

  • -T(0~5): 控制扫描进度,避免被检测的最简单形式。0是最温和的,5是最激进的,只能在局域网中使用。
  • –max_hostgroup: 将扫描的主机数量限制在每次一个。
  • –max_retries: 一般不需要修改此选项,如果是紧急情况且不在意扫描过程中可能错过一个包含潜在漏洞的主机,可以将这个选项设为0.
  • max_parallelism 10: 一次仅允许10个探测请求。
  • scan_delay 两次探测之间停顿。

尝试几个选项:

# nmap -P0 -n -sS --max_hostgroup 1 --max_retries 0 --max_parallelism 10 192.168.50.0/24

  从结果看,有两个主机在线,其中一个主机开放了80端口。

时间: 2024-10-10 17:55:07

渗透测试之Nmap命令(一)的相关文章

渗透测试之Nmap命令(二)

在<渗透测试之Nmap命令(一)>这篇博文中,已经介绍了Nmap命令的常用选项已经基本的使用方法,接下来讲一下namp的其他的一些扫描. 5. 其他扫描 5.1 SYN扫描 使用-sS选项对我们的虚拟机Ubuntu(192.168.50.12)发起一个完全开发的扫描.结果如下: 结果表明,至少192.168.50.12主机至少开放了3个端口,要确保使用不同类型的扫描对目标网络扫描,否则可能丢失一些很重要的信息导致测试结果相差很大. 5.2 NULL扫描 选用NULL扫描,再来看看结果: 结果令

渗透测试之Nmap命令(三) idle 扫描

1. 空闲扫描 前两篇文章已经介绍了Nmap命令的一些基本选项和若干类型的扫描,下面继续来介绍Nmap的一个扫描类型--空闲扫描. 为了降低被检测到的机率,我们通常需要转嫁责任,这时可以使用空闲扫描(idle scan),让一个僵尸主机承担扫描任务. nmap.org官网上详细讲述了空闲扫描的原理,可以在http://nmap.org/book/idlescan.html了解空闲扫描的所有信息. 使用空闲扫描(-sI)需要注意一个问题,就是要找一台TCP序列预测成功率高的僵尸主机,这个僵尸主机必

渗透测试之Nmap命令(四) 使用诱饵

1. 简述 Nmap的诱饵使用是一个非常有趣的概念.我们利用Nmap增加发起扫描的主机,你不会从这些诱饵的主机中获得任何信息,但是却增加了查找真正发起扫描主机的难度,或者说查找哪个IP在使坏.理想状态下,我们应该启动扫描前使用足够真实的"诱饵"主机,这样就可以降低目标管理员的检测力度. 在扫描中使用这使得诱饵可以增大判断实际扫描主机的难度.这种真实的诱饵就是网络中在线的主机IP. 值得说明的是,在执行各种扫描类型的时候使用诱饵,这样可以在扫描时无所顾忌的使用各种技巧. 2. Nmap放

nmap教程之nmap命令使用示例(nmap使用方法) 服务器渗透利器

Nmap是一款网络扫描和主机检测的非常有用的工具.Nmap是不局限于仅仅收集信息和枚举,同时可以用来作为一个漏洞探测器或安全扫描器.它可以适用于winodws,linux,mac等操作系统 Nmap 是一款非常强大的实用工具,可用于:检测活在网络上的主机(主机发现)检测主机上开放的端口(端口发现或枚举)检测到相应的端口(服务发现)的软件和版本 检测操作系统,硬件地址,以及软件版本检测脆弱性的漏洞(Nmap的脚本)Nmap是一个非常普遍的工具,它有命令行界面和图形用户界面.本人包括以下方 面的内容

Nmap教程之nmap命令使用示例(nmap使用方法)

Nmap下载地址:http://pan.baidu.com/s/1jGB4ZeI Nmap是一款网络扫描和主机检测的非常有用的工具.Nmap是不局限于仅仅收集信息和枚举,同时可以用来作为一个漏洞探测器或安全扫描器.它可以适用于winodws,linux,mac等操作系统 Nmap是一款非常强大的实用工具,可用于:检测活在网络上的主机(主机发现)检测主机上开放的端口(端口发现或枚举)检测到相应的端口(服务发现)的软件和版本检测操作系统,硬件地址,以及软件版本检测脆弱性的漏洞(Nmap的脚本)Nma

nmap命令 &#160; &#160; &#160;

nmap 命令 nmap命令概述 nmpa也就是Network Mapper缩写,是Linux下的网络扫描和嗅探工具包.其基本功能有:探测一组主机是否在线:扫描主机端口,嗅探提供的网络服务:判断主机的操作系统.软件下载后,执行configure.make和make install三个命令,将nmap二进制码安装到系统上,就可以执行nmap了. nmap的语法很简单,但功能十分强大.比如:ping-scan命令就是"-sP",在确定了目标主机和网络之后,即可进行扫描.如果以root来运行

给Linux系统管理员准备的Nmap命令的29个实用范例

map即网络映射器对Linux系统/网络管理员来说是一个开源且非常通用的工具.Nmap用于在远程机器上探测网络,执行安全扫描,网络审计和搜寻开放端口.它会扫描远程在线主机,该主机的操作系统,包过滤器和开放的端口. 我将用两个不同的部分来涵盖大部分NMAP的使用方法,这是nmap关键的第一部分.在下面的设置中,我使用两台已关闭防火墙的服务器来测试Nmap命令的工作情况. 192.168.0.100 – server1.tecmint.com 192.168.0.101 – server2.tecm

Nmap命令的29个实用范例

Nmap即网络映射器对Linux系统/网络管理员来说是一个开源且非常通用的工具.Nmap用于在远程机器上探测网络,执行安全扫描,网络审计和搜寻开放端口.它会扫描远程在线主机,该主机的操作系统,包过滤器和开放的端口. 我将用两个不同的部分来涵盖大部分NMAP的使用方法,这是nmap关键的第一部分.在下面的设置中,我使用两台已关闭防火墙的服务器来测试Nmap命令的工作情况. 192.168.0.100 – server1.tecmint.com 192.168.0.101 – server2.tec

渗透测试之手动漏洞利用

1. 实验环境描述 为了做漏洞利用的实验,前一片文章我已经介绍了Kioptrix靶机的安装和网络的配置.现在看一下虚拟机里必要的两个系统:Kioptrix虚拟机和Kali Linux虚拟机.前者为靶机,后者作为攻击机使用.网络拓扑如下图所示: 2. 列举服务 首先我们使用nmap命令对网络中的机器进行扫描,输入以下命令对192.168.50.0/24网段上所有的IP和TCP端口进行扫描. nmap -f -n -P0 -T4 192.168.50.0/24 扫描结果如下: 现在,我们就可以知道机