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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
bochscpu-python — BochsCPU用のPythonバインディング | Kitploit
ツール/GitHubGitHub/hugsy/bochscpu-python
動的分析 (サンドボックス)リバースエンジニアリングマルウェア分析バイナリ解析
GitHubhugsy/bochscpu-python

bochscpu-python

BochsCPU用のPythonバインディング

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

人気

すべて見る →

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

すべてのツールを探索

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

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

logo3

bochscpu-python

Python 3.8+ Downloads Code style: black Licence MIT Builds

@yrp の BochsCPU に対する Python バインディングです。FFI を使って、x86 コードを簡単かつ正確にエミュレートできます。

インストール

bochscpu-python は、Python 3.8 以降の環境のみが必要です。

PyPI 経由(推奨)

何かを素早く動かす最も簡単な方法は、PyPI 上の 安定版パッケージ を使用することです。

root@kitploit:~
python -m pip install bochscpu-python

生成されたビルド経由

リポジトリの GitHub Actions タブ から最新の動作するアーティファクトをダウンロードします。ZIP ファイルを展開し、wheel フォルダ内にある .whl ファイルをインストールします。

root@kitploit:~
python -m pip install wheel/bochscpu-$version-$os-$arch.whl

ソースリポジトリから

かなり簡単です:

root@kitploit:~
python -m pip install .

またはクローンなしで

root@kitploit:~
python -m pip install git+https://github.com/hugsy/bochscpu-python.git#egg=bochscpu-python

この方法では、必要なビルドツールがすべてインストールされている必要があることに注意してください(後述)。

ビルド

要件

  • Python 3.8+(開発キット付き)
  • cmake
  • pip
  • C++20 互換のコンパイラ(Windows では cl、MacOS では clang++、Linux では g++ でテスト済み)

手順

  • それぞれのページの指示に従って、BochsCPU、BochsCPU-FFI、BochsCPU-Build をビルドします
  • ... あるいは、Windows および Linux ライブラリのオブジェクトファイル用の BochsCPU-FFI は、build GitHub Actions からダウンロードできます。
  • *.lib を bochscpu/lib/<BuildType> に移動します(BuildType は Debug、Release、RelWithDebInfo などにできます)。
  • 要件をインストールします: python -m pip install -r requirements.txt
  • cmake でビルドします bochscpu の pyd ファイル(およびその PDB)が生成され、Python セッションで import bochscpu によりインポートできるようになります。
  • ... または、プロジェクトのルートから .whl を生成することもできます:
root@kitploit:~
python -m pip wheel .

使い方

bochscpu モジュールをインポートするだけで、楽しい時間の始まりです! パッケージをインストールするとインターフェースファイルもインストールされるため、最新の IDE(VSCode、PyCharm など)で便利な補完が提供されます。

非常に簡素なテンプレートは次のように作成できます:

root@kitploit:~
import bochscpu, bochscpu.utils, bochscpu.cpu

sess = bochscpu.Session()
sess.missing_page_handler = bochscpu.utils.callbacks.missing_page_cb
state = bochscpu.State()
bochscpu.cpu.set_real_mode(state)
hook = bochscpu.Hook()
bochscpu.utils.callbacks.install_default_callbacks(hook)
sess.run([hook,])

これにより、bochscpu セッションが作成され、CPU の状態がリアルモードに設定され、フックには基本コールバック(実行時に print を行うのみ)が事前設定されます。このサンプルは、コードページを割り当てておらず、レジスタも正しく設定していないため、実際には何も行わないことに注意してください。

より完全なテンプレートは、examples/ フォルダ にあります。

いくつかの例

x64 ロングモードで Fibonascii シーケンスをエミュレートします

https://github.com/hugsy/bochscpu-python/assets/590234/adc5ac5a-a8eb-4982-9537-5ece3f32f8f8

コード

Windows 11 x64 メモリダンプからコードをエミュレートします

image

コード

16 ビットリアルモードで print("hello world") に似たアセンブリコードをエミュレートします

https://github.com/hugsy/bochscpu-python/assets/590234/eb06af06-4b10-490e-ae40-a1d0aed333ca

コード

x64 で Linux Glibc の rand() 関数をエミュレートします

https://github.com/hugsy/bochscpu-python/assets/590234/2486adbc-0878-46f5-83ed-3bcf9774fd26

コード

お楽しみください 🍻

ツールをダウンロード