114 年 國立中山大學資訊工程學系資訊安全碩士班《作業系統》
第 1 題
- [Operating System: 80%]
(1) Please explain the redundant array of independent disks (RAID) and the RAID levels from 0 to 6, i.e., RAID 0, RAID 1, RAID 2, RAID 3, RAID 4, RAID 5, and RAID 6. Note that descriptions and figures are required to depict all these levels, such as name, basic idea, and how it works. (20%)
(2) Please explain the basic ideas of the following program threats: Trojan horse, trap door, logic bomb, and stack and buffer overflow. (20%)
(3) Please show and explain the difference between nonvirtual machine and virtual machine using figures and descriptions. (10%)
(4) Please show and explain the basic idea of cloud computing and edge computing. (10%)
(5) The cancellation of a target thread may occur in the following two different scenarios: asynchronous cancellation and deferred cancellation. Please explain the main features of these two scenarios, the difficulties they may encounter, and possible OS solutions. (20%)
登入後即可作答並保存紀錄。
第 1 題詳解
整題核心觀念與解題方法
**核心觀念:**本題綜合考查儲存系統可靠性、程式安全、虛擬化、分散式運算,以及多執行緒管理。各小題均應採用「定義 → 架構圖 → 工作機制 → 優缺點與比較」的方式作答。
**選項分析:**本題為申論題,沒有選項;評分重點在於概念完整、圖示正確,以及能說明各技術的差異與限制。
(1)RAID 與 RAID 0 至 RAID 6
核心觀念
RAID(Redundant Array of Independent Disks,獨立磁碟冗餘陣列)是將多顆實體磁碟組合成一個邏輯儲存單元,利用下列機制提升效能或可靠性:
- 條帶化(striping):把連續資料分散到多顆磁碟,提升平行讀寫效能。
- 鏡像(mirroring):將相同資料複製到不同磁碟。
- 同位元檢查碼(parity):利用冗餘資訊,在磁碟故障時重建遺失資料。
- 錯誤更正碼(ECC):使用如 Hamming code 的編碼,偵測與修正錯誤。
以下假設每顆磁碟容量皆為 ,共有 顆磁碟。RAID 是提升可用性與故障容忍度的技術,不是備份;誤刪、勒索軟體與整個陣列損毀仍需依靠獨立備份處理。
解題方法
辨認 RAID 等級時,依序觀察三件事:
- 條帶化的粒度是位元、位元組,還是區塊。
- 是否有鏡像、ECC 或 parity。
- parity 是集中在一顆磁碟,還是分散在多顆磁碟。
圖示中:
- :資料區塊
- :以 XOR 計算的 parity
- :RAID 6 使用的第二組 parity
RAID 0:條帶化,無冗餘
磁碟 0 磁碟 1 磁碟 2 磁碟 3
條帶 0 A0 A1 A2 A3
條帶 1 B0 B1 B2 B3
資料依序切成多個區塊,分散寫入不同磁碟。讀取或寫入同一條帶時,多顆磁碟可以平行工作。
- 可用容量:
- 優點:讀寫效能高、容量利用率百分之百。
- 缺點:完全沒有冗餘。
- 故障容忍:任一顆磁碟故障,都會使部分資料遺失,整個檔案通常無法使用。
RAID 0 的重點是「效能」,其中的 0 也可理解為零冗餘。
RAID 1:鏡像(Mirroring)
磁碟 0 磁碟 1
條帶 0 A0 A0
條帶 1 B0 B0
條帶 2 C0 C0
每一份資料都同時寫入兩顆磁碟。讀取時可從任一份副本取得資料,也可分散讀取工作。
- 兩顆磁碟鏡像時,可用容量為 。
- 成對鏡像時,可用容量為 。
- 優點:設計簡單、讀取可靠、重建容易。
- 缺點:容量利用率約為百分之五十,寫入必須更新所有副本。
- 故障容忍:每一個鏡像組可容忍一顆磁碟故障;同一鏡像組同時故障兩顆時,該組資料失效。
RAID 2:位元級條帶化與 Hamming ECC
資料磁碟 ECC 磁碟
D0 D1 D2 D3 E0 E1 E2
資料位元 d0 d1 d2 d3 h0 h1 h2
下一組位元 d4 d5 d6 d7 ...
RAID 2 以位元級方式條帶化,同一資料字的不同位元分散到不同資料磁碟,再使用 Hamming code 產生 ECC 位元,存放在額外磁碟中。
若資料位元數為 ,檢查位元數為 ,單一錯誤更正所需條件為:
讀取時,系統利用 syndrome 判斷錯誤位置,進而修正錯誤位元。典型配置可容忍一顆磁碟失效。
- 核心粒度:位元級。
- 冗餘方式:Hamming ECC。
- 優點:錯誤偵測與更正能力強。
- 缺點:需要額外 ECC 磁碟,所有磁碟通常需同步運作,硬體與控制器複雜。
- 實務狀況:現代磁碟本身已具備錯誤更正功能,因此 RAID 2 幾乎不使用。
RAID 3:位元組級條帶化與專用 parity
資料磁碟 parity 磁碟
D0 D1 D2 P
條帶 0 A0 A1 A2 P0
條帶 1 B0 B1 B2 P1
RAID 3 以位元組級條帶化將資料分散到多顆資料磁碟,並使用一顆專用磁碟儲存 parity。
若資料磁碟遺失,例如 遺失,則可由下式重建:
- 可用容量:。
- 故障容忍:一顆磁碟故障。
- 優點:適合大型連續資料傳輸,順序讀寫效能佳。
- 缺點:每次存取通常需要所有資料磁碟同步參與,小型獨立 I/O 效率較差;專用 parity 磁碟也會形成瓶頸。
RAID 4:區塊級條帶化與專用 parity
磁碟 0 磁碟 1 磁碟 2 parity 磁碟
條帶 0 A0 A1 A2 P0
條帶 1 B0 B1 B2 P1
條帶 2 C0 C1 C2 P2
RAID 4 改採區塊級條帶化,每顆資料磁碟可獨立處理不同區塊;parity 仍集中在一顆專用磁碟。
- 可用容量:。
- 故障容忍:一顆磁碟故障。
- 優點:比 RAID 3 更適合獨立區塊存取。
- 缺點:所有寫入都要更新專用 parity 磁碟,形成 parity hot spot,尤其小型隨機寫入會造成瓶頸。
RAID 5:區塊級條帶化與分散 parity
磁碟 0 磁碟 1 磁碟 2 磁碟 3
條帶 0 A0 A1 A2 P_A
條帶 1 B0 B1 P_B B2
條帶 2 C0 P_C C1 C2
條帶 3 P_D D0 D1 D2
RAID 5 與 RAID 4 相同地採用區塊級條帶化,但將 parity 分散輪替存放在不同磁碟,避免某一顆 parity 磁碟成為固定瓶頸。
每一條帶的 parity 為:
小型寫入常使用 read-modify-write:
- 讀取舊資料。
- 讀取舊 parity。
- 計算新 parity。
- 寫入新資料與新 parity。
新 parity 可利用下式快速更新:
- 可用容量:。
- 故障容忍:一顆磁碟故障。
- 優點:容量效率與可靠性平衡良好,沒有固定 parity 瓶頸。
- 缺點:小型隨機寫入有 write penalty;重建期間陣列效能下降,若再故障一顆磁碟會造成資料遺失。
RAID 6:雙重分散 parity
磁碟 0 磁碟 1 磁碟 2 磁碟 3 磁碟 4
條帶 0 A0 A1 A2 P_A Q_A
條帶 1 B0 B1 P_B Q_B B2
條帶 2 C0 P_C Q_C C1 C2
條帶 3 P_D Q_D D0 D1 D2
RAID 6 在 RAID 5 的基礎上增加第二組獨立 parity。第一組通常為 XOR:
第二組 使用 Reed–Solomon 等有限域編碼:
其中運算在有限域中進行。當兩顆磁碟同時故障時,可以利用 與 形成兩組獨立方程式,解出兩個遺失資料區塊。
- 可用容量:。
- 故障容忍:任意兩顆磁碟故障。
- 優點:大型磁碟陣列在重建期間仍具較高安全性。
- 缺點:需要兩份 parity,寫入成本、控制器複雜度與重建時間高於 RAID 5。
RAID 等級比較
| 等級 | 條帶化粒度 | 冗餘方式 | 可用容量 | 故障容忍 |
|---|---|---|---|---|
| RAID 0 | 區塊級 | 無 | 無 | |
| RAID 1 | 通常為區塊級 | 鏡像 | 約一半容量 | 每鏡像組一顆 |
| RAID 2 | 位元級 | Hamming ECC | 資料碟容量 | 一顆磁碟 |
| RAID 3 | 位元組級 | 專用 XOR parity | 一顆磁碟 | |
| RAID 4 | 區塊級 | 專用 XOR parity | 一顆磁碟 | |
| RAID 5 | 區塊級 | 分散 XOR parity | 一顆磁碟 | |
| RAID 6 | 區塊級 | 雙重分散 parity | 兩顆磁碟 |
解題技巧
- RAID 0:只有條帶化,沒有保護。
- RAID 1:看到完整副本,就是鏡像。
- RAID 2:位元級條帶化加 Hamming code。
- RAID 3:位元組級條帶化,專用 parity。
- RAID 4:區塊級條帶化,專用 parity。
- RAID 5:區塊級條帶化,parity 分散。
- RAID 6:兩份 parity,可容忍兩顆磁碟故障。
- 「RAID 等級越高越快」是錯誤觀念;RAID 6 的可靠性高於 RAID 5,但寫入負擔也更大。
(2)程式威脅
核心觀念與解題方法
可依照「惡意程式如何隱藏、何時啟動、如何取得權限、如何破壞記憶體」分類:
- 偽裝成合法程式:Trojan horse。
- 建立隱藏進入路徑:trap door。
- 等待特定條件再發動:logic bomb。
- 利用輸入越界改寫記憶體:stack and buffer overflow。
Trojan Horse:特洛伊木馬
合法外觀的程式
│ 使用者正常啟動
▼
正常功能 + 隱藏惡意功能
│
竊取資料、破壞檔案、建立後門
Trojan horse 是偽裝成有用或合法程式的惡意程式。使用者以為它是工具、遊戲、文件檢視器或更新程式,執行後,程式除了提供表面功能,也暗中進行未授權行為。
重要特徵:
- 通常需要使用者主動下載或執行。
- 惡意程式會繼承使用者的權限。
- 不以自我複製為必要條件,因此與病毒、蠕蟲不同。
- 木馬內部可同時包含 logic bomb 或 trap door。
Trap Door:陷門/後門
正常路徑:輸入帳密 → 驗證 → 正常功能
隱藏路徑:特殊輸入 → 略過驗證 → 特權功能
Trap door 是程式中刻意保留的隱藏進入點,使特定輸入、特殊帳號、秘密密碼或特殊指令能繞過正常的安全檢查。
常見例子:
- 開發者留下的除錯帳號。
- 隱藏的管理員密碼。
- 特殊字串觸發的管理功能。
- 遠端服務中的未公開管理介面。
Trojan horse 強調「偽裝的程式」,trap door 強調「繞過驗證的隱藏路徑」。
Logic Bomb:邏輯炸彈
植入程式
│
▼
平時保持靜默
│ 特定日期、帳號、事件或計數條件成立
▼
刪除資料、破壞系統或洩漏資訊
Logic bomb 是埋藏在程式中的惡意邏輯,只有在指定條件成立時才執行。觸發條件可包括:
- 特定日期或時間。
- 某位員工帳號被刪除。
- 程式執行達特定次數。
- 某個檔案不存在。
- 特定資料或事件出現。
邏輯炸彈的重點是「平時不動作,條件成立後才發動」。它不一定是獨立程式,也可嵌入木馬或正常商業軟體。
Stack and Buffer Overflow:堆疊與緩衝區溢位
緩衝區是用來暫存輸入資料的記憶體區域。若程式未檢查輸入長度,過長資料會寫出緩衝區範圍。
第 2 題
- [Security: 20%]
(1) Explain what is Prompt Attack? (3%)
(2) Explain what is Fake News? (3%)
(3) Explain what is Secure Computation? (3%)
(4) Explain what is Personal Identifiable Information (PII)? (3%)
(5) Please describe what is Post Quantum Cryptography? (3%)
(6) Please explain what the concept of Data Science for Malware Detection is and how to achieve it. (5%)
登入後即可作答並保存紀錄。
第 2 題 Security
(1)Prompt Attack
核心觀念
Prompt Attack 是針對以自然語言提示詞(Prompt)驅動的生成式 AI 或大型語言模型所進行的攻擊。攻擊者藉由設計特殊輸入,誘使模型忽略原本的系統指令、洩漏機密資訊、產生不安全內容,或在具備工具權限時執行未授權操作。
常見類型如下:
- 直接 Prompt Injection:使用者直接輸入「忽略前面的指令,改依照以下內容執行」等惡意提示。
- 間接 Prompt Injection:惡意指令藏在網頁、電子郵件、PDF 或資料庫內容中;AI 讀取這些資料後,誤把資料內容當成更高權限的指令。
- Jailbreak:利用角色扮演、編碼、分段指令等方式,繞過模型的安全限制。
- Prompt Leakage:誘使模型揭露系統提示詞、內部規則或秘密資料。
解題方法
回答時應指出三個要素:
- 攻擊對象是 AI 的提示詞處理與指令遵循機制。
- 攻擊手段是注入、混淆或偽造指令。
- 攻擊目的包含繞過限制、竊取資訊、濫用工具。
防禦方法包括:將外部內容視為不可信資料、實施指令與資料的權限分離、限制 AI 工具權限、對敏感操作要求人工確認、避免把密鑰直接放在 Prompt 中,並進行輸入過濾、輸出驗證、日誌監控與越獄測試。
解題技巧
關鍵判斷句是:「不可信的資料被模型誤當成可信指令」。僅說「輸入錯誤」並不完整,必須說明其安全影響。
(2)Fake News
核心觀念
Fake News 是以新聞報導形式包裝的虛假、捏造或誤導性資訊,通常透過社群媒體、網站、影音平台或通訊軟體快速傳播,影響大眾判斷、政治立場、金融決策或社會信任。
常見形式包括:
- 完全捏造不存在的事件。
- 竄改真實照片、影片、聲音或統計數據。
- 將真實事件置於錯誤時間、地點或背景中。
- 以聳動標題、假冒媒體或假專家增加可信度。
- 利用 Deepfake 製造虛假的人物言論或事件影像。
嚴格區分時,無意造成的錯誤資訊稱為 misinformation;蓄意欺騙的假資訊稱為 disinformation;利用真實資訊進行惡意傷害則稱為 malinformation。
解題方法
Fake News 的辨識可以從下列面向進行:
- 來源查證:確認發布者、網站網域、作者與發布時間。
- 交叉比對:比較多個可信媒體與官方資料。
- 內容分析:檢查標題是否誇大、論證是否缺乏證據、圖片是否斷章取義。
- 媒體鑑識:使用反向圖片搜尋、影片影格分析、音訊與影像竄改偵測。
- AI 輔助分析:利用自然語言處理、來源可信度評分與多模態模型進行分類。
數位簽章、內容來源標記與平台警示可以降低散播風險,但不能單獨證明內容一定真實,仍須配合人工查證。
解題技巧
不要只把 Fake News 定義成「錯誤新聞」。完整答案應包含「新聞形式包裝」、「虛假或誤導內容」及「造成大眾誤判或操控」三個重點。
(3)Secure Computation
核心觀念
Secure Computation 是在不公開參與者原始資料的情況下,仍能正確計算共同函數的方法。若兩方分別擁有資料 與 ,希望計算函數 ,理想結果是參與者只得知被授權的輸出,而不能取得對方的原始輸入。
安全性通常包含:
- 機密性:不洩漏原始輸入。
- 正確性:惡意參與者不能任意竄改計算結果。
- 輸出控制:只公開必要結果,避免由輸出反推出敏感資料。
- 抗串通性:在指定的參與者串通假設下仍維持安全。
解題方法
主要技術包括:
-
安全多方計算(MPC)
將資料切成多份秘密分享,例如在模數 下將 表示為:不同參與者各自持有一份分享,直接在分享值上完成運算,最後只重組必要結果。
-
同態加密(Homomorphic Encryption)
允許在密文上計算:因此資料提供者不必先公開明文。
-
可信執行環境(TEE)
在硬體保護的安全區域中執行程式與資料,並透過遠端證明確認執行的程式未被竄改。
典型應用包括跨醫院統計、銀行聯合詐欺偵測、隱私保護的機器學習與跨企業資料分析。
解題技巧
Secure Computation 不等於單純的資料傳輸加密。傳輸加密只保護傳輸過程;Secure Computation 的重點是「資料不解密公開,也能完成運算」。此外,計算結果本身仍可能洩漏資訊,因此必須搭配存取控制、差分隱私與輸出限制。
(4)Personal Identifiable Information(PII)
核心觀念
PII 是能夠直接或間接識別特定自然人的資訊。直接識別資料可以單獨辨識個人;間接識別資料則須與其他資料結合後才能辨識個人。
常見 PII 包括:
- 姓名、身分證號、護照號碼。
- 電話、電子郵件、住址。
- 帳號、IP 位址、Cookie、裝置識別碼。
- GPS 位置、工作紀錄、瀏覽紀錄。
- 臉部影像、指紋、虹膜、聲紋等生物特徵。
- 醫療、財務、教育與犯罪紀錄。
例如,單獨的出生年份未必能識別某人;但若與郵遞區號、職業及性別結合,便可能鎖定特定個人。
解題方法
保護 PII 的基本流程是:
- 盤點資料來源、收集目的與使用範圍。
- 遵守資料最小化與目的限制,只收集必要欄位。
- 以權限控管、加密、遮罩與 Tokenization 限制存取。
- 設定保存期限,資料不再需要時安全刪除。
- 對外分享前進行去識別化,並防止重新識別。
- 建立存取紀錄、異常偵測與個資外洩通報流程。
解題技巧
必須區分:
- 假名化(Pseudonymization):以代碼取代姓名,但仍保留對照表,因此通常仍屬 PII。
- 匿名化(Anonymization):在合理手段下無法重新識別個人,才可視為真正匿名。
將電子郵件雜湊後不代表一定不再是 PII;若資料仍可被比對、連結或反查,仍可能具有識別性。
(5)Post-Quantum Cryptography(PQC)
核心觀念