關於安全性受損的 eMudhra 中繼 CA
Apple 裝置會自動在 Safari、「郵件」及使用 Apple 架構的 app 封鎖安全性已受損的證書。如要防止 Mac 的命令列工具接受這些證書,請更新至最新版本的 macOS。
Apple 裝置會自動封鎖安全性已受損、負責簽發 TLS 證書的 eMudhra 中繼證書機構 (CA) 的證書。此封鎖適用於 Safari、「郵件」,以及使用 Apple 網絡和保安架構的 app。
macOS 隨附的部分命令列工具或 Xcode 命令列工具 (例如 curl 和 git) 需要進行額外步驟,才能停止接受這些證書:
更新至最新版本的 macOS:最新版本的 macOS 具備最強的保安防護。由 macOS 27.2.1 起,這些命令列工具不會再接受這些證書。至於使用 macOS 26 或 macOS 15 的 Mac 電腦,macOS 26.7.3 和 macOS 15.8.3 亦包括這項保護。
如果無法更新 Mac:如果你使用這些指令列工具,但無法將 Mac 更新至 macOS 27.2.1、26.7.3 或 15.8.3,你可從 /etc/ssl/cert.pem 移除根 CA 證書。
發生了什麼事
由 eMudhra 營運的八個中繼 CA 的專用密鑰安全性受損,其中兩個 CA 簽發程式碼簽署證書 (Apple 框架不信任這類證書)。其餘六個 CA 則簽發 TLS 證書,擁有這六個 CA 密鑰的人可以建立對任何網站看似有效的證書。eMudhra 和 Sectigo 已撤銷受影響的證書。
6 個 TLS 中繼 CA 各有 2 張證書,亦即共 12 張:
一張證書由 emSign Root TLS CA - G3 簽發,並串連至 emSign ECC Root CA - G3
另一張證書由 Sectigo 交叉簽發,並串連至 AAA Certificate Services
Apple 已採取的措施
Apple 會在 Safari、「郵件」以及使用 Apple 網絡和保安架構的 app 封鎖這 12 個證書和 emSign ECC Root CA - G3。證書配置資料會按需要自動推送至裝置,因此你無需安裝軟件更新就能獲得此封鎖。
從 macOS 27.2.1 開始,macOS 亦會在 macOS 隨附的命令列工具或 Xcode 命令列工具中封鎖這 12 張證書。此外,系統亦會從 /etc/ssl/cert.pem 移除上述 12 張證書所串連的兩張根 CA 證書,以及另外三張 eMudhra 根 CA 憑證。macOS 26.7.3 和 macOS 15.8.3 亦包括這項防護。
查看從 /etc/ssl/cert.pem 移除的根 CA 證書
部分 app 和工具本身包含根 CA 證書列表,不會使用 Apple 的封鎖措施或 /etc/ssl/cert.pem。如使用這類 app 或工具,請聯絡開發者。
如果無法更新 Mac
在 Mac 上,部分隨 macOS 或 Xcode Command Line Tools 提供的命令列工具 (包括 curl、git、python3、ruby、perl 和 openssl) 會根據 /etc/ssl/cert.pem 檢查證書。如果證書串連到此檔案中的根 CA 證書,這些工具不會檢查 Apple 的封鎖措施或證書是否已被撤銷。
如果你使用這些工具,但無法將 Mac 更新至 macOS 27.2.1、macOS 26.7.3 或 macOS 15.8.3,你可從檔案移除根 CA 證書。
這些步驟會影響每個使用 /etc/ssl/cert.pem 的工具。之後,若部分網站的證書透過未受影響的中繼 CA 串連至這些根 CA 證書,只使用此檔案的工具便可能無法驗證這些網站。
你需要管理員帳户,或可以透過裝置管理解決方案部署命令。請直接複製每個命令,不要修改。了解如果將命令貼到「終端機」時收到有關潛在惡意軟件的警告時該怎樣做。
如要從 /etc/ssl/cert.pem 移除根 CA 證書:
備份檔案。如果已有備份,此命令會將其保留:
[ -e /etc/ssl/cert.pem.orig ] || sudo cp -p /etc/ssl/cert.pem /etc/ssl/cert.pem.orig
移除 emSign ECC Root CA - G3。此命令會複製不含 emSign ECC Root CA - G3 的檔案,然後檢查副本是否空白,並取代原檔案。成功時不會顯示任何內容:
t=$(mktemp) && awk -v s='=== /C=IN/OU=emSign PKI/O=eMudhra Technologies Limited/CN=emSign ECC Root CA - G3' '/^(===|###) /{skip=0} $0==s{skip=1} !skip' /etc/ssl/cert.pem > "$t" && [ -s "$t" ] && sudo install -m 0644 -o root -g wheel "$t" /etc/ssl/cert.pem; rm -f "$t"
可選︰移除 emSign ECC Root CA - G3 並無法阻止這些工具接受 Sectigo 交叉簽署的 6 張證書,理由是這些工具仍可透過 AAA Certificate Services 驗證證書。如要阻止這些工具透過檔案接受這 6 張證書,你亦可以移除 AAA Certificate Services。此命令的運作方式與步驟 2 的命令相同:
t=$(mktemp) && awk -v s='=== /C=GB/ST=Greater Manchester/L=Salford/O=Comodo CA Limited/CN=AAA Certificate Services' '/^(===|###) /{skip=0} $0==s{skip=1} !skip' /etc/ssl/cert.pem > "$t" && [ -s "$t" ] && sudo install -m 0644 -o root -g wheel "$t" /etc/ssl/cert.pem; rm -f "$t"
檢查結果。如果其中一張根 CA 證書仍在檔案中,此命令就會將其列出。如果兩者都已移除,就不會顯示任何內容。如果命令顯示錯誤,請從步驟 1 還原備份。
openssl crl2pkcs7 -nocrl -certfile /etc/ssl/cert.pem | openssl pkcs7 -print_certs -noout | grep -E 'emSign ECC Root CA - G3|AAA Certificate Services'
每次軟件更新後,請執行步驟 4 的指令。如果系統列出你已移除的根 CA 證書,請重複上述步驟。
更新至 macOS 27.2.1、macOS 26.7.3 或 macOS 15.8.3 後,你便無需重複這些步驟。使用 sudo rm /etc/ssl/cert.pem.orig 刪除備份,且不要還原更新前製作的備份。
「已封鎖」證書
證書 | 簽發人 | SHA-256 指紋 |
|---|---|---|
EM EV TLS CA - G3B | emSign Root TLS CA - G3 | E7568FE6E12331F4FD7DE61DA4C7559D0F8EB192A218D4741A3BA75184333838 |
EM OV TLS CA - G3B | emSign Root TLS CA - G3 | 98B896625C0C230ADEEC3EB2CF6AAD5001ECF9156A68644E82374CE5833BC25B |
EM DV TLS CA - G3B | emSign Root TLS CA - G3 | 42C4ACCD12C4F59597925E1A08A7A90102608543809308D50EC427E118BA1493 |
EM EV TLS CA - G3C | emSign Root TLS CA - G3 | 432EC25F0D28DE9006D97BF752F17BBB2CD41F669933FCB072D9A1148D0261F3 |
EM OV TLS CA - G3C | emSign Root TLS CA - G3 | CB6E15165AC802E9B3F993F16C25D41F4E81C21EBDE71AE1B012AC00BF9C7C3F |
EM DV TLS CA - G3C | emSign Root TLS CA - G3 | 0164D7CEAE5BB909C272AF151FF44B1177AE9B47D9424B94F1D9558C30934D19 |
EM EV TLS CA - G3B | AAA Certificate Services | 579480AEA166290BD3C643589E795FC0D0E54E86505D180F1DFF99EFD3199512 |
EM OV TLS CA - G3B | AAA Certificate Services | 5F1DED4DD590AF74631290CF073B122A2AAC6A1FA479778A0BD43579BD832699 |
EM DV TLS CA - G3B | AAA Certificate Services | 45A883F349AEDFD5F3A649B5498FFB121712BA8B448F3F2A91DBC5A766FCDDBE |
EM EV TLS CA - G3C | AAA Certificate Services | FD9D5C2DBBD4995AB69B8D50C439D9527B00529199C2FD01B2174EB58F07021F |
EM OV TLS CA - G3C | AAA Certificate Services | 7485B51C0ED192878FA1D2F948FB529AE1842CC5086C4B67F7BE5B2039DE9489 |
EM DV TLS CA - G3C | AAA Certificate Services | 62B7F9868263F72F6911FC78CEAF72C1979158B7368BF648683BB2AA39B02E72 |
從 /etc/ssl/cert.pem 移除的根 CA 證書
macOS 27.2.1、macOS 26.7.3 和 macOS 15.8.3 會從 /etc/ssl/cert.pem 移除這些根 CA 證書。只使用此檔案的工具可能無法驗證其證書串連至這些根 CA 證書的部分網站。
根 CA 證書 | SHA-256 指紋 |
|---|---|
emSign ECC Root CA - G3 | 86A1ECBA089C4A8D3BBE2734C612BA341D813E043CF9E8A862CD5C57A36BBE6B |
AAA Certificate Services | D7A7A0FB5D7E2731D771E9484EBCDEF71D5F0C3E0A2948782BC83EE0EA699EF4 |
emSign Root CA - G1 | 40F6AF0346A99AA1CD1D555A4E9CCE62C7F9634603EE406615833DC8C8D00367 |
emSign Root CA - C1 | 125609AA301DA0A249B97A8239CB6A34216F44DCAC9F3954B14292F2E8C8608F |
emSign ECC Root CA - C3 | BC4D809B15189D78DB3E1D8CF4F9726A795DA1643CA5F1358E1DDB0EDC0D7EB3 |
對於非 Apple 製造產品,或者並非由 Apple 控制或測試的獨立網站,其相關資訊的提供不應詮釋為受到 Apple 所推薦或認可。Apple 對於第三方網站或產品的選擇、表現或使用,概不承擔任何責任。Apple 對於第三方網站的準確性或可靠性不作任何聲明。如需進一步資料,請聯絡相關供應商。