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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ipyida — IDA Pro向けIPythonコンソール統合 | Kitploit
ツール/GitHubGitHub/eset/ipyida
リバースエンジニアリングスクリプトと自動化バイナリ解析
GitHubeset/ipyida

ipyida

IDA Pro向けIPythonコンソール統合

リポジトリを見る
850762ヶ月前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

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

= IPyIDA

IPyIDA は、IDA Pro に IPython コンソールを追加するための Python のみのソリューションです。<Shift-.> を使用すると、Qt コンソール が埋め込まれたウィンドウを開くことができます。IPython のオートコンプリート、オンラインヘルプ、等幅フォントの入力フィールド、グラフなどを利用できます。

また、ipython console --existing を使用して、IDA の外部からカーネルに接続することもできます。

image::ipyida-screenshot.png[IPyIDA スクリーンショット,width=100%]

== インストール

IPyIDA は、Windows、OS X、Linux 上の IDA 6.6 以降と互換性があるはずです。IDA 9.2 まででテストされています。

=== 高速かつ簡単なインストール

IDA コンソールから IPyIDA とその依存関係を自動的にインストールするスクリプトが用意されています。次の行を IDA コンソールにコピーするだけです。

.Python 2 [source,python]

import urllib2; exec urllib2.urlopen('https://github.com/eset/ipyida/raw/stable/install_from_ida.py').read()

.Python 3 [source,python]

import urllib.request; exec(urllib.request.urlopen('https://github.com/eset/ipyida/raw/stable/install_from_ida.py').read())

macOS では、Python3.framework は信頼された CA ファイルを提供しません。システム全体のファイル /etc/ssl/cert.pem を使用できます。

[source,python]

import urllib.request; exec(urllib.request.urlopen('https://github.com/eset/ipyida/raw/stable/install_from_ida.py', cafile="/etc/ssl/cert.pem").read())

スクリプトは次のことを行います:

  1. pip がまだインストールされていない場合はインストールします
  2. https://pypi.org/project/ipyida/[PyPi] から ipyida パッケージをインストールします
  3. ipyida_plugin_stub.py をユーザーの plugins ディレクトリにコピーします
  4. IPyIDA プラグインを読み込みます

正確に何を行うのかを確認したい場合は、link:install_from_ida.py[] スクリプトを調べることができます。

==== アップグレード

インストールスクリプトを再実行して最新バージョンに更新し、IDA を再起動します。

=== IDA 標準の方法でインストールする

依存関係と更新を自分で管理したい場合は、ipyida_plugin_stub.py と ipyida ディレクトリを IDA の plugins ディレクトリ内にコピーできます。

この方法では、依存関係を自分で管理する必要があります。IPyIDA には ipykernel と qtconsole パッケージが必要で、ipykernel バージョン 5 以降を使用する場合は qasync パッケージも必要です。

== Jupyter Notebook の統合

IPyIDA には、IPyIDA にアタッチされたノートブックをブラウザで開くためのマジックコマンド %open_notebook が含まれています。このコマンドは、初回実行時に依存関係のインストールと、すでに実行されていない場合の Notebook サーバーの起動を処理します。詳細なオプションについては、コマンドヘルプ(%open_notebook? と入力)を確認してください。

== IPython コンソールのカスタマイズ

デフォルトでは、コンソールで利用可能なグローバル変数はありません。コンソールを開く前にモジュールをインポートしておきたい場合、IPyIDA は IDA ユーザーディレクトリ(idaapi.get_user_idadir())から ipyidarc.py ファイルを読み取ります。このファイルでインポートしたものはすべて IPython コンソールで利用できます。

これは idapythonrc.py ファイルと似ています。

=== ダークモード

IDA Pro でダークテーマを使用している場合、IPython コンソールでもダークテーマを使用する方が便利です。qtconsole に組み込まれたダークテーマを有効にするには、ipyidarc.py に以下を追加します:

[source, python]

import qtconsole.styles import ipyida.ida_qtconsole ipyida.ida_qtconsole.set_widget_options(dict( style_sheet = qtconsole.styles.default_dark_style_sheet, syntax_style = qtconsole.styles.default_dark_syntax_style ))

== IDE 統合

iPyIDA の注目すべき機能の 1 つは、PyCharm IDE と統合できることです。これにより、コードのステップ実行、構文ハイライト、Github CoPilot の統合などの機能が利用できます。この機能を使用するには、IDA を起動してデータベースを開き、PyCharm で Jupyter Notebook を作成し、コードを追加して、実行をクリックするだけです。IPyIDA がバックグラウンドで全ての処理を実行します。

image::pycharm-screenshot.png[IPyIDA スクリーンショット,width=100%]

== 注意事項

=== IDA のウィンドウが長時間バックグラウンドにあると外部コンソールが応答しない

この問題は、OS X 10.9 以降の OS X の App Nap 機能に固有のものです。実行中に IDA Pro の App Nap を無効にすると問題が解決するようですが、これは今のところハックであり、ラップトップではより多くのバッテリーを消費します。より良い解決策を見つけるべきです。

IDA Pro の App Nap を無効にする方法は次のとおりです:

[source,bash]

defaults write com.hexrays.idaq NSAppSleepDisabled -bool YES defaults write com.hexrays.idaq64 NSAppSleepDisabled -bool YES

== 類似プロジェクト

@james91b も IDA に IPython カーネルを統合することに成功しました。私は Windows 以外の IDA ユーザーであるため、クロスプラットフォームのものが必要で、それを実装するために Python のみのアプローチを取りました。実装アイデアの一部はそのプロジェクトから来ていますが、IPyIDA はゼロから書かれました。@james91b とすべての IDA_IPython コントリビューターに敬意を表します。IDA_IPython は Github の https://github.com/james91b/ida_ipython で入手できます。

ツールをダウンロード