前兩天在南京的酒店裡使用酒店提供的無線網路上網時,意外地發現本站的網頁被惡意植入了廣告。本站已於11月29日啟用了全站HTTPS傳輸,並對HTTP訪問請求做了自動跳轉處理,而當時發現頁面被植入廣告時,地址欄中竟沒有顯示HTTPS。顯然,南京電信為植入廣告,使用了經典的HTTPS中間人攻擊(Man-In-The-Middle Attack)來劫持連接。南京電信之流氓,是我沒有想到的。
据推測,本站被劫持的流程應該是這樣的:狗屎南京電信接收到來自客戶端的HTTP請求後,將請求放行至本站伺服器;本站伺服器發現是HTTP請求後,返回一個301狀態碼,重定向到HTTPS頁面;狗屎南京電信發現狀態碼是301後,劫持了該伺服器響應,並偽裝成客戶端,與本站伺服器建立加密隧道,請求重定向後的HTTPS協議的URL,接收到伺服器正常返回的網頁後插入廣告,並以最初的HTTP形式返回給客戶端。在客戶端看來,發送了一個HTTP形式的請求,收到了一個HTTP形式的響應,一切都是那麼的尋常,殊不知已被狗屎南京電信陷害。
為了反制狗屎南京電信的惡意劫持,本站決定採用一種新型的雙向驗證機制,通過伺服器方面基於PHP的和客戶端方面基於JavaScript的協議類型檢測的協同,實現非HTTPS協議時的無條件跳轉,確保在任何網路環境下本站的訪問都不被惡意劫持。本站將儘快部署此解決方案。
这对大陆ISP尤其是电信来说真不新鲜 尤其是南方电信还弄过那个”ipush”系统 收集用户搜索关键词定点投放…
可怕。。。我博客用startssl的时候也被广州电信劫持过
后来我开启了HSTS
你这个“基于JavaScript的协议类型检测”方法有没有相关教程我想看看
沒有。我自己研發的。
无条件跳转的话不会跟ISP之间形成循环吗。。。
建议采用国际标准,设置hsts,并且尽量申请加入hsts preload list,防止被陷害。
才注意到你这个是HTTPS,道高一尺魔高一丈啊,它必定在中间起桥梁作用,爱怎么样就怎么样去吧
太过分了这是。不明白为什么要这样对客户
1、开启HSTS;
2、开启DNSSEC防护;
3、直觉上感觉沃通有后门。
博主是港澳台人士?