## 網路資安健檢常見項目 **弱點掃描(Vulnerability Scanning)** 自動化工具(如 Nessus、OpenVAS、Qualys)檢查系統與服務的已知弱點。 包含 OS、服務(SSH、RDP、FTP)、中間件、資料庫等。 **滲透測試(Penetration Testing)** 模擬駭客攻擊,嘗試突破系統防護。 包含網路滲透測試、Web 滲透測試、社交工程測試。 **網頁應用程式檢測(Web Application Assessment)** 檢查 OWASP Top 10 常見弱點,例如 SQL Injection、XSS、CSRF、檔案上傳漏洞。 網路架構檢測(Network Architecture Review) 檢查防火牆、IDS/IPS、WAF、VPN 的配置是否安全。 檢查 VLAN 隔離、權限控管、路由設計是否合理。 **社交工程測試(Social Engineering Test)** 模擬釣魚郵件、電話詐騙,檢測員工資安意識。 政策與流程檢視(Policy & Compliance Review) 檢查是否符合資安標準(ISO 27001、CIS、NIST、GDPR 等)。 檢查密碼政策、帳號管理、備份策略。 **實體安全檢測(Physical Security)** 檢查伺服器機房是否有門禁管制、監視系統、環境控管(溫度、火災偵測)。 ## 常見安全性 HTTP Headers 1. **HTTP Strict Transport Security (HSTS)** 功能:強制使用 HTTPS,避免 SSL Stripping 攻擊。 2. **X-Frame-Options** 功能:防止網站被放入 `<iframe>`,避免 Clickjacking 攻擊。 3. **X-Content-Type-Options** 功能:防止瀏覽器猜測 MIME 類型,避免惡意檔案被誤當成可執行內容。 4. **Content-Security-Policy (CSP)** 功能:控制哪些資源(JS、CSS、圖片…)可以被載入,防止 XSS 與資料注入攻擊。 5. **X-XSS-Protection**(舊的,部分瀏覽器已不支援) 功能:啟用瀏覽器內建的 XSS 過濾器(新瀏覽器多已棄用,建議用 CSP 取代)。 6. **Referrer-Policy** 功能:控制瀏覽器在跳轉時送出的 Referer 資訊,避免洩漏敏感網址或 Token。 7. **Permissions-Policy** (原 Feature-Policy) 功能:限制網站能否使用某些瀏覽器 API(像是相機、麥克風、地理位置)。 8. **Cross-Origin Resource Policy (CORP)** 功能:避免其他來源的網站存取你的敏感資源。 9. **Cross-Origin Embedder Policy (COEP) / Cross-Origin Opener Policy (COOP)** 用於加強跨來源隔離 (Cross-Origin Isolation),通常配合 WebAssembly、SharedArrayBuffer 使用。 ## 聯合身分驗證標準 (Federation Standards) 這些標準定義了 不同系統之間如何交換「身份驗證」與「授權資訊」。 常見的標準有: SAML 2.0 (Security Assertion Markup Language) 基於 XML 的標準,用於 IdP 與 SP 之間交換「驗證資訊」。 常用在企業級 SSO,例如 Google Workspace、Office 365、AWS、Salesforce。 WS-Federation 微軟推廣的協定,基於 Web Services (SOAP)。 與 Active Directory、ADFS 等整合度高。 OAuth 2.0 著重在「授權」(例如:第三方應用取得你 Facebook 的相片權限)。 不直接處理身份驗證,但常與 OIDC 搭配。 OpenID Connect (OIDC) 建構在 OAuth 2.0 上,專門處理「身份驗證」。 現代應用(行動 App、Web API)非常常用。 ## 資安事件通報 ![image](https://hackmd.io/_uploads/SkvSXv4Yll.png) ## 資通安全事件等級 本作業程序依據「資通安全事件通報及應變辦法」將資通安全事件分為四級,由重至輕分別為「4級」、「3級」、「2級」及「1級」,另新增資安預警事件類別。 一、 4 級事件 符合下列任一情形者,屬 4 級事件: 1. 一般公務機密、敏感資訊或涉及關鍵基礎設施維運之核心業務資訊遭嚴重洩漏,或國家機密遭洩漏。 2. 一般公務機密、敏感資訊、涉及關鍵基礎設施維運之核心業務資訊或核心資通系統遭嚴重竄改,或國家機密遭竄改。 3. 涉及關鍵基礎設施維運之核心業務或核心資通系統之運作受影響或停頓,無法於可容忍中斷時間內回復正常運作。 二、 3 級事件 符合下列任一情形者,屬 3 級事件: 1. 未涉及關鍵基礎設施維運之核心業務資訊遭嚴重洩漏,或一般公務機密、敏感資訊或涉及關鍵基礎設施維運之核心業務資訊遭輕微洩漏。 2. 未涉及關鍵基礎設施維運之核心業務資訊或核心資通系統遭嚴重竄改,或一般公務機密、敏感資訊、涉及關鍵基礎設施維運之核心業務資訊或核心資通系統遭輕微竄改。 3. 未涉及關鍵基礎設施維運之核心業務或核心資通系統之運作受影響或停頓,無法於可容忍中斷時間內回復正常運作,或涉及關鍵基礎設施維運之核心業務或核心資通系統之運作受影響 或停頓,於可容忍中斷時間內回復正常運作。 三、 2 級事件 符合下列任一情形者,屬 2 級事件: 1. 非核心業務資訊遭嚴重洩漏,或未涉及關鍵基礎設施維運之核心業務資訊遭輕微洩漏。 2. 非核心業務資訊或非核心資通系統遭嚴重竄改,或未涉及關鍵基礎設施維運之核心業務資訊或核心資通系統遭輕微竄改。 3. 非核心業務之運作受影響或停頓,無法於可容忍中斷時間內回復正常運作,或未涉及關鍵基礎設施維運之核心業務或核心資通系統之運作受影響或停頓,於可容忍中斷時間內回復正常 運作。 四、 1 級事件 符合下列任一情形者,屬 1 級事件: 1. 非核心業務資訊遭輕微洩漏。 2. 非核心業務資訊或非核心資通系統遭輕微竄改。 3. 非核心業務之運作受影響或停頓,於可容忍中斷時間內回復正常運作,造成機關日常作業影響。 ## 常見RID對照 | RID | 帳號 / 群組 | 說明 | | --- | ------------------ | ------------------------ | | 500 | Administrator | 預設系統管理員帳號 | | 501 | Guest | 預設來賓帳號 | | 502 | Krbtgt | Kerberos 票證帳號,用於 AD 認證服務 | | 512 | Domain Admins | AD 網域管理員群組 | | 513 | Domain Users | AD 網域使用者群組 | | 514 | Domain Guests | AD 網域來賓群組 | | 515 | Domain Computers | 網域電腦帳號 | | 516 | Domain Controllers | 網域控制器群組 | | 518 | Schema Admins | 架構管理員群組 | | 519 | Enterprise Admins | AD 企業管理員群組 | ## windows用戶密碼hash格式 **1️⃣ NTLM (Windows 常用)** 用於:Windows 本地帳號、Active Directory (舊系統) 特點:MD4 雜湊(16 bytes),常用 32 字元十六進位表示 格式範例: Administrator:500:NO PASSWORD*******************:31d6cfe0d16ae931b73c59d7e0c089c0 Jason:1000:NO PASSWORD*******************:aad3b435b51404eeaad3b435b51404ee 註: aad3b435b51404eeaad3b435b51404ee → 空密碼 SID 後的 hash 即是 NTLM **2️⃣ LM Hash (舊版 Windows)** 特點:DES 加密,安全性低 常與 NTLM 一起存於 SAM 檔案 格式範例: LM Hash:AAD3B435B51404EEAAD3B435B51404EE NTLM Hash:31D6CFE0D16AE931B73C59D7E0C089C0 現代 Windows(Vista 之後)多禁用 LM Hash **3️⃣ Kerberos (AD 認證票證)** 用於:Active Directory 認證(TGS / TGT) 格式: 密碼不直接存放,存為 Keytab / TGS Ticket 不像 NTLM / LM 那樣可直接在 SAM/NTDS 找到 **4️⃣ SHA512 (Linux/Unix)** 用於:Linux / Unix 密碼雜湊 格式範例: $6$salt$abcdefg1234567890... Windows 不會用 SHA512 直接存密碼 ## 常見協定 | 協定 / 服務 | 標準連接埠 | 安全版本 / 加密 | 說明 | | ---------- | ------- | -------------------------------- | -------------------------------- | | **HTTP** | 80 | HTTPS → 443 | 明文網頁傳輸 / 加密後用 TLS 的 HTTPS | | **HTTPS** | 443 | TLS 1.2 以上 | SSL/TLS 加密的 HTTP,防竊聽、MITM | | **FTP** | 20 / 21 | FTPS (TLS 1.2+) | 傳統 FTP 明文,FTPS 用 SSL/TLS 加密 | | **SFTP** | 22 | SSH | FTP over SSH,完全加密通道 | | **POP3** | 110 | POP3s → 995 | 郵件接收,POP3 明文,POP3s 加密 | | **IMAP** | 143 | IMAPs → 993 | 郵件接收,IMAP 明文,IMAPs 加密 | | **SMTP** | 25 | SMTPS → 465 / STARTTLS → 587 | 郵件傳送,SMTP 明文,SMTPS / STARTTLS 加密 | | **Telnet** | 23 | SSH → 22 | 遠端登入,Telnet 明文,SSH 加密 | | **RDP** | 3389 | RDP over TLS | 遠端桌面,支援加密連線 | | **DNS** | 53 | DNS over TLS / HTTPS → 853 / 443 | 名稱解析,防篡改、加密 | | **LDAP** | 389 | LDAPS → 636 | 資料查詢 / 認證,LDAPS 用 TLS 加密 | | **MySQL** | 3306 | MySQL + SSL/TLS | 資料庫連線加密 | | **MSSQL** | 1433 | MSSQL + TLS | 資料庫連線加密 | ## openssl指令 1️⃣ **產生自簽憑證 (Self-Signed Certificate)** `openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout selfsigned.key -out selfsigned.crt` req → 產生 CSR (Certificate Signing Request) 或自簽憑證 -x509 → 指定產生自簽憑證(不向 CA 申請) -nodes → 不對私鑰加密(no DES) -days 365 → 憑證有效天數 -newkey rsa:2048 → 產生新的 2048-bit RSA 私鑰 -keyout selfsigned.key → 輸出私鑰檔案 -out selfsigned.crt → 輸出憑證檔案 2️⃣ **產生私鑰** `openssl genrsa -out mykey.key 2048` genrsa → 產生 RSA 私鑰 2048 → 金鑰長度 3️⃣ **產生 CSR (Certificate Signing Request)** `openssl req -new -key mykey.key -out myrequest.csr` -new → 產生新的請求 -key mykey.key → 使用現有私鑰 -out myrequest.csr → 輸出 CSR 4️⃣ **憑證轉換格式** PEM → DER (二進位格式) `openssl x509 -in cert.pem -outform der -out cert.der` DER → PEM `openssl x509 -in cert.der -inform der -out cert.pem -outform pem` PFX / PKCS#12 `openssl pkcs12 -export -out cert.pfx -inkey mykey.key -in cert.crt` 5️⃣ **查看憑證內容** `openssl x509 -in cert.crt -text -noout` -text → 以可讀方式顯示 -noout → 不輸出原始編碼 6️⃣ **驗證 CSR 與私鑰** ``` openssl req -text -noout -verify -in myrequest.csr openssl rsa -in mykey.key -check ``` ## 滲透測試三階段 **攻擊前(Pre-Attack / Reconnaissance)** 目標:蒐集資訊、了解目標環境 方法: 主動偵查(Active Reconnaissance):用掃描器掃描目標 IP、開放連接埠、服務版本 被動偵查(Passive Reconnaissance):查詢公開資料、DNS、社群網站資訊 **攻擊中(Attack / Exploitation)** 目標:實際利用漏洞或弱點取得權限 方法: 注入攻擊、漏洞利用、破解密碼、弱點利用 **攻擊後(Post-Attack / Post-Exploitation)** 目標:維持存取、清除痕跡、取得更多資訊 方法: 安裝後門、橫向移動、資料竊取 ## Heartbleed (CVE-2014-0160) 漏洞類型:OpenSSL 的 Heartbeat 擴展漏洞 原理:攻擊者可透過特製的 Heartbeat 請求,要求服務端回傳記憶體內容 影響範圍: 可讀取 伺服器記憶體中的敏感資訊,例如私鑰、密碼、Session Token 等 每次可讀取資料大小: Heartbeat 請求中長度欄位最多可填寫 64 KB 因此 一次可讀取 64 KB 記憶體資料 ## 常見 Web 攻擊 & 防禦方法 | 攻擊類型 | 攻擊描述 | 常用防禦方法 | | ------------------------------------- | ------------------------------------- | ------------------------------------------------------------------------------------------------------- | | **SQL Injection (SQLi)** | 利用不安全的 SQL 查詢操作注入惡意 SQL | - Prepared Statement / Parameterized Query<br>- ORM 框架自動防護<br>- 輸入驗證 / 過濾特殊字元 | | **Cross-Site Scripting (XSS)** | 注入惡意 JavaScript 到網頁,竊取 cookie 或操控 DOM | - HTML encode / output escape<br>- Content Security Policy (CSP)<br>- Input validation | | **Cross-Site Request Forgery (CSRF)** | 利用受害者身份發送偽造請求 | - CSRF Token (Server-side)<br>- 檢查 Referer / Origin Header<br>- CAPTCHA / 圖形驗證碼<br>- SameSite Cookie 屬性 | | **Remote Code Execution (RCE)** | 遠端執行惡意程式碼 | - 限制上傳檔案類型及大小<br>- 使用沙盒環境 / 權限隔離<br>- 輸入驗證及命令逃逸 | | **Directory Traversal** | 訪問目錄以外的檔案(如 `/etc/passwd`) | - 避免使用用戶輸入直接拼接路徑<br>- 檔案路徑白名單 / 驗證 | | **Man-in-the-Middle (MITM)** | 攔截或篡改網路傳輸資料 | - HTTPS / TLS<br>- HSTS<br>- 驗證憑證合法性 | | **Session Hijacking** | 竊取 session cookie 控制使用者帳號 | - 使用 HttpOnly / Secure cookie<br>- Session timeout<br>- 強化身份驗證(MFA) | | **Brute Force / Credential Stuffing** | 大量嘗試帳號密碼 | - 限制登入次數 / Lockout<br>- CAPTCHA<br>- MFA / 強密碼政策 | | **File Upload Exploit** | 上傳惡意檔案觸發 RCE | - 嚴格檢查副檔名與 MIME type<br>- 將上傳檔案儲存在非執行目錄<br>- 防毒掃描 | ## 🌐 網路設備分層觀念(OSI 七層模型) 其實網路世界就像一棟大樓,每層樓有不同功能。 不同設備就像不同的「守門人」,各自負責不同層。 1️⃣ **Hub(集線器,L1 實體層)** 最簡單、最笨的設備。 收到一個封包 → 複製一份 → 廣播給所有人。 缺點:大家都能看到所有流量,超沒安全性。 2️⃣ **Switch(交換器,L2 資料鏈結層)** 會記住每個 Port 對應的 MAC 位址。 收到封包時,只轉發給對應的目的 Port。 優點:比 Hub 安全、省流量。 VLAN(虛擬區域網路):交換器可以把不同 Port 分到不同的 VLAN,彼此隔離,就像辦公室的「部門分區」。 3️⃣ **Router(路由器,L3 網路層)** 負責連接 不同的網段 / 網路。 可以幫你分割 Broadcast Domain(廣播域)。 家用 Router 除了路由功能,通常還包含: NAT(把內網 IP 轉換成外網 IP) DHCP(自動發 IP 給電腦、手機) Firewall(基本防火牆) 🏢 網路架構中的常見區域 1. **LAN(Local Area Network,本地網路)** 公司內部、學校、家裡的網路。 交換器 + Router 就能建立。 2. **WAN(Wide Area Network,廣域網路)** 多個 LAN 透過 ISP(中華電信、台灣大寬頻...)連起來,就是 WAN。 Internet 就是最大的 WAN。 3. **DMZ(Demilitarized Zone,非軍事區)** 放在 內網 和 外網(Internet) 中間的一個「緩衝區」。 通常放對外公開的服務: Web Server(網站伺服器) Mail Server(郵件伺服器) DNS Server 好處:萬一伺服器被駭,駭客不會直接進入公司內網,還有一道防護。 ## Cyber Kill Chain **偵查 Reconnaissance:** 攻擊者收集目標對象的資料,如電子郵件信箱、社群平台的資料,以找到可以下手的弱點;或是透過工具,掃描目標對象的網站、系統,得知使用的系統種類、版本。 **武裝 Weaponization:** 攻擊者使用現成的開源工具或是自行開發專屬的惡意程式。 **遞送 Delivery:** 攻擊者將攻擊武器送入目標的系統內,如透過釣魚信件裡的連結、夾帶木馬的盜版軟體、隨身碟。 **漏洞利用 Exploitation:** 確保遞送的惡意軟體,藉由目標對象的系統漏洞,得以順利開啟,並使攻擊者獲得控制權。 **安裝 Installation:** 攻擊者確保自身可以長期控制目標的系統內,以有足夠的時間進行後續環節。 **發令與控制 Command & Control:** 本環節取兩個單字的字首,又可簡稱為 C2。攻擊者潛伏在目標的系統內,收集資料,探索環境,以便審慎規劃後續行動。 **行動 Actions:** 根據攻擊者的最終目標,採取行動,如破壞系統、竊取機密資料、勒索目標對象。 ## 常見的存取控制模型 **DAC(Discretionary Access Control,自由裁量存取控制)** 資源的 擁有者 決定誰可以存取。 常見於 Windows / Unix:檔案擁有者可以設定 read/write/execute 給其他人。 弱點:使用者可能隨意給別人權限,造成安全風險。 **MAC(Mandatory Access Control,強制存取控制)** 存取由「系統」決定,而不是資源擁有者。 常用於軍事或政府機關,資料有等級(Top Secret, Secret, Confidential, Unclassified)。 使用者也有等級,必須符合規則才能存取。 例如:只有 Secret 等級以上的用戶能看 Secret 文件。 **RBAC(Role-Based Access Control,角色基礎存取控制)** 不是直接給「人」權限 而是給「角色」權限,再把「人」分配到角色。 廣泛用於企業 IT 系統。 **ABAC(Attribute-Based Access Control,屬性基礎存取控制)** 依照 使用者屬性、資源屬性、環境條件 來決定存取。 例如: 條件:「部門 = Finance 且 時間 = 上班時間」 → 可以存取財務系統 條件:「地點 = 公司內部網路」 → 才能存取內部資料庫 很靈活,但規則管理比較複雜。 ## 🔐 安全開發生命週期 (SDL) 🎯 目標 在 軟體開發流程 的每個階段都把 安全性 納入考量,避免漏洞在系統上線後才發現。 👉 就像 在建房子時就設計防火設施,而不是火災後才裝滅火器。 📌 SDL 常見流程(簡化版) **需求階段 (Requirements)** 確定安全需求 例如:加密需求、存取控制規範、法規遵循 (GDPR、ISO 27001) 做 威脅建模 (Threat Modeling) 初步分析 **設計階段 (Design)** 進行 威脅建模(攻擊面分析、STRIDE) 遵循 安全設計原則(最小權限、防止重複使用密碼、輸入驗證) 決定採用安全協定(HTTPS、TLS 1.2+ 等) **開發階段 (Implementation)** 使用 安全編碼規範(OWASP Secure Coding Practices) 避免 SQL Injection、XSS、緩衝區溢位 使用 靜態程式碼分析 (SAST) 工具找出弱點 **測試階段 (Verification & Testing)** 動態應用程式測試 (DAST) → 模擬攻擊測試 滲透測試(Pen Test) Fuzz Testing(隨機輸入測試,看系統是否崩潰) 驗證所有安全需求是否滿足 **部署與維運階段 (Release & Maintenance)** 確保安全設定(secure configuration) 監控漏洞通報(CVE、NVD) 定期更新 / 修補 (Patch Management) 記錄與監控安全事件 (SIEM, SOC) ## 📊 CVSS 評分標準 CVSS 分數範圍:0.0 ~ 10.0 0.0 = 無風險 0.1 ~ 3.9 = 低 (Low) 4.0 ~ 6.9 = 中 (Medium) 7.0 ~ 8.9 = 高 (High) 9.0 ~ 10.0 = 危急 (Critical) **1️⃣ 基本評分 (Base Metrics) → 核心要素** 描述弱點本身的特性(不變因素)。 分為兩大類: 🔹 可利用性指標 (Exploitability Metrics) **AV (Attack Vector 攻擊向量)** 本地 Local (L) → 需要在同一台機器上 鄰近 Adjacent (A) → 例如同一個網段 網路 Network (N) → 可遠端利用,最嚴重 **AC (Attack Complexity 攻擊複雜度)** 低 Low (L) → 不需特殊條件就能利用 高 High (H) → 需要特定情境 **PR (Privileges Required 所需權限)** 無 None (N) → 不需登入即可利用 低 Low (L) → 需一般使用者權限 高 High (H) → 需管理員權限 **UI (User Interaction 使用者互動)** 無 None (N) → 不需使用者操作 有 Required (R) → 需要使用者點擊、打開檔案 🔹 影響指標 (Impact Metrics) **C (Confidentiality 機密性)** 無 None (N) → 不影響 部分 Partial (L) → 部分資料外洩 高 High (H) → 機密完全洩露 **I (Integrity 完整性)** 無 None (N) → 不影響 部分 Partial (L) → 部分被竄改 高 High (H) → 可完全竄改資料 **A (Availability 可用性)** 無 None (N) 部分 Partial (L) → 影響部分服務 高 High (H) → 系統全面癱瘓 2️⃣ 時間評分 (Temporal Metrics) 描述弱點在某個時間點的實際狀況,例如: **Exploit Code Maturity** → 是否已有攻擊程式 **Remediation Level** → 是否已有修補方式 **Report Confidence **→ 報告可信度 3️⃣ 環境評分 (Environmental Metrics) 描述弱點在 特定組織/環境 下的影響: 某組織若非常依賴某系統,這漏洞可能更嚴重 反之,若該功能沒用到,實際風險較低 ## IDS & IPS | 特性 | IDS(Intrusion Detection System) | IPS(Intrusion Prevention System) | | --------- | --------------------------------- | -------------------------------- | | 功能 | 偵測入侵,產生告警 | 偵測並阻擋攻擊 | | 位置 | 側接(TAP / SPAN / Promiscuous Mode) | 串連(In-line) | | 對網路流量影響 | 無,僅監控 | 直接影響,可能延遲或丟封包 | | 適用場景 | 資安監控、事件分析 | 實時防護、阻擋攻擊 | | DDoS 防護能力 | 無 | 限制,需搭配專用防禦設備 | ## SQL 注入主要分類: Inband Injection(帶內注入) 攻擊者透過原本的通道直接取得資料庫資料。 典型方式: Error-based SQLi → 透過資料庫回傳的錯誤訊息來獲取資料。 Union-based SQLi → 利用 UNION 查詢整合資料。 特徵:資料直接透過原本的 HTTP 回應回來。 Blind SQL Injection(盲注) 資料庫不直接回傳資料,攻擊者透過判斷條件(True/False)慢慢推測資料。 特徵:資料庫不顯示原始資料,但仍能被推測。 OOB Injection(Out-of-Band 注入) 資料透過其他通道(HTTP 請求、DNS 查詢、Email)傳回給攻擊者。 特徵:不透過原本的 HTTP 回應,而是利用其他協定。 ## 資料隱碼攻擊簡介: 攻擊者透過各種方式將敏感資料偷偷傳送出去。 常見手法包括: SQL 注入拿取資料庫資料 程式缺陷導致的資訊洩漏 不當輸入處理被利用來導出敏感資訊 ## 常見 RAID 型態整理 | RAID 型態 | 最小硬碟數 | 原理 | 優點 | 缺點 | 適用場合 | | ----------------- | ----- | --------------------- | ------------------- | ------------------ | ------------ | | **RAID 0** | 2 | 資料分條(Striping) | 讀寫速度快、全部容量可用 | 無容錯,任一顆硬碟故障資料全失 | 高速運算或暫存用磁碟 | | **RAID 1** | 2 | 資料鏡像(Mirroring) | 容錯性高,可單顆硬碟故障 | 實體容量需兩倍硬碟(容量浪費50%) | 關鍵資料備份 | | **RAID 5** | 3 | 分條 + 單一硬碟奇偶校驗(Parity) | 平衡效能與容錯,可容忍 1 顆硬碟故障 | 寫入效能略低;重建時間長 | 檔案伺服器、中小型資料庫 | | **RAID 6** | 4 | 分條 + 雙硬碟奇偶校驗 | 可容忍 2 顆硬碟故障 | 寫入效能較 RAID5 差 | 高可靠性系統 | | **RAID 10 (1+0)** | 4 | RAID1 鏡像 + RAID0 分條 | 容錯與效能兼具 | 實體容量利用率 50% | 高效能 + 高可靠性需求 | | **RAID 50 (5+0)** | 6 | 多組 RAID5 再做分條 | 容錯 + 高效能 | 複雜、成本高 | 大型伺服器、資料庫 | | **RAID 01 (0+1)** | 4 | RAID0 分條 + RAID1 鏡像 | 容錯 + 提升速度 | 容錯效率不如 RAID10 | 速度與安全兼顧,但不常用 | ## 備份方式 | 方法 | 適用 | 優點 | 缺點 | | ----------------- | -------- | -------- | ------------ | | 備份磁帶(Backup Tape) | 資料長期存檔 | 便宜、可離線存放 | 恢復慢,不即時 | | 備份軟體同步 | 部分檔案/資料夾 | 可以選擇性備份 | 不一定保證交易完整性 | | 遠端日誌抄寫 | 高交易量系統 | 即時重建資料 | 需要穩定網路與遠端伺服器 | ## HTTPS 與資料安全性 HTTPS 基本概念 HTTPS = HTTP + SSL/TLS 透過 TLS(Transport Layer Security) 或舊版 SSL 進行加密,保護資料在網路傳輸過程中不被竊聽或竄改。 加密機制 非對稱加密(Asymmetric Encryption):例如 RSA 用於 金鑰交換,建立安全的通訊通道。 對稱加密(Symmetric Encryption):例如 AES 用於實際的資料傳輸,速度快,效率高。 HTTPS 通常是 非對稱加密 + 對稱加密的混合模式: 先用非對稱加密交換一個對稱密鑰(Session Key)。 接下來的資料傳輸都用對稱密鑰加密。 ## 滲透測試工具 1️⃣ 密碼破解工具(Password Cracking) John the Ripper:密碼破解工具,可用來測試密碼強度。 Hashcat:GPU 加速的密碼破解工具,支援多種雜湊算法。 Hydra:網路服務密碼暴力破解。 2️⃣ 網路掃描與分析工具(Network Scanning & Analysis) Nmap:網路掃描器,用於偵測設備、開放的端口與服務。 Wireshark:封包分析工具,用於抓取與分析網路流量。 Netcat:用於連線、端口掃描與簡單的網路通訊測試。 3️⃣ 無線網路工具(Wireless Network) Aircrack-ng:無線網路安全測試工具,能破解 Wi-Fi 密碼。 Kismet:無線網路嗅探與偵測工具。 4️⃣ Web 應用安全測試工具(Web Application) OWASP ZAP:自動化與手動的 Web 漏洞掃描工具。 Burp Suite:強大的 Web 攻擊測試工具,包含代理、掃描與漏洞利用。 5️⃣ 系統與漏洞掃描工具(System & Vulnerability) Metasploit Framework:漏洞利用框架,提供多種攻擊模組。 Nessus:商業漏洞掃描工具,可掃描系統與網路漏洞。 ## Windows 系統安全性日誌(Security Event Log) 事件編號(Event ID) 1️⃣ 登入 / 登出事件 | Event ID | 事件類型 | 說明 | | -------- | --------------- | ------------------------------- | | **4624** | 成功登入 | 使用者成功登入系統 | | **4625** | 登入失敗 | 使用者登入失敗(帳號不存在、密碼錯誤等) | | **4634** | 登出 | 使用者登出系統 | | **4647** | 使用者主動登出 | 使用者選擇登出或鎖定 | | **4672** | 特權登入 | 管理員或高權限帳號登入 | | **4768** | Kerberos 認證成功 | TGT(Ticket Granting Ticket)請求成功 | | **4769** | Kerberos 服務票證請求 | 服務票證請求成功 | 2️⃣ 帳號管理事件 | Event ID | 事件類型 | 說明 | | -------- | ------ | ------------- | | **4720** | 帳號建立 | 新使用者帳號被建立 | | **4722** | 帳號啟用 | 停用帳號被啟用 | | **4723** | 嘗試更改密碼 | 使用者嘗試更改密碼(失敗) | | **4724** | 嘗試重置密碼 | 管理員重置使用者密碼 | | **4725** | 帳號停用 | 使用者帳號被停用 | | **4726** | 帳號刪除 | 使用者帳號被刪除 | 3️⃣ 權限與策略事件 | Event ID | 事件類型 | 說明 | | -------- | ---------- | ----------- | | **4670** | 權限變更 | 物件的權限被變更 | | **4719** | 系統審核策略變更 | 審核政策被修改 | | **4732** | 群組成員新增 | 使用者被加入到安全群組 | | **4733** | 群組成員移除 | 使用者被移出安全群組 | | **4648** | 使用明文憑證嘗試登入 | 嘗試用明文憑證驗證 | 4️⃣ 特殊安全事件 | Event ID | 事件類型 | 說明 | | -------- | ------ | --------------- | | **4688** | 新進程建立 | 系統上啟動了一個新的程式或服務 | | **4689** | 進程結束 | 系統上程式或服務被關閉 | | **1102** | 安全日誌清除 | 安全性日誌被清除(可能惡意) | ## 弱點評估工具 1️⃣ 系統與網路弱點評估工具 | 工具 | 用途 | 說明 | | ----------------------- | --------- | --------------------------- | | **Nessus Professional** | 系統、網路弱點掃描 | 商業級弱點掃描器,可掃描 OS、應用程式、網路服務漏洞 | | **OpenVAS / Greenbone** | 系統、網路弱點掃描 | 開源版本的弱點掃描器 | | **QualysGuard** | 系統、網路弱點掃描 | 雲端弱點掃描服務 | 2️⃣ 網站與 Web 應用弱點評估工具 | 工具 | 用途 | 說明 | | ------------------ | ---------- | ------------------------------- | | **Acunetix** | Web 應用弱點掃描 | 自動掃描 SQL Injection、XSS、CSRF 等漏洞 | | **Burp Suite Pro** | Web 應用弱點掃描 | 支援手動與自動漏洞測試、Web 攻擊模組 | | **OWASP ZAP** | Web 應用弱點掃描 | 開源工具,針對 Web 漏洞掃描與測試 | 3️⃣ 軟體原始碼弱點分析工具(SAST) | 工具 | 用途 | 說明 | | --------------- | ------------- | ------------------------------------ | | **Fortify SCA** | 靜態原始碼分析(SAST) | 透過掃描原始碼發現程式漏洞,屬於 **靜態分析**,不是一般弱點評估工具 | | **SonarQube** | 靜態程式碼分析 | 偵測程式碼品質與安全漏洞 | | **Checkmarx** | 靜態程式碼分析 | 原始碼安全掃描工具 | 4️⃣ 網路掃描與輔助工具(非弱點評估但常搭配) | 工具 | 用途 | | ------------- | -------------- | | **Nmap** | 網路掃描、端口掃描、服務探測 | | **Netcat** | 端口測試、連線驗證 | | **Wireshark** | 封包分析與流量監控 | ## Syslog 協定(RFC 5424) 1️⃣ Syslog 的三個主要概念 **Facility(設備/系統來源)** 表示訊息來源類型,例如內核、用戶、郵件系統等。 常見編號(Facility code): \| Facility | 編號 | \|----------|------| \| kernel messages | 0 | \| user-level messages | 1 | \| mail system | 2 | \| system daemons | 3 | \| security/authorization | 4-7 | **Severity(事件重要性)** 事件嚴重程度等級(0~7): \| Severity | 描述 | \|----------|------| \| 0 | Emergency(系統不可用) | \| 1 | Alert(需立即修復) | \| 2 | Critical(嚴重錯誤) | \| 3 | Error(錯誤) | \| 4 | Warning(警告) | \| 5 | Notice(注意) | \| 6 | Informational(資訊性) | \| 7 | Debug(除錯訊息) | **Priority(優先值,PRI)** Priority=Facility×8+Severity ## MITRE ATT&CK 介紹 MITRE ATT&CK(Adversarial Tactics, Techniques, and Common Knowledge)是由 MITRE 建立的 攻擊者行為知識庫,目的是描述真實世界中資安攻擊者的行為模式,幫助防禦方了解、偵測與應對威脅。 Tactic(戰術):攻擊者想達成的目標或階段,例如取得權限、橫向移動。 Technique(技術):攻擊者實現戰術的方法或手段,例如特定的漏洞利用、工具使用。 Sub-technique(子技術):更細分的攻擊方式。 MITRE ATT&CK 是 行為導向(Behavioral-based),與傳統漏洞列表不同,強調 攻擊過程與手段。 常見戰術 | Tactic (戰術) | 中文名稱 | 說明 | 常見攻擊 / 技術範例 | | ------------------------ | ---- | ------------ | --------------------------------------------------- | | **Initial Access** | 初始存取 | 攻擊者進入系統或網路 | 網頁釣魚 (Phishing)、遠端桌面暴露 (RDP)、Drive-by Download | | **Execution** | 執行 | 執行惡意程式或腳本 | PowerShell 腳本執行、惡意 Office 巨集、惡意程式 (Malware) | | **Persistence** | 持久存取 | 保持長期存取權限 | 新增後門帳號、Scheduled Task、Service 自動啟動 | | **Privilege Escalation** | 提權 | 提高權限 | 利用漏洞提權 (Exploit)、Token Manipulation、Sudo 提權 | | **Defense Evasion** | 防禦規避 | 規避防禦與偵測 | 關閉防毒、防火牆、混淆程式碼 (Obfuscation)、刪除日誌 | | **Credential Access** | 憑證存取 | 取得帳號密碼或憑證 | 密碼傾印 (Credential Dumping)、暴力破解、變造憑證、Keylogger | | **Discovery** | 偵測探索 | 探索系統或網路環境 | 網路掃描 (Nmap)、列出使用者帳號、服務偵測、存取權限偵測 | | **Lateral Movement** | 橫向移動 | 橫向移動,進入其他系統 | 遠端桌面 (RDP)、Windows Admin Shares (SMB)、Pass-the-Hash | | **Collection** | 資料蒐集 | 收集資訊或機密資料 | 讀取文件、螢幕截圖、鍵盤記錄、郵件收集 | | **Exfiltration** | 資料外洩 | 將資料偷出系統 | SFTP、HTTP/HTTPS 傳輸、隱寫術 (Steganography)、外部雲端 | | **Impact** | 影響 | 對系統造成破壞或中斷服務 | 勒索軟體 (Ransomware)、資料破壞、服務阻斷 (DoS/DDoS) | ## NIST CSF 五大功能(Functions) | Function | 說明 | 主要關鍵要素 | | ---------------- | --------------- | ------------------------------------------------------------------------------------------------- | | **Identify(識別)** | 瞭解組織的資產、風險和資安環境 | - 資產管理<br>- 風險評估<br>- 業務環境識別<br>- 供應鏈風險管理 | | **Protect(保護)** | 實施安全措施以防止事件發生 | - 存取控制(Identity & Access Management) ✅<br>- 資料安全與加密 ✅<br>- 教育訓練與意識提升<br>- 資訊保護程序與政策<br>- 維護技術安全措施 | | **Detect(偵測)** | 及早發現異常活動或安全事件 | - 持續監控<br>- 安全事件檢測系統<br>- 偵測流程與分析 | | **Respond(回應)** | 遭受攻擊時快速回應與處理 | - 事件回應計畫<br>- 溝通與通報<br>- 分析與緩解行動 | | **Recover(復原)** | 事件後恢復正常營運 | - 災難復原與業務持續計畫 ✅<br>- 復原過程改進<br>- 外部溝通與支援 |