Fare9 / Shuriken-Analyzer

Repository for a library focused on binary analysis (mainly for Java related bytecodes)
BSD 3-Clause "New" or "Revised" License
34 stars 3 forks source link

Shuriken-Analyzer

Shuriken Logo White

Welcome to the repository of Shuriken Analyzer, a library intended for bytecode analysis! Shuriken is an evolution from Kunai-Static-analyzer project, where the architecture of the library has been modified in order to better adapt it to other bytecodes. Shuriken is intended to offer analysts parsing, disassembly and analysis capabilities, and it is planned to have an improved version of the Intermediate Representation (IR) provided by Kunai.

Inside the repository you will find the next folders:

Installation

With python3 and pip

Install

To install the library, you can use pip. Just run the following command:

 pip install git+https://github.com/Fare9/Shuriken-Analyzer.git@main#subdirectory=shuriken/bindings/Python/

This uses git clone to clone the repository and invoke setup.py in the shuriken/bindings/Python/ folder.

setup.py will install the shuriken library as well as provides python api bindings for the library.

Uninstall

To uninstall, pip provides uninstall command

pip uninstall ShurikenAnalyzer

With raw cmake

Install

To install, start by cloning the respotory and then run the following commands:

 cmake -S . -B build/ -DCMAKE_BUILD_TYPE=Release  && cmake --build build/ -j && sudo cmake --install build/

This helps:

Uninstall

For uninstalling, run

sudo cmake --build build/ --target uninstall

to uninstall the project. Again, since we are remove files from /usr/local/, sudo permissions are needed.

APIs In Other Programming Languages

For supporting other programming languages, we are working on offering a shim API in C. Once we have a stable API in C, we plan to start writing the APIs for other languages, right now we plan the next APIs:

The Project

The project is still in an "alpha" version, but we are in continuous development. If you want to help do not hesitate to open an issue, or if you want to write some code, check opened issues and read the CONTRIBUTING.md which contains a few points about the coding style of the project.

The logo has been designed and created by ShanShan Bu, and now distributed under Creative Common License.

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