CLIツール
KSwordDEV/KSword avatar
KSwordDEV/KSword

KSword 5.1を分解する: Windows ARKの広さと操作ゲート

[ARK 用 Windows ツールキット] KSword 5.1 は、ARK、カーネル デバッグ、およびシステム フォレンジック用のオープンソース Windows ツールキットです。 KSword 5.1 Windows ARK 。

スター 438フォーク 93C++GPL-3.0

ひと目でわかる

これは何?
Qt版とWin32軽量版、共有ドライバ、R3/R0証拠収集を軸に、KSwordの調査範囲と危険操作の扱いを確認します。
誰に向いている?
KSwordは、READMEに記載された構成と用途が自分の環境に合う人向けです。合わない人は採用すべきではありません。
商用利用できる?
まず確認が必要です。このリポジトリのライセンスは自動分類の対象外なので、商用利用の前に LICENSE ファイルを読んでください。
今もメンテナンスされている?
されています。最後のコミットは 2 日前です。
何の言語で書かれている?
主に C++ です(GitHub の言語統計による)。

回答はプロジェクトの GitHub データ(最終同期:2026年9月14日)と当サイトの分析に基づくもので、法的助言ではありません。

オープンソース詳細解説

二つのデスクトップ実装と共有ドライバ

完全版はQtとADSドックレイアウトを使い、KswordARKLightは依存を抑えたWin32版です。両者を起動するLauncher、カーネル処理を担うKswordARKDriver、自動化用KswordCLI、任意のインストーラが同じリポジトリに置かれています。単一の画面アプリではなく、権限境界と起動経路を含む構成です。

軽量版を選べば機能が完全に同じになるとはREADMEは言っていません。Releaseディレクトリの内容、Launcherが読むサポートマニフェスト、ドライバの読み込み結果を順に確認して、必要なドックがどの構成にあるかを確定します。

KSwordの確認では、READMEに書かれた対象を一度に広げず、1番目の論点に対応する入力、処理結果、ログまたは生成物を分けて記録します。機能が使えるという説明と、特定のOS、版、権限、データ量で期待どおりに動くという判断は同じではありません。KSword固有の設定名やファイル名を残しておけば、別の環境で再確認する際にも、どの記述を根拠にした判断かを追跡できます。

R3/R0クロスビューの意味

プロセス、スレッド、CID、ハンドル、ロード済みモジュールなどをユーザー側とカーネル側の視点で照合し、隠れたオブジェクトの証拠を表示する機能が列挙されています。PDBフィールド診断やDynData駆動のオフセットも中心要素です。READMEの機能一覧は広いものの、検出率や誤検出率の数値はありません。

調査時は同じ対象をR3とR0の双方で開き、差分表示、PDB識別、unsupportedやpartialの表示を記録します。結果が空でも隠蔽が証明されたとは限らないので、対応プロファイルと権限状態を一緒に保存する読み方が必要です。

KSwordの確認では、READMEに書かれた対象を一度に広げず、2番目の論点に対応する入力、処理結果、ログまたは生成物を分けて記録します。機能が使えるという説明と、特定のOS、版、権限、データ量で期待どおりに動くという判断は同じではありません。KSword固有の設定名やファイル名を残しておけば、別の環境で再確認する際にも、どの記述を根拠にした判断かを追跡できます。

書き換え機能に置かれた制限

ScannerはPE、ELF、Mach-Oを構造スキャンし、任意のbyte editorは長さを変えない編集に限定されています。元スナップショットの再検証、atomic replacement、明示的なリスク承認、任意のバックアップが説明されています。ドライバやDriverObjectの編集にもtransactionalな経路が列挙されます。

これは変更機能が安全だという保証ではなく、変更前後の確認点を設けた設計です。検証ではコピーした対象で編集を行い、長さ、再検証結果、バックアップ、置換後のハッシュを比較します。実機のカーネルへいきなり適用する手順はREADMEから導けません。

KSwordの確認では、READMEに書かれた対象を一度に広げず、3番目の論点に対応する入力、処理結果、ログまたは生成物を分けて記録します。機能が使えるという説明と、特定のOS、版、権限、データ量で期待どおりに動くという判断は同じではありません。KSword固有の設定名やファイル名を残しておけば、別の環境で再確認する際にも、どの記述を根拠にした判断かを追跡できます。

カーネル・ネットワーク・記憶域の観測面

メモリ領域、PTE/VA変換、実行可能メモリ、TCP/UDPやAFD、NSI、NDIS、WFPのインベントリ、raw filesystemと削除エントリ解析までを対象にします。IDTのクリーンベースライン、IOCTLデコード、カーネル逆アセンブル、SSDT、callback、object namespaceも挙げられています。

項目が多いぶん、利用目的を先に絞らないと証拠の解釈が散ります。プロセス調査ならCross-ViewとPDB、ドライバ調査ならDriverObjectとIDT、ファイル調査ならraw browserと削除エントリというように、観測対象と出力を対応させます。

KSwordの確認では、READMEに書かれた対象を一度に広げず、4番目の論点に対応する入力、処理結果、ログまたは生成物を分けて記録します。機能が使えるという説明と、特定のOS、版、権限、データ量で期待どおりに動くという判断は同じではありません。KSword固有の設定名やファイル名を残しておけば、別の環境で再確認する際にも、どの記述を根拠にした判断かを追跡できます。

HVMと動的プロファイルのゲート

HVMページには確認付きVMX self-test、one-shot guest、Intel VT-x/EPTの常駐monitorがあります。常駐起動はAMD、既存hypervisor、電源・topology・unload lifecycle guardが使えない場合に拒否され、READMEは認可された実験・診断用途に限るとしています。DynData不一致時は実行時PDBプロファイルを解決し、identity check後に適用します。

ここは対応CPUだけで判断できない領域です。self-test、拒否理由、unload可能性、適用されたプロファイルの識別子を個別に確認し、VMXの常駐機能を本番監視のように扱わないことが妥当です。

KSwordの確認では、READMEに書かれた対象を一度に広げず、5番目の論点に対応する入力、処理結果、ログまたは生成物を分けて記録します。機能が使えるという説明と、特定のOS、版、権限、データ量で期待どおりに動くという判断は同じではありません。KSword固有の設定名やファイル名を残しておけば、別の環境で再確認する際にも、どの記述を根拠にした判断かを追跡できます。

ライセンスと採用範囲

メタデータはGPL-3.0を示します。READMEはオープンソースのWindowsツールキットと説明しますが、検出品質、性能ベンチマーク、セキュリティ認証、本番実績は確立していません。変更系機能は権限と環境を誤ると影響が大きく、認可された検証環境が前提です。

カーネル内部を複数の証拠面で調べたい研究者や保守担当には候補になります。単純なタスク管理ツール、署名済みの製品保証、AMDでのHVM常駐を求める用途には向きません。まずLauncher、ドライバ、PDB/DynDataの適合を確認してください。

KSwordの確認では、READMEに書かれた対象を一度に広げず、6番目の論点に対応する入力、処理結果、ログまたは生成物を分けて記録します。機能が使えるという説明と、特定のOS、版、権限、データ量で期待どおりに動くという判断は同じではありません。KSword固有の設定名やファイル名を残しておけば、別の環境で再確認する際にも、どの記述を根拠にした判断かを追跡できます。

編集部の結論

KSwordは、READMEに記載された構成と用途が自分の環境に合う人向けです。合わない人は採用すべきではありません。先にKSwordのREADMEにある具体的な入力、出力、設定、実行経路を小さな検証環境で確認し、未記載の保証を補って考えないでください。

公式情報源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
コミュニティノート

コミュニティノート