HTTP/HTTPS劫持
網頁劫持往往只是在頁面上添加一個小視窗,但這小視窗並不屬於網頁本身的廣告,有時候無論你訪問什麼網頁,這小視窗都不會消失。
網頁的顯示,從User點擊:
- 信息首先會通過瀏覽器發送
- 經Router轉
- DNS將域名解析成IP
- 找到Server,Server會發送內容給User
- 接著再由Router轉發data
- 瀏覽器將內容呈現給User。
--視實際情況,這個過程中可能存在更多關卡,比如說防火牆、代理伺服器等。
常見手法
- 直接修改內容步驟:
- 利用代理伺服器(Proxy)監聽
- https請求
- 修改返回內容(連結)
- 返回請求(已被修改返回內容)
- 表單提交
- 表單劫持(formjacking)攻擊:駭客在網路零售商網站植入惡意程式碼,藉此竊取消費者信用卡資訊
- 例:將click換成submit, href 換成action
- 彈出視窗
- 腳本函數修改(XSS、CSRF、JavaScript)
- 框架頁面
- 將https 主頁降成http頁面,因協議不同可能會產生無法顯示的問題,故將頁面框架都轉成http版本,確保與原網頁一致,使用proxy加上http head ,可以攔截https框架頁
- 假的網址列
目前受災最廣的攻擊:XSS攻擊
網站應用程式直接將來自使用者的執行請求送回瀏覽器執行,使得攻擊者可擷取使用者的Cookie或Session資料而能假冒直接登入為合法使用者。
攻擊流程:
1. 當受害者登入一個網站
2. 從Server端取得Cookie
3. 而Server端上已經被XSS攻擊,受害者將Cookie回傳至假的 Server
4. 攻擊者從自己架設的假 Server上取得受害者Cookie
5. 因此攻擊者取得控制受害者的身分使用權