網頁

當Data URI碰上Email

新年將至,Email裡的Anti-Spam也多了起來,賣藥、股票、發票、貸款、在家創業…等一堆,但有一封Anti-Spam引起我的興趣。

第一,它能正確到我的收件匣;
第二,它能在不經過我同意下顯示出圖片

我使用的是Outlook,信件都是先經過TrendMicro Solution,再進到Outlook,Outlook本身的辨識率也還不錯,應該有95%以上,都能正確把Anti-Spam送進「垃圾郵件」中,就算有漏網之魚,一般而言,圖片會先經過使用者同意後才會顯示,例如,


但這封Anti-Spam,可以無視Outlook的安全設定,直接顯示圖片,如:


因為不是第一次了,感覺到不對,查看了一下原始碼,原來:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>

    
  </head>
  <body bgcolor="#ffffff" text="#000000">
<center>
<img border="0" src="cid:0271d15f7b22$b60be514$563c53f5$AAIVYSH" width="550" height="350" align="center">
</center><br>
Salvador Bailey
  </body>

</html>


看出來了嗎?它img的src路徑怪怪的,那是什麼東東?那個東西稱「Data URI」,所以結論是,使用Data URI可以的Email可以「繞過」Outlook的安全設定。

技術真是兩面刃,Data URI是個好東西。槍可以殺人,也可以救人,依使用者而定。

下載使用Data URI的Anti-Spam (7z)


以上郵件是使用「內嵌圖片」技術,細節我在另寫一篇「ASP.NET -- 發送內嵌圖片Email」解釋。感謝網友的提醒。

Reference:

2 則留言:

  1. 這個感覺上不像是data uri
    像是指是內嵌圖片,在內嵌圖片給定一個"cid"值
    而已

    回覆刪除
  2. 感謝匿名,
    因為是在很忙的情況下,沒有思考及查證,很抱歉,應該是你說的「內嵌圖片」。

    回覆刪除

感謝您的留言,如果我的文章你喜歡或對你有幫助,按個「讚」或「分享」它,我會很高興的。