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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-51585 — rt26cx21x64.sys エクスプロイト (Realtek PCIe GbE/2.5GbE/5GbE ファミリ) | Kitploit
ツール/GitHubGitHub/catforgor/cve-2026-51585
脆弱性分析エクスプロイトリバースエンジニアリングハードウェアとIoTセキュリティバイナリエクスプロイト
GitHubcatforgor/cve-2026-51585

CVE-2026-51585

rt26cx21x64.sys エクスプロイト (Realtek PCIe GbE/2.5GbE/5GbE ファミリ)

リポジトリを見る
34ヶ月前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

realtek poc

rt26cx21x64.sys エクスプロイト(Realtek PCIe GbE/2.5GbE/5GbE ファミリー)

概要

OID 0xFF816871 は、NIC の MMIO BAR を呼び出しプロセスの仮想アドレス空間にマッピングします(MmLockedPagesSpecifyCache)。\.\RealTekCard{GUID} 経由でユーザーモードから到達可能です。

この IOCTL(0x0012C818)は、レジストリ値(DrvMode=4)によってゲートされています。

MMIO レジスタアクセスを取得したら、ループバックモードで NIC の TX/RX ディスクリプタリングをプログラムし、任意の物理アドレスを読み書きします(AllocateUserPhysicalPages で PFN を取得します)。

リバースエンジニアリング

IOCTL ディスパッチ

IOCTL 0x12C008(1230872)は、最初の脆弱なディスパッチ分岐です。0x12C00C と 0x12C010 は異なるパスにつながり、a5 はスイッチを通して IOCTL コードを運びます。

IOCTL ディスパッチ

モードゲート

DMA パスに到達する前に、ドライバはグローバルな DrvMode フラグをチェックします。ビット 2 が設定されている必要があり、そうでなければ脆弱な MMIO マッピングパスには決して到達できません。

モードゲートチェック

dword_1400D0208 と 4 の比較がチェックです。

ガードのバイパス

脆弱なパスの前に 2 つのガードがあり、DMA パスに入るには両方が false と評価される必要があります。これらは、デバイス拡張上のバイトフラグと、前の画像のモードチェックです。

ガードのバイパス

!_(_BYTE _)(a1 + 12465) は簡単にバイパスできます。デバイスが初期化されていないことを確認するだけです。

sub_14001B67C も同様に簡単です。

MDL 割り当て

ドライバは、呼び出し元が指定した物理アドレスに対して検証なしで MDL を割り当てます。境界や範囲の検証は一切なく、まったく何もありません。

MDL 割り当て

物理マッピング

MDL はカーネル仮想アドレスにマッピングされ、ベースアドレスが呼び出し元に渡されます。0x40000010 は MAP_NO_EXECUTE と MmNonCached です。

MmMapLockedPages

MmMapLockedPagesSpecifyCache はマッピングされた仮想アドレスを生成し、それが *a2 に書き込まれてユーザーモードに返されます。これにより、任意の物理アドレス読み書きプリミティブが得られます。

要件

  • nic.h に一致する互換性のある Realtek アダプタ。

使用方法

管理者として実行します。

初回実行後、レジストリ値が設定されるため、PC を再起動する必要があります。

これを機能させるには、NIC がリンク UP 状態である必要があります(ディスクリプタを処理するため)。

以下のいずれかを行います:

  • イーサネットケーブルを別の PC、ルーター、またはリンク UP を提供する任意の機器に接続する

または

  • RJ45 ポートのピン 1-2 と 3-6 をショートさせてリンクを UP にする

ビルド

root@kitploit:~
$ cmake -B build
$ cmake --build build --config Release

注記

  • 興味深い部分(cr3、スタンピングなど)のほとんどは削除しましたが、これは基本の POC です。
ツールをダウンロード