热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:讲给前端的网络安全:网络模型与攻击手段

本文由编程笔记#小编为大家整理,主要介绍了讲给前端的网络安全:网络模型与攻击手段相关的知识,希望对你有一定的参考价值。
本文由编程笔记#小编为大家整理,主要介绍了讲给前端的网络安全: 网络模型与攻击手段相关的知识,希望对你有一定的参考价值。




// 每日前端夜话 第444篇
// 正文共:1400 字
// 预计阅读时间:7 分钟



这次基于 OSI 和 TCP/IP 这两个模型来介绍可能发生的攻击手段
















OSI 和 TCP/IP 模型



讲给前端的网络安全(3): 网络模型与攻击手段

从上图可以看到,OSI 模型将网络划分成为七层,而TCP / IP模型将其简化成四层。本文会使用 OSI 模型的前三层(1〜3),与 TCP/IP 模型的后两层(3〜4)来讲解常见的网络攻击。


物理层(OSI Layer 1)


物理层面的攻击很难发生在严格控管的机房环境,而在办公室、家庭、咖啡馆等网络环境很常见。


物理层的传输基本上是 010101 的数字信号,基本的传输媒介是使用光、电与无线电。先看一种没什么技术含量的 L1 攻击,大家应该都看过这个东西。



讲给前端的网络安全(3): 网络模型与攻击手段

红框内就是 L1 等级的防火墙,剪断之后就能阻挡恶意流量,当然正常流量也一起被干掉了。这就是不需要什么技术的 L1 级攻击,把通信介质断开就可以达到 DoS (Deined of Service)的效果,当然这没什么技术含量。


不过还有需要更多技术的 L1 攻击。最常见的就是被称为 Tapping 的攻击,Tap 这个词是窃听的意思。有些网络商也将 TAP 称为测试访问点(Test Access Point)或终端访问点(Terminal Access Point)来美化这种行为。


TAP是一把双刃剑,可以让网管分析数据流,但如果到恶意用户手中就会变成窃听的工具。TAP 主要分为两种,主动式与被动式。


被动式 TAP(Passive TAP)


被动式 TAP 就是把一部分传输介质复制出来。


例如:假如是传统的铜质双绞线,就可以在实体上把导线线接出来;而光纤中的光脉冲信号则可以用分光器把光线分离出来;无线信号的话大家都能收到,直接收就行了,但是会有很大机率对原信号造成干扰或衰减。


因为被动式是直接对传输介质本身复制的方式,所以不会因为监听设备死掉而造成连接中断的情况。不过要注意,被动式指的是不主动提供新的信号源来中继数据信号,这与后面要说的零停机(Zero Downtime) 不太一样。被动 TAP 可以做到零停机,但不是所有的方法都可以。


主动式TAP(Active TAP)


主动式 TAP 需要主动提供新的信号源来做中继,避免信号衰减。主动式 TAP 可以做到中间人(MITM)攻击,同时也能避免被动式 TAP 信号干扰与衰减的问题。


而主动式的缺点也很明显,由于新的信号源是由中间人主动提供的,当中间人的主动式 TAP 装置故障或掉线后,整个连线将会中断。


链路层(OSI Layer 2)


链路层就是 L2,L2 交换机的 L2 值得就是这个它。


链路层攻击基本上都发生在你可以控制的设备周围,可以通过一些链路层的通信协议来进行攻击。比较常见的是假冒自己是另一台电脑(Fake Src MAC,ARP Spoofing),或者是假冒成一台交换器来影响周边设备(STP Spoofing、Trunking Attack)。L2 攻击可以有效的影响周边的设备。


网络层(OSI Layer 3)


L3 可以攻击的手段相对少一些。主要攻击的手段是伪造发包的来源 IP,让目的机器认为这个包是从其他机器来的,这种攻击被称为 IP 欺骗,是比较常见的 L3 攻击。比较简单的终端是无法阻止这种攻击的,需要在中途或来源断绝它。


传输层(OSI Layer 4, TCP/IP Layer 3)


传输层算是问题比较少的一层,这层主要需要配合前面的网络层进行攻击。因为现在主要用的都是 TCP 与 UDP,如果可以猜到对方使用的 TCP/UDP 端口,就可以进行连接并攻击。但是由于猜对的机率很小,所以没什么太大的价值,但是如果可以听到单方向的流量,则可以轻易的实现攻击。


应用层(TCP/IP Layer 4)


OSI L4 以上全都被 TCP/IP模型归为第四层,而这层最主要就是前端最关心的 Web 安全等问题。像是 SQL 注入、XSS、SSRF 之类的攻击都在这里。


总结


本文概述了 OSI 与 TCP/IP 模型中每一层可能会发生的安全问题,以后文章将会讲解这些攻击的细节,并会有一些实际操作。











讲给前端的网络安全(3): 网络模型与攻击手段





精彩文章回顾,点击直达







讲给前端的网络安全(3): 网络模型与攻击手段











讲给前端的网络安全(3): 网络模型与攻击手段


点分享




讲给前端的网络安全(3): 网络模型与攻击手段


点收藏





点点赞





点在看






推荐阅读
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • DNN Community 和 Professional 版本的主要差异
    本文详细解析了 DotNetNuke (DNN) 的两种主要版本:Community 和 Professional。通过对比两者的功能和附加组件,帮助用户选择最适合其需求的版本。 ... [详细]
  • UNP 第9章:主机名与地址转换
    本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ... [详细]
  • golang常用库:配置文件解析库/管理工具viper使用
    golang常用库:配置文件解析库管理工具-viper使用-一、viper简介viper配置管理解析库,是由大神SteveFrancia开发,他在google领导着golang的 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • 在前两篇文章中,我们探讨了 ControllerDescriptor 和 ActionDescriptor 这两个描述对象,分别对应控制器和操作方法。本文将基于 MVC3 源码进一步分析 ParameterDescriptor,即用于描述 Action 方法参数的对象,并详细介绍其工作原理。 ... [详细]
  • 本文详细介绍了Akka中的BackoffSupervisor机制,探讨其在处理持久化失败和Actor重启时的应用。通过具体示例,展示了如何配置和使用BackoffSupervisor以实现更细粒度的异常处理。 ... [详细]
  • Android 渐变圆环加载控件实现
    本文介绍了如何在 Android 中创建一个自定义的渐变圆环加载控件,该控件已在多个知名应用中使用。我们将详细探讨其工作原理和实现方法。 ... [详细]
  • 360SRC安全应急响应:从漏洞提交到修复的全过程
    本文详细介绍了360SRC平台处理一起关键安全事件的过程,涵盖从漏洞提交、验证、排查到最终修复的各个环节。通过这一案例,展示了360在安全应急响应方面的专业能力和严谨态度。 ... [详细]
author-avatar
手机用户2602883205_410
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有