黑客业务

24小时接单的黑客,黑客业务,黑客怎么找,网络黑客,黑客技术

可怕,原来 HTTPS 也没用

背景

最近发生了几件事,你一定见过一些:

                   
  • 网传 某PDD员工在匿名社区发布同事被抬上救护车的照片,被抓获并解雇
  •                
  • 在试用期间,一名操作学生在工作期间上了一个 1024 网站,导致试用期过去。(今天碰巧浏览了一个知乎问题)


试用期不过是因为在公司浏览 1024 网站

                   
  • 两天前,我很多微信官方账号推文,大意是看小电影前一定要注意网站是否 HTTPS ,因为 HTTPS 是加密的,别人不知道。

看到以上问题,不禁想问(这个脑回路也是……):

                   
  • 通过浏览器访问 HTTPS 网站,别人真的不知道吗?
  •                
  • 通过 App 访问匿名论坛(HTTPS),公司怎么知道?(他是否接入了公司 WiFi?)

总之,上班时间上网钓鱼吗?即使用 HTTPS 访问,如果公司知道,是什么手段?

本文主要分为以下几个方面:

                   
  • HTTPS 为什么安全。
  •                
  • HTTPS 真的安全吗?
  •                
  • App 如何保证信息安全不被爬走?
  •                
  • 公司可能的监控方法是什么?我们如何确保我们的隐私泄露?

HTTPS 为什么安全?

HTTPS,也称作 HTTP over TLS,TLS 前身是 SSL,每个版本都有。

TLS协议在TCP/IP协议栈中的关系

上图描述了在TCP/IP协议栈中TLS(各子协议)和 HTTP 的关系。HTTP TLS 也就是 HTTPS,和 HTTP 相比,HTTPS的优势:

                   
  • 数据完整性:内容传输完整性验证
  •                
  • 数据隐私:内容对称加密,每个连接生成唯一的加密钥匙
  •                
  • 身份认证:第三方不能伪造服务端(客户端)身份

以上内容参考HTTPS工作原理[1]。N 很久以前用印象笔记收藏,现在很多原文都无法访问)


HTTPS 原理

上图大致介绍 HTTPS 握手过程,感兴趣的学生可以使用 WireShark 详细看看每一步,有助于理解 HTTPS 的完整过程。

大致来说,客户端和服务端通过“握手会谈”讨论双方支持的加密算法和相应的随机参数,获得一对密钥,并通过这对密钥解密后续传输的内容。

这对密钥很牛皮,比如加密传输信息『tangleithu』,客户端通过公钥加密得到的密文『xyyaabbccdd』传输,服务端用自己的私钥解密密文,正好可以得到『tangleithu』。中间没有错,保证了数据的完整性和隐私性。

这个过程比较复杂,本文不详细。类似的原理可以参考石头多年前写的文章 —— RSA算法。

所以,你在通过 HTTPS 访问网站时,即使流量被截取监控,获取的信息也会加密,看不到任何实质性的内容。

例如,如下图所示,当我访问某个网站时,通过 wireshark 抓包获得的信息只能获得一些通信IP地址而已。

HTTPS加密传输

现在放心吗?

即使在钓鱼的过程中,也要访问 IP 地址知道了,好像没关系?

其实有 IP 地址也可以获得很多信息。

还好这个 IP 发现是 github,而不是……

你可能会很高兴,甚至看不到网站域名,你可以放心钓鱼。但这是真的吗?

HTTPS 真的安全吗?

HTTPS 真的完全安全吗?连访问域名都拿不到?答案是否定的。

上述 HTTPS 在握手阶段有一件非常重要的事情 —— 证书。

SNI —— 域名裸奔

当访问 HTTPS 站点将首先与服务器建立 SSL 连接,第一步是要求服务器证书。

当一个 Server IP 只对应一个域名(站点),非常方便。任何客户端都可以要求无脑返回域名(服务)对应的证书。IP 地址(IPv4)它是有限的。多个域名重用相同的 IP 地址怎么办?

在发送证书时,服务器不知道浏览器访问哪个域名,因此不能根据不同的域名发送不同的证书。

因此 TLS 协议升级, 更多SNI 这个东西, 这个东西,SNI 即 Server Name Indication, 是为了解决服务器使用多个域名和证书的问题SSL/TLS 扩展。

现在主流客户端都支持这个协议。别问我怎么知道这一点。我以前在工作中花了很多精力……

其原理是与服务器建立 SSL 连接前,发送要访问网站的域名(Hostname),这样,服务器将根据域名返回合适的证书。没有办法加解密,所以至少域名是裸奔的。

如下图所示,上面的截图实际上是访问我的个人博客(www.tanglei.name)当客户端发送握手请求时,他带上域名。

HTTPS SNI

所以,即使是 HTTPS,访问的域名信息也处于裸奔状态。当你在工作中访问小电影网站时,你会留下痕迹。如果你访问公司网络,你自然会被抓住。

事实上,除了域名是裸奔外,还有更严重的风险,即中间人攻击。

中间人攻击

前面也提到了 HTTPS 的关键在于证书。从名字可以看出,中间攻击是在客户端和服务器之间增加一个『中介』,『中介』在客户端和服务器中伪装对方,如下图所示『MitmProxy』充当中间人,互相欺骗:

来源 中间人攻击evil0x

可以安装 MitmProxy 或者 Fiddler 尝试抓包软件,然后打开代理。

此时用手机访问百度,获得以下信息:

证书信任前

提示,连接不是私人连接,事实上,浏览器识别证书是错误的,不信任。如果手机此时安装了 Fiddler 证书,将正常访问。

证书信任后可正常访问

所以,当你信任证书的时候,在中间人面前,又是一览无余。

