• 请不要在回答技术问题时复制粘贴 AI 生成的内容
bilibiliCXK
V2EX  ›  程序员

github SSL 劫持是如何实现的?具体原理是什么

  •  1
     
  •   bilibiliCXK · Mar 27, 2020 · 14638 views
    This topic created in 2420 days ago, the information mentioned may be changed or developed.
    91 replies  •  2020-03-31 20:18:35 +08:00
    smallgoogle
    smallgoogle
    Mar 27, 2020
    1
    前排卖瓜子。坐等大神解释。
    jam1024
    jam1024
    Mar 27, 2020❤️2
    2
    😁不出意外的情况,这篇文章马上将被站主移到水深火热节点
    LnTrx
    LnTrx
    Mar 27, 2020
    3
    根据网友的反馈:
    移动、联通、电信、教育网都有出问题的报告
    DNS 解析结果正确,故不是 DNS 污染
    同一个 IP,ICMP 、80 port 响应正常,443 port 有问题,不像是 BGP 配置问题
    ping 443 port 比 ICMP 、80 port 时延短得多
    tracert ICMP 、80 port 可以到境外,443 port 终止于境内
    故猜测响应 SSL 的设备位于境内
    在运营商级别选择性转发特定端口通信应该不是什么难题
    feast
    feast
    Mar 27, 2020 via Android❤️1
    4
    从全国各地发生的时间差来看,应该是某种类似省级层面的神秘设备被控制的结果
    gqbre
    gqbre
    Mar 27, 2020
    5
    手动马克
    crc8
    crc8
    Mar 27, 2020❤️1
    6
    无论什么技术手段,反正就是中国境内有人搞鬼。
    iSkywind
    iSkywind
    Mar 27, 2020
    7
    运营商或者神秘设备上给你按 4 层路由或者 DNAT 或者直接回包握手建连接,就被抓走了,而且酱紫只会抓 443
    ThirdFlame
    ThirdFlame
    Mar 27, 2020❤️1
    8
    显然是神秘设备 区别对待了 443 端口。 可能是在进行某种实验。
    testcaoy7
    testcaoy7
    Mar 27, 2020❤️1
    9
    应该是某种实验
    fancy111
    fancy111
    Mar 27, 2020❤️4
    10
    目前已知两种方法:
    1 、黑掉解析 IP 的服务器,放假证书。
    2 、拿到 GFW 、运营商根节点权限,把 IP 转向另一台有假证书的服务器,证书通过的话此服务器可做中间人。
    不过很可惜,还是绕不过浏览器,此测试我早就做过了。下一步只需要在国内浏览器中注入假的根证书,那么就能监控所有人的浏览信息。
    bilibiliCXK
    bilibiliCXK
    OP
    Mar 27, 2020
    11
    @fancy111 这么可怕啊。应该是某种实验咯
    whatsmyip
    whatsmyip
    Mar 27, 2020❤️3
    12
    国产证书应该已经在路上了
    iceheart
    iceheart
    Mar 27, 2020
    13
    只要劫持 tcp 就行了,其他的想咋搞就咋搞
    sunorr
    sunorr
    Mar 27, 2020❤️2
    14
    @fancy111 以后浏览器也必须国产化,哈哈哈
    glfpes
    glfpes
    Mar 27, 2020❤️9
    15
    干这活只要有权限就行,看那个 QQ 号,估计就是网安局刚入职 1,2 年的小喽啰干的。

    毕竟一线能干活的也就他们了。
    Zeonjl
    Zeonjl
    Mar 27, 2020 via iPhone
    16
    担凳子坐看看分析是否到位
    xiaoming1992
    xiaoming1992
    Mar 27, 2020 via Android
    17
    感觉干这活的不会这么捞吧?还留个 qq 号?应该是个人行为吧?
    fline
    fline
    Mar 27, 2020❤️2
    18
    啥啥都个人行为,总统说 wuhan virus 是个人行为吗,国会议员呢,联邦雇员呢。
    none
    none
    Mar 27, 2020
    19
    半个小时前还能正常访问 github 的,就这一会儿突然不行了,看了下证书过期时间是 2029 年 9 月,Server 和 CA 证书里竟然留的 QQ 邮箱。。。
    forcecharlie
    forcecharlie
    Mar 27, 2020
    20
    目前受影响的是新加坡的 IP,端口 443 应该被拦截了,其中一个 IP 即 13.229.188.59 直接访问 IP 网页证书颁发者是 [email protected] ,但是使用 ssh -Tvvv git@ip 则可以发现 22 端口正常。如果使用美国弗吉尼亚州阿什本的 IP 则可以正常访问 HTTPS,但速度较慢。
    none
    none
    Mar 27, 2020❤️1
    21
    刚才又试了一下,证书变了,里面的邮箱是: [email protected]
    hshpy
    hshpy
    Mar 27, 2020
    22
    随便找个网站不行,直接丢包不行?
    DestinyHunter
    DestinyHunter
    Mar 27, 2020
    23
    @none 真的.变了,不是原来那个了
    galenzhao
    galenzhao
    Mar 27, 2020
    24
    神奇的是只有 github 域名被劫持,
    同 ip 如果你 githubio 是绑定了自己的域名,不影响
    d0m2o08
    d0m2o08
    Mar 27, 2020❤️2
    25
    某神秘组织下一步是不是要强制所有国内浏览器信任自签证书😂
    lff0305
    lff0305
    Mar 27, 2020❤️6
    26
    @fancy111 不需要那么麻烦, 以前 12306, 还有各种网银,都要装个 CA, 用这个 CA 签各种网站的证书都行了,反正大部分人都不明白信任一个 CA 有什么意义
    DawnMoon
    DawnMoon
    Mar 27, 2020❤️1
    27
    https://www.v2ex.com/t/656687 个人做了点分析
    ibreaker
    ibreaker
    Mar 27, 2020
    28
    @fancy111 这个根证书都不受信任,更像是个实验
    forcecharlie
    forcecharlie
    Mar 27, 2020
    29
    目前测试美国阿什本的 SSH SHA256 指纹和被拦截 IP 的 SSH SHA256 指纹 一致,因此可以认为 SSH 没有被拦截,因 IP IDC 机房在新加坡,因此可以排除 SSH 是国内 TCP 代理。
    jon
    jon
    Mar 27, 2020
    30
    艹, 我也被劫持了
    slyang5
    slyang5
    Mar 27, 2020
    31
    新闻都说了 ,是个高中生干的😆
    IMCA1024
    IMCA1024
    Mar 27, 2020
    32
    @slyang5 放下链接看看
    johry
    johry
    Mar 27, 2020
    33
    又好了,能访问了
    cat9life
    cat9life
    Mar 27, 2020
    34
    坐等大神分析
    v2yllhwa
    v2yllhwa
    Mar 27, 2020
    35
    我好了
    xsen
    xsen
    Mar 27, 2020
    36
    @DestinyHunter #31 据说是 199 几年毕业的高中生
    1109599636
    1109599636
    Mar 27, 2020❤️3
    37
    期待的点进来,失望的点出去,大部分是臆测,就没有理一理这类攻击原理是啥的
    hshpy
    hshpy
    Mar 27, 2020
    38
    @1109599636 改 tcp 路由,中间人盗 GitHub 账号密码,私有库源码,数据库账号密码...
    hshpy
    hshpy
    Mar 27, 2020
    39
    猜的
    none
    none
    Mar 27, 2020
    40
    看网上昨天都已经发新闻了,应该是个人行为,做这件事的人心真大。
    lc7029
    lc7029
    Mar 27, 2020❤️1
    41
    猜测是某种实验,下一步应该是命令浏览器厂必须信任且不可删除某个根证书了吧
    Aeca
    Aeca
    Mar 27, 2020
    42
    ERR_CONNECTION_TIMED_OUT
    2020/3/27 11:24
    AII
    AII
    Mar 27, 2020❤️2
    43
    楼上各位自信点,你的水平可能比那些写稿子的小编高。
    none
    none
    Mar 27, 2020
    44
    根据之前证书里留的 QQ 可以找到这个人在 csdn 有过提问,但是现在 csdn 上已经找不到提问的这个账号了,难道现在有提供删除自己账号的功能了吗?
    turi
    turi
    Mar 27, 2020❤️1
    45
    @fancy111 那你得需要用国产浏览器,国内这帮人修改浏览器内核查看明文不是都知道吗?上次 996 部分浏览器就直接屏蔽了这个网址
    stabc
    stabc
    Mar 27, 2020
    46
    核心原理就是『权力』。
    darknoll
    darknoll
    Mar 27, 2020
    47
    怕啥,浏览器会检查证书
    DonaidTrump
    DonaidTrump
    Mar 27, 2020 via iPhone
    48
    @glfpes 自签名证书 email 随便填,为什呢一口笃定是 qq 号作者干的呢?
    yolee
    yolee
    Mar 27, 2020
    49
    像是某个组织进行的实验,就像之前某国的断网实验
    calmlyman
    calmlyman
    Mar 27, 2020❤️1
    50
    来学习的,另外看你头像,是我兄弟吗!
    Coioidea
    Coioidea
    Mar 27, 2020
    51
    能造成全国范围三家运营商出问题,肯定是骨干网级别 mitm 的了吧!个人能力能部署到骨干网?
    到现在官方包括网安部门没有发话,有蹊跷啊
    glfpes
    glfpes
    Mar 27, 2020
    52
    @tulongtou 我可没说是 QQ 号主干的,是你自己说的。
    miaomiao888
    miaomiao888
    Mar 27, 2020
    53
    @fancy111 配合三录灵浏览器自己的证书管理,简直完美
    DonaidTrump
    DonaidTrump
    Mar 27, 2020 via iPhone
    54
    @glfpes 那你看 QQ 号怎么知道是一二年的小喽啰呢?
    blleng
    blleng
    Mar 27, 2020
    55
    现在那个 qq 号声称被盗号。但是攻击者要生成证书的话随便用个邮箱就行,实在没有盗号的必要啊。如果这个 qq 号的主人是攻击者,用被盗号来解释也太...
    bclerdx
    bclerdx
    Mar 27, 2020 via Android
    56
    @fancy111 把可以根证书放入不受信任表。
    hftrrt
    hftrrt
    Mar 27, 2020 via Android
    57
    @lff0305 现在普通人 pc 端装网银的也少了,基本都用手机银行
    stormsuncc
    stormsuncc
    Mar 27, 2020
    58
    预演。
    DawnMoon
    DawnMoon
    Mar 27, 2020 via Android
    59
    这件事情让我们知道了,搞 GFW 的人只是有权力而已,技术其实很臭
    CommandZi
    CommandZi
    Mar 27, 2020
    60
    @1109599636 看看这个链接
    https://zh.wikipedia.org/wiki/%E6%A0%B9%E8%AF%81%E4%B9%A6#%E6%88%AA%E5%8F%96%E9%80%9A%E4%BF%A1

    当中 爱丽丝与鲍伯 的示例很清晰形象了。
    xiaomimei
    xiaomimei
    Mar 27, 2020 via Android❤️4
    61
    看楼上这么多意淫,挺搞笑的
    Andy00
    Andy00
    Mar 27, 2020❤️1
    62
    这个事情应该结合上好几年前沃通的事儿看
    知乎传送门: https://www.zhihu.com/question/50298017
    沃通和 360 的关系不用说了吧
    buffzty
    buffzty
    Mar 27, 2020
    63
    昨天 gorm.io 这个域名也被劫持了
    fzhyzamt
    fzhyzamt
    Mar 27, 2020
    64
    今天上午打不开还以为是被劫持了,插个眼
    Biwood
    Biwood
    Mar 27, 2020
    65
    原理就是攻击者首先能够伪造 github 的域名,他能控制 DNS 解析,把域名指向一个“中间人”服务器上,然后在这个中间人服务器上部署伪造的证书。
    关键点就在于这个 DNS 的服务器控制权限,连骨干网络都收到影响了,我想应该不是一般商家能够做得到的事情。本质上跟以前的 DNS 污染是一回事,所以楼上有人猜测这事跟“权力”相关完全不稀奇。

    话说回来,就算真的把整个 Github 都封了也不会怎么样吧,再多几个教授联名写信都不会怎么样,真的。
    ibreaker
    ibreaker
    Mar 27, 2020
    66
    @Biwood DNS 正常的吧?
    AlghaPorthos
    AlghaPorthos
    Mar 27, 2020
    67
    我觉得就是贵党看不爽了。

    P.S.楼主女性头像警告。(光速逃
    galenzhao
    galenzhao
    Mar 27, 2020
    68
    @Biwood dns 正常,ip 也正常,看网上大佬分析 只有 443 的路由不正常,
    但是 奇怪的是,通过 githubio 访问劫持,自定义域名就没事,
    fzhyzamt
    fzhyzamt
    Mar 27, 2020
    69
    @galenzhao 猜测应该是劫持了特定 ip 特定端口的请求,那个分析帖提到了 cython 这种别名到 githubio 的也挂了
    restlessdream
    restlessdream
    Mar 27, 2020❤️1
    70
    @Biwood 你连事件都没认真看,dns 从头到尾都没问题。
    eric
    eric
    Mar 27, 2020❤️1
    71
    基本可以確定是 BGP Flowspec 。這個一般是做 DDoS 清洗的時候用來牽引流量的,現在看樣子是被開發出了新玩法。
    littlewing
    littlewing
    Mar 27, 2020 via iPhone
    72
    我只能说不是个人行为
    glfpes
    glfpes
    Mar 27, 2020
    73
    @tulongtou
    因为这就是小喽啰的搜索引擎驱动编程模式嘛,不知道从哪 copy 的命令就硬怼进去。
    nereus
    nereus
    Mar 27, 2020 via iPhone
    74
    BGP 协议配合路由策略可以做到,但是 BGP 协议几乎不可能被黑入,结合去前年国内强制要求 bgp 和 igp 换用国密算法,所以极有可能是功夫网借助国密后门搞的反科学上网实验
    baobao1270
    baobao1270
    Mar 27, 2020
    75
    日常挂梯子上网+吊销所有国产证书+手动维护 HSTS 列表,都不知道发生了这件事情
    LFUNWF
    LFUNWF
    Mar 27, 2020 via Android
    76
    敲山震猫
    wangyzj
    wangyzj
    Mar 28, 2020
    77
    后排板凳
    wdlth
    wdlth
    Mar 28, 2020
    78
    没想到连 GitHub 都实现了 AnyCast……
    jinliming2
    jinliming2
    Mar 28, 2020
    79
    @wdlth 套了 CDN,CDN 实现的 AnyCast
    jinliming2
    jinliming2
    Mar 28, 2020
    80
    @nereus 上个月 Let's Encrypt 发的博客里提到针对了 BGP 的攻击,说是大部分的 BGP 部署都不安全: https://letsencrypt.org/2020/02/19/multi-perspective-validation.html
    DonaidTrump
    DonaidTrump
    Mar 28, 2020 via iPhone
    81
    @glfpes 怎么看出来是 copy 命令硬怼的?就因为 qq 邮箱?
    cloudyi666
    cloudyi666
    Mar 28, 2020 via iPhone
    82
    用户———路由——国际口——-路由——-服务器
    |
    流量 清洗
    代理服务器
    OllyDebug
    OllyDebug
    Mar 28, 2020
    83
    能操作核心设备的人不是一般人的
    wanguorui123
    wanguorui123
    Mar 28, 2020 via iPhone
    84
    GitHub 被反向代理了,但是没有官方证书?
    Windsooon
    Windsooon
    Mar 28, 2020
    85
    可以看看我的分析,Github 中间人攻击分析 https://zhuanlan.zhihu.com/p/119030756
    wdlth
    wdlth
    Mar 28, 2020
    86
    @jinliming2 github.com 解析的 IP 不是 CDN,是 EC2,我只是想讽刺一下这个劫持。
    realpg
    realpg
    Mar 28, 2020
    87
    技术鉴定贴……

    看楼上很多位一本正经的胡说八道就感觉很好玩
    cweijan
    cweijan
    Mar 28, 2020
    88
    目前是证书被替换, 而证书是通过 tcp 连接 443 端口获取的, 所以宏观上看就是 tcp 返回的数据被篡改
    至于怎么篡改: 某个神秘力量
    yulihao
    yulihao
    Mar 28, 2020
    89
    我觉得可能是 443 劫持到反代上,而反代有没有一个很好的证书
    glfpes
    glfpes
    Mar 30, 2020
    90
    @tulongtou 嗯,没错。
    123444a
    123444a
    Mar 31, 2020 via Android
    91
    Error Code: 9
    DateTime: 2020/3/31 20:18:18
    Click to Search Again
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2297 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 130ms · UTC 12:57 · PVG 20:57 · LAX 04:57 · JFK 07:57
    ♥ Do have faith in what you're doing.