0
点赞
收藏
分享

微信扫一扫

逆向小知识:SSLHandshake: Received fatal alert: certificate_unknown


引言

Charles分析报文常遇到的问题:SSLHandshake: Received fatal alert: certificate_unknown

I SSLHandshake: Received fatal alert: certificate_unknown的解决方案

1.1 问题分析

现象:不采用Charles 代理的时候,可以正常访问,当使用Charles的时候报​​certificate_unknown​

逆向小知识:SSLHandshake: Received fatal alert: certificate_unknown_iOS

原因:由于https的cipher rc4不够安全,在charles 3.11中如果服务端只支持rc4就会报错​​SSLHandshake: Received fatal alert: handshake_failure​

1.2 解决方案

  1. 获取二进制证书,并在手机去安装和信任cer

可以使用以下openssl命令来获取到服务器的公开二进制证书(以google为例):​​"openssl s_client -connect www.google.com:443 </dev/null 2>/dev/null | openssl x509 -outform DER > https.cer"​

  1. 若还没解决问题,配置NSAppTransportSecurity信息允许http 连接,当然也包括允许https的RC4-SHA

这种https的SSL证书 属于不太安全的那种,如果一定要用Charles的话,只能将app的SSL验证放开,达到允许请求http的级别就可以抓包了。

<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>

see also

​​1、iOS网络安全优化:SSL证书验证, Charles再也无法抓你的请求数据;对请求参数进行签名;2、不走全局proxy的方案;3、允许不验证SSL证书;4、拦截请求;5、DoH &DoT6、SDL​​

​​blog.csdn.net/z929118967/…​​


举报

相关推荐

0 条评论