如果使用公司电脑,估计您有相应的信任证书操作,或者手机上是否安装了类似的客户端软件?

抓紧时间查看手机证书安装明细(比如我手机上的)。

我的前公司在信息安全方面非常谨慎。手机会有工作手机,没有授权 App 不能安装,谁知道 App 会悄悄做什么?(最新热点,QQ扫描浏览器浏览器的历史记录)

当然各种 App 当然不是素食者,也不会让『中间人攻击』这么容易得逞,我们继续看。

如何防止信息安全strong>

前面提到,实施中间人攻击的关键在于证书是否被信任。浏览器的行为是证书是否允许用户信任, APP 开发者可以自己控制。

例如,我试图以类似的方式抓住匿名社区的包解密 HTTPS,但最终失败了,为什么呢?

这就要谈到『SSL Pinning』技术。

App 可自行检查 SSL 握手时服务端返回的证书合法吗?“SSL pinning” 技术说的是 App 中只信任固定的证书或者公钥。

因为在握手阶段,服务端的证书必须返回给客户端。如果客户端打包,将服务端证书放在当地,并在握手验证过程中进行比较。服务端返回的证书与当地内置证书完全相同,然后启动网络请求。否则,直接断开连接,不可用。

当然,一般来说,这种技术可以防止 HTTPS 信息解密。

然而,还有其他技术可以解决这种方法,如 Android 一些 Hook 技术是绕过当地证书强校验的逻辑。感兴趣的学生可以用学习的目的进行研究。然而,据说这种方法需要 Root、越狱等,需要一些更高权限的设置。

因此,我们也警告我们不要随意安装一些软件。如果我们不注意,我们可能会被抓住,让自己在互联网上裸奔。一方面,个人隐私信息被泄露,另一方面,一些非常重要的事情,如账户密码,可能会被盗。

有哪些可能的监控手段?

当然,办公电脑应该访问公司网络。通过上面介绍的内容,你也应该知道你什么时候浏览了哪些网站上,公司很清楚。

如果你的手机与公司网络完全相同(甚至 )Agent 软件不需要安装)。这提醒我们,私人互联网应该尝试使用自己的移动网络。


来自知乎的浏览记录

上面提到的,比如一些涉及隐私的敏感信息,比如一些 PC 软件,手机 App 如果自身内部加密传输,内容加密(包括但不限于 HTTPS)不被破解也不是什么大问题。

然而,这当然取决于这些软件设计师的水平。例如,同一匿名用户显示的 ID 不一样,如果是一样的话,恰好暴露了逻辑漏洞。

当然,我们不应该冒险。在监管的要求下,如果有一些不恰当的言论,如违法行为,我们仍然有办法找到你。

更重要的是,一般的办公电脑会预先安装一些公司安全软件。至于这些软件做了什么,传说中是否有悄悄截图,因人(公司)而异(不讨论类似行为是否涉及侵犯员工隐私)

图源知乎

然而,就我个人而言,我认为没有必要太担心。一般来说,公司不会因为你偶尔在工作中钓鱼而去淘宝和微博打扰你。毕竟,没有必要做这么多芝麻的事情『大动干戈』。

但最好比较员工手册,是否有明确禁止的行为?你的行为太多了,以免被抓住。『河边经常走哪里不湿鞋?』,『欲加之罪,何患无辞』。

后记

我才华横溢,学习浅薄。文章难免会被遗漏。如果有相应的问题,我希望你能给我一些建议。最后,祝大家一辈子不要因为文章中提到的类似事情掉进坑里。

觉得本号分享的文章有价值,记得添加星标哦。周更很累,不要白 piao,需要点正反馈,安排 “一键三连”(喜欢,看,分享)怎么样?? 这将是我继续输出高质量文章的最强大动力。

关于作者:程序猿石头(ID: tangleithu),阿里P7,清华学渣前大疆后端 Leader。从不同的角度分享高质量的技术文章,欢迎关注、交流和指导!扫描代码以回复关键字 “1024” 获取程序员大厂面试指南。

参考资料:

HTTPS工作原理: https://cattail.me/tech/2015/11/30/how-https-works.html

如何评估互联网公司监控员工的日常互联网行为: https://www.zhihu.com/question/46818840/answer/103329958

拼多多员工因在网上发布同事被抬上救护车的照片而被管理层强迫辞职并赶出公司。事件的真实性是什么: https://www.zhihu.com/question/438581129/answer/1670519587

HTTPS工作原理: https://cattail.me/tech/2015/11/30/how-https-works.html

浅析HTTPS 中间攻击和证书验证http://www.evil0x.com/posts/26569.html

Mac/Windows Wireshark/tcpdump抓包TCP3第二次握手,第四次挥手实例 https://www.tanglei.name/blog/example-show-3-times-handshaking-of-tcp-in-mac-or-windows.html

本文转载自微信公众号「程序猿石头」,请注意以下二维码。转载本文请联系程序猿石头微信官方账号。

   
  • 评论列表:
  •  假欢瘾然
     发布于 2022-05-28 13:17:35  回复该评论
  • 此 TLS 协议升级, 更多SNI 这个东西, 这个东西,SNI 即 Server Name Indication, 是为了解决服务器使用多个域名和证书的问题SSL/TLS 扩展。现在主流客户端都支持这
  •  语酌俗野
     发布于 2022-05-28 14:40:59  回复该评论
  • 淘宝和微博打扰你。毕竟,没有必要做这么多芝麻的事情『大动干戈』。但最好比较员工手册,是否有明确禁止的行为?你的行为太多了,以免被抓住。『河边经常走哪里不湿鞋?』

发表评论:

Powered By

Copyright Your WebSite.Some Rights Reserved.