spoof_new - Windows向けプロセス親子関係操作ツール

Tool

概要

spoof_newはWindows環境下で動作する特殊なプロセス起動ランチャーです。通常、Windowsのプロセスは親子関係が自動的に管理されますが、本ツールでは起動時に親プロセスのPIDを任意に指定することができます。これにより、起動した子プロセスの親プロセスを偽装(spoof)することが可能となり、プロセスツリーの見え方を操作できる点が特徴です。主にデバッグやセキュリティ検証、プロセス監視回避などの用途で活用が考えられます。C++で書かれ、Windows APIを駆使したシンプルかつ効率的な実装がなされています。

GitHub

リポジトリの統計情報

  • スター数: 5
  • フォーク数: 0
  • ウォッチャー数: 5
  • コミット数: 3
  • ファイル数: 17
  • メインの言語: C++

主な特徴

  • 任意の親プロセスID(PID)を指定してプログラムを起動可能
  • WindowsネイティブAPIを用いた軽量かつ高効率な実装
  • コマンドライン操作に対応し柔軟な起動制御が可能
  • シンプルなソース構成でカスタマイズや拡張が容易

技術的なポイント

spoof_newはWindowsのプロセス生成APIを巧みに利用し、通常のCreateProcess等では難しい親プロセスの偽装を実現しています。Windows OSは標準で起動したプロセスの親子関係を自動的に管理し、プロセスツリーに反映しますが、このツールは独自の方法で新しいプロセスの親を任意の既存プロセスに設定します。具体的には、WindowsのネイティブAPI(NtCreateProcessExや関連する内部関数)を活用し、低レベルでプロセス生成を行うことで、親PIDの指定が可能となっています。

また、C++で実装されていることで、パフォーマンスが高く、不要な依存関係が少ないのも特徴です。コマンドライン引数を受け取って対象プログラムのパスや引数、さらには指定した親プロセスのPIDを入力できるようになっており、スクリプトやバッチ処理からも利用しやすい設計です。

この技術は、セキュリティ研究やマルウェア解析、プロセス監視の回避試験に有用です。例えば、通常の監視ツールは親子関係からプロセスの起源や挙動を追跡しますが、spoof_newを使うことで親プロセスを偽装し、挙動の追跡を難しくできます。また、開発者がデバッグ時に特定の親プロセス配下で動作させたい場合にも役立ちます。

ソースコードは17ファイルで構成されており、主にWindows API呼び出しやプロセス制御関連のヘッダー・実装ファイルが中心です。READMEには使用方法やビルド手順も記載されており、Windows環境での利用が手軽に始められます。ライセンスは明記されており、オープンソースとして誰でも改良や利用が可能です。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .gitattributes: ファイル属性管理用設定ファイル
  • .gitignore: Git管理対象外ファイル指定
  • LICENSE.txt: ライセンス情報
  • README.md: プロジェクト概要と利用方法
  • Resource.h: リソース定義ヘッダー
  • main.cpp: メインの実行ロジック
  • ProcessSpoofer.cpp/h: プロセス偽装の核心機能実装
  • utils.cpp/h: ユーティリティ関数群
  • config.json: 起動設定例(存在する場合)
  • その他リソースやビルド関連ファイル多数

まとめ

Windows環境で親プロセス偽装を実現する軽量ツール。

リポジトリ情報: