Github疑似遭中間人劫持,網(wǎng)友反饋訪問(wèn)報(bào)證書錯(cuò)誤
昨日,部分網(wǎng)友反饋Github網(wǎng)站無(wú)法訪問(wèn),疑似有攻擊者大規(guī)模地發(fā)起中間人劫持。除了Github網(wǎng)站,京東、koajs 等其他網(wǎng)站似乎也受到影響。
此次攻擊似乎通過(guò)骨干網(wǎng)絡(luò)進(jìn)行443端口劫持,經(jīng)測(cè)試,DNS系統(tǒng)解析是完全正常的。目前受影響的主要是部分地區(qū)用戶,且涉及所有運(yùn)營(yíng)商,比如中國(guó)移動(dòng)、中國(guó)聯(lián)通、中國(guó)電信以及教育網(wǎng)均可復(fù)現(xiàn)劫持問(wèn)題,而國(guó)外網(wǎng)絡(luò)訪問(wèn)這些網(wǎng)站并未出現(xiàn)任何異常情況。
由于攻擊者使用的自簽名證書不被所有操作系統(tǒng)以及瀏覽器信任,因此用戶訪問(wèn)這些網(wǎng)站時(shí)可能會(huì)出現(xiàn)安全警告。
截止3月27日12點(diǎn),據(jù)藍(lán)點(diǎn)網(wǎng)的部分信息動(dòng)態(tài)更新,網(wǎng)友反饋Github網(wǎng)站無(wú)法訪問(wèn),攻擊規(guī)模似乎進(jìn)一步擴(kuò)大。
從目前網(wǎng)上查詢的信息可以看到此次攻擊涉及最廣的是 GitHub.io,查看證書信息可以發(fā)現(xiàn)這些網(wǎng)站的證書被攻擊者使用的自簽名證書代替,導(dǎo)致瀏覽器無(wú)法信任從而阻止用戶訪問(wèn)。
圖片來(lái)自v2ex網(wǎng)友
在自簽名證書郵箱更換之前,其顯示證書的制作者昵稱為心即山靈 (QQ346608453),這位心即山靈看起來(lái)就是此次攻擊的始作俑者。所幸目前全網(wǎng)絕大多數(shù)網(wǎng)站都已經(jīng)開啟加密技術(shù)對(duì)抗劫持,因此用戶訪問(wèn)會(huì)被阻止而不會(huì)被引導(dǎo)到釣魚網(wǎng)站上去。如果網(wǎng)站沒有采用加密安全鏈接的話可能會(huì)跳轉(zhuǎn)到攻擊者制作的釣魚網(wǎng)站,若輸入賬號(hào)密碼則可能會(huì)被直接盜取。
圖片來(lái)自知乎網(wǎng)友
中間人攻擊(簡(jiǎn)稱MITM)是指攻擊者在通訊兩端之間接管流量,攻擊者可以攔截通訊雙方的通話并篡改內(nèi)容。簡(jiǎn)而言之,所謂的中間人攻擊就是通過(guò)攔截正常的網(wǎng)絡(luò)通信數(shù)據(jù),并進(jìn)行數(shù)據(jù)篡改和嗅探,而通信的雙方卻毫不知情。
后續(xù)資訊,本文將持續(xù)跟進(jìn)。
附部分節(jié)點(diǎn)測(cè)試情況
阿里云上海數(shù)據(jù)中心(BGP):
- curl -k -v https://z.github.io
- *Connected to z.github.io (185.199.108.153) port 443(#0)
- * SSL connection usingTLSv1.2/ ECDHE-ECDSA-AES128-GCM-SHA256
- * ALPN, server did not agree to a protocol
- *Server certificate:
- * subject: C=CN; ST=GD; L=SZ; O=COM; OU=NSP; CN=SERVER; emailAddress=346608453@qq.com* start date:Sep2609:33:132019 GMT
- * expire date:Sep2309:33:132029 GMT
- * issuer: C=CN; ST=GD; L=SZ; O=COM; OU=NSP; CN=CA; emailAddress=346608453@qq.com* SSL certificate verify result:selfsigned certificate in certificate chain (19), continuing anyway.
- > GET / HTTP/1.1
- >Host: z.github.io
- >User-Agent: curl/7.52.1
- >Accept:*/*
群英網(wǎng)絡(luò)鎮(zhèn)江數(shù)據(jù)中心(電信):
- curl -k -v https://z.github.io
- *Rebuilt URL to: https://z.github.io/
- *Trying185.199.108.153...
- * SSL connection usingTLSv1.2/ ECDHE-RSA-AES128-GCM-SHA256
- * ALPN, server accepted to use h2
- *Server certificate:
- * subject: C=US; ST=California; L=SanFrancisco; O=GitHub,Inc.; CN=www.github.com
- * start date:Jun2700:00:002018 GMT
- * expire date:Jun2012:00:002020 GMT
- * issuer: C=US; O=DigiCertInc; OU=www.digicert.com; CN=DigiCert SHA2 HighAssuranceServer CA
- * SSL certificate verify ok.
- *Using HTTP2, server supports multi-use
- *Connection state changed (HTTP/2 confirmed)
- *Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
- *UsingStream ID:1(easy handle 0x556d826f6ea0)
- > GET / HTTP/1.1
- >Host: z.github.io
- >User-Agent: curl/7.52.1
- >Accept:*/*
華為云香港數(shù)據(jù)中心(以下為正常連接的證書信息第44行):
- curl -k -v https://z.github.io
- *Rebuilt URL to: https://z.github.io/
- *Trying185.199.108.153...
- * SSL connection usingTLSv1.2/ ECDHE-RSA-AES128-GCM-SHA256
- * ALPN, server accepted to use h2
- *Server certificate:
- * subject: C=US; ST=California; L=SanFrancisco; O=GitHub,Inc.; CN=www.github.com
- * start date:Jun2700:00:002018 GMT
- * expire date:Jun2012:00:002020 GMT
- * issuer: C=US; O=DigiCertInc; OU=www.digicert.com; CN=DigiCert SHA2 HighAssuranceServer CA
- * SSL certificate verify ok.
- *Using HTTP2, server supports multi-use
- *Connection state changed (HTTP/2 confirmed)
- *Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0
- *UsingStream ID:1(easy handle 0x556d826f6ea0)
- > GET / HTTP/1.1
- >Host: z.github.io
- >User-Agent: curl/7.52.1
- >Accept:*/*