核心原理
- 鎖定機制: 插入 USB 時,TweakUI 觸發自動播放執行 `lock.bat`,以 `cacls` 移除當前使用者對 USB 磁碟機的存取權限(ACL 拒絕)
- 解鎖機制: 執行桌面捷徑 `unlock.bat`,以 `runas /user:帳號` 提權執行 `cacls` 恢復完全控制權限,過程需輸入密碼
- 觸發條件: USB 根目錄預置一張圖片 + 一個音訊檔,使 Windows 判定為「混合內容」觸發自訂自動播放動作
詳細實作步驟
準備工作
- 一支 USB 隨身碟(假設磁碟機代號 J:,實際請以磁碟管理確認)
- 當前 Windows 使用者帳號名稱(範例:LCR,請替換為實際帳號)
- 下載並安裝 TweakUI(Windows XP 時代工具,Win7/10/11 需相容模式或改用組策略/腳本替代)
步驟 1:建立鎖定/解鎖批次檔
建立 `C:\lock.bat`:
@echo off
rem 鎖定 USB:移除 LCR 對 J: 的所有權限
cacls j:\ /e /r LCR
pause
建立 `C:\unlock.bat` 並發送捷徑到桌面命名「解鎖 USB」:
@echo off
rem 解鎖 USB:以 LCR 身分恢復完全控制權限
runas /user:LCR "cacls j:\ /e /g LCR:f"
步驟 2:設定 USB 觸發條件
- 將一張小圖片(.jpg)和一個音訊檔(.wav/.mp3)複製到 USB 根目錄
- 右鍵 USB →「屬性」→「安全性」→ 編輯 → 僅保留當前帳號(LCR)「完全控制」,移除其他帳號/群組
步驟 3:配置 TweakUI 自動播放
- 執行 TweakUI →「我的電腦」→「自動播放」
- 勾選「啟用可移動媒體自動播放」
- 點選「建立」→ 名稱:「存取 USB」→「更改程式」選 `C:\lock.bat`
- 「支援的媒體」勾選「混合內容」→ 確定
步驟 4:設定 USB 磁碟機自動播放動作
- 右鍵 USB 磁碟機 →「屬性」→「自動播放」分頁
- 「混合內容」→ 選擇「選擇一個動作來執行」→ 選「存取 USB」→ 套用
使用流程
- 插入 USB → 系統偵測混合內容 → 自動執行 `lock.bat` → 當前使用者被拒絕存取
- 需使用時 → 雙擊桌面「解鎖 USB」捷徑 → 輸入密碼 → 權限恢復 → 正常讀寫
- 拔出重插 → 再次自動鎖定
現代系統(Win7/10/11)替代方案
TweakUI 在新版 Windows 功能受限,推薦以下現代做法:
| 方案 | 原理 | 優點 | 缺點 |
| BitLocker To Go | 原生磁碟加密 | 標準、強加密、跨裝置、支援智慧卡 | 需 Pro/Enterprise 版、效能微損 |
| VeraCrypt 容器/分區加密 | 開源磁碟加密 | 跨平台、隱藏卷、多種演算法 | 需安裝軟體、操作稍複雜 |
| 儲存裝置硬體加密 | 控制器級 AES 加密 | 零軟體相依、效能無損、即插即用 | 價格較高、需信任廠商 |
| 群策略/腳本自動化 | 禁用存取/掛載腳本 | 原生、可集中管理 | 需域環境/專業版、配置複雜 |
安全性評估與建議
- 本法屬「權限鎖」非「加密」: 資料明文存放,繞過 ACL(如 Linux Live USB、PE、拿到其他電腦)即可讀取
- 適用場景: 家庭/辦公室防止路人順手牽羊檢視、防止同事誤刪、臨時隱私保護
- 不適用場景: 機密文件、個人隱私高度敏感、裝置遺失風險高 → 請用 BitLocker/VeraCrypt/硬體加密
- 改良建議: 搭配 EFS 加密敏感資料夾、定期備份、實體保管
經典技法現代視角: 這是利用 Windows ACL 與自動播放機制的巧妙 Hack,展現了早期極客「不依賴第三方軟體、用系統內建工具解決問題」的智慧。理解其原理與局限,才能做出正確的安全決策。