计算机网络概述
计算机网络中的分类
按照网络的作用范围:广域网(WAN)、城域网(MAN)、局域网(LAN);
按照网络使用者:公用网络、专用网络。
计算机网络的层次结构
OSI体系结构(法律上的国际标准)
各层代表的意义
1. 物理层(Physical Layer)
物理层的主要任务:确定与传输媒体的接口的一些特性(器件的相关特性,电压范围,以及对应的功能)
2. 数据链路层(Datalink Layer)
数据链路层协议的代表包括:SDLC、HDLC、PPP、STP、帧中继等。
它控制⽹络层与物理层之间的通信。它的主要功能是如何在不可靠的物理线路上进⾏ 数据的可靠传递。
3. ⽹络层(Network Layer)
通过IP寻址来建立两个节点之间的连接
协议有:ICMP IGMP IP(IPV4 IPV6) ARP RARP等。
在位于不同地理位置的⽹络中的两个主机系统之间提供连接和路径选择。Internet的发展使得从世界各 站点访问信息的⽤户数⼤⼤增加,⽽⽹络层正是管理这种连接的层。 O S I
模型的第三层,其主要功能是将⽹络地址翻译成对应的物理地址,并决定如何将数据从发送⽅路由 到接收⽅。
4. 传输层(Transport Layer)
运输层主要使用以下两种协议:
- • 传输控制协议
TCP
:面向连接的协议,提供可靠的数据传输服务,例如HTTP、SSH、FTP
等。 - • 用户数据报协议
UDP
:无连接的协议,不提供可靠交付。
5. 会话层(Session Layer)
建⽴、管理、终⽌会话,对应主机进程,指本地主机与远程主机正在进⾏的会话。
通过传输层(端⼝号:传输端⼝与接收端⼝)建⽴数据传输的通路。主要在你的系统之间发起会话或者 接受会话请求(设备之间需要互相认识可以是IP
也可以是MAC
或者是主机名)。
6. 表示层(Presentation Layer)
数据的表⽰、安全、压缩。可确保⼀个系统的应⽤层所发送的信息可以被另⼀个系统的应⽤层读取。
格式有:JPEG、ASCll、DECOIC、加密格式等。 应⽤程序和⽹络之间的翻译官,在表⽰层,数据将按照⽹络能理解的⽅案进⾏格式化;这种格式化也因 所使⽤⽹络的类型不同⽽不同。 表⽰层管理数据的解密与加密,如系统⼝令的处理。
7. 应用层(Application Layer)
应⽤层是最靠近⽤户的OSI层。这⼀层为⽤户的应⽤程序(例如电⼦邮件、⽂件传输和终端仿真)提供⽹ 络服务。
协议有:HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP
等。
TCP/IP体系结构(事实上的国际标准)
因特网从1983年开始使用 TCP/IP 协议族,并逐步演变成 TCP/IP 参考模型,该模型是一个四层协议的体系结构。
TCP/IP 体系结构相当于将 OSI 体系结构的物理层和数据链路层合并为网络接口层,并去掉了会话层 和表示层
TCP与UDP
TCP/IP即传输控制协议,是面向连接的协议,发送数据前要先建立连接,TCP提供可靠的服务,也就是说,通过TCP连接传输的数据不会丢失,没有重复,并且按顺序到达。(类似于打电话)
UDP是TCP/IP协议族中的一部分,它是一种无连接的协议。与TCP不同,UDP在发送数据之前无需建立和维护连接,这使得UDP具有较低的传输延迟和较高的效率。然而,由于这种无连接的特性,UDP不提供数据传输的可靠性保证。
类型 | 协议 |
TCP | HTTP、HTTPS、FTP、POP3、SMTP、Telent、SSH等 |
UDP | DHCP、NTP、BOOTP等 |
TCP的三次握手和四次挥手
什么是三次握手?
在网络数据传输中,传输层协议TCP是要建立连接的可靠传输,TCP建立连接的过程,我们称为三次握手。
三次握手的具体细节:客户端向服务端发送SYN -> 服务端返回SYN,ACK -> 客户端发送ACK
SYN:“同步序列编号”(Synchronize Sequence Numbers)的缩写,是TCP/IP建立连接时使用的握手信号。
ACK:ACK是TCP协议中的确认报文段,用于告知发送方数据已成功接收,确保通信可靠性,支持流量和拥塞控制。
问:传了SYN,为啥还要传ACK?
双方通信无误必须是两者相互发送消息无误。传了SYN,证明发送方到接收方的通道没有问题。但是接收方到发送方的通道还是需要ACK信号来验证。
什么是四次挥手?
数据传输结束后,通信的双方都可释放连接,我们将释放连接的过程我们称为四次挥手
MAC地址
MAC地址就像是计算机网络中每台计算机的身份证号码,用于唯一标识网络设备。
和IP地址差不多,但有一定的区别
- • IP地址是服务商给你的,mac地址是你的网卡物理地址;
- • IP地址局域网内可以随便更改,但是mac地址一般不能更改;
- • 长度不同。IP地址为32位,MAC地址为48位;
- • 寻址协议层不同。IP地址应用于OSI第三层,即网络层,而MAC地址应用在OSI第二层,即数据链路层。
IPV4地址
IPv4地址就是给因特网上的每一台主机(或路由器)的每一个接口分配一个在全世界范围内是唯一的32比特的标识符
由于32比特的IPv4地址不方便阅读,所以用点分十进制表示方法以方便用户使用。例如,
IPV4分类
子网掩码
ARP协议
什么是ARP协议
ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写。
ARP的作用
在以太网环境中,数据的传输所依懒的是MAC地址而非IP地址,而将已知IP地址转换为MAC地址的工作是由ARP协议来完成的。
ARP欺骗的攻击与防御
介绍
攻击者可以向某一主机发送伪ARP应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,这就构成了一个ARP欺骗。
通俗来讲,就是骗电脑,骗它说我这里是能让你上网的,或者随便说一个地方,但是呢那个地方却不会让它上网,所以它就断网了。当然这是最简单的。
而我要是骗它说我这里是能让你上网,然把它的上网请求拿给真正能上网的地方,它就能上网了。不过呢我是能够看到它的上网信息的,如果厉害点,它在登录账号的时候,我还能看到账号密码。当然这是违反法律的,不能做。
#示例
arpspoof -i ethe -t 192.168.135.128 192.168.135.2
#告诉主机 A ,我是网关
arpspoof -i ethe -t 192.168.135.128(目标主机 A) 192.168.135.2(网关)
#或者,告诉主机 A ,我是主机 B
arpspoof -i ethg -t 192.168.135.128(目标主机 A192.168.135.110(目标主机 B)
eth0 :#表示网卡
第一个 IP :#表示被攻击者
第二个 IP : #表示在被攻击者 ARP 缓存表中伪造的身份(比如这里写网关 ip,它会认为你才是网关;这里写主机 8 的IP ,它会认为你是主机 B)
-i:#表示 interface 选择网卡
-t :#表示目标
遭受 ARP 攻击后的现象
使用局域网时会突然掉线,过一段时间后又会恢复正常。比如客户端状态频频变红,用户频繁断网,E 浏览器频繁出错,以及一些常用软件出现故障等。
如果局域网中是通过身份认证上网的,会突然出现可认证,但不能上网的现象(无法ping通网关),重启机器或在 MSDOS 窗口下运行命令arp -d
后,又可恢复上网。
ARP欺骗木马只需成功感染一台电脑,就可能导致整个局域网都无法上网,严重的甚至可能带来整个网络的瘫痪。该木马发作时除了会导致同一局域网内的其他用户上网出现时断时续的现象外,还会窃取用户密码。如盗取 QQ 密码、盗取各种网络游戏密码和账号去做金钱交易,盗窃网上银行账号来做非法交易活动等,这是木马的惯用伎俩,给用户造成了很大的不便和巨大的经济损失。
防御措施
1、绑定mac地址
2、使用静态arp缓存表
3、使用arp服务器,通过服务器来查找arp转换表来响应其他机器的广播
4、使用arp欺骗防护软件
网络协议分析工具
简介
Wireshark
是网络安全领域的强大工具,用于捕获、显示和分析网络数据包,诊断问题、检测攻击、监控流量和捕获恶意软件,如勒索软件的加密数据包。
Wireshark 抓包示例
先介绍一个使用wireshark工具抓取ping命令操作的示例,感受一下抓包的具体过程。
1、打开wireshark,主界面如下:
2、选择对应的网卡,右键,会出现Start Capture(开始捕获),点击即可进行捕获该网络信息
3、执行需要抓包的操作,如 ping www.baidu.com
Win+R >> CMD >> ping -t www.baidu.com
4、操作完成后相关数据包就抓取到了。为避免其他无用的数据包影响分析,可以通过在过滤栏设置过滤 条件进行数据包列表过滤,获取结果如下:
说明: ip.addr == 192.168.110.39 and icmp
表示只显示 ICPM 协议且源主机 IP 或者目的主机 IP 为 119.75.217.26 的数据包。
WireShark 抓包界面简介
1. 默认界面布局
2. 编辑界面布局
1、菜单栏编辑 >> 首选项
- 1. 外观 >> 布局
4、布局设置完成
数据着色规则
数据包列表区中不同的协议使用了不同的颜色区分。
视图(View) >> 查看或编辑着色规则
WireShark 主要界面分析
显示过滤器(Display Filter)
用于设置过滤条件进行数据包列表过滤。菜单路径:分析(Analyze)>> 显示过滤器(Display Filters)
数据包列表(Packet List Pane)
数据包列表(Packet List Pane),显示捕获到的数据包, 不同协议的数据包使用了不同的颜色区分显 示。
每个数据包包含: 编号(No.),时间截(Time),源地址(Source),目标地址(Destination),协议(Protocol),长度(Length),以及数据包信息(Info)。
数据包详细信息(Packet Details Pane)
以HTTP 数据报为例各行信息分别为:
- 1. Frame:物理层的数据帧概况
- 2. Ethernet II (以太网 II):数据链路层以太网帧头部信息
- 3. Internet Protocol Version 4(网际协议版本4):互联网层 IP 包头部信息
- 4. Transmission Control Protocol(传输控制协议):传输层 T 的数据段头部信息,此处是 TCP
- 5. Hypertext Transfer Protocol(超文本传输协议,即HTTP):应用层的信息,此处是HTTP 协议
TCP包的具体内容
从下图可以看到wireshark捕获到的TCP包中的每个字段。
wireshark过滤器表达式的规则
抓包过滤器语法和实例
抓包过滤器类型:
- • Type 类型(host 主机、net 网络、port 端口)
- • 方向 Dir(src 来源、dst 目标)
- • 协议 Proto(ether 以太网、ip、tcp、udp、http、icmp、ftp等)
- • 逻辑运算符(&& 与、|| 或、!非)
显示过滤器语法和实例
注意这里区分大小写
课后习题
- 1. 某主机的 IP 地址为 180.80.77.55 ,子网掩码 255.255.252.0 ,若该主机向其所在子网发送广播分 组,则目的地址可以是( )
A. 180.80.76.0 B. 180.80.76.255
C.180.80.77.255 D. 180.80.79.255
欢迎关注我的公众号【小羽网安】,里面不定期更新我自己的学习记录,用于更好的帮助萌新们解决问题。