
CVE-2026-37748 के लिए प्रूफ-ऑफ-कॉन्सेप्ट एक्सप्लॉइट, जो Visitor Management System 1.0 में एक असीमित फ़ाइल अपलोड भेद्यता है, जो PHP वेबशेल अपलोड के माध्यम से रिमोट कोड निष्पादन की ओर ले जाती है।
| फ़ील्ड | जानकारी |
|---|
| CVE ID | CVE-2026-37748 |
| प्रकार | असीमित फ़ाइल अपलोड → रिमोट कोड निष्पादन |
| गंभीरता | उच्च (CVSSv3: 7.2) |
| विक्रेता | sanjay1313 |
| उत्पाद | विज़िटर प्रबंधन प्रणाली |
| संस्करण | 1.0 |
| खोजकर्ता | वरद एपी मेने |
| दिनांक | 2026-04-16 |
| CWE | CWE-434 |
sanjay1313 द्वारा विज़िटर प्रबंधन प्रणाली 1.0 में एक गंभीर असीमित फ़ाइल अपलोड भेद्यता मौजूद है। vms/php/admin_user_insert.php और vms/php/update_1.php में move_uploaded_file() फ़ंक्शन को बिना किसी MIME प्रकार, फ़ाइल एक्सटेंशन या सामग्री सत्यापन के कॉल किया जाता है। एक प्रमाणित व्यवस्थापक छवि अपलोड फ़ील्ड के माध्यम से PHP वेबशेल अपलोड कर सकता है और URL के माध्यम से अपलोड की गई फ़ाइल तक सीधे पहुँचकर सर्वर पर रिमोट कोड निष्पादन प्राप्त कर सकता है।
CVE ID: CVE-2026-37748 CWE: CWE-434 — खतरनाक प्रकार की फ़ाइल का असीमित अपलोड CVSSv3: 7.2 उच्च (AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H)
विज़िटर प्रबंधन प्रणाली 1.0 GitHub पर sanjay1313 द्वारा एक PHP/MySQL वेब एप्लिकेशन है जिसका उपयोग संगठनों में विज़िटर रिकॉर्ड प्रबंधित करने के लिए किया जाता है।
विक्रेता URL: https://github.com/sanjay1313/Visitor-Management-System
vms/php/admin_user_insert.php vms/php/update_1.php
$image = $_FILES['image']['name'];
$tmp = $_FILES['image']['tmp_name'];
move_uploaded_file($tmp, "../images/" . $image);
फ़ाइल एक्सटेंशन, MIME प्रकार या सामग्री का कोई सत्यापन नहीं।
चरण 1 — वेबशेल फ़ाइल shell.php बनाएं:
चरण 2 — व्यवस्थापक पैनल में लॉगिन करें: http://target/vms/ उपयोगकर्ता नाम: admin पासवर्ड: admin
चरण 3 — shell.php को प्रोफ़ाइल छवि के रूप में अपलोड करें: व्यवस्थापक उपयोगकर्ता → नया व्यवस्थापक जोड़ें पर नेविगेट करें shell.php को प्रोफ़ाइल फ़ोटो के रूप में अपलोड करें
चरण 4 — कमांड निष्पादित करें: http://target/vms/images/shell.php?cmd=id http://target/vms/images/shell.php?cmd=whoami
// 1. फ़ाइल एक्सटेंशन सत्यापित करें
$allowed = ['jpg', 'jpeg', 'png', 'gif'];
$ext = strtolower(pathinfo($_FILES['image']['name'], PATHINFO_EXTENSION));
if (!in_array($ext, $allowed)) {
die("अमान्य फ़ाइल प्रकार");
}
// 2. MIME प्रकार सत्यापित करें
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mime = finfo_file($finfo, $_FILES['image']['tmp_name']);
$allowed_mime = ['image/jpeg', 'image/png', 'image/gif'];
if (!in_array($mime, $allowed_mime)) {
die("अमान्य MIME प्रकार");
}
// 3. सर्वर पर फ़ाइल का नाम बदलें
$new_name = uniqid() . '.' . $ext;
move_uploaded_file($_FILES['image']['tmp_name'], "../images/" . $new_name);
| दिनांक | घटना |
|---|---|
| 2026-03-15 | भेद्यता खोजी गई |
| 2026-03-15 | MITRE को रिपोर्ट की गई |
| 2026-04-02 | CVE-2026-37748 निर्धारित किया गया |
| 2026-04-16 | सार्वजनिक प्रकटीकरण |
| 2026-04-16 | प्रकाशन के बारे में MITRE को सूचित किया गया |
| 2026-04-17 | GitHub मुद्दों के माध्यम से विक्रेता को सूचित किया गया |
वरद अरचना प्रशांत मेने