wireshark抓包分析 --https

https://blog.csdn.net/u010726042/article/details/53408077

SSL协议栈位置介于TCP和应用层之间,分为SSL记录协议层和SSL握手协议层。其中SSL握手协议层又分为SSL握手协议、SSL密钥更改协议和SSL警告协议。SSL握手协议作用是在通信双方之间协商出密钥,SSL记录层的作用是定义如何对上层的协议进行封装。SSL记录协议将数据块进行拆分压缩,计算消息验证码,加密,封装记录头然后进行传输。

 

SSL握手:

1、  初始化阶段。客户端创建随机数,发送ClientHello 将随机数连同自己支持的协议版本、加密算法和压缩算法发送给服务器。服务器回复ServerHello将自己生成的随机数连同选择的协议版本、加密算法和压缩算法给客户端。

2、  认证阶段。服务器发送ServerHello的同时可能将包含自己公钥的证书发送给客户端(Certificate),并请求客户端的证书(Certificate Request)。

3、  密钥协商阶段。客户端验证证书,如果收到Certificate Request则发送包含自己公钥的证书,同时对此前所有握手消息进行散列运算,并使用加密算法进行加密发送给服务器。同时,创建随机数pre-master-secret并使用服务器公钥进行加密发送。服务器收到这个ClientKeyExchange之后解密得到pre-master-secret。服务器和客户端利用1阶段的随机数,能够计算得出master-secret。

4、  握手终止。服务器和客户端分别通过ChangeCipherSpec消息告知伺候使用master-secret对连接进行加密和解密,并向对方发送终止消息(Finished)。



HTTPS(Hypertext TransferProtocol over Secure Socket Layer,基于SSL的HTTP协议),端口443,需要向CA申请证书,通过SSL握手建立安全通道,利用协商密钥对数据进行对称加密通信。

使用wireshark过滤ssl流量,可以看到有几个明显的ssl会话建立包,例如client hello,server hello等;


首先发送ClientHello 将随机数连同自己支持的协议版本、加密算法和压缩算法发送给服务器,流量包里也能看到客户端发送支持的加密算法

server hello包里能看到服务端选择的加密算法;


服务器发送ServerHello的同时可能将包含自己公钥的证书发送给客户端(Certificate);

客户端验证证书,如果收到Certificate Request则发送包含自己公钥的证书,同时对此前所有握手消息进行散列运算,并使用加密算法进行加密发送给服务器;

wireshark抓到的https流量包经过了ssl加密,那么我们如何才能查看解密的数据呢?Firefox和Chrome浏览器都支持用日记文件的方式记录下用来加密TLS数据包对称会话秘钥的,可以通过配置sslkeyfile的链接,将wireshark的中ssl解密指向该文件即可。环境变量中新建用户变量SSLKEYLOGFILE=/sslkey.log文件,之后再wireshark中ssl配置中制定该文件位置即可,具体配置请参考:

配置解密ssl参考链接--http://www.2cto.com/article/201502/377678.html

配置完成,重启浏览器之后,就会发现wireshark中多了一个Decrypted SSL data选项,点击即可查看解密明文信息;

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这个问题的意思是让我们用中文回答:Wireshark抓包分析httpsWireshark是一款开源的网络协议分析软件,可以实时深入地分析网络通信数据包的内容。 https是一种加密的网络通信协议,用于保护数据传输的安全性。在Wireshark中,我们可以通过抓包分析https的通信过程,查看加密的数据包内容。这对于网络安全的检测、调试和优化有很大的帮助。 ### 回答2: Wireshark是一款网络协议分析工具,可以用来抓包分析网络数据包。在网络中,有些网站使用了HTTPS协议进行通信,通过SSL加密来保护传输内容的安全性。但是对于网络管理员或者安全研究人员来说,想要对HTTPS的内容进行抓包分析是非常有必要的,以便及时发现安全隐患和问题。 抓取HTTPS数据包时,需要先安装配置SSL证书,这样才能对SSL加密的数据进行解密,并获取其中的明文信息。在Wireshark中,我们可以通过“Edit”->“Preferences”->“Protocols”->“SSL”来设置SSL证书。在“SSL protocol”中选择“(Pre)-Master-Secret log filename”,然后选择一个输出文件,保存SSL协议过程中的Master Secret值。此操作完成后,Wireshark就可以用这个文件来解密抓取到的HTTPS数据包。 如果需要分析HTTP协议在HTTPS中的流量,可以在“Analyze”->“Follow SSL Stream”中开启“Follow TCP stream”,这样可以看到HTTP请求和响应中的明文数据。如果需要分析HTTPS中的手动操作,可以使用“Decrypt SSL Traffic”解密传输内容。 在逐步剖析HTTPS中的数据包时,可以查看SSL协议的握手过程,包括客户端和服务端之间的协议版本、密钥协商的算法、证书验证过程、会话密钥等信息。同时,也可以查看HTTP协议的请求和响应,了解具体的网络传输内容。通过这些分析,可以发现协议问题和潜在漏洞,进一步加强网络安全。 总之,使用Wireshark抓包分析HTTPS协议时,需要注意设置SSL证书,解密SSL协议内容,从握手过程和HTTP请求响应中分析协议问题和潜在漏洞,以提高网络安全和保护网络信息。 ### 回答3: Wireshark是一款非常强大的网络协议分析工具,可用于分析网络流量中的各种网络协议。其中,wireshark抓包可以用来捕获网络数据包,显示每个数据包的详细信息,并分析这些数据包的内容。而对于HTTPSwireshark抓包分析也同样适用。 HTTP是一种明文传输的协议,没有任何加密机制,所有的通信数据都是明文传输的。这种方式虽然简单,但是极易被恶意攻击者截获和窃取敏感信息。而HTTPS则是基于TLS/SSL加密的HTTP协议,通过对数据进行加密来保护通信安全。wireshark抓包分析时,可以利用Wireshark中内置的SSL解密功能来解码HTTPS流量,以便分析和查看通信的详细信息。 首先,需要在Wireshark中设置解密HTTPS流量。具体方法如下:首先打开Wireshark,在“Edit->Preferences->Protocols->SSL”下,将“RSA keys list”设置为客户端与服务器端的预热密钥列表文件,这个文件可以在SSLKEYLOGFILE环境变量中进行定义。接着开启HTTPS流量捕获功能,即可开始分析。 在wireshark抓包分析HTTPS时,可以从中查看和分析各种HTTPS协议的细节信息。例如,Wireshark可以捕获并显示HTTPS握手过程中的所有信息,包括客户端发送的ClientHello消息,服务器发送的ServerHello,Certificate和ServerHelloDone等消息。此外,还可以看到每个数据包的详细信息,包括源地址,目的地址,协议类型、数据长度等。根据这些信息,可以分析数据包的内容,调试和解决网络故障和安全问题。 综上所述,采用wireshark抓包方法分析HTTPS流量具有非常重要的优势,可以保障通信安全,帮助分析和解决网络故障和安全问题,提高网络性能和安全性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值