查看原文
其他

GitHub被“中介”攻击了?中间人攻击?

oschina 开源中国 2020-09-02

26 日-27 日,国内无法访问 GitHub(从国外访问正常,并且显示证书颁发者不同于国内),同时京东等网站也相继出现同一问题。目前受影响的主要是部分地区用户,中国移动、中国联通、中国电信以及教育网均可复现该问题。        

目前 GitHub 的访问已经恢复正常,但 GitHub 官方还未就此事说明情况。

根据各路网友的分析,GitHub 遭受了中间人攻击,具体手段还未明,但这很有可能是基于 DNS 系统或运营商等基础设施层面发起的攻击,否则无法解释如此广泛的杀伤力。


中间人攻击是什么


引用 wikipedia 的介绍,中间人攻击(Man-in-the-middle attack,MITM)在密码学和计算机安全领域中是指攻击者与通讯的两端分别创建独立的联系,并交换其所收到的数据,使通讯的两端认为他们正在通过一个私密的连接与对方直接对话,但事实上整个会话都被攻击者完全控制。

 

在中间人攻击中,攻击者可以拦截通讯双方的通话并插入新的内容。在许多情况下这是很简单的(例如,在一个未加密的 Wi-Fi 无线接入点的接受范围内的中间人攻击者,可以将自己作为一个中间人插入这个网络)。

 

一个中间人攻击能成功的前提条件是攻击者能将自己伪装成每一个参与会话的终端,并且不被其它终端识破。中间人攻击是一个缺乏相互认证的攻击。大多数的加密协议都专门加入了一些特殊的认证方法以阻止中间人攻击。例如,SSL 协议可以验证参与通讯的一方或双方使用的证书是否是由权威的受信任的数字证书认证机构颁发,并且能执行双向身份认证。

 

简单来讲就是指攻击者在通讯两端之间接管流量,攻击者可以拦截通讯双方的通话并篡改内容。想要接管流量,就需要攻击者能将自己分别伪装成通讯两端,并且不被另一端识破,DNS 欺骗与会话劫持等都是常见中间人攻击手段。

 

举个浅显易懂的例子,课堂上小明给小红写了一个小纸条,准备约她放学别走,他把纸条通过小三传递给小红,然而小三心生嫉妒,模仿小明的字迹把小纸条的内容悄悄修改成“不想见到你”,小红对此毫不知情,以为就是小明的本意,这样一段姻缘就结束了。这其中小三就是一个“中间人”,她的操作就是在执行“中间人攻击”。

 

一般 DNS 欺骗与会话劫持等都是常见的中间人手段,并且从发起到利用,各种组合拳也多种多样,相关的一些技术包括:

  • 有线局域网下 ARP 投毒+中间人伪造 SSL 证书攻击

  • 有线局域网下 ARP 投毒+中间人 SSL 卸载攻击  

  • 无线伪 AP+DHCP 配置

  • SSLStrip 中间人嗅探

  • 中间人攻击+DNS 劫持+钓鱼页面+XSS 攻击

  • 基于 DNS 劫持的 SET 社会工程钓鱼攻击

  • 基于中间人攻击的会话劫持攻击

  • ……

 

姿势特别多,甚至在上古时代,还有像 Kevin Mitnick 这样的大神直接通过预测 TCP 序列号伪装成通信两端进行中间人攻击的神级经典操作(相关协议已经修复该漏洞)。


中间人攻击的相关项目与博客


前边没有展开更加具体的细节,关于中间人攻击的更多信息、工具以及实践等,OSC 网站上有一些相关内容可以查看,列举几例(相关链接阅读原文可查看):


相关开源项目


轻便的 MiTM 框架 BetterCap

BetterCap 是一个功能强大、模块化、轻便的 MiTM 框架,可以用来对网络开展各种类型的中间人攻击,也可以实时操作 HTTP 和 HTTPS 流量。

 

Android 中间人攻击测试工具 Lanmitm

一款针对 Android 的中间人攻击测试工具,可实现数据嗅探、会话劫持、WiFi 终结与 DNS 欺骗等功能。

 

中间人攻击工具 prn-2-me

prn-2-me 能够创建一个自定义的监听器并伪装成一个打印机。

 

还有很多。当然,像 Kali Linux、Burp Suite、nmap 和 Metasploit 等基础性工具这里就不赘述了。更多内容可以查看:https://www.oschina.net/project

 

相关博客


HTTPS 安全在哪里?

HTTPS 安全的一方面是因为弥补了 HTTP 非加密传输的劣势,而 HTTP 的这一劣势也让中间人攻击更加容易发生。

 

传输协议不安全,数据泄露谁之过?——流量劫持技术分析

HTTP 数据流是用明文方式传输数据,攻击者可以利用局域网抓包等手段轻易获取用户与服务器的交互信息。 

 

HTTPS 连接过程以及中间人攻击劫持

HTTPS 也不是绝对安全的,中间人可以获取到客户端与服务器之间所有的通信内容。 

 

内网劫持渗透新姿势

满满干货,带你全面了解中间人攻击测试框架 MITMf。

 

更多内容可以查看:https://www.oschina.net/blog

 

注:《中华人民共和国网络安全法》《中华人民共和国计算机信息系统安全保护条例》等法律警告。请不要尝试将技术用于非法行为。


推荐阅读

JDK/Java 14 发布

Uber开源“食人鱼”,专吃落后代码

微软收购npm,整个JavaScript生态到手

iOS打包签名,你真的懂吗?

Linus谈居家办公:不要在家中重新搞一个办公室

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存