跳至主要內容

所有文章

強化 macOS 安全性

作者:Elliott Jones

一台筆電螢幕上顯示鼠尾草綠的盾牌與勾號,四周有細緻的連線紋路,背景為深青綠色紋理。

更安全的 Mac,要從更新、加密,以及幾項有意識的設定開始。本指南說明個人 Mac 的基本做法、你能持續維護的選用監控工具,以及出問題時可靠的復原方式。目標是讓日常瀏覽、開發與視訊通話都能維持簡單順暢。

先從最可能遇到的問題著手

筆電失竊、看似可信的釣魚網站、惡意下載檔,以及拖了好幾週才更新,都是很好的出發點。要因應這些風險,請保護儲存的資料、守好帳號、留意執行中的程式,並讓作業系統保持最新。

對要求你貼上指令來「證明你不是機器人」或修復瀏覽器問題的網站保持懷疑。一旦執行指令,它可能在試圖於重開機後存活之前,就已經能存取你的檔案。等到收到持續性機制的警示時,損害可能早已發生。

區分漏洞與選擇性的安全強化措施,在這裡很重要。未使用的共享服務是值得檢視的曝險,但它的存在不代表有軟體漏洞或已遭入侵。不熟悉的程序名稱是調查的理由,不是直接刪除它的理由。

把內建保護措施設定正確

完成更新

開啟 系統設定 → 一般 → 軟體更新,安裝可用的安全性更新,並在需要時重新啟動。之後再檢查一次;等待重新啟動的下載項目,未必已經保護正在執行的系統。

檢查自動更新設定,並保持啟用安全性設定與系統資料檔案更新。Apple 也會透過背景更新提供保護,這與完整的作業系統升級分開進行。可用的控制選項會依 macOS 版本而異。Apple 的背景更新指南

啟用 FileVault,並了解復原方式

檢查 隱私權與安全性 → FileVault。在 Apple 晶片與 T2 Mac 上,內部儲存空間本來就使用硬體加密,但啟用 FileVault 後,保護會與已授權使用者的憑證綁定。這是兩種不同的狀態。Apple 對 FileVault 的說明

請仔細完成復原設定。你應該能在不完全依賴已加密 Mac 的情況下,取得復原方式。復原密鑰必須保密;要證明加密已開啟,並不需要把密鑰匯出到報告中。

FileVault 保護的是靜態資料。在已解鎖的工作階段中執行的惡意軟體,仍可能讀取該使用者可存取的檔案。加密也無法還原已刪除或覆寫的文件,因此備份仍是獨立的一環。

立即鎖定,並保護帳號

鎖定畫面 中,將螢幕保護程式開始後或螢幕關閉後的「需要輸入密碼」設為 立即。選擇符合工作習慣的螢幕關閉時間。離開座位時使用 Control–Command–Q,並測試返回時是否確實需要驗證。

使用強而唯一的登入密碼。為 Apple 帳號與主要電子郵件帳號啟用多重要素驗證,並檢查它們的復原方式。能用來重設其他密碼的帳號,尤其需要謹慎保護。

另建一個標準帳號供日常使用,可以減少意外進行系統管理變更的機會。若要這樣做,請先建立並測試另一個管理者帳號。不過,這無法阻止以你的身分執行的軟體存取你自己可讀取的檔案。

保留平台的安全邊界

請保持啟用系統完整性保護(SIP)、已驗證系統根目錄保護,以及一般的 App 評估機制。Gatekeeper、公證(notarization)與 XProtect 都是 macOS 惡意軟體防護的一部分。通過這些檢查是有用的佐證,但不保證軟體一定安全。Apple 的惡意軟體防護概覽

除非你已檢視過明確的變更需求,否則在 Apple 晶片 Mac 上請使用一般的「完整安全性」啟動安全性政策。請透過適用於你硬體的「復原」介面檢查或變更啟動安全性政策;不要把 Intel 韌體密碼的操作指示套用到 Apple 晶片 Mac。

對一般消費者安全軟體而言,若它要求停用 SIP 或降低啟動安全性,應促使你更仔細評估這個軟體選擇。請從 App Store 或軟體發行者的官方網站下載 App。若有人建議透過移除隔離屬性來壓下安全警告,也應和原始下載來源一樣謹慎看待。

減少不需要的存取權限

檢查高權限項目

