SSL 加密連線不見得安全,不要在公眾網路使用網銀交易

作者 | 發布日期 2014 年 10 月 08 日 9:52 | 分類 app , 網路 , 資訊安全
1

日前行政院長江宜樺發函要公務人員不要使用LINE、WhatsApp 等通訊軟體,要公務人員使用工研院研發的手機通訊軟體 Juiker(揪科),但 Juiker 卻爆出 SSL 憑證認證的問題,讓惡意攻擊者可利用中間人攻擊,竊取使用者的機敏資料。雖然工研院緊急修改 App,已於 1 日重新上架,但這也揭示手機 App 在開發上的 SSL 憑證風險,對一般者來說,手機最機密的資料往往是手機上的帳密及網路金融交易資訊。



HITCON 台灣駭客年會在 6 日舉辦論壇,提醒開發者特別注意手機 App 開發時,常被忽略的 SSL 處理,以及 Android 系統的 WebView 三大漏洞(註)。岑志豪提醒,Android 系統的 4.0.X 及 4.1.X 版本是重災區,橫跨三個 WebView 漏洞,開發者不要小看每個漏洞,三個漏洞加總起來,危害不容小覷。

岑志豪指出,「不是用 SSL 加密連線就安全,要檢查憑證是否安全。」網路連線普遍發生的現象是,對資料層傳輸的保護不足。最常遇到中間人攻擊(Man-In-The-Middle Attack),當連線被中間人攻擊時,會攔截中間的資訊,使用者的連線被導往攻擊者的伺服器,使用者資料就會被竊取。

 

不要在公眾網路使用銀行線上交易

資安專家戴夫寇爾資安研究員岑志豪建議,一般使用者盡量不要在公眾使用的網路如咖啡廳進行刷卡及網路金融交易,避免惡意攻擊者利用同一個網段進行惡意攻擊,取得機敏資訊,3G、4G 網路或家中網路則相對安全。因為網路銀行也可能被中間人攻擊,台灣許多線上銀行都存在 SSL 風險,由於程式通常是委外開發,要看外包廠商是否注意到 SSL 的問題。

另外,岑志豪提醒使用者不要點進來歷不明的連結,更要注意是否點進連結後下載程式。他進一步指出,如果發現上網的速度變得很慢,或者突然在某個情況下耗電率很快,這兩個特徵可以協助使用者判斷是否手機可能被惡意攻擊。

如果真的發現手機被攻擊下載惡意程式,可以試著移除程式,如果無法移除的話,就把手機系統重置,恢復到原廠設定,大部分的情況應該可以解除危害。

 

SSL 處理憑證風險,防範方法:避免在公眾網路傳輸機敏資訊

SSL 問題普遍存在,資策會「2014 年上半年臺灣風雲 APP 百強」中,Android 的 App 有 86 個,其中存在 SSL 風險的 App 就有 49 個。岑志豪說,一般來說,系統預設會對伺服器做憑證的檢查,只要憑證有效,伺服器的設定也正確的話,就可以正常使用加密連線,如果憑證無效的話,開發者若沒有處理,連線就會被中斷。

使用預設設定而無法通過憑證的原因有以下三個:
1、憑證是對的,但伺服器設定有誤。
2、根憑證未預裝到裝置上,手機上有先預安裝憑證,但手機機型舊,導致憑證認為你的手機有問題。
3、其他:像是開發者常常會自行簽發憑證、憑證過期及網域名稱不符。

給開發者的建議:

  • 務必採用加密連線傳輸機敏資料
  • 嚴格做好對伺服器憑證的檢查(系統預設、憑證綁定)
  • 只容許在開發階段忽略憑證檢查
  • 注意使用的第三方函式庫是否有問題

給使用者的建議:

  • 避免使用公眾場所所提供的無線網路
  • 避免使用加密強度較弱的無線網路,如 WEP、WPA 等。

2▲Android 系統上 SSL 問題的建議。(圖片來源:郭芝榕/攝影。)

 

三大 WebView 漏洞,防範方法:使用 Android 系統 4.2.X 或 chrome、firefox、opera 瀏覽器

開發者想讓程式與網頁結合時,通常會使用 WebView,是可執行 JavaScript,用於連結網路及顯示網頁的元件。不過,岑志豪也指出 WebView 目前的三大漏洞 CVE-2012-6636、CVE-2014-1939、CVE-2014-6041,會讓攻擊者可以竊取資料,Android 系統的 4.0.X 及 4.1.X 同時受到三個漏洞影響,算是「重災區」。

3▲手機 App 使用 WebView 常見的三大 CVE 漏洞,漏洞見紅色區域。(圖片來源:郭芝榕/攝影。)

岑志豪說,結合SSL的中間人攻擊及 WebView 的漏洞,攻擊者可取得手機應用程式的權限,進而控制使用者的手機。他並建議,千萬不要忽視每個漏洞的影響力,尤其是不同漏洞的組合,危害將遠大於每個漏洞各自的影響。開發者要在產品發佈前進行安全測試,定義 App 最低支援版本,避免因相容舊版而引發資訊安全的問題。

4▲資安專家提醒開發者不要忽略漏洞被結合攻擊的影響力。(圖片來源:郭芝榕攝影。)

 

給開發者的建議:

CVE-2012-6636

  • 避免 WebView 載入惡意內容,使用 HTTPS,只讀取本地 HTML
  • 在 4.2.X 或以上版本使用時要為函數標註 @Javascriptinterface
  • 避免在 4.1.X 或以下版本的系統上使用 addJavascriptInterface 函數

CVE-2014-1939

  • 避免WebView載入惡意內容,使用HTTPS,只讀取本地HTML
  • 對版本 3.0.X ~ 4.1.X 的系統使用 removeJavascriptInterface,把"searchBoxJavaBridge-“這個介面移除

CVE-2014-6041

  • 避免 WebView 載入惡意內容,使用 HTTPS,只讀取本地 HTML
  • 機敏 cookie 務必設定為 HttpOnly(伺服器端)

給使用者的建議:

  • 系統更新至 4.2.X 或以上版本
  • 避免開啟不明來歷網址
  • 採用非內建 WebView(WebKit)作為核心的瀏覽器,像 Chrome、Firefox、Opera

註:CVE(Common Vulnerabilities and Exposures)漏洞是一個國際知名的漏洞資料庫,由企業界、政府界和學術界共同參與的非盈利組織,可以快速發現軟體中的脆弱之處。

(首圖來源:郭芝榕攝;本文由 數位時代 授權轉載) 

發表迴響