相關文章

9b4074684df062a5f324d2ce4c7ce1fc 長期以來,Linux系作業系統與Mac OS的安全性都比Windows高,基本上不需要安裝任何防毒軟體也可安心使用,不過再怎麼堅實的系統,還是難保能夠做到滴水不露。開發者Samy Kamkar就發現了只要將Teensy開發板偽裝成鍵盤滑鼠,就能竄改Mac OS X的DNS設定,讓使用者誤入釣魚網站。

惡意DNS將你帶到釣魚網站

先前筆者曾介紹過Mac OS X與iOS的SSL安全性漏洞,那個問題可以歸咎於SSL驗證過程部分的程式碼不夠嚴謹,而這次Samy Kamkar提出的破解方式相當有趣,他發現在Mac OS X中修改DNS(Domain Name System,網域名稱系統,將使用者輸入的網址轉譯為該網站的真實IP位置的系統)設定時,如果使用純文字指令介面的話,就需要輸入使用者帳號與密碼才能更改設定。但是如果進到系統設定中更改的話,就不需要帳號與密碼,所以只要想辦法在系統設定中修改即可。

純文字指令介面的風險是,攻擊者比較容易透遠端登入進行修改,而系統設定則需使用鍵盤與滑鼠操作圖型介面,基本上比較不易從遠端發動攻擊。

如果攻擊者修改DNS之後,就可以在使用者瀏覽網路時,將網址轉譯成釣魚網站,讓使用者在不知情的狀況下進入偽造的網站,如果這時輸入帳號、密碼,甚至信用卡資料的話,就可能造成危害。

▲Samy Kamkar將Teensy開發板改造成全自動Mac OS X破解工具。

▲Teensy是款與Arduino相容的開發板,具有多種不同款式。

▲修改DNS設定後,就可以將使用者引導至釣魚網站。圖中範例的網址輸入facebook.com,但是出現的網站確是偽造的。

透過程式控制滑鼠

這個破解系統最主要的概念,就是將Teensy偽裝成鍵盤與滑鼠,並運用事先寫好的程式讓「鍵盤與滑鼠」自動運作,達到將Teensy透過USB接上Mac電腦之後,就可以自動竄改DNS設定。

當Teensy接上Mac之後,程式會先透過文字指令叫出系統設定視窗,然後運用文字指令指定視窗大小,並將視窗放置到畫面的左上角,如此一來就可以知道DNS設定畫面中每個欄位與確定按鈕的位置,進而能夠將滑鼠的動作寫成程式,讓Teensy模擬滑鼠的移動與點擊。

這個破解方式雖然相當異想天開,縱使需要真實將Teensy插入電腦的USB端子,無法像大部分的惡意程式、病毒,可以透過網路遠端發動攻擊,但是也讓我們看到修改系統設定不需輸入密碼固然方便,卻容易形成安全性漏洞的風險。

▲在示範影片中,Samy Kamkar刻意讓畫面左上角顯示無人操作的電腦,證明這些動作都是自動進行。

▲一開始破解工具會透過文字指令開啟系統設定,並指定視窗大小。

▲系統設定視窗就會乖乖的靠到畫面左上方。

▲然後開啟DNS設定視窗。

▲透過Teensy控制滑鼠游標,並先將游標移到畫面左上進行定位。

▲然後就可以透過程式控制滑鼠移動到畫面上固定的位置,點擊欄位與確定按鈕,完成竄改工作。

▲Samy Kamkar提供的示範影片。

延伸閱讀:

Apple出包,你的SSL加密是否安全?SSL原理解析,從密碼學看加密技術的安全性

選對 DNS,速度快N倍

網路架構大概論1-ARPANet歷史與MAC、IP、DNS 概念篇

使用 Facebook 留言

發表回應

謹慎發言,尊重彼此。按此展開留言規則