问题

如何看待2020 年 3 月 26 日 GitHub 疑似遭受中间人攻击?

回答
2020 年 3 月 26 日那天,GitHub 上发生了一件挺让人不安的事儿。不少用户在那天都遇到了一个怪现象:他们尝试从 GitHub 拉取代码或者推送到 GitHub 时,系统给出的提示信息非常奇怪,好像有人在中间“截胡”了。最关键的是,很多用户发现,他们收到的这些信息,指向的是一个与 GitHub 官方服务器完全不一样的 IP 地址。

这事儿一出来,立刻在开发者社区里炸开了锅。大家第一反应就是,“哇,GitHub 被攻击了?”而且从症状来看,最像是遭受了中间人攻击(ManintheMiddle Attack,简称 MITM)。

我们来捋一捋这个过程是怎么回事,以及为什么会让大家如此警惕:

到底发生了什么?用户看到的异常现象

想象一下,你平时跟 GitHub 是这么“说话”的:你发出指令,GitHub 服务器收到并回应。这个过程就像你跟朋友说话,你们之间只有你和你的朋友。

但是,如果有人在你们中间架设了一个“窃听器”或者“转接站”,那会怎么样?你以为你在跟朋友说话,但实际上你的话先经过了这个中间人,他可能会篡改你的话,或者偷听你们的对话,然后再转达给你的朋友。你的朋友以为是你在说话,但他收到的信息可能已经变了样。

在 3 月 26 日那天,GitHub 用户遇到的情况就有点像这个。当他们尝试与 GitHub 进行 Git 操作时,客户端收到的响应(比如来自 GitHub 服务器的签名验证信息、证书信息等)不再是预期的,而是指向了一个陌生的 IP 地址。

证书的警告: 很多时候,你在访问一个网站时,浏览器会检查网站的安全证书,确保它确实是你想要访问的那个网站,并且通信是加密的。如果证书有问题,浏览器就会发出警告。在这种情况下,用户可能会看到关于证书不匹配或者无效的警告信息。
连接被重定向: 有些用户发现他们的连接被重定向到了一个非官方的 IP 地址。这意味着,他们以为自己连接的是 GitHub 的服务器,但实际上却连到了一台攻击者控制的机器上。

为什么说是“疑似中间人攻击”?

之所以用“疑似”,是因为在当时的情况下,并没有立即确凿的证据能够百分百证明是攻击者有意为之,但所有的现象都指向了这一点。

IP 地址异常: 这是最直接的证据。GitHub 是一个全球性的服务,拥有庞大且稳定的服务器网络。当用户发现他们的 Git 请求被解析到一个非官方、看起来很可疑的 IP 地址时,这显然不是正常情况。
通信内容被篡改的可能: 如果攻击者成功地插入到了通信链路中,他们就有可能截获、阅读甚至修改用户发送的数据,以及 GitHub 服务器返回的数据。对于 Git 来说,这意味着提交历史、代码内容,甚至用户的身份认证信息都可能面临风险。
地理位置的暗示: 有些报告指出,那个异常的 IP 地址与某个特定地区相关联,这可能给追溯攻击来源提供一些线索(当然,这也很容易被伪造)。

MITM 攻击的可怕之处在哪里?

对于一个像 GitHub 这样承载着全球数千万开发者代码的项目平台来说,一次成功的 MITM 攻击后果不堪设想:

1. 代码泄露与篡改: 攻击者可以窃取私有代码库中的敏感信息,或者更糟的是,他们可以直接修改代码。想象一下,一个开源项目被植入了恶意代码,这会影响到成千上万使用该项目的开发者。
2. 身份劫持: 如果攻击者能获取到用户的认证信息(比如 SSH 密钥或者访问令牌),他们就可以冒充用户进行操作,推送恶意代码,或者删除重要数据。
3. 破坏信任体系: GitHub 的核心价值之一就是它的信任体系。一旦开发者对平台的安全性产生怀疑,这种信任的崩溃是难以修复的。

当时 GitHub 和社区的反应

