8 月 13 日上午,有人在我的短網址服務 tg.pe 提交了一條連結,目的地是 validationreq.top,一個我沒見過的網域。自動檢查在提交的當下就把它標記起來,理由只有一個,這個網域太新了。
Note: There’s also an English version of this post.
註冊 75 分鐘就上工
新到什麼程度?查 RDAP(網域註冊資料的公開查詢協定),註冊時間是同一天上午 10 點 12 分,距離被提交到 tg.pe 只有 75 分鐘。
$ rdap validationreq.top
registration: 2026-08-13 10:12 (UTC+8)
# tg.pe 自己的紀錄
提交到 tg.pe: 2026-08-13 11:29 (UTC+8)
這是釣魚集團的標準作業:拋棄式網域,註冊完立刻上工,被封了就換下一個。但「剛出生」本身就是最好認的特徵之一,一個正常的服務很少會用註冊不到兩小時的網域發連結,所以 tg.pe 對太新的網域一律先不信任。這條連結被自動停用,一個小時內,所有點擊都只會拿到 404。
把自己門口掃乾淨只是最低標。釣魚頁本體還活著,從簡訊、Email 或其他短網址流出去的連結照樣害人。所以真正的工作從這裡才開始。
一顆按鈕,掃描器就什麼都看不到
這個頁面仿冒的是 flatmates.com.au,一個找室友、分租房間的澳洲平台,自稱全澳最大。品牌、版面都像,內容只有一顆「Verify」按鈕。按下去,才會出現要你填信用卡號的表單。
自動掃描器看到的全部:一個品牌假頁和一顆驗證按鈕。urlscan 的判定:0 分,未給任何分類。
問題是,自動掃描器通常不會去按按鈕。urlscan 的快照拍到的就是那顆按鈕,給了 0 分、沒有任何分類;這個頁面對所有訪客送的都是同一頁,沒有針對掃描器變臉,只是把要害藏在一次點擊之後。我沒有信用卡表單那一頁的截圖,掃描器也沒有,那一頁要按下按鈕才會出現。這類釣魚頁就是這樣穿過自動偵測的,所以最後還是得有人真的點進去看一眼。我自己點過去,看到那張表單,才確定它是釣魚。
通報給對的人
接下來就是把情報送到每一個能動手的單位。這次送了這些地方:
CIRCL MISP:MISP 是資安圈交換威脅情資的開源平台,這裡用的是 CIRCL(盧森堡服務民間部門與非政府單位的資安應變中心)營運的那一個。各地的資安應變團隊和資安廠商把惡意網址、網域這些線索整理成固定格式的事件丟上去,平台再自動把它跟其他成員回報的資料串起來。我把這個網域發成一筆完整事件:註冊時間、行為描述、佐證連結,後來又補上了下架結果。這個社群不對一般公眾開放,所以附一張截圖。
發到 CIRCL MISP 的事件:惡意網址與網域、分類標籤,和事後補上的下架時間軸。
網域註冊層:一個網域有兩層人管得動,註冊商(registrar)是把網域賣給你的那家店,註冊局(registry)是整個 .top 的管理者。我透過 NetBeacon(專門轉送 DNS 濫用通報的服務)通報註冊商,同時直接寫信給 .top 註冊局的濫用通報窗口。
基礎設施與瀏覽器:網站躲在 Cloudflare 後面,送了 Cloudflare 的 abuse 表單;Google Safe Browsing 和 Microsoft SmartScreen 負責讓各家瀏覽器跳警告;Netcraft 則是專門追蹤下架進度的公司,它的釣魚名單餵給很多我碰不到的地方。也寄了一封信給被仿冒平台的資安窗口。
各方的反應陸續進來。Cloudflare 最快,不到半小時就擋下了我通報的那條 URL;不過這個釣魚頁我每次打開都被丟到一條新的隨機網址,擋掉單一一條的效果有限。這不是 Cloudflare 的問題,是 URL 層級的封鎖天生跟不上會換路徑的網站。
真正的終結來自註冊局。下午 5 點 46 分,通報後約 3 小時 20 分,.top 註冊局回信:
We have reviewed the provided domains and applied the serverHold status, effectively suspending their resolution.
(我們已審查你回報的網域,並套用 serverHold 狀態,實質上暫停了它的解析。)
serverHold 是註冊局層級的凍結,直接把這個名字從 .top 的名冊上劃掉,之後不管誰來查都查不到。註冊紀錄還在,註冊局也可以解除;但只要掛著,這個網域在網路上就是死的。不是擋掉一條網址,是整個網域從網路上消失。
$ rdap validationreq.top | grep status
status: client transfer prohibited, server hold
$ dig +short validationreq.top
(沒有任何回應)
.top 在資安圈的印象,通常和便宜、大量註冊、濫用綁在一起。但這次它的濫用通報窗口當天回信、當天處置,值得公開記一筆。順帶一提,經 NetBeacon 轉送給註冊商的那份通報,到註冊局動手時都還沒有回信。沒回信不等於沒動作,一份報告經過轉送、再排進註冊商自己的處理流程,中間的環節本來就多,這裡只是記一筆。
時間軸
全部發生在同一天(台北時間):
- 10:12
validationreq.top註冊 - 11:29 連結被提交到 tg.pe,自動檢查即時標記
- 13:57 於 MISP 情資平台發布事件
- 14:25 各通路通報送出(NetBeacon、.top 註冊局、Cloudflare、Google Safe Browsing、Microsoft SmartScreen、Netcraft)
- 14:47 確認 Cloudflare 已擋下通報的 URL
- 17:46 .top 註冊局回信確認已套用 serverHold,網域停止解析
從註冊到確認從 DNS 上消失,7 小時 34 分。
兩個月前,我說過想做這件事
六月在 TWIGF(台灣網路治理論壇)的 lightning talk,我講了一個故事:有個素不相識的德國人寫信告訴我,我的服務上有一條假包裹簡訊的連結,我在 50 分鐘內查證、下架、回信。他嚇了一跳,因為以他的經驗,同樣的信寄給大平台通常石沉大海。當時我說,接下來想做的是:在全新的釣魚網域第一次被拿來縮網址的當下就抓到它,人工確認,然後通報給對的人。
兩個月後,這件事完整發生了一次。
短網址服務在通報鏈上有一個奇特的位置:攻擊者會自己把最新鮮的釣魚連結送上門。掃描器得在整個網路上大海撈針,我只要盯著自己收到的那幾條連結。這個網域從註冊到被標記只花了 75 分鐘,不是因為我掃得比誰快,是因為攻擊者自己送過來了。
照例誠實聲明:這是一個案例,不是統計。上一次同樣走完整條路,花了八天,也有通報出去石沉大海的。一個下午殺掉一個網域,證明不了「通報通常有用」,它只證明這條路存在,而且有時候快得驚人。完整的通報紀錄和數字,都在 tg.pe 的 透明度報告 裡。
附:tg.pe 怎麼檢查每一條連結
tg.pe 是我一個人營運的免費短網址服務。每一條提交進來的連結,上線前後都會經過這些關卡:
- 建立前:目的地先比對自家的封鎖與高風險網域名單;查詢網域的註冊年齡,太新的一律先不信任;再比對 Google Safe Browsing 的威脅資料庫;可疑的廣告轉址樣式會被攔下觀察。
- 建立後:背景跑 VirusTotal 掃描,命中就自動限制連結;可疑目的地會自動留存證據(截圖與轉址鏈);太久沒複查的連結,會在下一次被點擊時重新檢查一遍。
- 常態:abuse@tg.pe 接收外部通報,人工分流處理;確認惡意的目的地會往上通報給能處置的單位,就像這篇文章做的一樣。
這些機制的設計、數字與限制,同樣都在上面那份透明度報告裡,包括還做不到的部分。