使用burpsuite验证https证书是否安全
来源:互联网 发布:js手指滑动图片轮播 编辑:程序博客网 时间:2024/06/07 09:01
为什么要验证https证书?
https是安全的传输过程,一旦建立连接便以加密形式通信,正常情况下窃听者无法得到私钥也无法解密数据,这些是由安全证书RSA本身特性保证的
然而如果在https建立过程中,未对证书做校验,攻击者可以伪造证书骗取密钥以解密之后的数据流,正如fiddler的角色:
首先fiddler截获客户端浏览器发送给服务器的https请求, 此时还未建立握手。
第一步, fiddler向服务器发送请求进行握手, 获取到服务器的CA证书, 用根证书公钥进行解密, 验证服务器数据签名, 获取到服务器CA证书公钥。
第二步, fiddler伪造自己的CA证书, 冒充服务器证书传递给客户端浏览器, 客户端浏览器做跟fiddler一样的事。
第三步, 客户端浏器生成https通信用的对称密钥, 用fiddler伪造的证书公钥加密后传递给服务器, 被fiddler截获。
第四步, fiddler将截获的密文用自己伪造证书的私钥解开, 获得https通信用的对称密钥。
第五步, fiddler将对称密钥用服务器证书公钥加密传递给服务器, 服务器用私钥解开后建立信任, 握手完成, 用对称密钥加密消息, 开始通信。
第六步, fiddler接收到服务器发送的密文, 用对称密钥解开, 获得服务器发送的明文。再次加密, 发送给客户端浏览器。
第七步, 客户端向服务器发送消息, 用对称密钥加密, 被fidller截获后, 解密获得明文。
1.环境配置
①导出证书
我测试的是iphone端,首先安装证书,先把证书导出
Proxy -> Options -> Proxy Listeners -> import / export CA certificate 出现CA Certificate对话框
Export -> Certificate in DER format -> Next -> 保存为 tmp.cer -> Next ....
②手机端下载证书
在本地建立简单的Http服务器,吧tmp.cer放到其中,用iphone登录自己的网站下载cer,会自动识别为证书,安装即可
(在这里记得把以前重复安装的证书删掉,否则不生效,笔者在这里栽了好久)
③手机端设置代理
设置iphone的代理,细节不赘述(主机建立热点保证和手机在同一个wifi,设置代理ip=???? port=8080)
④设置burp代理服务器
Proxy -> Options -> Proxy Listeners ,listener里面默认有一项127.0.0.1:8080,选择Edit,Bind to address从Lookback only修改为All interfaces
2.设置假证书
设置前面listener的Certificate,让然在Edit proxy listener页面,Certificate选项卡有三项:
Use a self-signed certificate使用自签名证书,用于检测伪造证书为自签名情况
Generate CA-signed per-host certificates使用目标域名CA签名的证书,这是正常情况,代理工具会为每个域名生成证书
Generate a CA-signed certificate with a specific hostname使用指定域名CA签名的证书,用于检测伪造host签名情况
Use a custom certificate(PKCS#12)使用用户自定义证书,用于检测其他伪造证书情况,如假日期
设置以后立即生效
现在尝试对https://www.baidu.com做一次校验,选择指定域名CA签名这种情况,设置为*.qq.com
正常情况下,www.baidu.com匹配才能通过,如果*.qq.com被通过了,说明存在https未验证host漏洞
结果为无法连接,说明浏览器做了校验域名
- 使用burpsuite验证https证书是否安全
- Android:Https跳过证书验证、Https使用证书、HttpClient、
- https安全协议 ssl证书使用心得
- okhttp使用https忽略证书验证
- okhttp使用https忽略证书验证
- FireFox+burpsuite安全相关使用
- iOS HTTPS安全请求 验证服务器返回的证书
- WCF使用安全证书验证消息加密
- Https验证证书
- Https 证书验证问题
- https之证书验证
- 使用burpsuite抓火狐浏览器HTTPS包
- AFNetworking2安全的使用自签证书访问HTTPS
- AFNetworking2安全的使用自签证书访问HTTPS
- java安全证书验证
- tomcat7配置https安全证书
- https 安全验证问题
- OKHttp HTTPS 请求证书验证 PEM证书
- eclipse配置spring4.0环境详细教程
- Unity3d之设计模式(三)观察者模式
- 使用Gitlab一键安装包后的日常备份恢复与迁移
- Java 8 Stream API Features Intermediate operations & Terminal operations
- java数组初始化和定义
- 使用burpsuite验证https证书是否安全
- UI设计图的标注工具大比拼
- Mybatis3+SpringMVC整合
- 创业公司的打工论
- ES6 模块化(Module)export和import详解
- hackinglab.cn 注入关之四
- Java异常分类
- 利用camera2 使闪光灯常亮
- tomcat设置windows系统开机启动