网络利器NMAP系列(一)| 网络扫描介绍
来源:互联网 发布:淘宝收藏率怎么算 编辑:程序博客网 时间:2024/05/19 13:22
- 前言
- 0x01 网络协议基本原理
- 0x02 网络扫描技术
- 0x03 网络扫描工具
前言
网络扫描简单来讲就是发现并收集网络上活跃主机相关信息的过程,比如:操作系统类型、开启的端口号、服务和运行的应用。
0x01 网络协议基本原理
本节内容主要针对网络协议小白,请大神略过。
目前基本上所有的教材针对网络协议的介绍,都是使用ISO的OSI(Open Systems Interconnection)七层模型,如下图所示:
但是在实际的开发工作中,开发人员大多数使用的都是TCP的五层模型,OSI七层模型与TCP五层模型的对应关系如下图所示:
在实际的网络扫描过程中,协议类型和端口基本上是扫描工具必备的参数,网络协议模型中各层的协议类型如下图所示:
0x02 网络扫描技术
1.主机发现
网络扫描的第一步就是确定网络中活跃主机的数量及其相应的IP,这样就进一步精确的确定了对象。主机发现的方法主要有:
ICMP ECHO Request 通过Ping命令发送ICMP类型为8的包,如果主机是活跃的,会回复一个ICMP类型为0的包。
ICMP Timestamp 通过Ping命令发送ICMP类型为13的包,如果主机是活跃的,会回复一个ICMP类型为14的包。
ICMP Address Mask Request 通过Ping命令发送ICMP类型为17的包,如果主机是活跃的,会回复一个ICMP类型为18的包。
TCP Ping 通过Ping命令发送TCP SYN或TCP ACK的包,如果主机是活跃的,会对请求包进行回复,具体回复的内容取决于包的类型、主机的操作系统、防火墙策略等。
UDP Ping 通过Ping命令向主机的UDP端口发送UDP包,如果主机是活跃的,但UDP端口是关闭的,会回复一个ICMP Port Unreachable包。由于UDP的无连接特性,如果主机不回复任何内容,主机和UDP端口也有可能是活跃的。
2.端口和服务扫描
网路扫描的第二步就是对活跃的主机,进行端口和服务扫描。端口和服务的活跃就意味着漏洞存在的可能性。端口和服务扫描的方法主要有:
Connect scan 通过正常的TCP连接和主机建立连接,如果主机的TCP端口是活跃的而且没有被防护墙过滤,会回复一个SYN/ACK包,否则回复一个RST/ACK包。这种扫描方法由于是建立正常的连接,所以很容易被发现或记录。
Half-open scan 故名思议,当主机回复第一个SYN/ACK包的时候,扫描器就认为端口是活跃的,所以就用一个RST包来结束此次连接,并不完成完整的三次握手。
Stealth scan 通过发送报头带有各种标志的包,比如,SYN/ACK、FIN、ACK、NULL等,同时结合其他的规避技术来进行扫描。
3.操作系统发现
操作系统发现,也叫指纹识别,通过指纹来判断主机运行的系统类型。所谓的指纹,就是被扫描主机回复的一些特征信息,比如,TCP/IP栈、TCP窗口大小、TCP初始序列号等。指纹识别可以通过被动的方式,也可以通过主动的方式。
0x03 网络扫描工具
目前网络扫描工具种类比较多,商业和开源的都有,本节着重介绍几款比较流行的工具:
Nmap 一款开源、跨平台的网络扫描工具,拥有丰富的第三方插件。
Superscan 一款免费、适用于Windows平台的网络扫描工具。
YAPS 全称是Yet Another Port Scanner,一款免费、适用于Windows平台的网络扫描工具。
Angry IP Scanner 一款免费、跨平台的网络扫描工具。
NEWT 一款同时具有商业和免费版本、适用于Windows平台的网络扫描工具。
- 网络利器NMAP系列(一)| 网络扫描介绍
- 网络利器NMAP系列(二)| NMAP介绍
- 网络利器NMAP系列(三)| NMAP使用介绍
- 网路扫描利器NMAP系列(四) | NMAP周边插件
- 网络扫描工具nc&nmap
- 网络连接端扫描软件Nmap的使用---网络扫描(端口、主机)
- NMAP网络扫描和嗅探工具包
- Nmap网络扫描使用手册(from it8g)
- 网络扫描工具Nmap使用教程(1)
- 网络扫描工具NMAP的安装
- 计算机网络:利用Nmap进行网络扫描实验
- linux下nmap的使用-linux网络扫描技术
- Nmap扫描教程之网络基础服务DHCP服务类
- nmap详解--网络扫描和嗅探工具包
- Linux--网络编程(一)网络介绍
- Nmap网络嗅探
- 网络扫描工具:nikto简单介绍
- Kali Linux 网络扫描秘籍 第三章 端口扫描(一)
- Linux操作命令之grep命令操作
- SSH框架---核心原理(一)
- 十三周—输出学生成绩
- mysql 存储过程
- SVG 入门 及 嵌入HTML的7种方式
- 网络利器NMAP系列(一)| 网络扫描介绍
- 32位程序注入64位dll到64位进程中失败
- 前两天终于收到IT生涯的第一份offer了
- 设计模式——代理模式(理解静态代理和动态代理+代码)
- Github上10个最流行的数据可视化项目
- css单边投影与双侧投影
- SSH框架---核心原理(二)
- 闲谈--心态
- 安装apk时出现错误Failure [INSTALL_FAILED_DEXOPT]问题解决的方法