你的微博也被盗赞?试试HSTS强制HTTPS加密
微博賬戶被盜贊或被動加關注的問題,可能很多用戶都遇到過,每天都會發現自己的賬戶莫名其妙關注或點贊了幾十個營銷號、廣告號、明星號的微博,挨個取消被盜的關注和贊,竟然成了日常最主要的微博操作,很多用戶對此感到不厭其煩。
原因分析
從技術上看,能夠給微博賬號加關注或盜贊的途徑通常有:1、微博賬戶被盜,能夠被別人直接登錄;2、使用第三方客戶端等,可以通過微博開放平臺OAuth拿到access token,然后權限被濫用;3、在瀏覽器上使用web版微博登錄時,cookies被泄露了。
對此,微博安全中心也曾給過一些安全建議,比如:建議用戶更換密碼、升級客戶端、設置登錄保護、清除第三方應用權限等等,但是不少用戶按照建議完成這些操作后,被盜贊的問題仍然存在。
在對不同客戶端、web端的訪問情況進行分析后我們發現,雖然微博已經啟用HTTPS加密?很多開放平臺的接口也使用HTTPS加密,但你的瀏覽器書簽、別人發給你的鏈接、舊的外鏈、其他應用生成的鏈接都可能還是 HTTP 的。當部分請求由HTTP連接301跳轉到HTTPS時,這個 HTTP 請求仍然會帶上瀏覽器在 weibo.com 域下的所有 cookie。這么一來,當用戶登錄后在某個特定場景訪問到HTTP的微博鏈接時,仍然可能遭遇cookie劫持,清除授權或修改密碼也沒有用。
解決方法
通過給 cookie 設置 secure 或者在服務器端設置 HSTS(HTTP Strict Transport Security) 也能解決這個問題,但是微博服務器端的設置是用戶無法控制的,作為用戶還有沒有什么辦法解決這個問題呢?沃通CA(www.wosign.com)建議:比較簡單的做法就是,用戶在Chrome瀏覽器手動設置HSTS預載入列表(preload list),將微博域名加入預載入列表,強制HTTPS加密訪問。
HSTS代表的是HTTPS嚴格傳輸安全協議,它是一個網絡安全政策機制,能夠強迫瀏覽器只通過安全的HTTPS連接(永遠不能通過HTTP)與網站交互,這能夠幫助防止協議降級攻擊和cookie劫持。但是對于HSTS生效前的首次HTTP請求,依然無法避免被劫持,瀏覽器廠商們為了解決這個問題,提出了HSTS Preload List(預載入)方案:內置一份可以定期更新的列表,對于列表中的域名,即使用戶之前沒有訪問過,也會使用HTTPS協議。Chrome運營了一個HSTS 預載入列表,大多數主流瀏覽器Firefox, Opera, Safari, IE 11 and Edge也都有基于Chrome列表的預載入列表。
在Chrome瀏覽器設置HSTS預載入列表的方法是:
在 Chrome 里打開 chrome://net-internals/#hsts
Add domain中增加微博主域名
Query domain中能查詢到就可以了
在HSTS預載入列表中加入微博主域名后,Chrome再遇到HTTP的微博連接,會直接在瀏覽器內部就跳轉到 HTTPS,確保請求從一開始就加密,保證通訊安全,防止cookie劫持、SSL Strip中間人攻擊,您可以通過Chrome開發者工具對此進行驗證。
總結
以上是生活随笔為你收集整理的你的微博也被盗赞?试试HSTS强制HTTPS加密的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: ceph13 快速编译 v13.2.4
- 下一篇: 使用腾讯bugly更新服务遇到的坑
