網址中的中文變成 %E7%...,不代表內容已經隱藏。準備把報名連結貼到 LINE 群組時,應先把 Email、一次性邀請碼、登入憑證與存取 Token 從網址移除;只對確實可以公開、又需要保留的參數值做 URL 編碼。
分享前先把參數分成公開、受限與私密
先解讀每個參數的用途,再決定它能不能留在連結裡。看不懂的長字串不應因為「像亂碼」就被當成安全資料,而應回到產生連結的系統確認它代表什麼。
例如,活動承辦人要貼出報名連結時,campaign=summer 可能只是公開的活動來源,keyword=親子 場 可能是可公開的搜尋字;email=...、invite=...、otp=... 或 access_token=... 則可能直接指向個人或授權。最安全的處理不是替後一組值換個外觀,而是請系統產生不含私密參數的公開分享連結。
可以先在工作筆記列出三組:任何人可看的公開值、只應留在授權環境的受限值,以及必須當作憑證處理的私密值。若無法確定分類,先不要分享,交由連結提供者或系統管理者確認。
百分比編碼不會改變資料的敏感性
URL 編碼解決的是語法問題,不是保密問題。中文、空白與特殊符號變成百分比字串後,收件者仍可解碼回原文,瀏覽器與伺服器也會照常處理其中的值。
OWASP 對查詢字串資訊曝露的說明指出,敏感參數可能出現在瀏覽器歷程、快取、伺服器紀錄、參照資訊與共用系統中;使用 HTTPS 也不會自動移除這些留存位置。因此,把 access_token=abc 變成一串 % 字元,沒有縮小它原本的權限,也沒有清掉已經傳出的副本。
同樣地,縮網址、Base64 或把參數名稱改短,都不等於加密或撤銷。判斷標準應該是「解碼後的值是否允許公開」,而不是「肉眼是否容易讀懂」。
只替可以公開的值使用 URL 編解碼工具
完成分類並移除私密值後,才使用 URL 編解碼工具 處理必要的非機密文字。頁面目前會對輸入欄文字執行 encodeURIComponent 或反向解碼,並提供複製結果;它不會替你分析參數權限,也不會修改原網站上的連結。
假設公開參數值是「台北 場」,可把這段值單獨貼入編碼欄,再把結果交給建立連結的人或依系統文件放回正確欄位。不要把仍含邀請碼的完整網址貼進去後,就因為輸出變長而直接轉發。
操作時保留一份已清理的文字草稿即可,不要保存真實 Token 當作對照。若複製的是公司內部連結,也要確認公開收件者具備瀏覽權限;編碼成功不會替網站新增存取控制。
用反向解碼檢查要送出的那一份
最後檢查的對象必須是即將貼到群組的完整連結,而不是較早的草稿。把其中每個參數值逐一取出並解碼,直接閱讀還原結果,確認只剩活動名稱、語言、公開篩選條件等允許分享的內容。
接著做兩種測試:先用沒有登入相關帳號的瀏覽器視窗開啟連結,確認它沒有自動帶入某個人的資料;再請一位知道分享範圍的人只查看待傳版本,搜尋 token、code、email、key、auth 等可能的參數名稱。參數名稱不一定都用英文,仍需逐項看值。
如果要在說明文件中示範連結,可將私密部分換成 [TOKEN_REMOVED] 或 [EMAIL_REMOVED],再用 個資遮蔽工具 檢查一般文字中的常見個資格式。遮蔽工具無法辨識每種自訂憑證,人工核對仍是必要步驟。
已經貼出真實 Token 時先處理憑證
若真實 Token 已經進入群組、工單或文件,先依發行系統的正式流程評估撤銷或輪替,再處理可見訊息。只刪除貼文或重新編碼連結,不能證明通知預覽、截圖、瀏覽器紀錄、代理伺服器或應用日誌都沒有副本。
事件紀錄可以保留時間、傳送位置、受影響系統與處理結果,但不要再次貼上完整憑證。完成撤銷後,確認舊連結不再授予原本權限,並由系統擁有者判斷是否需要檢查存取紀錄。ToolboxHub URL 編解碼工具不會執行撤銷、清除歷程或修改伺服器設定。
常見問題
URL 參數變成百分比字串後,別人還看得到嗎?
看得到。百分比編碼可以反向還原;它的目的在於讓文字符合網址語法,不是阻止收件者閱讀。
使用 HTTPS 就可以把 Token 放在網址裡嗎?
不應這樣推論。HTTPS 保護傳輸通道,但敏感查詢字串仍可能留在瀏覽器歷程、伺服器紀錄或其他系統,應依服務的正式設計避免放入網址。
縮網址可以隱藏原本的 Email 或邀請碼嗎?
縮網址只提供另一個入口,目的地仍可能含原參數,服務本身也會知道對應關係。分享前仍要檢查最終目的網址與解碼後的值。
ToolboxHub 會自動刪掉網址裡的 Token 嗎?
不會。工具只編碼或解碼你貼入的文字,不會辨識哪些欄位是憑證,也不會更新原網站、撤銷權限或清除歷程。
不確定某個參數是否私密時怎麼辦?
先停止分享,向產生連結的系統或負責人確認用途。無法證明可以公開的長字串,應先按受限資料處理,而不是靠編碼猜測。