• 应用层协议分析-HTTPS协议分析


    Secure Socket Layer(SSL)俗称安全套接层,是由Netscape Communitcation于1990年开发,用于保障Word Wide Web(WWW)通讯的安全。主要任务是提供私密性,信息完整性和身份认证。1994年改版为SSLv2,1995年改版为SSLv3。
    Transport Layer Security(TLS)标准协议由IETF于1999年颁布,整体来说TLS非常类似与SSLv3,只是对SSLv3做了些增加和修改。
    SSL协议概述:SSL是一个不依赖于平台和运用程序的协议,用于保障运用安全,SSL在传输层和运用层之间,就像运用层连接到传输层的一个插口。
    在这里插入图片描述SSL连接的建立有两个主要的阶段:
    第一阶段:Handshake phase(握手阶段)
    a、协商加密算法
    b、认证服务器
    c、建立用于加密和HMAC用的密钥
    第二阶段:Secure data transfer phase(安全的数据传输阶段)
    在已经建立的SSL连接里安全的传输数据
    SSL是一个层次化的协议,最底层是SSL record protocol(SSL纪录协议),record protocol包含一些信息类型或者说是协议,用于完成不同的任务。
    在这里插入图片描述下面我们对SSL/TLS里边的每一个协议的主要作用进行介绍:
    一、Record Protocol:(记录协议)是主要的封装协议,它传输不同的高层协议和运用层数据。它从上层用户协议获取信息并且传输,执行需要的任务,例如:分片,压缩,运用MAC和加密,并且传输最终数据。它也执行反向行为,解密,确认,解压缩和重组装来获取数据。记录协议包括四个上层客户协议,Handshake(握手)协议,Alert(告警)协议,Change Cipher Spec(修改密钥说明)协议,Application Data(运用层数据)协议。
    二、Handshake Protocols: 握手协议负责建立和恢复SSL会话。它由三个子协议组成。
    a、Handshake Protocol(握手协议)协商SSL会话的安全参数。
    b、Alert Protocol(告警协议) 一个事务管理协议,用于在SSL对等体间传递告警信息。告警信息包括,1.errors(错误),2.exception conditions(异常状况)例如:错误的MAC或者解密失败,3.notification (通告)例如:会话终止。
    c、Change Cipher Spec Protocol(修改密钥说明)协议,用于在后续记录中通告密钥策略转换。
    Handshake protocols(握手协议)用于建立SSL客户和服务器之间的连接,这个过程由如下这几个主要任务组成:
    1、Negotiate security capabilities(协商安全能力):处理协议版本和加密算法。
    2、Authentication(认证):客户认证服务器,当然服务器也可以认证客户。
    3、Key exchange(密钥交换):双方交换用于产生master keys(主密钥)的密钥或信息。
    4、Key derivation(密钥引出):双方引出master secret(主秘密),这个主秘密用于产生用于数据加密和MAC的密钥。
    三、Application Data protocol: (运用程序数据协议)处理上层运用程序数据的传输。

    有关ssl搭建可以看我以前写的文章

    centos7搭建CA服务器颁发ssl证书
    Winserver03-Web SSL服务搭建
    centos7_vsftpd-ssl/tls搭建及ftp加固

    抓包分析

    在这里插入图片描述在这里插入图片描述在这里插入图片描述

  • 相关阅读:
    nyoj-707-A Simple Problem
    nyoj-290-动物统计加强版
    nyoj-27-水池数目
    nyoj-92-图像有用区域
    nyoj-82-迷宫寻宝(一)
    nyoj-289-苹果
    nyoj-311-完全背包
    Docker: docker network 容器网络
    Docker: docker container常用命令实战(2)-数据持久化
    Docker: docker container常用命令实战
  • 原文地址:https://www.cnblogs.com/cqnswp/p/12568849.html
Copyright © 2020-2023  润新知