加密流量的一些预备知识

1. burpsuite为什么要上传自己的证书给浏览器才能作为代理呢?

解答

理解:
在客户端A和服务器端B通信的过程中,burpsuite相当于充当了服务器端B的角色,伪装成服务器在和客户端A通信。所以原来A和B通信需要经过以下流程:

(1)可信机构C用自己的私钥加密B的公钥(其实就是服务器端的证书)发给A
(2)A用证书中的可信机构C的公钥解密得到B的公钥
(3)然后A用B的公钥加密对称密钥给B
(4)A和B之间用A的对称密钥通信

有了burpsuite就变成了:

(1)可信机构C用自己的私钥加密B的公钥(其实就是服务器端的证书)发给A
(2)burpsuite没有B的私钥,所以不能直接将服务器端的证书直接发给A,所以他就把这个证书扣下,并用可信机构C的公钥解密获得了B的公钥,然后给A发了一个自己的证书(可信机构C用自己的私钥加密burpsuite的公钥)(该证书需要A信任,这就是为什么要把burpsuite的证书设置到浏览器的原因
(3)A用可信机构C的公钥解密得到burpsuite的公钥
(4)然后A用burpsuite的公钥加密对称密钥给他以为的B(其实发给了burpsuite)
(5)burpsuite用自己的私钥解密,获得了对称密钥,再将对称密钥用B的公钥(在第二步获得了)加密,发送给B
(6)然后B用自己的私钥解密,得到对称密钥
(7)这样一来burpsuite获取了A和B之间通信的对称密钥,从而可以以明文的方式获取https的内容。

那这样一来,是不是提供了一种攻击思路呢?我们不要忘了,这种中间人攻击的关键在于浏览器A信任了burpsuite的证书,倘若他不信任该证书,那么这种攻击到第三步就进行不下去了。所以该中间人攻击一般是无法实施的。因此我们不要轻易的去信任某些软件或服务器端的证书,否则就可能遭受这种中间人攻击。

2. 会话、流、数据包之间的关系。

  • 在计算机网络中,定义5元组(源IP,目的IP,源端口,目的端口,协议)相同的一系列数据包同属于一个
  • 源IP和目的IP相反,源端口和目的端口相反,协议相同的另一个流就是它的反向流
  • 前向流和反向流就构成了一个双向流即会话

流:指具有相同五元组(源IP,源端口,目的IP,目的端口,协议)的所有包
在这里插入图片描述

会话:指由双向流组成的所有包(反向流:源和目的互换)
在这里插入图片描述

3. pcap文件详解

(1)pcap文件结构
(2)python解析pcap包(不使用第三方库,逐层分析)
(3)[Python] 解析Pcap三个Python库(Dpkt Scapy Pyshark)应用实例(重点)
>Dpkt:速度快 资料偏少 不够全
>Scapy:速度慢 资料最多
python之用scapy分层解析pcap报文(Ethernet帧、IP数据包、TCP数据包、UDP数据包、Raw数据包)
python之用scapy解析pcap报文(两种读取pcap文件的方式)
>Pyshark:速度适中 需要系统安装了wireshark

4. 什么是SAN

使用 OpenSSL 制作一个包含 SAN(Subject Alternative Name)的证书

5. 如何提取加密协议相关的特征

zeek工具

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值