Spectre脆弱性のネイティブコードPoCはmacOS 10.13.2追加アップデート後でも実行可能。

Intel CPUのSpectre脆弱性のロゴ macOS High Sierra

Spectre脆弱性のネイティブコードのPoCはmacOS 10.13.2追加アップデート後でも実行できるそうです。詳細は以下から。

Intel CPUのSpectre脆弱性のロゴ

 Appleは現地時間2018年01月08日、GoogleのProject Zeroチームなどが公開したIntelやARMなど投機的実行機能を持つCPUに対するサイドチャネル攻撃によりユーザーパスワードなどが窃取される可能性がある「Spectre(CVE-2017-5753, CVE-2017-5715)」脆弱性を修正した「macOS 10.13.2追加アップデート」と「Safari v11.0.2」をHigh SierraやEl Capitan/Sierra向けに公開しましたが、今回のアップデートはJavaScriptを利用した脆弱性の修正で、ネイティブコードによる攻撃はまだ可能のようです。

4.2 Example Implementation in C
Appendix A includes demonstration code in C for x86 processors.
In this code, if the compiled instructions in victim function() were executed in strict program order, the function would only read from array1[0..15] since array1 size = 16. However, when executed speculatively, out-of-bounds reads are possible.

Spectre Attacks: Exploiting Speculative Execution (PDF) より

 アメリカのセキュリティ研究者Paul KocherさんやGoogle Project ZeroのJann Homさんらが公開したMeltdown/Spectre脆弱性の論文にはこの脆弱性を利用したネイティブコードやJavaScriptによる攻撃手法が記載されており、Appendixにはx86 CPUで利用可能なCコードが掲載され、これを元にDavid Hoytさんなどが各環境で実行可能なPoCを公開していますが、


WebKit Blogによると追加アップデートではJavaScriptによるSpectreまたはSpectreを介したMeltdownによるカーネルメモリアクセスは緩和されたそうですが、今回(01月08日)の緩和策は第一弾で今後も脆弱性の対応を続けるとしており、ネイティブコードのPoCもまだ再現可能[1, 2]となっているので、ユーザーの方は不審なアプリやコードを実行しないことをお勧めします。

acOS 10.13.2追加アップデート後も実行可能なPoC

Spectre and Meltdown are a new class of security issues that apply to modern processors and the software that runs on them. WebKit is affected by both issues because WebKit allows untrusted code to run on users’ processors. In response to these new issues, we have implemented mitigations to defend against Spectre (and Meltdown attacks launched using Spectre via the browser). The first of these mitigations have shipped in the Jan 8 updates (iOS 11.2.2, High Sierra 10.13.2 supplemental update, and Safari 11.0.2 reissue). Stay tuned for more WebKit Spectre fixes!

What Spectre and Meltdown Mean For WebKit – WebKit


  1. 匿名 より:

    10.3.2 Supplemental Update only has mitigations for Spectre for Safari/WebKit. My guess is that there is no patch (and likely won’t have one in the future) on the system level yet as it requires processor microcode update. https://support.apple.com/en-us/HT208397