111 年 國立成功大學電腦與通信工程研究所丁組《資訊安全概論》
第 1 題20 分
- 20%
(a) What is the sandboxing?
(b) Why sandboxing is important?
(c) What you can do by using sandboxing for threat protection
登入後即可作答並保存紀錄。
本題主要探討沙盒(Sandboxing)技術的概念、重要性及其在威脅防護上的應用。
(a) 沙盒(Sandboxing)是什麼?
沙盒是一種安全機制,它提供一個隔離的執行環境,讓不受信任的程式碼或應用程式在其中運行,而不會影響到主機系統或其他正在運行的應用程式。想像一個真實世界的沙盒,小朋友可以在裡面玩沙,但沙子不會弄髒整個遊戲場。在電腦安全領域,沙盒就像一個虛擬的「隔離區」,程式在裡面執行時,其對系統資源(如檔案、網路、記憶體、登錄檔等)的存取都會受到嚴格的限制和監控。如果程式嘗試進行惡意操作,這些操作只會發生在沙盒內部,不會對真實系統造成損害。
(b) 為什麼沙盒很重要?
沙盒的重要性主要體現在以下幾個方面:
- 防止惡意軟體感染:許多惡意軟體(如病毒、木馬、勒索軟體)會試圖修改系統檔案、竊取敏感資訊或加密使用者資料。沙盒能夠限制這些惡意行為的影響範圍,使其僅發生在其隔離環境內,從而保護主機系統的安全。
- 安全地執行不受信任的程式碼:使用者經常需要處理來自網路、電子郵件附件或不明來源的檔案或應用程式。沙盒提供了一個安全的方式來開啟或執行這些潛在危險的內容,例如開啟一個未知來源的 PDF 文件或執行一個下載的程式,而不用擔心其惡意性。
- 漏洞利用防護:即使軟體存在安全漏洞,攻擊者利用這些漏洞來控制系統的行為也會被沙盒限制。沙盒可以阻止漏洞被用來執行任意程式碼、提升權限或進行橫向移動。
- 行為分析與偵測:沙盒環境可以被用來監控程式的行為。
第 2 題20 分
- 20%
(a) What is Phishing Attack?
(b) What are the techniques that a Phishing Attacker needs?
(c) What causes Phishing Attack easily success?
(d) What might happened next after phishing attack?
(e) How to prevent phishing attacks?
登入後即可作答並保存紀錄。
本題主要探討網路釣魚(Phishing Attack)攻擊的定義、攻擊者所需技術、成功原因、後續影響以及預防方法。
(a) 什麼是網路釣魚攻擊?
網路釣魚(Phishing Attack)是一種社會工程學(Social Engineering)攻擊,攻擊者偽裝成合法、可信賴的機構或個人(例如銀行、政府部門、知名公司、朋友等),透過電子郵件、簡訊、即時通訊軟體或惡意網站等管道,誘騙受害者洩漏敏感資訊,如使用者名稱、密碼、信用卡號碼、身分證字號、銀行帳戶資訊等,或引導受害者下載惡意軟體。其核心在於「釣取」受害者的信任,使其主動提供資訊或執行危險操作。
(b) 網路釣魚攻擊者需要哪些技術?
網路釣魚攻擊者所需的技術,雖然不一定需要高深的程式設計或駭客技術,但需要結合以下幾方面的能力:
- 社會工程學知識:這是最關鍵的能力。攻擊者需要了解人性的弱點,如貪婪、恐懼、好奇心、信任、緊迫感等,並能運用這些心理學原理來設計誘餌,操縱受害者。
- 詐騙訊息設計能力:能夠撰寫逼真、有說服力的詐騙訊息,模仿目標機構的語氣、格式和風格,讓受害者難以分辨真偽。這包括製作假的電子郵件、網頁、訊息內容。
- 技術知識(基礎):
- 網頁製作與架設:攻擊者常會架設與目標網站極為相似的假冒網站(Clone Website),以騙取使用者輸入的資訊。這需要基本的網頁製作(HTML, CSS)和伺服器架設知識。
- 郵件伺服器或發送工具:利用惡意軟體控制的電腦(殭屍網路 Botnet)或專門的郵件發送工具來大量發送釣魚郵件。
- 域名註冊與管理:註冊與目標域名相似的域名(Typo-squatting)。
- 惡意軟體開發(選配):雖然不是所有釣魚都包含惡意軟體,但有些釣魚攻擊會將惡意軟體偽裝成附件或連結,誘騙使用者下載。
- 資訊收集能力:利用公開資訊(如社交媒體、公司網站)來收集目標的個人資訊或組織結構,以便更精準地發動攻擊。
- 耐心與堅持:網路釣魚攻擊通常是大規模的,攻擊者需要有耐心不斷嘗試,並根據回饋調整策略。
(c) 什麼原因導致網路釣魚攻擊容易成功?
網路釣魚攻擊之所以容易成功,主要有以下幾個原因:
- 人性弱點:
- 信任:人們傾向於信任來自知名機構或看起來正式的訊息。
- 恐懼與緊迫感:攻擊者常利用「帳戶被鎖」、「有安全威脅」、「必須立即處理」等訊息,製造恐慌,讓受害者來不及思考就採取行動。
- 貪婪與好奇:以「中獎」、「獨家優惠」、「免費贈品」等誘餌,吸引受害者點擊。
- 無知與疏忽:部分使用者對網路安全知識不足,或在日常使用中過於粗心大意。
- 技術的模仿能力:
- 高度相似的假冒網站:攻擊者能製作出與官方網站幾乎一模一樣的網頁,包括視覺風格、Logo、甚至表單欄位。
- 偽造的寄件者資訊:透過技術手段(如 Email Spoofing),可以讓釣魚郵件看起來像是從合法來源發送的。
- 訊息傳播的廣泛性:
- 大量發送:透過大量發送郵件或訊息,即使成功率很低,也能接觸到足夠多的潛在受害者。
- 跨平台傳播:不僅限於電子郵件,還包含簡訊(Smishing)、電話(Vishing)、社交媒體等。
- 安全防護的不足:
- 郵件過濾不夠完善:部分釣魚郵件仍可能繞過垃圾郵件過濾器。
- 使用者安全意識不足:許多使用者沒有養成良好的安全習慣,例如檢查連結、不隨意點擊、不隨意輸入敏感資訊。
第 3 題20 分
- 20%
(a) What is the cloud computing reference architecture?
(b) Describe some of the main cloud-specific security threats.
登入後即可作答並保存紀錄。
本題主要探討雲端運算參考架構以及與雲端環境相關的特有安全威脅。
(a) 什麼是雲端運算參考架構?
雲端運算參考架構(Cloud Computing Reference Architecture)是一個標準化的模型,用於描述雲端運算系統的組織結構、組成部分、關係以及運作方式。它提供了一個通用的框架,幫助理解、設計、實施和評估雲端服務。
雖然有多種不同的雲端參考架構模型(例如 NIST 的模型、TOGAF 的模型等),但它們通常包含以下幾個核心層次或概念:
- 業務層(Business Layer)/ 應用層(Application Layer):
- 這是雲端服務的最高層,包含使用者直接互動的應用程式和業務流程。
- 例如:SaaS (Software as a Service) 應用,如 Gmail、Salesforce、Office 365。
- 服務層(Service Layer)/ 平台層(Platform Layer):
- 這一層負責提供給應用層的各種服務和運行環境。
- 它包含 PaaS (Platform as a Service) 提供的開發、部署和管理應用程式的平台,以及各種雲端服務 API(如資料庫服務、訊息佇列、分析工具等)。
- 基礎設施層(Infrastructure Layer):
- 這是雲端運算的核心,提供底層的計算、儲存和網路資源。
- 它包含 IaaS (Infrastructure as a Service) 提供的虛擬機、儲存設備、網路設備等。
- 這一層通常由雲端供應商負責管理和維護。
- 管理層(Management Layer)/ 協調層(Orchestration Layer):
- 這一層負責監控、管理和自動化雲端資源的分配、部署、擴展和計費。
- 它跨越各個層級,確保資源的高效利用和服務的可用性。
- 安全層(Security Layer):
- 安全是雲端運算架構中一個獨立但又貫穿所有層級的關鍵考量。
- 它負責保護雲端環境的資料、應用程式和基礎設施免受威脅。這包括身份驗證、授權、資料加密、威脅偵測等。
- 部署模型(Deployment Models):
- 公共雲(Public Cloud)、私有雲(Private Cloud)、混合雲(Hybrid Cloud)、社群雲(Community Cloud)。
- 服務模型(Service Models):
- IaaS、PaaS、SaaS。
NIST(美國國家標準與技術研究院)的雲端運算定義是一個廣泛被引用的參考模型,它定義了五個核心的服務特性(On-demand self-service, Broad network access, Resource pooling, Rapid elasticity, Measured service)、三個服務模型(IaaS, PaaS, SaaS)和四個部署模型(Public, Private, Hybrid, Community)。
(b) 描述一些主要的雲端特有安全威脅。
雲端運算雖然帶來了彈性、可擴展性和成本效益,但也引入了與傳統本地環境不同的、或更為突出的安全威脅。以下是一些主要的雲端特有安全威脅:
- 共享責任模型(Shared Responsibility Model)的混淆:
- 威脅:客戶與雲端供應商之間對安全責任的劃分不清。
第 4 題20 分
- 20%
(a) What is an elliptic curve in cryptography?
(b) Please describe the advantages of elliptic curve cryptography.
(c) What is an elliptic curve digital signature?
(d) What is elliptic curve cryptography used for?
登入後即可作答並保存紀錄。
本題主要探討橢圓曲線在密碼學中的應用,包括其定義、優勢、數位簽章以及具體用途。
(a) 什麼是密碼學中的橢圓曲線?
在密碼學中,橢圓曲線(Elliptic Curve, EC)指的是一個特定的數學曲線,其形式通常為一個三次方程式,例如在實數域上的 Weierstraß 方程式:
其中 和 是常數。
然而,在密碼學中,我們通常處理的是定義在有限體(Finite Field)上的橢圓曲線。有限體上的橢圓曲線是指其上的點 的座標 和 屬於一個有限的集合,而不是連續的實數。常見的有限體有 (質數 的整數模, 為大質數)或 (二元域)。
橢圓曲線密碼學(Elliptic Curve Cryptography, ECC)利用了橢圓曲線上的「加法」運算。在這個運算下,曲線上的點可以像數字一樣進行加法和乘法(標量乘法)。具體來說,如果 是曲線上的點,則 表示將點 自己加 次,其中 是一個整數。這個標量乘法運算在 ECC 中扮演核心角色。
ECC 的安全性基於一個被稱為「橢圓曲線離散對數問題」(Elliptic Curve Discrete Logarithm Problem, ECDLP)的數學難題。簡單來說,給定曲線上的點 和點 (其中 是 經過 次標量乘法得到的點),要找出整數 是非常困難的,特別是當曲線的參數和點的選擇恰當時。
(b) 請描述橢圓曲線密碼學的優勢。
橢圓曲線密碼學(ECC)相較於傳統的公鑰密碼學體系(如 RSA),具有顯著的優勢:
-
金鑰長度更短,安全性更高:
- ECC 的安全性基於 ECDLP 問題,而 RSA 的安全性基於大數分解問題。目前已知,ECDLP 問題比大數分解問題更難求解。
- 這意味著,使用 ECC 可以用更短的金鑰長度達到與 RSA 相同或更高的安全級別。例如,一個 256 位元的 ECC 金鑰,其安全性約等於一個 3072 位元的 RSA 金鑰。
- 優勢:
- 儲存空間需求小:短金鑰意味著更少的儲存空間,這對於資源受限的設備(如智慧卡、嵌入式設備、IoT 裝置)非常重要。
- 傳輸效率高:短金鑰在網路傳輸時佔用的頻寬更少,加速了金鑰交換和加密/解密過程。
- 計算速度快:在相同安全級別下,ECC 的計算速度通常比 RSA 快,尤其是在金鑰生成和簽章驗證方面。
-
運算效率高:
- 由於金鑰更短,ECC 的加密、解密、簽章和驗證操作通常比 RSA 更快,特別是在需要較高安全級別時(需要 RSA 使用非常長的金鑰)。
-
低功耗和低頻寬需求:
- 這使得 ECC 特別適合用於行動設備、無線通訊和嵌入式系統,這些環境的運算能力、電池壽命和網路帶寬都有限。
(c) 什麼是橢圓曲線數位簽章?
橢圓曲線數位簽章(Elliptic Curve Digital Signature, ECDSA)是一種基於橢圓曲線密碼學的數位簽章演算法。數位簽章的目的是提供訊息的來源驗證(Authenticity)、完整性(Integrity)和不可否認性(Non-repudiation)。
ECDSA 的工作流程大致如下:
第 5 題20 分
- 20%
(a) What is hacking?
(b) What are the phases of hacking life cycle?
(c) How to disrupt the hacking life cycle of a cyberattack.
登入後即可作答並保存紀錄。
本題主要探討駭客行為的定義、駭客的生命週期階段,以及如何干擾和阻止網路攻擊。
(a) 什麼是駭客行為?
駭客行為(Hacking)通常指的是未經授權或非法存取電腦系統、網路、應用程式或資料的行為。廣義上,駭客行為可以是為了探索系統、發現弱點、測試安全性,但也常常與惡意目的相關,例如竊取資訊、破壞系統、勒索、或進行其他非法活動。
在資訊安全領域,駭客(Hacker)一詞有時會被區分為:
- 白帽駭客(White Hat Hacker):也稱為道德駭客(Ethical Hacker),他們利用駭客技術來發現系統的漏洞,但獲得系統所有者的授權,並以合法、道德的方式報告這些漏洞,幫助組織加強安全防護。
- 黑帽駭客(Black Hat Hacker):也稱為惡意駭客(Malicious Hacker),他們利用駭客技術來進行非法活動,以謀取個人利益或造成破壞。
- 灰帽駭客(Gray Hat Hacker):他們的行為介於白帽和黑帽之間,可能在未經授權的情況下發現漏洞,然後告知系統所有者,有時會要求報酬,有時則會公開漏洞。
在本題的脈絡下,「hacking」通常指代的是黑帽駭客的行為。
(b) 駭客生命週期的階段是什麼?
駭客的生命週期(Hacking Life Cycle),也稱為網路攻擊的典型流程,描述了攻擊者從初步偵察到最終達成目標的完整過程。這個週期可以有多種模型,但常見的階段包括:
-
偵察(Reconnaissance / Footprinting):
- 攻擊者收集目標系統、網路和組織的資訊。
- 分為被動偵察(Passive Reconnaissance):不與目標系統直接互動,如搜尋公開資訊、WHOIS 查詢、DNS 查詢、社交媒體分析。
- 分為主動偵察(Active Reconnaissance):與目標系統直接互動,如掃描開放端口(Port Scanning)、網路探測(Network Probing)、識別作業系統和應用程式版本。
- 目標:了解目標的結構、弱點、關鍵人物、技術堆疊等。
-
掃描(Scanning):
- 在偵察階段收集到的初步資訊基礎上,進行更深入的掃描,以識別系統中的具體漏洞。
- 端口掃描:找出開放的端口和正在運行的服務。
- 漏洞掃描:使用工具(如 Nessus, OpenVAS)自動化地尋找已知的安全漏洞。
- 弱點繪製(Vulnerability Mapping):將掃描結果與已知的攻擊向量關聯起來。
-
獲得存取權(Gaining Access / Exploitation):
- 攻擊者利用在掃描階段發現的漏洞,嘗試入侵目標系統。
- 這可能涉及利用軟體漏洞、弱密碼、社會工程學、後門等。
- 一旦成功,攻擊者就獲得了對系統的初步存取權限。
-
維持存取權(Maintaining Access / Persistence):
- 為了確保即使系統重新啟動或安全措施被加強後,攻擊者仍能持續存取系統,他們會採取措施維持存取權。
- 這包括安裝後門(Backdoor)、建立新的使用者帳戶、修改啟動程序、植入 Rootkit 等。
- 目標:確保長時間的、不易被發現的存取。
-
清除痕跡(Clearing Tracks / Covering Tracks):
- 為了避免被偵測和追蹤,攻擊者會試圖刪除或混淆他們在系統上留下的所有痕跡。
- 這包括刪除日誌文件(Log Files)、修改時間戳記、清除命令歷史記錄、移除入侵工具等。
- 目標:隱藏攻擊行為,避免被安全分析人員發現。
(備註:有些模型會將「權限提升(Privilege Escalation)」和「橫向移動(Lateral Movement)」作為獨立階段,或包含在「維持存取權」階段內。)