dod-cyber-crime-center / kordesii

Other
16 stars 11 forks source link

Implement an API layer to divide CORE from Disassembler #4

Closed ITAYC0HEN closed 2 years ago

ITAYC0HEN commented 5 years ago

Currently, kordesii is built above IDA-Python and dependent on IDA to achieve its stuff. That, when IDA is basically supplying for Kordesii the information to work on, where Kordesii itself performs the logic.

My suggestion is to use a more flexible and modern design for Kordesii in such a way that an API layer is implemented above CORE functionality. The logic will be implemented without being dependent on a specific disassembler to supply the information.

In this way, the community would be able to implement plugins for other disassemblers such as Cutter, Radare2, Binary Ninja, and GHIDRA.

This method will expand the usability of Kordesii and your great implementation for IDA can be a template or a go-to reference for other plugins.

To sum up, the solution I would like to see will be

Cutter        IDA      Radare2      Binja      GHIDRA
    |__________|_________|___________|_________|
                         |
                      API Layer
                         |
                    Kordesii Logic
dc3-tsd commented 5 years ago

Thank you for the feedback. Adding disassembler agnosticism is something we are currently looking into. We will welcome contributions for adding support for other disassemblers once the framework implementation is in place.

dc3-tsd commented 3 years ago

We have begun working on a new project to allow the use of disassemblers other than IDA. The alpha version of this is located at https://github.com/Defense-Cyber-Crime-Center/Dragodis. Kordesii will be updated to depend on it when the project reaches a 1.0 version. This issue will remain open until these change is made.

dc3-tsd commented 2 years ago

Closing this issue as Rugosa can accomplish this using Dragodis and is the successor to Kordesii, which is now only receiving updates for maintence prior to it being formally deprecated (no formal date has been decided for this).