This tool lets you search your gadgets on your binaries to facilitate your ROP exploitation. ROPgadget supports ELF, PE and Mach-O format on x86, x64, ARM, ARM64, PowerPC, SPARC, MIPS, RISC-V 64, and RISC-V Compressed architectures.
Other
3.96k
stars
557
forks
source link
Capstone 6.0: NameError: name 'CS_ARCH_ARM64' is not defined. #202
The latest capstone alpha renamed ARM64 constants to AARCH64. This breaks running ropgadget on arm64 binaries.
Traceback (most recent call last):
File "/tmp/venv/bin/ROPgadget", line 12, in <module>
ropgadget.main()
File "/tmp/venv/lib/python3.10/site-packages/ropgadget/__init__.py", line 30, in main
sys.exit(0 if Core(args.getArgs()).analyze() else 1)
File "/tmp/venv/lib/python3.10/site-packages/ropgadget/core.py", line 244, in analyze
self.__binary = Binary(self.__options)
File "/tmp/venv/lib/python3.10/site-packages/ropgadget/binary.py", line 40, in __init__
self.__binary = ELF(self.__rawBinary)
File "/tmp/venv/lib/python3.10/site-packages/ropgadget/loaders/elf.py", line 229, in __init__
self.__setHeaderElf()
File "/tmp/venv/lib/python3.10/site-packages/ropgadget/loaders/elf.py", line 255, in __setHeaderElf
self.getArch() # Check if architecture is supported
File "/tmp/venv/lib/python3.10/site-packages/ropgadget/loaders/elf.py", line 337, in getArch
return CS_ARCH_ARM64
NameError: name 'CS_ARCH_ARM64' is not defined. Did you mean: 'CS_ARCH_ARM'?
The latest capstone alpha renamed ARM64 constants to AARCH64. This breaks running ropgadget on arm64 binaries.