目录

代理服务器

正向代理,反向代理

正向代理 - 作用

反向代理 - 作用

抓包工具的原理

相关的头部字段

CDN

使用CDN前后

使用CDN前

使用CDN后

网络安全

网络通信中面临的4种安全威胁

网络层 - ARP欺骗

核心步骤举例

防护

Dos、DDoS

传输层 - SYN洪水攻击

传输层 - LAND攻击

DoS、DDoS防御

应用层 - DNS劫持

HTTP协议的安全问题

常见英文

学前须知

如何防止被窃听?

单向散列函数

特点

称呼

常见的几种单向散列函数

如何防止数据被篡改

应用:防止数据被篡改

应用:密码加密


本文参照小码哥的网络协议视频记录

代理服务器


代理服务器(Proxy Server)

特点:本身不生产内容,处于中间位置转发上下游的请求和响应。面向下游的客户端,他是服务器;面向上游的服务器,它是客户端。

正向代理,反向代理


正向代理:代理的对象是客户端。意思是服务的对象是客户端。

反向代理:代理的对象是服务器。

左图是正向代理,右图是方向代理。

正向代理 - 作用


隐藏客户端身份,因为是通过代理服务器发送请求,所以服务器只能收到代理服务器的ip。

绕过防火墙(突破访问限制)。

Internet访问控制。通过路由器设置指定一个客户端为代理服务器的方式,由这台代理服务器控制哪些客户端可以上网,哪些不可以上网。

数据过滤。接Internet访问控制,这台代理服务器在拿到服务器的数据时,可以判断是否是安全的,如果发现不安全,可以不传给客户端。

反向代理 - 作用


隐藏服务器身份安全防护。

负载均衡:当客户端的请求变多时,设置负载均衡服务器来转发请求。该服务器不做运算,而是根据负载均衡算法决定把请求转发给哪台服务器,从而起到根据每台服务器的承受能力分发流量的作用。

抓包工具的原理


Fiddler、Charles等抓包工具的原理:在客户端启动了正向代理服务。

Wireshark的原理是:通过底层驱动,拦截网卡上流过的数据。

相关的头部字段


Via:追加经过的每一台代理服务器的主机名(或域名)。

X-Forwarded-For:追加请求方的IP地址。

X-Real-IP:客户端的真实IP地址。

X-Forward-For X-Real-IP Via
14.14.14.14 14.14.14.14 proxy1(是主机名或域名,不是ip地址)
14.14.14.14,200.11.11.11 14.14.14.14 proxy1,proxy2
为了服务器安全,一般不会追加 proxy2
proxy2,proxy1

CDN


CDN(Content Delivery Network或Content Distribution Network),译为:内容分发网络。

利用最靠近每位用户的服务器,更快更可靠地将音乐,图片,视频等资源文件(一般是静态资源)传递给用户。

使用CDN前后


CDN运营商在全国,乃至全球的各个大枢纽城市都建立了机房。部署了大量拥有高存储高带宽的节点,构建了一个跨运营商,跨地域的专用网络。内容所有者向CDN运营商支付费用,CDN将其内容交付给最终用户。

使用CDN前


使用CDN后


把域名告诉DNS服务器,服务器发现这个域名对应的是CDN资源,于是告诉主机去找CDN DNS服务器。这个CDN服务器会告诉主机一个ip地址,主机根据ip有去请求一个CDN全局负载均衡系统,这个系统会根据主机的ip地址告诉它一个离它最近的节点在哪里,主机就从这个节点去拿数据。

网络安全


网络通信中面临的4种安全威胁


截获:窃听通信内容

中断:中断网络通信

篡改:篡改通信内容

伪造:伪造通信内容

网络层 - ARP欺骗


ARP欺骗(ARP spoofing),又称ARP毒化(ARP poisoning),ARP病毒,ARP攻击。