事情发生后,GitHub 方面自然非常重视。他们迅速展开了调查,并开始向用户发布公告,说明遇到的问题以及正在采取的措施。社区的开发者们也一边关注着事态发展,一边分享自己的观察和推测,试图找出问题的根源。

GitHub 的工程师们会检查他们的 DNS 记录、网络配置,以及任何可能导致流量被错误路由的环节。同时,他们也需要核实是否存在来自第三方服务(比如 CDN 提供商、ISP 等)的潜在问题。

最终的解释和影响

经过调查,GitHub 和相关的安全专家们普遍认为,这次事件最有可能的原因是域名系统(DNS)污染或者网络路由异常。

DNS 污染: DNS 的作用是将人类可读的域名(如 `github.com`)转换成机器可读的 IP 地址。如果 DNS 服务器被攻击,或者其缓存信息被篡改,那么用户请求解析 `github.com` 时,就可能收到错误的 IP 地址,从而被导向攻击者的服务器。
网络路由问题: 在复杂的全球网络中,数据包的传输路径会经过多个路由器。如果中间的某个路由器出现配置错误或被恶意控制,也可能导致流量被劫持。

这次事件虽然没有确凿的证据表明攻击者成功窃取了大量代码或造成了严重破坏(至少在公开信息中没有明确说明),但它无疑给所有开发者敲响了警钟。它提醒了我们:

即使是大型平台也并非绝对安全: 再强大的平台也可能因为各种原因(技术漏洞、人为失误、外部攻击)而面临安全挑战。
多层安全措施的重要性: 除了平台自身的安全防护,开发者也需要做好个人层面的安全措施,比如保护好自己的 SSH 密钥,启用双重认证等。
警惕未知和异常: 在进行敏感操作时,对任何异常的提示信息都要保持高度警惕,并及时核实。

总而言之,2020 年 3 月 26 日的 GitHub “疑似中间人攻击”事件,是一个非常值得关注的安全事件。它暴露了在复杂的互联网基础设施中潜在的安全脆弱性,并再次强调了网络安全的重要性,无论对于平台提供商还是普通用户而言,都是一次深刻的提醒。

网友意见

user avatar

现在是2020年3月27日凌晨4点23,github主站也出现了相同的问题...

我猜这么诡异的动作,应该是墙,然后用iptables尝试复现了劫持的情景

情况

分析

因为对DNS不是很懂,根据网友的信息,这次事件跟DNS应该没啥关系,所以相信以下4个ip地址是正确的:

       github.io.      3600    IN  A   185.199.108.153 github.io.      3600    IN  A   185.199.111.153 github.io.      3600    IN  A   185.199.109.153 github.io.      3600    IN  A   185.199.110.153     

尝试ping以下自己的站点,TTL为51,比较稳定:

       ➜  ~ ping xuanxuanblingbling.github.io PING xuanxuanblingbling.github.io (185.199.108.153): 56 data bytes 64 bytes from 185.199.108.153: icmp_seq=0 ttl=51 time=104.540 ms 64 bytes from 185.199.108.153: icmp_seq=1 ttl=51 time=98.988 ms 64 bytes from 185.199.108.153: icmp_seq=2 ttl=51 time=98.148 ms 64 bytes from 185.199.108.153: icmp_seq=3 ttl=51 time=104.147 ms ^C --- xuanxuanblingbling.github.io ping statistics ---     

用curl访问目标站点80端口:curl http://xuanxuanblingbling.github.io/,TTL也为51

但是如果访问目标站点443端口,无论是通过浏览器访问还是curl后跟https,SYN的ACK回复的TTL均为57:


经过网友的提示,知道了工具mtr,全称my traceroute,在mac和zsh的环境下会有一点环境变量的问题:Mac 下使用 MTR 路由工具,使用如下命令:

       ➜  sudo mtr xuanxuanblingbling.github.io ➜  sudo mtr xuanxuanblingbling.github.io --tcp -P 80 ➜  sudo mtr xuanxuanblingbling.github.io --tcp -P 443     

