diff --git a/pwndbg/radare2.py b/pwndbg/radare2.py index 91e6fbeae..ae51f668b 100644 --- a/pwndbg/radare2.py +++ b/pwndbg/radare2.py @@ -1,3 +1,5 @@ +import pwndbg.elf + radare2 = {} @@ -6,7 +8,10 @@ def r2pipe(filename): if r2: return r2 import r2pipe - r2 = r2pipe.open(filename) + flags = ['-e', 'io.cache=true'] + if pwndbg.elf.get_elf_info(filename).is_pie and pwndbg.elf.exe(): + flags.extend(['-B', hex(pwndbg.elf.exe().address)]) + r2 = r2pipe.open(filename, flags=flags) radare2[filename] = r2 r2.cmd("aaaa") return r2