# 第 3 批材料（11 件）——機械抽取，供寫派工計畫用


## SUMMARY #9｜出自 M07-1｜⬜ 未修

任何能登入的帳號（不必是任何專案的成員）在舊版證據分類的「預覽證據檔」填一個雲端硬碟檔案編號，就把那個 Google 帳號摸得到的任何檔案抓回來


### 模組頁列
M07 第 1 條（M07-evidence-classification.md:142）
| **1** | 舊線的「預覽證據檔」入口，填任何一個雲端硬碟檔案編號就把檔案抓回來給你 | 🟠 高 | 只驗登入、不檢查歸屬 | **射程是授權那個 Google 帳號所能觸及的全部檔案（含別人分享給他的）**，不只是證據資料夾——因為系統申請的是最寬的那一檔權限，而且憑證是真人帳號授權的。別的專案的證據、人事檔案、合約都拿得到。門檻只是「有一個能登入這套系統的帳號」，**不必是任何專案的成員** | 隨舊線整組退役一併移除 | ⬜ **未修**——隨舊線退役消失；**退役完成前仍然成立** |


## SUMMARY #66｜出自 M07-2＋M07-3｜⬜ 未修

舊版證據分類的「查結果、查報表、工作清單」不檢查你是不是這個專案的成員，查不到紀錄時還會退回直接去雲端硬碟讀，用的是呼叫者自己公司的鑰匙


### 模組頁列
M07 第 2 條（M07-evidence-classification.md:143）
| **2** | 舊線的查結果、查報表入口不檢查你是不是這個專案的成員 | 🟡 中 | 只驗登入、不檢查歸屬 | 與第 1 條同一條鏈。更麻煩的是：查不到紀錄時**會退回直接去雲端硬碟讀，而且用的是呼叫者自己公司的鑰匙**——程式裡寫的安全理由在「完整硬碟權限」下不成立 | 同第 1 條 | ⬜ **未修**——隨舊線退役消失；**退役完成前仍然成立** |


### 模組頁列
M07 第 3 條（M07-evidence-classification.md:144）
| **3** | 舊線的工作清單與單筆狀態查詢不檢查專案成員，進度資料又是全系統共用、不分客戶 | 🟡 中 | 客戶資料沒隔開 | **這是第 1、2 條的入場券**——從這裡拿到資料夾編號，第 2 條換到檔案編號，第 1 條換到檔案本身。進度資料放在記憶體裡，在客戶資料隔離管不到的地方 | 同第 1 條 | ⬜ **未修**——隨舊線退役消失；**退役完成前仍然成立** |


## SUMMARY #67｜出自 M07-4｜⬜ 未修

舊版證據分類查雲端硬碟的搜尋條件是用字串接起來的沒做防護，可能被改寫搜尋範圍（例如改成「這個硬碟裡的所有檔案」）


### 模組頁列
M07 第 4 條（M07-evidence-classification.md:145）
| **4** | 查雲端硬碟的搜尋條件是用字串接起來的，沒有做防護 | 🟡 中 | 外部送什麼就收什麼 | 可能被改寫搜尋範圍（例如改成「這個硬碟裡的所有檔案」）。**這條沒有實際打過一次**，Google 那邊會不會照著吃下去還不確定 | 同第 1 條 | ⬜ **未修**——隨舊線退役消失；**退役完成前仍然成立** |


## SUMMARY #68｜出自 M10-7｜🗑️ 裁定刪除

群組層成員的新增／修改／刪除三支程式，因系統啟動時漏接一條線而整支完全不檢查權限，而這張表被拿來算「哪些專案我看得到」


### 模組頁列
M10 第 7 條（M10-task-platform.md:101）
| **7** | **群組層的成員管理**：系統啟動時漏接了一條線，這支負責新增／修改／刪除群組成員的程式整支完全不檢查權限 | 🟡 中 | 身分驗證缺失 | **它不報錯也不留紀錄，就只是安靜地全部放行。** 更要緊的是：**這張表被系統拿來算「哪些專案我看得到」——塞一筆進去，那個人就多看到一個專案。** 目前沒有對外入口打得到這三個寫入功能，但哪天有人幫它加一個入口，就是完全開放 | **裁定刪除**：新增、修改、刪除三個功能整段拿掉（全系統已確認零使用）；查詢那支留著給 AI 儀表板呼叫；資料表保留 | 🗑️ **已裁定刪除** |


## SUMMARY #69｜出自 M10-8｜🗑️ 裁定刪除

流程參與者的新增／修改／刪除是一整組從沒啟用過的功能，把關檢查寫在永遠跑不到的位置——現在擋住它的是它本身就壞著


### 模組頁列
M10 第 8 條（M10-task-platform.md:102）
| **8** | **流程參與者管理**：一整組從沒啟用過的功能——把關的檢查寫在「提前結束」後面永遠跑不到、資料表在開發環境是 0 筆、修改與刪除一定出錯 | 🟡 中 | 身分驗證缺失 | 現在擋住它的**不是那道檢查，是它本身就壞著**。**哪天有人很自然地把壞掉的地方修好，這裡就會從「程式出錯」變成真正的權限繞過**——而修的人會覺得自己在修 bug，不會知道那個 bug 正是唯一的守門員 | **裁定刪除**：新增、修改、刪除三個功能整段拿掉；**資料表與回傳格式的定義要留著**（別的地方在用） | 🗑️ **已裁定刪除** |