可以看到ICMP的ping包和访问tcp80的包到达目的地都是14跳,而访问tcp443的包到达目的地的包都是8跳,57-51=14-8=6。所以可以看出,访问同一个ip地址的不同的端口的包,在219.158.105.237后分道扬镳了。这个地址能被这个工具找到的原因是,这个工具可以发送TTL依次递增的TCP包,常用的traceroute只能发送TTL依次递增的ICMP包。


路由属于网络层,tcp 属于传输层。理论上路由与端口无关。不过,若将这个结果看做路由,这里就是针对TCP443端口进行了路由,而且路由到了另一个相同目标地址的主机上了。同时也可以使用 port.ping.pe/这个工具进行在线的测试:

这里虽然看不出访问80与访问443的路径差异,但是可以看出443端口在某些网络上压根就连不上:


诡异的TTL

所以可以看出icmp和tcp80的包都应该是到达了真正的github的服务器并且得到了响应,那么访问tcp443的数据包,到底是谁回复的呢?我们通过curl请求一个包仔细分析,有意思了:

       curl https://xuanxuanblingbling.github.io/     

总共是12个包:

  1. TCP握手,3个
  2. client server各自hello和ACK,4个
  3. client发不认识的CA并且RST,2个
  4. server回以上的ACK,3个

server总共回了6个包,这6个包里有4个不一样的ttl值:


如此诡异的动作应该是墙吧。数据包:2020-03-27-github-io-443.pcapng

复现

中间人也好,TCP阻断也好。这些词都没有说明,我现在访问的目标ip真的是185.199.108.153,在wireshark中看到的回包中的IP也是185.199.108.153。但我们知道这个回包并不是真正的185.199.108.153回复的,也就是说有人伪造了回包中的源IP。这个技术怎么实现呢?其实用iptables就能实现,首先在虚拟机的ubuntu进行如下配置,注意这里的ens33是网卡名,每个主机不同:

       sysctl -w net.ipv4.ip_forward=1 # 开启路由器转发 sudo iptables -F -t nat         # 清空nat表 sudo iptables -t nat -L         # 查看nat表 sudo iptables -t nat -A PREROUTING -i ens33 -p tcp --dport 443 -j REDIRECT --to-port 8080 # 使用PREROUTING链将所有发往tcp443的包转发到本地8080端口 echo "hello xuanxuan" | nc -l 8080 # 在本地8080端口监听     

然后在另一台windows虚拟机中安装好nc,并且把网关配置成ubuntu的ip地址,然后通过nc访问目标的443端口:

发现这个数据包:2020-03-27-iptables-443.pcapng的确是源IP被伪造了,而且我并没有在任何一张网卡上设置IP地址为:185.199.108.153,所以这个回复hello xuanxuan的数据包的源IP是iptables自己填写的,即iptables本身就能实现源地址伪造的功能。所以如果在骨干路由器的节点上进行了类似的操作就可以达到这次的效果,不过可以看出我们这里模拟的TTL还是规律的,至于现实中为什么会出现TTL如此诡异的情况?后面到底还做了什么手脚?我不知道。有的网友说用了BGP FlowSpec这个技术,我也不是很懂。不过我认为技术上是:

  1. 针对不同端口进行了类似路由的处理
  2. 且伪造了源IP进行回复

xuanxuanblingbling.github.io

