揭秘315黑客wifi,怎樣保障APP數(shù)據(jù)安全?
315晚會上曝光WIFI安全,演示微信、郵箱當場被黑,隱私密碼都被披露,風險無處不在。對用戶來說, 阿里移動安全已經(jīng)支招:1,不接入無密碼或無手機驗證碼的WiFi;2,手機不ROOT、不越獄;3,正規(guī)應用商店下載官網(wǎng)APP4;不在陌生APP上提 交個人重要信息;5裝一個安全軟件,如阿里錢盾;養(yǎng)成健康、良好的上網(wǎng)習慣等。而對于開發(fā)者來說,怎樣更好的設(shè)計移動App來防護WIFI被劫持后的攻擊 呢?
WIFI下的攻擊原理
攻擊者針對WIFI的攻擊,一般通過中間人攻擊,在中間人攻擊過程中,正常APP應用經(jīng)過WIFI的路徑:
圖一
被黑客劫持,攻擊者與通訊的兩端分別創(chuàng)建獨立的聯(lián)系,并交換其所收到的數(shù)據(jù),通過中間人攻擊,攻擊者可以進行HTTP或其他明文協(xié)議敏感信息的竊取,HTTPS通信破解,DNS劫持等:
圖二
移動應用環(huán)境中針對HTTP或其他明文協(xié)議如POP3,SMTP,FTP,可通過各種代理、嗅探工具與PC環(huán)境下一樣,嗅探所有明文協(xié)議的通信。并且攻擊者也能對HTTPS進行攻擊,這些攻擊一般有:
1, 通過SSL分離+HTTPS->重定向等方式對HTTPS進行攻擊,
SSL分離+HTTPS->重定向的原理就是:
- ARP欺騙,使得攻擊者能截獲所有目標主機的網(wǎng)絡(luò)流量
- 攻擊者利用用戶對于地址欄中HTTPS與HTTP的疏忽,將所有的HTTPS連接都用HTTP來代替
- 同時,與目標服務(wù)器建立正常的HTTPS連接
- 由于HTTP通信是明文傳輸,攻擊者能輕松實施嗅探
現(xiàn)成工具比如ssltrip,dSploit,zANTi都可實施此類攻擊。
2,利用客戶端不校驗SSL證書(包含簽名CA是否合法、域名是否匹配、是否自簽名證書、證書是否過期):
該問題往往由幾種編碼錯誤情況引起:
-自實現(xiàn)的不校驗證書的X509TrustManager接口的Java代碼片段 (即將checkServerTrusted()方法實現(xiàn)為空,即不檢查服務(wù)器是否可信):
-不檢查站點主機域名與證書中的域名是否匹配(即將verify()函數(shù)直接返回true接受任意主機域名)的Java代碼片段
-接受任意主機域名的Java代碼片段
-當使用webview加載HTTPS網(wǎng)頁時,覆蓋重寫Android系統(tǒng)WebViewClient類中的onReceivedSslError()函數(shù),直接忽略證書校驗失敗并接受任意證書
解決方案
既然劫持有時不可避免,開發(fā)者更要責無旁貸保護用戶,阿里移動安全建議開發(fā)者不要用HTTP協(xié)議來傳輸敏感信 息,在使用HTTPS進行通信時,切記不要同時支持HTTP。如果非得使用HTTP協(xié)議來傳送敏感信息,使用聚安全SDK組件對輸入數(shù)據(jù)進行加密。開發(fā)者 還可以使用聚安全SDK組件更多秘籍:通過審核審計,安全加固,對SSL證書進行強校驗;通過數(shù)據(jù)加密,在WIFI劫持情況下也不影響敏感信息泄露;通過 安全簽名,在WIFI劫持的情況下保證會話完整性,數(shù)據(jù)不被篡改或者偽造。保證WIFI被劫持的情況下最大限度的降低風險:
圖三