## SUMMARY #116｜出自 M04-11｜🗑️ 裁定刪除

一支檔頭自己就寫明「不是產品程式碼」的開發用小工具，會跟著出貨套件裝到客戶機器上


### 模組頁列
M04 第 11 條（M04-common.md:83）
| **11** | 一支開發用的小工具混在正式出貨的套件裡 | ⚪ 低 | 回應夾帶不該送的欄位 | 它的檔頭自己就寫明「不是產品程式碼」，但**它會跟著出貨的套件一起裝到客戶機器上** | **直接刪掉**（已確認五個程式庫全部零引用，見[下方](#dead-code)） | 🗑️ **已裁定刪除** |


## SUMMARY #117｜出自 M04-14｜🗑️ 裁定刪除

一個每次連線都會被設定、但全系統沒有任何地方讀它的開關，留著會讓後人誤以為「這裡已經有部門層級的檢查」而不去補真正需要的


### 模組頁列
M04 第 14 條（M04-common.md:93）
| **14** | 一個在每次連線時都會被設定、但全系統沒有任何地方讀它的開關 | 要先做產品決策 | 它現在完全沒有效果，**但留著會讓之後讀程式的人誤以為「這裡已經有一道部門層級的檢查」，反而不會去補真正需要的檢查** | 🗑️ **已裁定刪除**（見[下方](#dead-flag)） |


## SUMMARY #118｜出自 M06-14＋M06-16｜🗑️ 裁定刪除

三支接收檔案路徑、現在完全沒人呼叫的程式直接用傳入的路徑開檔讀寫；另有兩組「接好但沒人用」的備用服務完全沒有權限檢查——現在無害的唯一理由是沒人用它


### 模組頁列
M06 第 14 條（M06-flow-engine.md:94）
| **14** | 三支接收檔案路徑、但現在完全沒人呼叫的程式 | 負責「存流程圖到檔案」「匯出 XML」「從 XML 匯入」，都是直接拿傳入的路徑開檔讀寫。**現在無害的唯一理由是沒人用它**——只要哪天有人把使用者輸入接到這幾支的參數上，就變成任意檔案讀寫 | ⬜ 未修（**建議直接刪掉，不要留地雷**） |


### 模組頁列
M06 第 16 條（M06-flow-engine.md:96）
| **16** | 套件裡有兩組「接好但沒人用」的備用服務，完全沒有權限檢查 | 見上方[對照表那一節](#host-vs-package)。**與第 14 條是同一種**——現在無害是因為沒人用它，**只要哪天有人接上去，就憑空多出一組沒有檢查的入口** | ⬜ 未修（**建議直接刪掉，不要留地雷**） |


## SUMMARY #119｜出自 M10-14｜🗑️ 裁定拆除

有一個獨立的「快速設定」畫面，按下去顯示成功但一筆都沒存；兩個入口網址都沒有任何按鈕導過去，只有手打網址才進得去（已裁定整頁拆除、兩個入口都要拆）


### 模組頁列
M10 第 14 條（M10-task-platform.md:115）
| **14** | 有一個「快速設定」畫面，按下去顯示成功但一筆都沒存 | 系統裡有**兩個**快速設定：專案規劃頁那個已經改走新做法、會正常存；**另一個獨立畫面還打著舊做法，而系統內部已經關掉、固定回空**——畫面跳出成功提示，實際什麼都沒寫入。**那一頁有兩個入口網址（一般版與稽核計畫版），兩個都沒有任何按鈕或連結導過去，只有手打網址才進得去。** 決策者裁定**整頁拆除，兩個入口都要拆** |


## SUMMARY #120｜出自 M10-18｜🗑️ 裁定刪除

四支任務指派相關功能沒有對外入口、也沒有任何把關（已裁定刪除其中三支，第四支是配套用的留著）


### 模組頁列
M10 第 18 條（M10-task-platform.md:119）
| **18** | 四支任務指派相關功能沒有對外入口、也沒有任何把關 | **裁定刪除其中三支**（其中一支是被新版取代後留下的舊版，不是「還沒接」）；第四支「依專案刪掉所有指派」**留著**——其他五層都有同名功能，它是配套用的 |


## SUMMARY #121｜出自 M21-2｜🗑️ 裁定刪除

任何一個登入帳號送一個空白查詢，就把整張全站成員名冊含電子郵件撈回來（查證後確認這支入口現在沒有任何地方在呼叫、三個環境的表都是 0 筆，已裁定整塊移除）


### 模組頁列
M21 第 2 條（M21-issue-rescan.md:94）
| **2** | **任何登入帳號都拿得到全站使用者名冊（含電子郵件）**——查證後發現這其實是一塊**沒有任何地方在用的死程式** | ⚪ 低 | 客戶資料沒隔開 | **不必是管理員，任何一個登入帳號送一個空白查詢，就把整張成員名冊撈回來**——那張表**連「這是哪家客戶的」欄位都沒有**、也沒有任何隔離規則。不過查證後確認：**現在沒有任何地方會去呼叫它，三個環境的那張表也都是 0 筆**。真正的問題不是它現在在漏，而是**它是一個沒人看管、隨時可能被接上去的入口** | ✅ **已裁定：整塊移除**（入口、資料表、同步程式一起拿掉），不補隔離、不留著 | ⬜ **已裁定移除**（待排工） |
