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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
pycdc-studio — pycdc/pycdasを用いてPythonバイトコードを調査し、ネイティブデコンパイルを検査し、未対応のコードオブジェクトに対してAIフォールバックを利用するQt WidgetsデスクトップUI。 | Kitploit
ツール/GitHubGitHub/ddouworld/pycdc-studio
静的分析リバースエンジニアリングデバッガマルウェア分析バイナリ解析学習と教育AI支援リバースエンジニアリング
GitHubddouworld/pycdc-studio

pycdc-studio

pycdc/pycdasを用いてPythonバイトコードを調査し、ネイティブデコンパイルを検査し、未対応のコードオブジェクトに対してAIフォールバックを利用するQt WidgetsデスクトップUI。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

pycdc-studio

中文说明

pycdc / pycdas を使用してPythonバイトコードを探索し、ネイティブ逆コンパイル結果を検査し、Pyarmorのワンショット出力をインポートし、AIフォールバックで未サポートのコードオブジェクトを再試行するためのQt WidgetsデスクトップUIです。

このアプリはWindowsとLinuxのデスクトップ環境両方をサポートしています。

スクリーンショット

メインワークスペース

Main workspace

AIフォールバック

AI fallback reconstruction

できること

  • .pyc / .pyo ファイルを直接開く
  • フォルダをウィンドウにドラッグして、サポートされているバイトコードファイルを再帰的に検出する
  • バンドルされたワンショットワークフローを通じてPyarmor難読化プロジェクトをインポートする
  • 検出されたすべてのファイルを左側のツリーにまとめて表示する
  • モジュール、クラス、関数、ラムダ、内包表記のコードオブジェクトツリーを検査する
  • 以下を比較する:
    • Merged
    • Native
    • AI
  • ノードごとのメタデータと逆アセンブルを表示する
  • AIフォールバックモデルに送信される正確なプロンプトをプレビューする
  • 目立つアクションボタンまたは Ctrl+R を使用して、現在選択されているノードをAIで再試行する
  • 現在のUI構造

    • 左: コードオブジェクトツリー
    • 中央: merged / native / AI ソースビュー
    • 右: 逆アセンブル / メタデータ / プロンプト / ログ

    AIフォールバック

    アプリはデフォルトでは .pyc 全体を送信しません。

    現在選択されているコードオブジェクトからプロンプトを構築します。これには以下が含まれます:

    • 修飾名
    • オブジェクトタイプ
    • names / varnames / consts のプレビュー
    • ネイティブエラー
    • 逆アセンブル

    これにより、フォールバックの再構築はファイル全体ではなく選択されたノードに集中します。

    pycdc 統合

    アプリは現在、アプリケーションバイナリの隣にあるローカル実行可能ファイルを優先し、以下を探します:

    • pycdc.exe
    • pycdc
    • pycdas.exe
    • pycdas

    pycdc-studio アプリケーションバイナリと同じディレクトリ内で。

    環境変数でこれらを上書きできます:

    • PYCDC_STUDIO_PYCDC
    • PYCDC_STUDIO_PYCDAS

    Pyarmor インポート

    アプリは、Lil-House/Pyarmor-Static-Unpack-1shot に委任することで、Pyarmorで保護されたプロジェクトをインポートできます。

    現在の統合フロー:

    1. 選択したPyarmorプロジェクトディレクトリで oneshot/shot.py を実行する
    2. pyarmor-1shot に .1shot.das と .1shot.cdc.py を生成させる
    3. 生成されたファイルを既存のワークスペースUIに読み込む

    リリースパッケージは、Pyarmorワンショットツールチェーンと必要なPythonパッケージの依存関係を自動的にバンドルすることが期待されています。

    ローカル開発の場合、現在のコードは最初にアプリケーションパッケージの隣にあるバンドルファイルを探し、また以下のローカルクローンもサポートしています:

    • external/Pyarmor-Static-Unpack-1shot/oneshot/shot.py

    そして、pyarmor-1shot / pyarmor-1shot.exe が shot.py と同じディレクトリにあることを期待しています。

    また、shot.py を実行できるPython環境(pycryptodome を含む)が必要です。

    レイアウトが異なる場合は、以下の環境変数で上書きできます:

    • PYCDC_STUDIO_PYARMOR_PYTHON
    • PYCDC_STUDIO_PYARMOR_SHOT
    • PYCDC_STUDIO_PYARMOR_PYTHONPATH
    • PYCDC_STUDIO_PYARMOR_OUTPUT_ROOT

    ローカル開発用のアップストリームツールの準備

    例:

    root@kitploit:~
    git clone https://github.com/Lil-House/Pyarmor-Static-Unpack-1shot external/Pyarmor-Static-Unpack-1shot
    cmake -S external/Pyarmor-Static-Unpack-1shot/pycdc -B external/Pyarmor-Static-Unpack-1shot/build
    cmake --build external/Pyarmor-Static-Unpack-1shot/build --config Release
    cmake --install external/Pyarmor-Static-Unpack-1shot/build --config Release
    python -m pip install pycryptodome
    

    UIでの使用法

    1. pycdc-studio を起動する
    2. File -> Import Pyarmor Project... を開く
    3. 難読化されたスクリプトと pyarmor_runtime が含まれているルートディレクトリを選択する
    4. 生成された .1shot.* ファイルがワークスペースにインポートされるのを待つ

    注意:

    • インポーターは、PYCDC_STUDIO_PYARMOR_OUTPUT_ROOT が設定されていない限り、一時出力ディレクトリを使用します。
    • 逆アセンブルは、一般に逆コンパイルされたソースよりも信頼性が高いです。
    • PyInstallerバンドルなどのアーカイブは、このフローを使用する前に展開する必要があります。
    • パッケージ化されたビルドは、手動でPyarmor環境変数を設定しなくても動作することを意図しています。

    AI設定

    AIフォールバックを使用する前に、Settings を開いて少なくとも以下を設定してください:

    • Base URL
    • API Key
    • Model

    現在のクライアントは、OpenAI互換API エンドポイントを期待しています。

    設定ダイアログは、プロバイダ設定を QSettings に保存し、フィールドが空の場合は環境変数にフォールバックします。

    サポートされている環境変数:

    • PYCDC_STUDIO_AI_BASE_URL
    • PYCDC_STUDIO_AI_API_KEY
    • PYCDC_STUDIO_AI_MODEL
    • PYCDC_STUDIO_AI_SYSTEM_PROMPT

    ビルド

    要件:

    • Qt 6 Widgets
    • Qt Network
    • CMake
    • C++17 コンパイラ

    例:

    root@kitploit:~
    cmake -S . -B build
    cmake --build build
    

    使用方法

    1. pycdc-studio を起動する
    2. .pyc / .pyo ファイルを開くか、フォルダをウィンドウにドラッグする
    3. または、Pyarmorで保護されたプロジェクトの場合は File -> Import Pyarmor Project... を開く
    4. トップレベルメニューから Settings を開き、AIフォールバックを使用する場合はAIモデルを設定する
    5. ツリー内のファイルまたはコードオブジェクトを選択する
    6. ネイティブ出力、逆アセンブル、メタデータ、プロンプトコンテキストを検査する
    7. ネイティブ逆コンパイルが不完全または間違っている場合は、選択したノードで Retry with AI を使用する

    テストサンプル

    test/ の下に長めのテストケースが含まれています:

    • workflow_orchestrator.py
    • async_batch_runner.py
    • plugin_config_resolver.py
    • さらにいくつかの小さなサンプル

    リポジトリはソースサンプルのみを追跡します。

    ドラッグ&ドロップテスト用のローカルの .pyc ファイルを生成するには:

    root@kitploit:~
    python test/compile_test_samples.py
    

    このスクリプトはコンパイルされたバイトコードを test/__pycache__/ に書き込みます。

    注意事項

    このプロジェクトはまだ実験段階です。

    現在の Merged ビューは正直な混合ドキュメントです:

    • 利用可能な場合はネイティブソース
    • AIフォールバックパッチがコードオブジェクトごとに追加されています

    まだ完全なインラインソースマージャーではありません。

    ライセンス

    このプロジェクトは pycdc / pycdas と統合しており、そのアップストリームプロジェクトは GPL-3.0 の下でライセンスされています。

    • pycdc: GPL-3.0
    • pycdc / pycdas をバンドルするリリースパッケージにはGPL-3.0通知を含める必要があります
    • リリースパッケージはまた、バンドルされたアップストリームの pycdc リポジトリとコミットを THIRD_PARTY_NOTICES.txt に記録します

    完全なライセンス詳細については、アップストリームプロジェクトを参照してください:

    • zrax/pycdc
    ツールをダウンロード