Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
iOS26.6-CVE-2026-65343 — CVE-2026-65343 PoC — AppleKeyStore OOB読み取り → KASLR回避(iOS 26.6 / 23G71) | Kitploit
ツール/GitHubGitHub/amorcool/ios26.6-cve-2026-65343
エクスプロイトフレームワークiOSセキュリティ脆弱性分析エクスプロイトリバースエンジニアリングモバイルセキュリティバイナリエクスプロイト
GitHubamorcool/ios26.6-cve-2026-65343

iOS26.6-CVE-2026-65343

CVE-2026-65343 PoC — AppleKeyStore OOB読み取り → KASLR回避(iOS 26.6 / 23G71)

リポジトリを見る
21821日前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2026-65343 — AppleKeyStore 領域外読み取り(KASLR 無効化)

コンポーネント: AppleKeyStore カーネル拡張 — _LibSer_SEPControl_Deserialize
影響を受けるバージョン: iOS / iPadOS 26.6 (23G71) 以前
修正バージョン: iOS / iPadOS 26.6.1 (23G83)
種別: SEP 制御メッセージ逆シリアル化における領域外読み取り
影響: カーネルポインタ漏洩 → サンドボックス化された権限不要プロセスからの KASLR 無効化(DYLD_INTERPOSE ACM ハンドル取得経由)


クレジット

発見者: Drinor Selmanaj (Sentry)、Surya Narayan Kushwaha
(Apple セキュリティアップデート — iOS 26.6.1 より)


根本原因

AppleKeyStore カーネル拡張内の _LibSer_SEPControl_Deserialize は、ACM(Credential Manager)メッセージバッファから (payload_ptr, declared_length) のペアを copyout() 経由でユーザー空間に公開しますが、。

declared_length ≤ remaining の検証を行いません

declared_length = 0x800 を指定することで、ドライバはカーネル ACM メッセージバッファの末尾を約 0x7E8 バイト超えてコピーし、隣接するカーネルヒープ割り当て領域を読み取ります。これらの隣接領域にはカーネルポインタ(0xfffffff0xxxxxxxx)が含まれており、KASLR スライドの計算に使用できます。

root@kitploit:~
; _LibSer_SEPControl_Deserialize (影響を受けるパス、26.6 / 23G71)
ldr  w2, [acm_msg + declared_length_offset]  ; ユーザー制御の 0x800
; チェックなし: w2 <= (acm_msg_end - payload_ptr) ← 欠落
bl   copyout                                  ; w2 バイトをユーザー空間にコピー

ACM ハンドル取得(DYLD_INTERPOSE)

サイドロードされたアプリでは、IOServiceOpen("AppleKeyStore") の直接呼び出しはサンドボックスによってブロックされます。しかし、Security.framework の Secure Enclave 鍵署名パスは、実際の ACM セッションハンドルを使用して プロセス内で IOConnectCallMethod を呼び出します。

PoC は __DATA,__interpose フック(dyld ロード時に実行され、__DATA_CONST が読み取り専用になる前 — fishhook は iOS 26 では DATA_CONST 保護によりブロックされます)を使用します:

  1. interpose キャプチャフラグを有効化
  2. SecKeyCreateRandomKey(kSecAttrTokenIDSecureEnclave) → SecKeyCreateSignature() → 実際の ACM ハンドルでプロセス内 IOConnectCallMethod が発火
  3. (conn, handle[16]) をキャプチャ
  4. 163 個の AKS セレクタ全体で declared_length = 0x800 をリプレイ
  5. 出力をスキャンして 0xfffffff0xxxxxxxx カーネルポインタを検出 → KASLR スライドを計算

PoC の動作

poc_aks_oob.m は完全な ACM ハンドル取得と OOB プローブチェーンを実装しています:

  • Secure Enclave P-256 鍵を作成(kSecAttrAccessibleAfterFirstUnlock、生体認証なし)
  • 32 バイトのメッセージに署名してプロセス内 AKS IOKit 呼び出しをトリガー
  • 163 個すべての AKS セレクタで declared_length = 0x800 をリプレイ
  • KPTR @+XXXX = 0xfffffff0YYYYYYYY で見つかったカーネルポインタを出力
  • 既知の AKS シンボルオフセットから KASLR スライドの計算を試行

SE 鍵署名がプロセス内ではなく secd XPC 経由でルーティングされる場合、フォールバックプローブはゼロハンドルを使用します(OOB パスの到達可能性を確認します。すべてのセレクタは ACM 検証に失敗しますが、VNOP パスは確認されます)。


iOS 26 に関する注意: fishhook のブロック

iOS 26 では、__DATA_CONST(GOT を含む)はプロセス内コードが実行される前に読み取り専用にマッピングされます。実行時の GOT 書き込み(fishhook が使用する方法)は KERN_PROTECTION_FAILURE → SIGBUS を引き起こします。__DATA,__interpose による DYLD_INTERPOSE は、dyld がイメージロード時に interpose テーブルを処理するため機能します。これはカーネルが __DATA_CONST 保護を適用する前です。


要件

  • iOS 26.6 (23G71) 以前
  • Secure Enclave アクセス(kSecAttrTokenIDSecureEnclave)— 権限不要のサイドロードアプリでも利用可能
  • サンドボックス脱出は不要: Security.framework による SE 鍵署名は AKS IOKit 呼び出しを プロセス内で呼び出す場合があります(デバイスと iOS ビルドに依存)。一部の構成では呼び出しが secd XPC 経由でルーティングされます — その場合、ゼロハンドルのフォールバックは OOB パスの到達可能性を確認しますが、 完全な KASLR 無効化は確認できません。

ビルド

root@kitploit:~
# Xcode プロジェクト — Security.framework と Foundation.framework をリンク
clang -arch arm64 \
      -isysroot $(xcrun --sdk iphoneos --show-sdk-path) \
      -framework Security -framework Foundation \
      -o poc poc/poc_aks_oob.m

codesign -s "Apple Development" --entitlements ent.plist poc

最小権限(ent.plist):

root@kitploit:~
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
    "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0"><dict>
    <key>keychain-access-groups</key>
    <array><string>$(AppIdentifierPrefix)com.research.poc65343</string></array>
</dict></plist>

タイムライン

日付イベント
2026-08-17修正を含む iOS 26.6.1 がリリース
2026-08-17Apple がセキュリティアドバイザリでクレジットを公開

参考情報

  • Apple セキュリティアップデート — iOS 26.6.1
ツールをダウンロード