Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
spectre-attack — 公開された'Spectre'エクスプロイト(CVE-2017-5753およびCVE-2017-5715)の使用例 | Kitploit
ツール/GitHubGitHub/eugnis/spectre-attack
メモリフォレンジック脆弱性分析エクスプロイトハードウェアセキュリティ学習と教育バイナリエクスプロイト
GitHubeugnis/spectre-attack

spectre-attack

公開された'Spectre'エクスプロイト(CVE-2017-5753およびCVE-2017-5715)の使用例

リポジトリを見る
7711678年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Spectre攻撃の例

2018年1月2日に公開された「Spectre」エクスプロイトを使用した例 (CVE-2017-5753 および CVE-2017-5715)

Spectreは異なるアプリケーション間の隔離を破ります。攻撃者は、ベストプラクティスに従ったエラーのないプログラムをだまして、その秘密を漏洩させることができます。実際、そのベストプラクティスの安全性チェックは攻撃対象領域を増やし、アプリケーションをSpectreに対してより脆弱にする可能性があります。

  • Spectre paper - Spectre論文とコードのソース

言語

C言語、使用ライブラリ:

  • stdio.h
  • stdint.h
  • intrin.h - rdtscpおよびclflush用

この例の動作

メモリにテキスト「The Magic Words are Squeamish Ossifrage.」を配置し、エクスプロイトを使ってそれを読み取ろうとしています。システムが脆弱な場合、出力に同じテキストがメモリから読み取られて表示されます。


このコードでは、victim_function()内のコンパイルされた命令が厳密なプログラム順序で実行された場合、array1のサイズが16であるため、関数はarray1[0..15]からのみ読み取ります。しかし、投機的に実行された場合、範囲外の読み取りが可能です。readMemoryByte()関数は、分岐予測器にxの有効な値を期待させるためにvictim_function()を複数回トレーニング呼び出しし、その後範囲外のxで呼び出します。条件分岐が誤予測され、その後の投機的実行により範囲外のxを使用して秘密のバイトを読み取ります。投機コードは次にarray2[array1[x] * 512]から読み取り、array1[x]の値をキャッシュ状態に漏洩させます。攻撃を完了するために、単純なflush+probeを使用してarray2のどのキャッシュラインがロードされたかを特定し、メモリ内容を明らかにします。攻撃は複数回繰り返されるため、ターゲットバイトが最初はキャッシュされていなくても、最初の反復でキャッシュに取り込まれます。

最適化されていないコードは、i7 Surface Pro 3上で約10KB/秒の読み取り速度です。

ビルド

GCCを使用する場合

gcc -std=c99 Source.c -o spectre.out または make

Visual Studioを使用する場合

新しい空のプロジェクトを作成し、Source.cを追加して、ビルドをクリックします。

実行

テスト

.\spectre.out パラメータなし

アドレスから読み取り

.\spectre.out {address} {length} パラメータ:

  • address - 被害者のchar*のポインタアドレス
  • length - char*の長さ

ソース

  • Spectre exploits info
  • CVE-2017-5753 - バリアント1: 境界チェックバイパス
  • CVE-2017-5715 - バリアント2: ブランチターゲットインジェクション
  • Intel affected CPUs list
ツールをダウンロード