现在的位置: 首页 > 综合 > 正文

Web-Attak系列教程第二季0×04讲——扫描器之王nmap

2013年09月09日 ⁄ 综合 ⁄ 共 2981字 ⁄ 字号 评论关闭

普及网络安全知识,推动信息技术发展。

为祖国的网络安全撑起一片蓝天,为网络安全爱好者构建一方家园。

欢迎来到灰帽程序员论坛,我们的网址是:

http://www.hmhacker.org

论坛以技术交流为主,非商业性质论坛。

大家好,我是小雨,QQ:798033502

今天给大家带来的教程是《Web-Attak系列教程第二季0x04讲——扫描器之王nmap

这些视频教程最终会整理成书《Web安全编程与渗透分析》

http://item.taobao.com/item.htm?spm=a1z10.1.w6130004738.5.3pGpJV&id=18995219730

nmap是一个网络探测和安全扫描程序,它支持很多扫描技术,例如:UDPTCP 
connect()
TCP  SYN(半开扫描)ftp代理(bounce攻击)、反向标志、ICMPFINACK扫描、圣诞树(Xmas 
Tree)
SYN扫描和null扫描。它还提供了一些高级的特征,例如:通过TCP/IP协议栈特征探测操作系统类型,秘密扫描,动态延时和重传计算,并行扫描,通过并行ping扫描探测关闭的主机,诱饵扫描,避开端口过滤检测,直接RPC扫描(无须端口影射),碎片扫描,以及灵活的目标和端口设定。因此称它为扫描器之王一点也不为过。

(一)下载和安装

我们可以从http://nmap.org/download.html下载相应的版本

(二)功能简介

Nmap主要包括四个方面的扫描功能,主机发现、端口扫描、应用与版本侦测、操作系统侦测。

(三)使用方法

我们先用Nmap –h
来查看帮助

其实这么多参数,我们没必要都记住,用的时候-h一下就可以了。

大体的格式是:nmap  [扫描类型
[
可选项]  [目标]

若我们要对某一主机进行完整全面的扫描一般我们用:

Nmap-A–vitbook.taobao.com

1)主机发现

  • l-sL: List Scan
    列表扫描,仅将指定的目标的IP列举出来,不进行主机发现。
  • l-sn: Ping Scan
    只进行主机发现,不进行端口扫描。
  • l-Pn:
    将所有指定的主机视作开启的,跳过主机发现的过程。
  • l-PS/PA/PU/PY[portlist]:
    使用TCPSYN/ACKSCTP  INIT/ECHO方式进行发现。
  • l-PE/PP/PM:
    使用ICMP echo,  timestamp, and netmask
    请求包发现主机。-PO[protocollist]: 使用IP协议包探测对方主机是否开启。
  • l-n/-R: -n表示不进行DNS解析;-R表示总是进行DNS解析。
  • l--dns-servers < serv1[,serv2],...>:
    指定DNS服务器。
  • l--system-dns:
    指定使用系统的DNS服务器。
  • l--traceroute:
    追踪每个路由节点

实例:nmap –v –sn –PE  58.64.189.0/24

(2)端口扫描

  • l-sS/sT/sA/sW/sM:指定使用TCP  SYN/Connect()/ACK/Window/Maimon  scans的方式来对目标主机进行扫描。
  • l-sU:
    指定使用UDP扫描方式确定目标主机的UDP端口状况。
  • l-sN/sF/sX:
    指定使用TCP Null, FIN, and Xmas  scans秘密扫描方式来协助探测对方的TCP端口状态。
  • l--scanflags <flags>:
    定制TCP包的flags
  • l-sI <zombiehost[:probeport]>:
    指定使用idle  scan方式来扫描目标主机(前提需要找到合适的zombie  host
  • l-sY/sZ:
    使用SCTP  INIT/COOKIE-ECHO来扫描SCTP协议端口的开放的情况。
  • l-sO:
    使用IP protocol 扫描确定目标机支持的协议类型。
  • l-b <FTP relay host>:
    使用FTP bounce  scan扫描方式

实例:nmap-v –sS –sUitbook.taobao.com

Nmap –T4 –sWwww.hmhacker.org

(3)版本探测

·-sV:
指定让Nmap进行版本侦测

·--version-intensity < level>:
指定版本侦测强度(0-9),默认为7。数值越高,探测出的服务越准确,但是运行时间会比较长。

·--version-light:
指定使用轻量侦测方式(intensity 2)

·--version-all:
尝试使用所有的probes进行侦测(intensity 9)

·--version-trace:
显示出详细的版本侦测过程信息。

实例:nmap –sVwww.hmhacker.org

Nmap –T4 –sVwww.hmhacker.org

(4)操作系统探测

·-O:
指定Nmap进行OS侦测。

·--osscan-limit:
限制Nmap只对确定的主机的进行OS探测(至少需确知该主机分别有一个openclosed的端口)。

·--osscan-guess:
大胆猜测对方的主机的系统类型。由此准确性会下降不少,但会尽可能多为用户提供潜在的操作系统。

实例:nmap –O  itbook.taobao.com

5)躲避防火墙/IDS

·-f; --mtu < val>:
指定使用分片、指定数据包的MTU.

·-D < decoy1,decoy2[,ME],...>:
用一组IP地址掩盖真实地址,其中ME填入自己的IP地址。

·-S < IP_Address>:
伪装成其他IP地址

·-e < iface>:
使用特定的网络接口

·-g/--source-port <portnum>:
使用指定源端口

·--data-length < num>:
填充随机数据让数据包长度达到Num

·--ip-options < options>:
使用指定的IP选项来发送数据包。

·--ttl < val>:
设置time-to-live时间。

·--spoof-mac < mac address/prefix/vendor name>:
伪装MAC地址

·--badsum:
使用错误的checksum来发送数据包(正常情况下,该类数据包被抛弃,如果收到回复,说明回复来自防火墙或IDS/IPS)。实例:
nmap –D110.75.62.8,110.75.62.9,ME–A –v
www.hmhacker.org
(6) Nmap Scripting  Engine

·-sC:
等价于--script=default,使用默认类别的脚本进行扫描。

·--script=<Lua scripts>: <Lua  scripts>使用某个或某类脚本进行扫描,支持通配符描述

·--script-args=<n1=v1,[n2=v2,...]>:
为脚本提供默认参数

·--script-args-file=filename:
使用文件来为脚本提供参数

·--script-trace:
显示脚本执行过程中发送与接收的数据

·--script-updatedb:
更新脚本数据库

·--script-help=<Lua scripts>:
显示脚本的帮助信息,其中<Luascripts>部分可以逗号分隔的文件或脚本类别。

实例:nmap –p  80–v--script default,http*
www.hmhacker.org
高清下载地址:http://www.vdisk.cn/down/index/12395933

抱歉!评论已关闭.