針對瀏覽器自動填表功能的釣魚攻擊缺陷

Introduction

根據芬蘭開發者 Viljami Kuosmanen 提到,在 Chrome、Safari、Opera 等具備自動填表功能的瀏覽器,或是 Lastpass 等具備網頁自動填表功能的套件中,都存在這個缺陷使用者在使用自動填表功能時可能意外地將其他資訊洩漏出去。

autofill-demo

Phishing

網路釣魚(Phishing)是一種企圖從電子通訊中,透過偽裝成信譽卓著的法人媒體以獲得如用戶名、密碼和信用卡明細等個人敏感資訊的犯罪詐騙過程。

Wikipedia ──網路釣魚

phishing

Phishing Example

釣魚網站會先設計一個簡單的填表機制,並「在畫面上」請使用者輸入一些基本資訊(e.g. Name, E-mail Address),但「實際上」一些敏感的機密資訊(e.g. Password, Address)欄位是被隱藏的,而當使用者以自動填表功能填入資料後,這些機密資訊將在使用者不知情的情況下被送出。

此範例網站給予輸入表單頁面並請使用者輸入姓名與電子郵件信箱,並在使用者送出表單後網頁後以 JSON 格式會回傳取得之資料。

輸入表單頁面如下圖所示,使用者可利用自動填表功能輸入姓名與電子郵件信箱欄位。

demo-webpage-1

按下 Submit 送出表單後,可以從網頁回傳頁面得到在方才步驟所送出之資料。從網頁回傳內容中可看到除了姓名與電子郵件信箱外,網頁還取得了其他敏感資訊。

demo-webpage-2

Principle

自動填表式釣魚運作原理非常簡單,僅是將敏感資訊的輸入欄位利用寬度偏移 -500px 達到隱藏欄位的目的。若使用者使用自動填表功能,將會把資訊填入被隱藏的欄位一併送出。

Suggestions

為避免使用者資料在不知情的情況下被送出,強烈建議使用者採取以下措施:

  1. 避免在不知名網站上填入個人資料
  2. 關閉瀏覽器(或套件)的自動填表功能

References