Shuriken-Group/Shuriken-Analyzer

GitHub: Shuriken-Group/Shuriken-Analyzer

一个用于 Java 字节码和 DEX 文件的静态分析库,提供解析、反汇编和中间表示生成能力。

Stars: 46 | Forks: 6

# Shuriken-Analyzer

Shuriken Logo White

欢迎使用 Shuriken Analyzer 的代码库,这是一个用于字节码分析的库! Shuriken 是 [Kunai-Static-analyzer](https://github.com/Fare9/KUNAI-static-analyzer) 项目的演进版本, 该库的架构经过修改,以便更好地适应其他字节码。Shuriken 旨在为分析师提供解析、反汇编和分析功能,并计划提供 Kunai 提供的中间表示 (IR) 的改进版本。 在代码库中,您将找到以下文件夹: * [shuriken](./shuriken/):包含主库代码的文件夹。这里编写了 Shuriken 的核心代码, 包括解析器、反汇编器等的代码。 * [shuriken-dump](./shuriken-dump/):用于转储 DEX 文件结构的命令行工具(目前)。 ## 团队 Shuriken Analyzer 是由 Shuriken Team 维护的项目: * 研发负责人/软件保护师范 (師範):Robert Y. <[@yates82](https://x.com/yates82)> * CI/CD 主管/编译器爱好者:Jasmine T. <[@thisisjjasmine](https://x.com/thisisjjasmine)> * 顾问/业余开发者:Antonio N. <[@jeppojeps](https://x.com/jeppojeps)> * 项目负责人/首席架构师/那个写代码的人:Eduardo B. <[@Farenain](https://x.com/Farenain)> ## 安装 ### 使用 python3 和 pip #### 安装 要安装该库,您可以使用 pip。只需运行以下命令: ``` pip install git+https://github.com/Fare9/Shuriken-Analyzer.git@main#subdirectory=shuriken/bindings/Python/ ``` 这将使用 `git clone` 克隆代码库,并在 `shuriken/bindings/Python/` 文件夹中调用 setup.py。 setup.py 将安装 shuriken 库,并提供该库的 python api 绑定。 #### 卸载 要卸载,pip 提供了 `uninstall` 命令 ``` pip uninstall ShurikenAnalyzer ``` ### 使用原生 cmake #### 安装 要安装,首先克隆代码库,然后运行以下命令: ``` cmake -S . -B build/ -DCMAKE_BUILD_TYPE=Release && cmake --build build/ -j && sudo cmake --install build/ ``` 这有助于: - 将项目配置为在 Release 模式下构建 - 使用所有核心构建项目 - 将项目安装在 usr/local/bin 中,因此需要 sudo 权限 #### 卸载 要卸载,请运行 ``` sudo cmake --build build/ --target uninstall ``` 以卸载项目。同样,由于我们要从 /usr/local/ 中删除文件,因此需要 sudo 权限。 ## 在 Ubuntu Jammy 上分步安装 # 安装必要的软件包 sudo apt install sudo git vim build-essential cmake inetutils-ping python3-pip # 克隆 Shuriken Analyzer 代码库 git clone https://github.com/Shuriken-Group/Shuriken-Analyzer.git cd Shuriken-Analyzer/ # 安装 Python 绑定 pip install git+https://github.com/Fare9/Shuriken-Analyzer.git@main#subdirectory=shuriken/bindings/Python/ # 测试安装 python3 -c "from shuriken import *" ## 其他编程语言的 API 为了支持其他编程语言,我们正在致力于提供一个 C 语言的 shim API。一旦我们有了稳定的 C 语言 API,我们计划开始为其他语言编写 API,目前我们计划推出以下 API: * C API * Python API ## 项目 该项目仍处于“alpha”版本,但我们正在持续开发中。如果您想提供帮助,请随时 提出 issue,或者如果您想编写一些代码,请查看已打开的 issues 并阅读 [CONTRIBUTING.md](./CONTRIBUTING.md), 其中包含了关于项目编码风格的几点说明。 Logo 由 [ShanShan Bu](https://www.linkedin.com/in/shanshan-bu/) 设计和制作,现在根据 知识共享许可协议进行分发。

Shuriken Analyzer Logo by ShanShan Bu is licensed under Attribution-ShareAlike 4.0 International

标签:Android, Bash脚本, C++, DAST, DEX文件, DSL, Findomain, Python绑定, Shuriken, Wayback Machine, 中间表示, 二进制分析, 云安全监控, 云安全运维, 云资产清单, 反汇编, 恶意软件分析, 数据擦除, 解析器, 逆向工具, 逆向工程, 静态分析, 静态检测