codeminute-the-dev/RawView

GitHub: codeminute-the-dev/RawView

一个基于 Ghidra 的 AI 辅助逆向工具,提供脱离 Swing 界面的桌面化高效分析与归档工作流。

Stars: 1 | Forks: 0

RawView banner

CODEMINUTE
# 原始 View 用于 **Ghidra** 的 AI 辅助逆向工程:这是一个 **Qt (PySide6)** 桌面应用程序,通过 **Py4J** 无头模式驱动 Ghidra,将反编译器、反汇编、字符串、导入/导出、交叉引用 (xrefs) 及相关工具集成在一个停靠窗口中。 **可选:** 当您在 **File -> Settings** 下添加密钥时,**agent** 停靠面板会使用 **Anthropic** API。本程序不内置 Ghidra;您需要在设置中为 RawView 指定您自己的安装路径(或 ZIP URL)。

GPL v3 Windows Python 3.11+

**作者:** [@codeminute-the-dev](https://github.com/codeminute-the-dev) ## 功能 - 无需使用 Ghidra Swing UI 即可通过 Ghidra 打开二进制文件并运行分析,方便日常导航。 - 停靠面板、主题、快捷键、工作笔记,以及可选的 RE 会话存档(`.rvre.zip` 风格的工作流)。 - 专注于 Windows 的打包方式:**PyInstaller** onedir + **WiX** 每用户 MSI。当维护者上传预构建的安装程序时,请使用仓库的 **Releases** 标签页获取。 ## 环境要求 | | | |--|--| | 操作系统 | **Windows**(主要支持;脚本和 MSI 均面向 Windows 设计) | | Python | **3.11+** | | Ghidra | 您自己的安装版本或官方 ZIP;在应用程序内进行配置 | | JDK | **21+**,用于编译 Java 桥接程序;应用程序首次运行时可获取 Temurin 并安装至 `%LOCALAPPDATA%\RawView\` | ## 从源码构建 ``` git clone https://github.com/codeminute-the-dev/RawView.git cd RawView python -m venv .venv .\.venv\Scripts\Activate.ps1 pip install -e ".[dev]" python -m rawview.scripts.compile_java python -m rawview ``` 可编辑安装 (`-e`) 无需重新安装即可应用 Python 代码更改。 ## Windows MSI(基于此仓库) 1. 安装 [WiX Toolset 3.11+](https://github.com/wixtoolset/wix3/releases) 并确保其 `bin` 目录位于 `PATH` 环境变量中,或将环境变量 `WIX` 设置为该工具包的根目录。 2. 在仓库根目录下执行: ``` powershell -ExecutionPolicy Bypass -File scripts\build-msi.ps1 ``` 输出: - `dist\RawView\`:便携式 PyInstaller 目录结构 (`RawView.exe`)。来自 `pyproject.toml` 的所有 Python 依赖项在构建时都会**冻结至** `_internal` 目录中(在用户的 PC 上不需要为了运行 MSI 构建版本而安装 Python 或 `pip`)。 - `dist\RawView\BUNDLED_PYTHON_PACKAGES.txt`:构建机器上执行 `pip install ".[dev]"` 后的 `pip freeze` 输出,与 `RawView.exe` 一并提供以保证透明度。 - `dist_installer\RawView-.msi`:每用户 WiX 安装程序(包含开始菜单 + 桌面快捷方式,向导中提供完整的 GPL 许可证文本)。 仅重新构建 WiX(复用 `dist\RawView`):`.\scripts\build-msi.ps1 -SkipPyInstaller`(该脚本在收集文件前仍会运行 `pip install ".[dev]"` 并刷新 `BUNDLED_PYTHON_PACKAGES.txt`)。 ## 仓库结构 | 路径 | 用途 | |------|---------| | `rawview/` | 应用程序代码;Java 桥接的**源代码**位于 `rawview/java/` 下 | | `packaging/` | `rawview.spec`、WiX `Product.wxs`、图标 | | `scripts/` | `build-windows.ps1`、`build-msi.ps1`、`export-source-zip.ps1` | | `installer/` | Windows 安装程序构建说明 (`BUILD.txt`) | | `pip/` | 用于在专用文件夹中进行可编辑安装的辅助脚本 | | `LICENSE` | GPLv3 完整文本 | 此仓库即为**项目根目录**(包含 `pyproject.toml` 的文件夹)。内部的 `rawview/` 目录仅仅是 Python 包的名称,而不是一个单独的可发布代码树。 ## 纯源代码归档 若要仅打包 Git 跟踪的内容(排除 `dist/`、`build/` 等): ``` powershell -ExecutionPolicy Bypass -File scripts\export-source-zip.ps1 ``` 在此仓库文件夹的父目录中生成 `RawView-source-.zip`。 ## 安全性 请**不要**提交您机器上的 API 密钥、token 或 `rawview.env`。设置通常位于 `%LOCALAPPDATA%\RawView\` 目录下。如果将大型的本地 Ghidra/JDK 目录不慎复制到了克隆仓库旁边,`.gitignore` 也会将它们以及常见的机密文件名排除在外。 ## 许可证 [GNU General Public License v3.0](LICENSE)。
标签:Ghidra, PySide6, 二进制分析, 云安全运维, 云资产清单, 人工智能辅助, 桌面应用, 逆向工程