add ropper

This commit is contained in:
2020-12-02 12:13:45 +00:00
parent b61a844605
commit dc989748f0
4 changed files with 16 additions and 3 deletions

View File

@ -84,14 +84,17 @@ class ROPMakerX86(object):
return p
def __write4bytes(self, address, data, data_addr, popDst, popSrc, write4where):
# write address to dst
p = pack("<I", popDst['vaddr'])
p += pack("<I", address)
p += self.__padding(popDst, {})
p += self.__padding(popDst, {})
# write data to src
p += pack("<I", popSrc['vaddr'])
p += data
p += self.__padding(popSrc, {popDst["gadget"].split()[1]: data_addr}) # Don't overwrite reg dst
# write src to [dst] (address pointed to by dst)
p += pack("<I", write4where['vaddr'])
p += self.__padding(write4where, {})