查看: 4131|回复: 11
收起左侧

[求助] 关于证书的劫持攻击,以及常用的安全软件会检查非法证书的安装么?

[复制链接]
huangzihang
发表于 2023-3-3 17:28:59 | 显示全部楼层 |阅读模式
本帖最后由 huangzihang 于 2023-3-3 17:30 编辑

最近在学习证书相关的东西,中间人攻击会触发浏览器关于证书不匹配的警报,如果强行访问,证书发行者就可以解包你的https流量(基本用了非法证书访问的https与http无异)。Windows端是这样,IOS目测需要描述文件来实现这一点应该难度大点,安卓有没有对应安卓的机制呢?
但是万一有malware把这个自签证书添加到了系统的受信列表里岂不是寄了?
以及支付系统有没有特殊的,自研的,闭源的,比https更严苛的加密方式,以确保中间人劫持了证书解密了https流量的壳后仍然没办法解密内部那一层东西呢?以及这个支付token是不是一次性的,并且有端到端加密(譬如HASH256)的校验。我想应该是有的,但不知道各位大佬有没有什么公开的新闻来证明这一点。
不然我觉得往深了想也太可怕了,理论上公共场所的无密码WiFi做到这一点很容易吧,但又确实没听说连接公共WiFi买单被窃取资金的新闻。
以及这些安软有没有对应的机制阻止脚本安装证书呢,哪怕是hips询问是否放行,或者干脆阻止了(它们应该有庞大的证书白名单吧?)。
但我发现这些日子用小众的B站up自己开发的steam加速器玩Apex的时候发现证书被安装(这B站up自研的游戏加速器肯定不可能是证书白名单内的了),更恐怖的是BD卡巴都没有告警,使用它登录steam的时候也没有证书警告,理论上只要像类似网易UU这种加速器安装了根证书解包了https流量就能把你号盗了吧...(不清楚steam登录有没有额外的校验机制,相信发往服务器的KEY应该是哈希过的,返回的token应该也是一次性的),但是如果使用譬如高校某个课堂互动软件那样明文储存和发送密码的,是不是就很危险了。结合各种主播的Steam被盗的方法千奇百怪,这或许是完全有可能实现的?
Eunismal
发表于 2023-3-4 16:10:37 | 显示全部楼层
本帖最后由 Eunismal 于 2023-3-4 16:17 编辑

安卓也需要安装证书才可以,而且据说安卓(非魔改)的安装证书步骤必须由系统设置APP完成,且过程中需要输入锁屏密码才可以安装。而且安装根证书后,下拉菜单会有个警告说你的上网流量可能被监视。
PS: 我之前就想在路由器上搞https inspection去扫描https连接的内容,后来发现要排除太麻烦了,有些应用根本不会管你安装的证书,于是放弃了
Windows和Linux好像都是只要有管理员/root权限就能安装,而且不会有任何提示,所以只要你sudo或者Win下给了管理员权限,被装了证书都是不知道的
GreatMOLA
发表于 2023-3-4 16:28:59 | 显示全部楼层
安卓上用户想要安装证书必须要输入密码。而且正如2楼的大神所述,安装根证书后,系统会提示网络流量不安全。
楼主可以试试安卓上的抓包app,安装之后就会提示添加证书。
Picca
发表于 2023-3-4 17:21:15 | 显示全部楼层
本帖最后由 Picca 于 2023-3-4 17:41 编辑

貌似firefox早就自带根证书了,不认系统安装的根证书了。有没有大神来证实一下啊

我查了一下,貌似mozilla妥协了,默认为自动导入系统根证书。我的win7,KSC,firefox110.0.1 (64 位)上面security.enterprise_roots.enabled是true值,而且无法修改——https://support.mozilla.org/zh-C ... D%E8%AE%BE%E7%BD%AE

a27573
发表于 2023-3-4 19:06:12 | 显示全部楼层
以及支付系统有没有特殊的,自研的,闭源的,比https更严苛的加密方式,以确保中间人劫持了证书解密了https流量的壳后仍然没办法解密内部那一层东西呢?以及这个支付token是不是一次性的,并且有端到端加密(譬如HASH256)的校验。我想应该是有的,但不知道各位大佬有没有什么公开的新闻来证明这一点。

你仔细想想就知道没必要了
你只要不使用系统提供的那一套webview,自己实现SSL或者搞个库,用自己的证书列表就行了

至于端到端加密,本来非对称加密算法就只是在传递AES密钥的时候用一下,后面都是对称加密,AEAD算法自带校验

而且最重要的,密码学技术本来就不是为了在系统已被入侵的情况下保护数据安全的
当设备被植入恶意软件的时候,获取秘密信息的方式实在太多了,比如键盘记录器,hook SSL入口函数等等,这些都不是密码学能防范的


chjs
发表于 2023-3-4 20:42:17 | 显示全部楼层
android系统安装了自己的证书,会提示有监控流量的。桌面操作系统貌似没这个功能,你装个抓包工具不也自己装了个证书之类的。浏览器可能好些,普通应用程序好像有的会提示,要看应用软件。我用zoom的时候有时会有证书问题的提示。所以软件一定要在官网下载,不要下载来路不明的。
yexo
发表于 2023-3-6 03:19:12 | 显示全部楼层
根本不检查,现实是证书太容易搞到了,多如牛毛,更别说某些杀软自己也会往系统里面塞证书,被用户强删后还会自行补全
话说回来,如果都能成功添加证书了。。。
BD卡巴有时感觉有些过誉了,虽然比大部分品牌强一些,但也没强多少,尤其默认设置下。就算强行折腾,其允许用户设置的空间也不大。
安卓会检查证书,发现异样会提醒用户,但如果用户选择放行或者因为某些原因没看到或阻止,也就那样了。
野小子SAS
头像被屏蔽
发表于 2023-3-6 08:54:29 | 显示全部楼层
现在的网络私密几乎为0了吧
a8855942
发表于 2023-3-6 13:08:02 | 显示全部楼层
这个证书问题,有些杀毒软件好像有相关设置。
神龟Turmi
发表于 2023-3-6 20:48:26 | 显示全部楼层
本帖最后由 神龟Turmi 于 2023-3-6 20:50 编辑

都在你电脑上装程序了 MITM就没有意义了 直接从内存读就好了
他们加速器装根做MITM通常是为了分流 而不是读取 只有MITM了才能重定向一个域名的部分内容到某个服务器而将其他内容透传回源站(例如做下载加速)
加速器因为必然带驱动 他们完全可以用驱动来装根证书 安全软件拦截不到也大概率无法知晓(除非定期读一遍全部的根列表)
所以一个很重要的安全常识:访问任何和支付有关的网页时,手动检查tls证书是否被mitm
因为它就算能做到自签名根和真实根的名字完全相同,签名指纹也是不同的,正确的签名指纹可以在https://crt.sh(由comodo提供)查询

另外,SteamCM并不一定都走https(虽然现在默认大部分情况下是这样),你可以手动在启动命令加上-websocket指定走https(wss),或者加上-tcp指定走tcp,或者加上-udpforce指定走udp

您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-4-25 17:15 , Processed in 0.189653 second(s), 16 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表