DynamoRIO / DynamoRIO/dynamorio
How to disable DR’s randomization policy to code cache?
- Dominant language
- C
- Stars
- 3.2k
- Forks
- 629
- Avg merge
- 2d 15h
- Merged PRs (30d)
- 31
Description
My PC is Intel-x86-64, running Ubuntu 16.04. My project needs to instrument all system-calls issued by the target application. Therefore, i need to modify the source code of Dynamorio to put an extra hook before each syscall-instruction. I intend to find out that piece of source code with debugging tricks. In detail, i will first determine who puts the syscall-instruction into code cache by setting watchpoints, and then trace reversely.
However, i found that the address space of code caches is randomized, even when the system-wide ASLR is disabled and GDB's disable-randomize is off. For example, in the first run, the "uname" system call is invoked at address 0x0000000052505016, and it is 0x00000000474b5016 in the second run. This makes me failed to set watchpoints. So my question is how can i disable DR’s randomization policy to code cache? Is there an option?
Contributor guide
Assessment
This issue has not been assessed yet.