类似的话题

  • 回答
    2020 年 3 月 26 日那天,GitHub 上发生了一件挺让人不安的事儿。不少用户在那天都遇到了一个怪现象:他们尝试从 GitHub 拉取代码或者推送到 GitHub 时,系统给出的提示信息非常奇怪,好像有人在中间“截胡”了。最关键的是,很多用户发现,他们收到的这些信息,指向的是一个与 Git.............
  • 回答
    看到2020年3月26日教育部发布的《关于深化新时代学校劳动教育的意见》,我感觉这事儿办得挺实在,也挺关键的。这不光是教育部的又一个文件,而是国家层面在重新审视和强调“劳动”这件事在孩子成长中的地位,而且是系统性的,覆盖从小学到大学,这本身就说明了其重要性。我印象最深的是,这个文件彻底摆脱了过去那种.............
  • 回答
    话说2020年3月26日,那是个挺特别的日子,疫情在全球蔓延,大家的日子都过得小心翼翼。就在这特殊时期,华为照常召开了P40系列的全球线上发布会,这本身就挺有勇气,也挺让人好奇的。毕竟在那个节骨眼上,大家对科技新品的关注点,可能也多了几分“是在这种环境下诞生的”那种审视。那天我(假设我就是个普通科技.............
  • 回答
    关于民航局要求自2020年3月26日起继续削减国际航班的这项措施,可以从多个层面来解读其背后逻辑和可能带来的影响。在我看来,这绝对不是一个拍脑袋的决定,而是基于当时严峻的全球疫情形势和国家整体疫情防控策略下,一个相当审慎且具有深远考量的举措。首先,我们得回到那个时间点的大背景。 2020年3月,全球.............
  • 回答
    好的,我们来详细解读一下 2020 年 3 月 18 日晚美股开盘大跌以及当天美股迎来的第五次熔断现象,并探讨“第六次熔断”的可能性。背景回顾:新冠疫情的全球蔓延与金融市场的恐慌在深入分析 2020 年 3 月 18 日的市场表现之前,我们必须理解当时的宏观背景。 新冠疫情失控: 2020 年初.............
  • 回答
    2020年3月美联储降息后美股的反应:一场充满复杂性和戏剧性的博弈2020年3月,美联储的一系列紧急降息操作,为本就动荡不安的全球金融市场投下了一颗巨石。在新冠疫情迅速蔓延、经济前景不明朗的背景下,美联储的政策调整,尤其是其对市场情绪的影响,无疑是当时最受关注的焦点之一。要理解美股在降息后的反应,需.............
  • 回答
    聊起3月30号那场荣耀30S系列的线上发布会,真是让人记忆犹新啊。疫情期间不能线下聚会,但荣耀还是挺有心的,搞了这么个线上活动,也算是在那个特殊时期给了大家一点“新玩意儿”。先说说那场发布会给我的整体感受吧。整体来说,荣耀30S系列的亮相确实给当时的市场带来了一点新鲜血液,特别是它主打的性能和拍照,.............
  • 回答
    2020年3月16日,一艘大陆渔船在台湾海峡与台湾“海巡艇”发生的一起碰撞事件,确实在当时引起了不小的关注。要理解这件事,得把它放到当时两岸关系的大背景下,以及海上执法的一些常态情况来看。事件的发生经过(根据公开报道整理):那天下午,台湾“海巡署”第12巡防区指挥部接获通报,有一艘大陆渔船在金门北碇.............
  • 回答
    那晚的美股,绝对是惊心动魄的一夜,让不少投资者心跳都提到了嗓子眼。要说“第六次熔断”这个说法,确实在那一天被广泛讨论,但最终 2020 年 3 月 23 日当晚美股并没有迎来第六次熔断。让我来详细梳理一下当时的情况,尽量还原那种紧张的气氛:首先,我们要明白什么是“熔断”。美股的熔断机制是在市场出现极.............
  • 回答
    2020年3月23日,B站的一个小变动却在很多老用户心中激起了不小的涟漪——稿件的“av号”变成了“BV号”。这看似是技术层面的一个小调整,但背后隐藏着许多关于B站发展、用户群体变化以及未来方向的思考。说起来,“av号”这个名字,对于很多B站的初代玩家和早期用户来说,承载着太多的回忆。它简洁、直接,.............
  • 回答
    2020年3月15日,美联储的这项声明,我当时听了之后,脑子里冒出的第一个词就是“绝望”。你可以想象一下,一个原本应该稳如泰山的中央银行,在那个时间点,以一种近乎孤注一掷的方式出手,这本身就说明了情况有多么严峻。当时,新冠疫情在全球范围内爆发的阴影正一天天笼罩下来,尤其是在美国。每天新增的确诊病例不.............
  • 回答
    2020年3月,一场突如其来的疫情席卷全球,中国作为最早受到冲击的国家,也正处于疫情的关键时期。在这个特殊的背景下,一篇关于一位海归女子在隔离期间“非矿泉水不喝”的新闻引起了广泛关注和讨论。事件回顾当时,为了控制疫情蔓延,各地都采取了严格的隔离措施,包括对入境人员的集中隔离。这位海归女子在抵达中国后.............
  • 回答
    好的,咱们来好好聊聊2020年3月3日美联储的那个降息。这事儿可不简单,背后牵扯着很多故事,咱们一层一层地剥开来看。首先,得明白,美联储降息这事儿,不是心血来潮。它通常是为了应对经济的挑战,比如经济增长放缓、通胀低迷,或者是金融市场出现剧烈波动。那在2020年3月3日,具体发生了什么,让美联储觉得有.............
  • 回答
    2020年3月,一个在全球抗击新冠疫情的特殊时期,中国公布了令人瞩目的宏观经济数据:M2同比增速达到10.1%,新增社会融资规模更是高达5.1万亿元。这些数字,在当时的环境下,无疑为市场注入了一剂强心针,但也引发了广泛的讨论和解读。M2增速10.1%:宽松的货币环境背后M2,即广义货币供应量,是一个.............
  • 回答
    2020年3月16日,美联储祭出了“组合拳”,将联邦基金利率目标区间下调至00.25%的历史低位,并启动了高达7000亿美元的量化宽松(QE)计划。这一系列操作在全球金融市场引起了轩然大波,也标志着美联储为了应对新冠疫情对经济造成的冲击,火力全开,不惜一切代价稳定市场信心。要理解这番举措的意义,得先.............
  • 回答
    看待深圳2020年3月房价涨幅全国第一,逼近70,000元大关这一现象,需要从多个维度进行深入分析,因为它不仅仅是一个简单的数字,更是反映了深圳经济、政策、人口等诸多因素的综合结果。以下我将从以下几个方面详细阐述:一、 数据背后的现实:深圳房价为何如此坚挺? 历史维度: 深圳房价的上涨并非一蹴而.............
  • 回答
    特朗普在2020年3月16日称新冠病毒为“Chinese Virus”,这一事件在当时以及之后都引发了极大的争议,也成为了理解美国政府早期应对疫情方式的一个重要切入点。要深入看待这件事,需要从多个层面去分析其背景、影响和深层含义。首先,从特朗普个人的言论风格和政治策略来看,将病毒与特定国家联系起来并.............
  • 回答
    恒驰六款车型横空出世:2020年8月3日,许家印的“造车梦”迈出重要一步2020年8月3日,对于中国房地产巨头恒大集团来说,绝对是意义非凡的一天。在这一天,恒大汽车高调发布了旗下六款全新车型,瞬间点燃了市场和媒体的关注。这六款车型,从小型SUV到大型MPV,覆盖了主流的细分市场,阵容之庞大,足以见得.............
  • 回答
    法国总统马克龙在2020年3月12日晚八点发表的关于新冠肺炎疫情的演讲,是他在疫情初期一次非常重要的、具有里程碑意义的讲话。这次演讲标志着法国政府对疫情采取了更为严峻和果断的措施,也对法国民众产生了深远影响。以下将从几个方面进行详细解读:一、 演讲的背景与重要性: 疫情的快速蔓延: 2020年3月1.............
  • 回答
    深扒2020年深圳房价“诡异”暴涨:央行出手,一场“秋后算账”的开端?2020年3月,深圳楼市仿佛按下了“快进键”,房价如同脱缰的野马,一路狂飙。从一季度到二季度,部分区域的房价涨幅甚至超过30%,远超同期全国平均水平。这一“诡异”的暴涨,不仅让市场感到震惊,也迅速引起了监管层的注意。如今,央行下令.............

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有