Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cseagle/ida_clemency
IDA cLEMENCy Tools
https://github.com/cseagle/ida_clemency
Last synced: 3 months ago
JSON representation
IDA cLEMENCy Tools
- Host: GitHub
- URL: https://github.com/cseagle/ida_clemency
- Owner: cseagle
- Created: 2017-07-31T02:51:32.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2017-07-31T02:53:00.000Z (over 7 years ago)
- Last Synced: 2024-05-27T11:48:52.915Z (6 months ago)
- Language: Python
- Size: 24.4 KB
- Stars: 61
- Watchers: 5
- Forks: 12
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# IDA cLEMENCy Tools
[cLEMENCy](https://blog.legitbs.net/2017/07/the-clemency-architecture.html) is an architecture developed by LegitBS for use during the Defcon 25 Capture the Flag event.
The architecure was unsupported by IDA at the outset of the competition. It seemd useful to have disassembler support outside the emulatr/disassembler published in conjunction
with the cLEMENCy specification 24 hours prior to commencement of the competition. These tools are the result of that development effort. This project contains:* A scripted IDA loader module to create the basic memory layout and handle the loading of 9-bit, middle-endian, cLEMENCy executables.
* A scripted IDA processor module to handle disassembly and assembly tasks
* A scripted IDA plugin to allow for dumping modified database content back to a packed 9-bit, middle-endian file (scripted loaders do not support the save_file functionality).
* A scripted IDA plugin to assist with fixing up poorly disassembled functions that might branch/call into regions that continue to be marked as data blocks.## Getting Started
Here refers to the root directory of your IDA installation
* Copy clemency_proc.py to /procs/clemency_proc.py
* Copy clemency_ldr.py to /loaders/clemency_ldr.py
* Copy clemency_dump.py to /plugins/clemency_dump.py
* Copy clemency_fix.py to /plugins/clemency_fix.pyNote that clemency_ldr.py will show up as an available loader for all file formats because cLEMENCy binaries have no distinct file format. If you
elect to use the clemency_ldr, you should also select the corresponding clemency_proc from the Processors drop-down in the load file dialog.### Prerequisites
A working copy of IDA Pro with compatible Python installation allowing for the use of Python plugins and scripts.
### Installing
See above
## Built With
* A sledghammer
## Contributing
Probably not worth your time
## Versioning
This is probably all there will ever be
## Authors
* **Chris Eagle** - *Initial work* -
* **Shellphish** - *The cLEMENCy Assembler bits*## License
This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details
## Acknowledgments
* All the members of Shellphish for letting me join the fun, and who contributed much code and many ideas to these tools