理论知识
- IP地址是由两部分组成,即网络地址和主机地址,网络地址表示其属于互联网的那一个部分,主机地址表示其属于该网络中的那一台主机,二者是主从关系
- IP地址根据网络号和主机号,分为三类和特殊的两类:
A类:1.0.0.0—126.0.0.0:子网掩码255.0.0.0
B类:128.0.0.0—191.255..0.0:子网掩码255.255.0.0
C类:192.0.10—223.255.255.0:子网掩码255.255.255.0
D类:多播地址:224.0.0.0—239.255.255.255
C类:保留地址:
- 在IP地址中,还有一种特殊的IP地址是广播地址,广播地址是专门用于同时向网络中所有工作站进行发送一个地址
- 在使用TCOP/IP协议的网络中,主机标识段host ID为全1的IP地址为广播地址,广播的分组传送给host ID段所涉及的所有计算机
- CIDR格式是由网络地址和子网掩码两部分组成,中间使用(/)斜杠分隔
- 在一个局域网内,用户也可能会使用多个路由器进行串联,以满足扩大原有的网络范围,或者在原有的网络下构建新的子网络
- ARP地址解析协议是根据IP地址获取物理地址的一个TCP/IP协议
- 由于主机进行通信时,将会发送一个包含目标IP地址的ARP请求广播到网络上的所有主机,并接受返回消息时,以此确定目标的物理地址,所以可以使用主动和被动两种方式来实施ARP扫描
- DHCP是一个局域网的网络协议,主要作用就是给内部网或网络服务供应商自动分配IP地址
- DHCP协议采用UDP作为传输协议,主机发送请求消息到DHCP服务器的67号端口,DHCP服务器回应应答消息给主机的68号端口
- 除了ARP和DHCP请求外,在局域网中还有一些协议,会主动发送一些广播或组播包,如BROWSER、SSDP、LLMNR等,此时通过监听方式,可以了解到一些活动主机的信息
实际操作
网络环境
Netmask工具
在kali linux中,默认提供了一个名为netmask工具,可以用来实现ip地址格式转换,该工具可以在IP地址范围、子网掩码、CIDR、CISCO等格式中互相转换
使用netmask工具将IP地址范围转换成cidr格式
使用方式为netmask -c IP地址 或 IP地址:IP地址(分为单个地址转换和多个地址转换),如下图
从上图可以看出已经将IP地址转换为了CIDR格式(CIDR对照表可看附加知识点)
使用netmask工具将ip地址范围转换成子网掩码格式
使用方式为netmask -s IP地址 或 IP地址:IP地址
使用netmask工具将ip地址范围转换成cisco格式
使用方式为netmask -i IP地址 或 IP地址:IP地址
使用netmask工具将cidr格式范围转换成ip范围格式
使用方式为netmask -r IP地址/CIDR
Nmap扫描
Nmap工具提供了一个-iL选项,可以对指定的目标列表实施扫描,使用该工具的命令语法如下:nmap -iL 地址列表文件(-iL表示从文件列表中读取目标地址,该列表支持任何格式的地址,包括ip地址、主机名、CIRD、ipv6或者八位字范围,而且每一项必须以一个或多个空格、制表符或换行符分开)
具体操作如下:新建一个文件,文件名随意,但是更好的使用hosts.list(vi hosts.list)
之后使用nmap进行扫描(nmap -IL hosts.list)
可以看出以上图片中有4台活动主机,分别是192.168.0.1、192.168.0.102、192.168.0.103、192.168.0.105
上级网络路由跟踪
如果连接到最底层网络的话,则可以通过路由跟踪的方式扫描到上级网络的路由,根据获取的路由信息,可以猜测上级网络的范围大小
Nmap工具提供了一个--traceroute选项,可以用来实现路由跟踪
具体操作如下:nmap --traceroute www.baidu.com
可以看出,本地到目标服务器经过的上级路由依次为192.168.0.1和192.168.1.1,而且www.baidu.com开放了80端口和443端口
Traceroute工具
Traceroute是用来侦测由源主机到目标主机所经过的路由请求的重要工具
Traceroute工具收到目的主机ip地址后,首先给目的主机发送一个TTL=1的udp包,而经过的第一个路由器收到这个数据包之后,自动把TTL减去1(TTL指生存时间)
使用traceroute工具实施路由跟踪的方法如下:traceroute 目的主机
在以上输出信息中,每条记录序号从1开始,每一记就是一跳,每跳表示一个网关
每行有3个时间,3个时间表示探测数据包向每个网关发送数据包后,网关回应返回的时间
一些以*星号表示的可能是防火墙封掉了ICMP的返回消息,所以无法获取到相关数据包返回
ARP扫描
主动扫描
主动扫描就是主动发送一个ARP请求,等待目标主机的响应
使用nmap工具实施arp主动扫描:nmap -PR 目标地址(-PR表示实施arp ping扫描)
Netdiscover工具
Netdiscover工具是一个主动/被动的arp侦查工具,使用该工具可以在网络上扫描ip地址,检查在线主机或搜索为它们发送的arp请求
语法如下:netdiscover -r 【range】(-r 【range】表示指定扫描的网络范围)
(使用此工具命令会覆盖之前所有的命令历史记录,这里命令与结果相反,且这里没有接续等待最后的结果)
Arp-scan工具
Arp-scan是一款arp扫描工具,给工具可以进行单一扫描,也可以批量扫描,批量扫描的时候,可以通过cidr、地址范围或者列表文件的方式指定
该工具允许用户定制arp包,构建非标准数据包
该工具会自动解析mac地址,给出地址对应的硬件厂商,以帮助确认目标
使用方法:arp-scan 目标地址
图中输出的信息是目标主机是活动的,mac地址是f8:e4:e3:21:2b:ef,网卡生产厂商是inter corporate(英特尔公司)
Arping工具
Arping是一个arp级别的ping工具,主要用来自向局域网内的其他主机发送arp请求的指令
该工具可以测试局域网内的某个ip地址是否被使用,使用如下:arping -c conut 目标地址(-c count 表示指定发送的arp包数)
以上图中,第一条命令结果显示主机是活动的,第二条则显示超时,意为主机不在线
被动扫描
被动扫描是通过长期监听ARP广播,来发现同一局域网中的活动主机
Netdiscover既可以主动扫描,亦可以以被动模式嗅探存活的主机
使用方法如下:netdiscover -p(-p被动模式,不发送任何数据包,仅嗅探)
以上就是被动扫描,共有6种信息,分别是IP地址、mac地址、包数、长度、mac地址生产商、主机名
设备mac查询
通过对目标主机实施arp扫描后,可以获取到目标主机的MAC地址,以及mac生产商,但有一些设备无法获取到其生产厂商,此时可以登录https://mac.51240.com网站进行查询
DHCP被动扫描
Nmap工具
在nmap中,提供了一个broadcast-dhcp-discover脚本能够用来发送一个dhcp discover广播包,并显示响应包的具体信息,通过对响应包的信息进行分析,能够找到可分配的IP地址
语法如下:nmap --script broadcast-dhcp-discover
图中结果分析如下:
IP Offered: 192.168.0.104:提供的IP地址
DHCP Message Type: DHCPOFFER:dhcp消息类型
Server Identifier: 192.168.0.1:服务器标识服
IP Address Lease Time: 2h00m00s:IP地址释放时间
Domain Name Server: 211.138.24.66, 211.138.30.66:域名服务
Subnet Mask: 255.255.255.0:子网掩码
Router: 192.168.0.1:路由地址
可以看出,提供的地址为192.168.0.104
Dhcpdump工具
Dhcpdump是一个命令行格式的dhcp流量嗅探工具,可以捕获dhcp的请求/回复流量,并以用户友好的方式显示解码的dhcp协议消息
使用语法格式如下:dhcpdump -i interface(-i interface表示指定监听的网络接口)
(此工具kali上没有默认安装,需自行安装)
监听
Wireshark工具
Wireshark是一款非常流行的网络封包分析软件,功能十分强大,使用该工具可以截取各种网络封包
使用wireshark步骤如下:
- 在系统左上角搜索或在命令行输入wireshark启动wireshark工具
- 双击eth0开始捕获数据包
Tcpdump工具
Tcpdump是一个命令行的嗅探工具,可以基于过滤表达式抓取网络中的报文,分析报文,并且在包层面输出报文内容以便于包层面的分析
使用方法如下:tcpdump -i 监听的网络接口 -w 数据包保存的文件名
CIDR对照表
子网掩码
CIDR
子网掩码
CIDR
000.000.000.000
/0
255.255.128.000
/17
128.000.000.000
/1
255.255.192.000
/18
192.000.000.000
/3
255.255.224.000
/19
224.000.000.000
/4
255.255.240.000
/20
248.000.000.000
/5
255.255.248.000
/21
252.000.000.000
/6
255.255.254.000
/23
254.000.000.000
/7
255.255.255.000
/24
255.000.000.000
/8
255.255.255.128
/25
255.128.000.000
/9
255.255.255.192
/26
255.192.000.000
/10
255.255.255.224
/27
255.224.000.000
/11
255.255.255.240
/28
255.240.000.000
/12
255.255.255.248
/29
255.248.000.000
/13
255.255.255.252
/30
255.252.000.000
/14
255.255.255.254
/31
255.254.000.000
/15
255.255.255.255
/32
255.255.000.000
/16
(上面的内容全部都是大学霸IT达人编著的kali linux网络扫描这本书中的,只是想和感兴趣的老铁们分享以下,另外,最重要的是想求助大佬们,看看上面的截图中,大多输出结果都是一样的,这是因为靶机的原因,还是什么原因,希望懂的大佬能够指点一下,谢过了哈)
版权归原作者 红心老A 所有, 如有侵权,请联系我们删除。