Discord 採用 Token 作為使用者身分的長效憑證,用於 WebSocket 驗證與 API 存取。該 Token 結構包含使用者 ID、創建時間與簽章資訊,一旦被竊取,即可繞過密碼與二階段驗證直接操控帳號。
駭客工程師阿凱 Telegram:@Ti969
Token 通常在使用者登入時由客戶端儲存於本機的記憶體或配置檔案中。對於攻擊者而言,取得此 Token 意味著取得完整帳號控制權,尤其適用於:
社群管理員與擁有者
Bot 帳號與應用程式介接憑證
支援者、用戶端擴充套件開發者
Discord 桌面版實際上是基於 Electron 的瀏覽器應用。其原始碼被封裝後包含於 app.asar 中,其中包含靜態載入 JavaScript 檔案與可被 inject 的 Webview。攻擊者可修改此封裝內容,在 Discord 啟動時自動將 Token 上傳至遠端伺服器。
Token 通常儲存在以下幾個位置:
Local Storage(瀏覽器或 Electron App 目錄)LevelDB(於 Discord 的appdata/discord/Local Storage/leveldb)Windows 登錄檔(某些惡意軟體會複寫儲存機制)
攻擊者若取得檔案系統或權限存取,透過解析 LevelDB 中的字串即可擷取有效 Token。
許多 Discord 使用者會安裝支援插件(如主題、音效擴充、第三方 UI 增強等),這些插件若未經審核,可能偷偷注入 JavaScript 程式碼擷取 WebStorage 或攔截 XMLHttpRequest,進而提取 Token。
針對 Web 版 Discord,攻擊者可設計一個專用的惡意網站,透過 iframe 或 JavaScript 向 Discord 頁面注入存取程式。若用戶在同一瀏覽器會話內已登入 Discord,則可能於跨站環境下泄露 Token 或觸發帳號操作(需結合 CSP 绕過與 iframe 攻擊)。
某些惡意程式會監控剪貼簿內容,當偵測使用者複製 Discord Token(常見於 Debug、開發、或手動貼上帳號資訊時)時,將其自動上傳。亦可透過內容偽造,如自動將「看似正常」的邀請連結替換為惡意 URL。
利用系統級快捷鍵綁定或 AutoHotkey 指令,攻擊者可在使用者不察覺的情況下於後台執行:
檢查 Discord 是否執行中
呼叫 API 抓取 LocalStorage
自動呼叫執行指令、擷取 Token 並遠端傳送
攻擊者會建立仿造 Discord OAuth 授權頁的釣魚網站,引導使用者以 Discord 帳號登入,實際上將輸入資訊直接送交攻擊者。雖然不會取得 Token 本身,但若攻擊者與受害者同處於伺服器中,後續可透過 API 拓展進一步攻擊(如邀請更多 Bot、發送連結、強制踢出管理員等)。
有些攻擊者會製作看似無害的檔案分享、遊戲破解、影片轉檔工具,實際上其中會綁定 Discord 自動載入模組,模仿 Discord 啟動邏輯並植入後門程式,自動向遠端送出 Token。
Discord 過去曾有多次因第三方套件(如 Electron 模組)更新不及,造成某些模組能夠存取未授權資源或繞過沙箱限制的案例。若使用者開啟不明來源的 Discord 客戶端變體(如開源修改版、可攜版),更容易成為攻擊者施放惡意模組的目標。
此外,部分 Discord Bot 開發者自行嵌入 Token 至程式碼中,導致程式一旦外洩(如 GitHub 公開、Zip 分發)即造成憑證外洩。
避免安裝未經官方授權的 Discord 插件與客戶端變種
啟用裝置登入通知與可疑裝置踢除功能
定期清除本機 Cookie 與 LocalStorage 資訊
監控 Discord 相關應用是否啟用自動啟動與注入 DLL
利用行為防毒或 EDR 工具分析 Discord 訪問外部網域行為
自建 API 訪問監控中介服務,篩選不明來源使用者操作
#DiscordSecurity#TokenStealing#社交工程#電子應用攻擊面#惡意程式分析#API濫用#資訊安全教育#社群平台滲透技術