ARP欺骗可以造成的效果有:可让攻击者获取局域网上的数据包甚至可篡改数据包,可让网络上特定电脑之间无法正常通信(例如网络执法官这样的软件),让送至特定IP地址的流量被错误送到攻击者所取代的地方。

核心步骤举例


假设主机C是攻击者,主机A,B是被攻击者。C只要收到过A,B发送的ARP请求,就会拥有A,B的IP,MAC地址,就可以进行欺骗活动。C发送一个ARP响应给B,把响应包里的源IP设为A的IP地址,源MAC设为C的MAC地址。B收到ARP响应后,更新它的ARP表,把A的MAC地址(IP_A,MAC_A)改为(IP_A,MAC_C)。当B要发送数据包给A时,它根据ARP表来封装数据包的头部,把目标MAC地址设为MAC_C,而非MAC_A。当交换机收到B发送给A的数据包时,根据此包的目标MAC地址(MAC_C)而把数据包转发给C。C收到数据包后,可以把它存起来后再发送给A,达到窃听效果。C也可以篡改数据后才发送数据包给A。

防护


静态ARP。动态ARP是通过发广播得到的,静态ARP是自己添加的。

DHCP Snooping:网络设备可借由DHCP保留网络上各电脑的MAC地址,在伪造的ARP数据包发出时即可侦测到。

利用一些软件监听ARP的不正常变动

Dos、DDoS


DoS攻击(拒绝服务攻击,Denial-of-Service attack)使目标电脑的网络或系统资源耗尽,使服务暂时中断或停止,导致其正常用户无法访问。

DDoS攻击(分布式拒绝服务攻击,Distributed Denial-of-Service attack)。黑客使用网络上两个或以上被攻陷的电脑作为“僵尸”向特定的目标发动DoS攻击。2018年3月,GitHub遭到迄今为止规模最大的DDoS攻击。

DoS攻击可以分为2大类

带宽消耗型:UDP洪水攻击,ICMP洪水攻击。

资源消耗型:SYN洪水攻击,LAND攻击。

传输层 - SYN洪水攻击


SYN洪水攻击(SYN flooding attack)

攻击者发送一系列的SYN请求到目标,然后让目标因收不到ACK(第3次握手)而进行等待,消耗资源。

攻击方法:一种是跳过发送最后的ACK信息,让目标收不到第三次握手。一种是修改源IP地址,让目标送SYN-ACK到伪造的IP地址,因此目标永不可能收到ACK(第3次握手)。

防护:参考RFC 4987

传输层 - LAND攻击


LAND攻击(局域网拒绝服务攻击,Local Area Network Denial attack)通过持续发送相同源地址和目标地址的欺骗数据包,使目标试图与自己连接,消耗系统资源直至崩溃。

有些系统存在设计上的缺陷,允许设备接受并响应来自网络,却宣称来自于设备自身的数据包,导致循环应答。

防护:大多数防火墙都能拦截类似的攻击包,以保护系统。部分操作系统通过发布安全补丁修复了这一漏洞。路由器应同时配置上行与下行筛选器,屏蔽所有源地址与目标地址相同的数据包。

DoS、DDoS防御


防御方式通常为:入侵检测、流量过滤、和多重验证。堵塞网络带宽的流量将被过滤,而正常的流量可正常通过。

防火墙:防火墙可以设置规则,例如允许或拒绝特定通讯协议,端口或IP地址。当攻击从少数不正常的IP地址发出时,可以简单的使用拒绝规则阻止一切从攻击源IP发出的信息。复杂攻击难以用简单规则来阻止,例如80端口遭受攻击时不可能拒绝端口所有的通信,因为同时会阻止合法流量。防火墙可能处于网络架构中过后的位置,路由器可能在恶意流量达到防火墙前即被攻击影响。

交换机:大多数交换机有一定的速度限制和访问控制能力。

路由器:和交换机类似,路由器也有一定的速度限制和访问控制能力。