隱私權與安全性 中,檢查「完整磁碟取用權」、「輔助使用」、「輸入監控」、「螢幕錄製」、「自動化」、相機與麥克風的權限。確認每一項核准都對應到你確實使用的功能。

視訊通話 App 需要麥克風來通話。自動化工具可能需要「輔助使用」權限來操作介面。掃描工具可能需要「完整磁碟取用權」來檢查受保護的位置。請判斷自己是否信任該 App,並願意授予它完成工作所需的權限。

不要只為了讓單一指令成功,就給一般用途的 shell「完整磁碟取用權」。該權限可能擴大日後指令能讀取的範圍。請使用受支援的設定與提示,並在撤銷權限後測試受影響的功能。

也請檢查 一般 → 登入項目與延伸功能、預期的使用者帳號,以及任何裝置管理描述檔。個人新安裝系統中出現無法解釋的描述檔,需要調查;工作用 Mac 上的描述檔,則可能是組織刻意部署的設定。

啟用防火牆並檢查共享功能

網路 → 防火牆 中開啟防火牆。它控制的是傳入連線;傳出 App 的控制是另一項功能。為了讓日常服務正常運作,先不要開啟 阻擋所有傳入連線,並在收緊個別規則前,檢查系統對已簽署軟體的自動允許設定。Apple 的防火牆設定指南

接著開啟 一般 → 共享。關閉不使用的「遠端登入」、「螢幕共享」、「遠端管理」、「檔案共享」及其他服務。對確實需要的服務,限制允許使用者及共享資料夾。

依需求保留附近裝置功能。AirDrop 設為「僅限聯絡人」,或不用時關閉,是合理的起點。若不了解某項變更處理的是哪種風險,為了它而弄壞自己會用的功能,並沒有太大價值。

變更網路設定後,測試平常的通話、印表機、VPN 與本機開發工具。若有功能失效,請先調查相關規則,再決定是否要關閉整個防火牆。只看本機正在監聽的連接埠清單,無法告訴你其他裝置實際能連到什麼。

為明確目的加入監控

Objective-See 的三個工具回答的是不同問題。它們是基準設定以外的選用項目,每個工具都會帶來權限、判斷與維護需求。安裝前,請依你的 macOS 版本查看官方安裝說明與版本資訊。

工具 檢查內容 重要限制
BlockBlock 可能在日後再次執行的新元件 監控常見的持續性機制,無法撤銷已執行的程式碼。
LuLu 嘗試建立傳出連線的 App 已允許的 App 可以不再詢問就進行通訊。
KnockKnock 安裝在常見持續性位置的項目 清單盤點的範圍比全磁碟惡意軟體判定更窄。

BlockBlock 的監控需要權限與「完整磁碟取用權」。收到警示時,請考慮當時正在做什麼、相關程序、安裝項目的路徑,以及發行者。在預期的 App 更新期間新增的輔助程式,與暫存目錄裡意外出現的指令碼,情境完全不同。名稱與簽章都不能單獨定論。

LuLu 使用系統延伸功能與網路過濾器。允許 Apple 軟體與已安裝的 App,可以減少初期提示,但也會建立範圍很廣的允許規則。請仔細檢查這些規則。調查不熟悉的連線時,暫時規則可能很有用;阻擋它並不會停止該程序本身,也無法逆轉先前的流量。

在安裝並檢視預定使用的軟體後執行 KnockKnock,然後私下儲存附日期的清單。後續結果請依路徑、發行者、簽章與可用雜湊值比較。只看分類總數可能掩蓋重要變化,而同一個 App 可能出現在多個分類中。

使用選用的 VirusTotal 整合前,先了解它的運作方式。信譽查詢會與外部服務分享資訊;上傳檔案則會分享更多。如果不希望進行這些查詢,請關閉整合功能。信譽結果只是其中一項證據,不是最終判定。

額外的監控工具請一次安裝一個,並在重新啟動後測試。檢查一般工作、睡眠與喚醒,以及 VPN 使用狀況。在索引建立與安裝活動穩定後,檢查持續性的資源使用量。警示多到無法檢視的工具,可能需要縮小設定範圍,或依其說明文件中的解除安裝方式移除。

不用寫安全指令碼,也能驗證設定

下列內建指令會檢查幾項核心設定。它們不會變更設定、安裝軟體或掃描惡意軟體。請只在了解其檢查內容後執行,並將任何儲存的輸出保密。

