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

简介: 逆向小知识: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

image.png

原因:由于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

目录
相关文章
|
SQL 关系型数据库 MySQL
将MySQL 数据迁移到 PostgreSQL
将MySQL 数据迁移到 PostgreSQL 可以采用以下步骤: 安装 PostgreSQL 数据库:首先,需要安装 PostgreSQL 数据库。可以从官方网站(https://www.postgresql.org/)下载最新版本的 PostgreSQL,并根据官方指南进行安装。 创建 PostgreSQL 数据库:在 PostgreSQL 中创建与 MySQL 数据库相对应的数据库。可以使用 pgAdmin 或命令行工具(如 psql)来创建数据库。例如,如果在 MySQL 中有一个名为 &quot;mydb&quot; 的数据库,那么可以在 PostgreSQL 中创建一个具有相同名称的数据库。 导
4356 0
|
消息中间件 中间件 Kafka
Kafka - TimeoutException: Expiring 1 record(s) for art-0:120001 ms has passed since batch creation
Kafka - TimeoutException: Expiring 1 record(s) for art-0:120001 ms has passed since batch creation
1349 0
|
前端开发
【Sa-Token】7、Sa-Token抛出的异常统一处理
在 Sa-Token 的登录,授权,验证过程中,会抛出很多的异常,我们不能将这些异常信息直接返回给用户,因为用户是看不懂这些异常信息的,我们就需要对这些异常信息进行处理,处理之后再返回展示给前端用户
1770 0
|
API 网络安全
SSLException Unrecognized SSL…问题排查
SSLException Unrecognized SSL…问题排查
2466 0
|
10月前
|
安全 前端开发 JavaScript
利用HTTP协议进行文件上传和下载的常见方法
【10月更文挑战第25天】可以利用HTTP协议方便地实现文件的上传和下载功能,满足不同应用场景下的需求。在实际应用中,还可以根据具体的业务需求和安全要求,对文件上传和下载的过程进行进一步的优化和安全处理。
|
算法 Java 测试技术
java 访问ingress https报错javax.net.ssl.SSLHandshakeException: Received fatal alert: protocol_version
java 访问ingress https报错javax.net.ssl.SSLHandshakeException: Received fatal alert: protocol_version
1579 1
|
11月前
|
存储 关系型数据库 MySQL
Mysql行格式DYNAMIC和COMPACT区别
总之,选择哪种行格式取决于具体的应用场景,如数据类型分布、读写比例、存储与性能需求等。在处理大量文本或二进制数据且对存储空间敏感的应用中,DYNAMIC格式可能是更好的选择;而对于混合型数据且对读取性能有一定要求的场景,COMPACT格式可能更合适。在设计数据库时,评估这些因素并进行适当测试,可以帮助确定最适合的行格式。
585 0
|
编译器 API 开发工具
Android compileSdkVersion、buildToolsVersion、minSdkVersion、targetSdkVersion
Android compileSdkVersion、buildToolsVersion、minSdkVersion、targetSdkVersion
1009 0
|
Java 网络安全
Java 信任所有SSL证书(解决PKIX path building failed问题)
Java 信任所有SSL证书(解决PKIX path building failed问题)
26711 3

热门文章

最新文章