黑洞引导:将所有受攻击计算机的通信全部发送至一个“黑洞”(空接口或不存在的计算机地址)或者有足够能力处理洪流的网络设备商,以避免网络收到较大影响。

流量清洗:当流量被送到DDoS防护清洗中心时,通过采用抗DDoS软件处理,将正常流量和恶意流量区分开。正常流量则回注回客户网站。

应用层 - DNS劫持


DNS劫持,又称为域名劫持。攻击者篡改了某个域名的解析结果,使得指向该域名的IP变成了另一个IP。导致对相应网址的访问被劫持到另一个不可达的或者假冒的网址,从而实现非法窃取用户信息或者破坏正常网络服务的目的。

如客户端在访问某银行网站时,遭到DNS劫持,ip改到一个仿造的一摸一样的网站,输入账号密码就泄露个人信息了。

为防止DNS劫持,可以考虑使用更靠谱的DNS服务器,比如:114.114.114.114

HTTP劫持:对HTTP数据包进行拦截处理,比如插入JS代码。比如你访问某些网站时,在右下角多了个莫名其妙的弹窗广告,或者点一个按钮,就跳到一个莫名其妙的页面。

HTTP协议的安全问题


HTTP协议默认是采取明文传输的,因此会有很大的安全隐患。常见的提高安全性的方法是对通信内容进行加密后,再进行传输。

常见的加密方式有

不可逆:单向散列函数:MD5、SHA等。

可逆:对称加密:DES、3DES、AES等。非对称加密:RSA等。

其他:混合密码系统,数字签名,证书。

常见英文


encrypt:加密

decrypt:解密

plaintext:明文

ciphertext:密文

学前须知


为了便于学习,设计4个虚拟人物。

Alice、Bob:互相通信。

Eve:窃听者。

Mallory:主动攻击者。

如何防止被窃听?


单向散列函数


单项散列函数(One-way hash function)可以根据消息内容计算出散列值。散列值的长度和消息的长度无关,无论消息是1bit,10M,100G,单向散列函数都会计算出固定长度的散列值。

特点


根据任意长度的消息,计算出固定长度的散列值。计算速度快,能快速计算出散列值。消息不同,散列值也不同。具备单向性。

称呼


单向散列函数,也被称为消息摘要函数(message digest function),也叫哈希函数(hash function)。输出的散列值,也被称为消息摘要(message digest)或指纹(fingerprint)

常见的几种单向散列函数


MD4、MD5:产生128bit的散列值,MD就是Message Digest的缩写。目前已经不安全,因为已经有工具可以用暴力枚举法解密大部分密码。

SHA-1:产生160bit的散列值,目前已经不安全。

SHA-2:SHA-256、SHA-384、SHA-512,散列值长度分别是256bit,384bit,512bit。

SHA-3:全新标准

如何防止数据被篡改


应用:防止数据被篡改


应用:密码加密


数据库存储的也是加密后的密码,且不可逆,这样如果数据库里的数据泄漏了的话,就不会直接泄漏用户信息。

与https相关的加密方法在这篇文章↓

对称加密和非对称加密、数字签名和证书

