nmap的基础笔记

如期而至!

nmap这个渗透工具一般用在渗透的准备阶段,用于收集用户的信息,为后面的渗透做情报支持

一、基本概念

只要在命令行下输入nmap即可使用,参数-version可以查看当前nmap的版本,扫描简单的来说其实就是四个动作:

1.统一沟通语言 (TCP/IP协议)

2.发出刺激 (ICMP报文头)

3.受到刺激的反馈 (ICMP的反馈)

4.通过比对刺激和反馈完成扫描

二、如何找到网络上的设备

A、nmap的基本输入(简单例子):

将你要扫描的设备地址告诉nmap可以通过下面的方法实现统一格式:

nmap [扫描类型] [设置] {设备地址}

其中设备地址(主机名,IP地址,网段等)可以通过以下方法:

1.-iL <文件名> 通过文件输入地址

2.-iR

3.–exclude :排出文件中的地址

4.直接输入IP或网段(最常用)

B、常用扫描参数:

1.-sL 不做扫描,仅完成DNS解析和网址的转换

2.-sP 默认发ICMP echo请求和TCP的ACK请求(80端口)

3.-PN 不用ping

4.-Ps <端口号列表> 发TCP协议SYN标记的空包(80端口)

5.-PA <端口号列表> 发TCP协议ACK标记的空包(80端口)

6.-PU <端口号列表> (31338端口)

7.-PE -PP -PM

8.-PO <协议列表>

9.-PR (ARP ping)

设置参数:

–traceroute

-n(不要做DNS解析)

-R(DNS解析所有的地址,默认不解析不在线的IP)

-system-dns(使用系统DNS)

–dns-servers ,[,…]

三、端口扫描概要

1.端口扫描:

-p <端口号列表>

2.端口状态:

1.Open,端口开启,有程序监听此端口

2.Closed,端口关闭,数据能到达主机,但是没有程序监听此端口。

3.Filtered,数据未能到达主机。

4.Unfiltered,数据能到达主机,但是Nmap无法判断端口开启还是关闭。

5.Open|filtered,端口没有返回值,主要出现在UDP,IP,FIN,NULL和Xmas扫描

6.Closed|filtered,只出现在IP ID idle 扫描。

四、端口扫面技术和算法

1.TCP标志位扫描

-sS TCP SYN扫描(匿名扫描,默认不加类型,需要root权限,扫描速度快)

-sT TCP全连接扫描(不需要root权限,TCP扫描的默认模式,端口状态和SYN相同,耗时长)

2.UDP扫描

-sU (使用-sUV能增加扫描的准确性)

没有UDP端口开放

3.协议扫描

-sO 获取服务器支持哪些协议

常用的扫描一般就上面几种,其他的暂时不讲解,需要了解的可以自己去百度或者等我的nmap进阶教程整理出来。

五、优化nmap的性能

-F (快速扫描100个常用端口)

其他的打算在nmap进阶教程再讲解

六、服务和应用程序版本的识别

有时候nmap探测出来的服务和版本信息并不是非常准确,不过我们可以通过加参数的方式使其精确

1.-sV:探测开放端口的服务和版本信息

2.–version-intensity<0-9>:设置探测深度

3.–version-light:相当于0-2

4.–version-all:相当于0-9

5.–version-trace:显示版本扫描详情(用于调试)

七、远程操作系统的识别

1.-O:启动操作系统识别。

2.–osscan-limit:限定只识别有端口开放的主机,提高-O和-A参数时的扫描速度。

3.–osscan-guest:给NMAP建议的操作系统。类似于sqlmap的参数。

4.–max-os-tries <次数>:设置重试次数(默认为5),提高准确性或者提高速度。

你可能感兴趣的:(网络安全,教程笔记,nmap,渗透基本,笔记)