# 作業系統版本與組建版本
/usr/bin/sw_vers

# 加密與作業系統保護
/usr/bin/fdesetup status
/usr/bin/csrutil status
/usr/bin/csrutil authenticated-root status
/usr/sbin/spctl --status

# 傳入連線防火牆狀態
/usr/libexec/ApplicationFirewall/socketfilterfw --getglobalstate

對這個基準設定而言,預期結果是 FileVault 已開啟、SIP 與已驗證系統根目錄保護已啟用、App 評估已啟用,而且防火牆已開啟。訊息文字與指令可用性可能不同。不支援的指令代表檢查缺口,不代表保護已被停用。

請閱讀輸出內容。指令即使回傳成功,仍可能顯示某項設定是關閉的。這些檢查也無法確認完整的啟動安全性政策、隱私權限、更新可用性,或監控工具是否真的能偵測事件。

請用「系統設定」進行這些檢視。安裝監控工具後,確認其元件在重新啟動後仍維持啟用,且實際掃描能完成。服務正在執行,並不能證明受控的警示測試會成功。

排程檢查只有確實完成才有用

自動化監控包含四個獨立階段:

  1. 已設定排程。
  2. 工作已啟動。
  3. 檢查以所需權限成功完成。
  4. 有人檢視結果。

請分別記錄這四件事。權限遭拒、中斷的掃描或空白的輸出檔,都不應更新「上次成功檢查」的日期。沒有消息,可能代表沒有變化,也可能代表資料收集已停止。

優先使用掃描工具所支援的排程機制。如果使用 KnockKnock 的登入掃描功能,請觀察一次真實執行。長達數週不登出的 Mac,仍需要另行定期檢視。GUI App 獲得的權限,不代表啟動它的 shell 或排程器也有相同權限。請測試你打算使用的確切設定。

如果使用自動化助理檢視報告,請把檔名、日誌與程序引數都視為證據。它們可能包含由攻擊者控制的文字,絕不能當成執行指令的說明。盡量減少送往外部服務的資料,並將檢視與授予權限、刪除檔案或接受新的可信任基準分開處理。

讓維護工作小到能長久持續

把下列時程當作起點,再依自己的需要調整。

時機 檢視項目 完成證據
有更新可用時 安裝更新,並視需要重新啟動 正在執行的系統已套用更新。
每週 更新與最新的持續性項目清單 掃描已完成,且已檢視差異。
每月 權限、登入項目、網路規則與排程工作 已處理不需要的存取權限、失敗或逾期的檢查。
重大更新後 監控工具相容性與一般工作流程 元件可正常運作,且實際檢查能完成。
發現可疑活動後 警示與相關報告 發現已有可說明的結果,或仍明確標示為未解決。

專門的檔案完整性監控需要更多維護。它需要定義檔案集合、比較內容與中繼資料、保護參考基準,以及檢視合法更新的流程。光是安裝工具並不會提供這些東西。若有理由加入這一層,請從穩定且與安全相關的檔案開始。監看每個快取與文件變更,可能只會產生比有用證據更多的雜訊。

更新後不要自動接受每一項差異。請確認變更屬於預期的更新、記錄接受變更的理由,並保留先前的參考基準。

為自己保留復原的方法

維護具版本的備份,納入適當隔離或離線的副本,並測試還原。雲端同步傳播不想要的變更,和傳播想要的變更一樣容易。更多偵測工具不能取代復原計畫。

發現可疑狀況時,儲存警示、時間戳記、路徑、發行者與相關報告,並記錄緊接著發生的事。不要只是為了看它會做什麼就開啟可疑檔案。

如果懷疑已遭入侵,請停止處理敏感工作並中斷網路連線,以減少後續通訊。使用另一台可信任裝置撤銷工作階段,並更換可能已暴露的憑證。若涉及組織資料、針對性攻擊,或日後可能重要的證據,請在重新啟動或清除 Mac 前尋求專業協助。確認遭入侵時,可能需要透過可信任的復原方式重建系統。刪除單一持續性項目,不能證明攻擊者已離開。

當更新已安裝、加密與啟動保護完好,而且你了解復原方式時,就可以停止初始設定。仍應檢視權限與共享功能,並驗證任何額外監控工具。請私下記錄變更及其理由。持續性工作應該短到能確實執行,且結果應清楚呈現已檢查的項目,以及仍未知的部分。

所有文章回到頂部