隱私與安全

網址參數變成 %E7%... 就算藏好了?編碼前先移除私密 Token

把報名連結貼到 LINE 群組前,先辨識網址中的 Email、邀請碼與存取 Token;移除私密值後,只對必要的公開參數做 URL 編碼。

撰文: 3sec 編輯部 資料查證日期: 4 分鐘閱讀 1577 字

網址中的中文變成 %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 嗎?

不會。工具只編碼或解碼你貼入的文字,不會辨識哪些欄位是憑證,也不會更新原網站、撤銷權限或清除歷程。

不確定某個參數是否私密時怎麼辦?

先停止分享,向產生連結的系統或負責人確認用途。無法證明可以公開的長字串,應先按受限資料處理,而不是靠編碼猜測。

參考資料