HTTP协议之代理服务器、CDN、网络安全相关推荐

  1. 来看看CDN网络安全防护的方案

    前言 今天通过SaltStack漏洞这个药引子,聊聊CDN网络安全防护这个话题.先聊聊,CDN定义:Content Delivery Network,内容分发网络,给用户带来的价值,加速获得其静态或者 ...

  2. Fikker 反向代理服务器CDN 应用优化参考

    Fikker 反向代理服务器CDN 应用优化参考 1.说明: a.本 CDN 优化指南主要针对 Fikker 网站缓存 3.4.9 及其更高版本,不支持低版本. b.用于提升 CDN 应用的安全性,高 ...

  3. SIP协议之代理服务器

    SIP代理服务器是路由SIP请求到用户代理服务端(UAS)和路由SIP应答到用户代理客户端(UAC)的SIP网元.一个请求可能会经过一个或多个代理到达UAS.每个代理都会执行路由决策.修改请求等操作, ...

  4. 网络协议底层原理7——网络安全

    网络通信中面临的4种安全威胁: 截获:窃听通信内容 中断:中断网络通信 篡改:篡改通信内容 伪造:伪造通信内容 1.网络层 - ARP欺骗 ARP欺骗 (ARP spoofing),又称ARP毒化 ( ...

  5. SRT协议应用于直播加速CDN,超越RTMP,实现200ms以下的 低延时、弱网传输

    什么是SRT协议? SRT是由Haivision和Wowza共同创建的SRT联盟所发起的互联网传输协议,是一种开源.免费和应用灵活的规范,它的性能与专用的协议一样优秀,能够同时在不同制造商的产品之间工 ...

  6. 又拍云再放大招,CDN同时支持HTTP/2和SPDY/3.1协议

    任何新标准的普及,都离不开业界的共同努力.近日,又拍云宣布其CDN产品全面支持HTTP/2协议,减少页面加载时的拥堵现象,降低服务器及网络负载,带来更快的访问体验.不仅如此,又拍云CDN加速同时兼容S ...

  7. ipsec 网络安全协议

     IPSec协议简介 1. IPSec协议 IPSec 是一系列网络安全协议的总称,它是由 IETF(Internet Engineering Task Force,Internet工程任务组)开发的 ...

  8. 网络服务器安全协议,ipsec 网络安全协议

    IPSec协议简介 1. IPSec协议 IPSec 是一系列网络安全协议的总称,它是由 IETF(Internet Engineering Task Force,Internet工程任务组)开发的, ...

  9. 计算机网络 安全协议,网络安全协议包括哪些

    我们都知道网络安全,但是网络安全协议您知道吗?网络安全协议包括哪些?了解网络安全常识,首先就要了解佰佰安全网小编就带您认识一下吧. 计算机网络安全协议的内容包括: 计算机网络设备安全.计算机网络系统安 ...

最新文章

  1. flume bucketpath的bug一例
  2. ubuntu上开启SSH服务
  3. KVM总结-KVM性能优化之网络性能优化
  4. Index of c#
  5. 计算机系答辩麻烦,计算机专业的你,答辩时有多卑微?
  6. 分布式 基本理论 BASE
  7. Adobe reader 在打开时如何恢复上一次阅读位置
  8. 共享主机与虚拟机文件方式一
  9. 艾伟也谈项目管理,开始一个项目时最重要的是什么?
  10. Hive insert into小文件问题优化解决
  11. 【爬虫】selenium动态页面请求与模拟登录知乎
  12. redux之createStore
  13. POJ1015 Jury Compromise【背包问题】
  14. c++11 多线程依次打印ABC
  15. 包分类算法最坏情况下性能比较
  16. 在线答题小程序一站式开发(现源码)
  17. 能播放qlv格式的android软件,QLV用什么播放器 腾讯QLV转换MP4方法
  18. Pycharm下载库出错ERROR: Could not find a version that satisfies the requirement
  19. ajax实现文件的上传(局部刷新页面,文件上传)
  20. 最近网络上很多都在聊自动阅读,今天我们好好说说自动阅读到底怎么样

热门文章

  1. 2017.11.8 Noip2017 考前模拟赛
  2. Linux常用命令(超全面)
  3. Python challenge 全部题解
  4. 小数乘法的C语言,小数乘法 5
  5. 有关声音信号的那么点知识
  6. quartz定时任务补录处理
  7. 【阿朱2万字长文】我做大型企业技术创新顾问的一点经验总结
  8. 如何向icloud上传文件_如何将苹果手机iCloud网盘中的文件分享给好友?
  9. pptp和l2tp有什么区别
  10. KITTI VOC COCO 在线国内下载/百度云