iT邦幫忙

2026 iThome 鐵人賽

DAY 13
0
佛心分享-SideProject30

toui:一條短網址能做到哪些事——從轉址到 AI 工作流系列 第 13

Day 13|短網址安全嗎?一個短網址服務該疊哪幾層防護

  • 分享至 

  • xImage
  •  

短網址的功能就是把目的地收起來,換成一串乾淨簡短的字串,代價是收到的人看不到原來的網址是什麼。

這對分享的人是方便,但對想騙人的人也是方便,而且是同一個功能,不是兩件事。

所以能做的是從不同面向把風險一層一層降低,每一層都是在安全與便利之間權衡,沒辦法完全鎖死或全開,兩邊都要顧及。

收到一條看不出目的地的連結,想先還原它、查清楚它到底連去哪,是很合理的動作。詐騙連結確實有不少會使用短網址。

提供這個服務的人,責任就從這裡開始。

toui 在整個安全架構設計上,用幾層來疊起防護。

第一層:沒註冊建立的連結有時限

不用登入就能縮一條網址,這是這個服務的入口,提供試用的便利性。但一條不需要任何身分就能建立、又永遠有效的連結,取得的成本就變得太低了。

所以匿名建立的短連結我們設定三十天的期限,時間到就失效。登入之後建立的連結永久保存,不分方案。

三十天是在可用性與濫用之間取得的平衡。臨時要傳一條連結給人、活動貼一週、印一張短期的傳單,三十天都夠;而想拿一批連結,長期欺詐的人,時間一過就自動失效了。

同一層還有一道人機驗證。對真的要縮一條網址的人,那是多等幾秒;對想用程式大量產生連結的人,那是一道要繞的牆。

這一層擋的不是內容,是成本。它讓「大量建立、慢慢使用」這件事變貴。

這個天數也不是定死的,日後有什麼惡化的現象,toui 會往安全那邊走,把時間縮短。

第二層:每一條連結在建立時就掃過

新連結建立的當下會過 Google Safe Browsing,比對惡意程式與釣魚。為了不讓有人先用正常的網址新增,之後再更替成有害的網址,在有異動時我們也都會掃描。另外也有擋掉會不斷循環的轉址迴圈,也不讓短碼拿去假冒知名品牌的名字。

這是透過產業共用的資訊來防護,畢竟惡意網址的情報要不斷更新、數量夠大才有價值。這一層的好處是快而且便宜,缺點很明確,它擋的是已知的東西。一個今天才註冊、還沒有被任何資料庫收錄的網域,它不會警示。

所以共用情報之外,toui 自己另外做了一層檢查,專門去提高「還沒被收錄但有問題」那一類被發現的機會。它不取代前面那一層,是加在後面。

即使這樣,還是有東西會穿過去。那正是下面兩層要接的。

第三層:任何人都可以先看目的地

toui.io/{短碼}/qr 這一頁公開顯示這條連結的目的地,不用登入,不用註冊,收到連結的人自己就能開。

這一頁本來是給要把連結印出去的人拿 QR Code 用的,但它同時把目的地攤在那裡。一條連結是否可疑,與其交給系統判斷,不如把判斷的材料直接交給使用者,那個網域是否正常,有時就是得讓他看一下原來的網址。

同一個設計也讓收到連結的人不必先點下去才知道要去哪。要確認一條連結,卻得先點開它,這個矛盾正是各種短網址還原工具存在的理由。

第四層:看出不對勁的時候可以說

自動檢查擋得掉黑白分明的,剩下一片灰的。有些頁面內容看起來正常,意圖卻不是那樣,那種不對勁很難寫成一條規則,可是人眼一看就覺得不對。

那個「一眼覺得不對」是這一層的價值,機器現在做不到。

所以檢舉的入口對所有人開放,不用登入。這一層原本只受理多連結專頁,後來改成一體適用的濫用檢舉,當時有幾個決定值得說。

收完整網址,不收短碼。 用自訂網域的客戶,他的訪客看到的是 go.acme.com/xxx,那個人不知道背後是 toui。跟他要「toui 的短碼」,等於要他提供一個他不可能知道的東西。

不是我們的網域也收。 有人拿別家的短連結來報,一樣收下,只在通知上標記。對一個正在慌的人,「這條不是我們的」本身就是有用的資訊。

通知裡帶著那條連結當下的目的地。 判讀的人不必去點那條可疑連結,就知道它指向哪裡。

https://ithelp.ithome.com.tw/upload/images/20260905/201788136QOVqSJTUT.png

真正受害時的處理方法

上面四層加起來,toui 能做的是把一條連結攔在被點開之前、把判斷的材料交給使用者、在事後把它停掉。停掉之後那條連結立刻就不會再把人送過去。

做不到的也很明確。連結有害造成實際損失時,toui 只能停用連結避免它繼續傳播,要再追查或是公告周知,仍得需要專業的機構。

數發部的網路詐騙通報查詢網可以輸入網址作比對,一方面驗證是否有異常,另一方面也可登錄有害網站公告周知。

涉及金錢損失或已經受害,可以撥打 165 或是到內政部警政署 165 全民防騙網報案或檢舉,公權力才是解決受害情況的有力管道。

這兩個地方查不到,也不代表那條連結安全。資料庫裡只有被通報過的東西,而新的詐騙網址每天都在出現。

到這裡就是 toui 的極限,剩下的判斷回到人身上。

每一層擋不到的,就是下一層的規格

在服務的每一個層面上,為你的使用者評估風險與防護。那些風險在你設計那個功能的當下就已經在了,不是出事才開始存在。

你得先知道每一層漏掉的是什麼,那就是下一層要接的東西。縱深防禦不是每一層都要完美,是每一層都知道自己的邊界在哪。


上一篇
Day 12|串接金流之前,最該問自己的三個問題
下一篇
Day 14|你的服務應該要提供 API 嗎?
系列文
toui:一條短網址能做到哪些事——從轉址到 AI 工作流19
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言