Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2024-27630 — CVE-2024–27630 संदर्भ | Kitploit
उपकरण/GitHubGitHub/ally-petitt/cve-2024-27630
भेद्यता विश्लेषणजानकारी एकत्र करनावेब सुरक्षापेनिट्रेशन टेस्टिंगपेपर और शोधलर्निंग और शिक्षा
GitHubally-petitt/cve-2024-27630

CVE-2024-27630

CVE-2024–27630 संदर्भ

रिपॉजिटरी देखें
12 साल पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

CVE-2024–27630 भेद्यता विवरण

अवलोकन

Savane v3.12 और उससे पहले के संस्करणों में, /bugs/index.php से फ़ाइल हटाते समय file_id पैरामीटर पर सत्यापन की कमी के कारण एक असुरक्षित प्रत्यक्ष वस्तु संदर्भ (IDOR) भेद्यता उत्पन्न होती है, जिससे बग ट्रैकर वाले समूह का एक प्रमाणित प्रशासक किसी भी बग ट्रैकर की फ़ाइल अनुलग्नकों को मनमाने ढंग से हटा सकता है, जिससे इन फ़ाइलों की उपलब्धता में कमी आती है। चूंकि फ़ाइल आईडी प्रत्येक नए अपलोड के साथ बढ़ती हैं, इसलिए एक स्क्रिप्ट बनाना संभव है जो file_id द्वारा सर्वर पर सभी फ़ाइल अनुलग्नकों को पुनरावृत्त रूप से हटा देती है।

CWE वर्गीकरण: CWE-639: उपयोगकर्ता-नियंत्रित कुंजी के माध्यम से प्राधिकरण उपमार्ग

रिपोर्टकर्ता: Ally Petitt

प्रभावित उत्पाद: Savane

प्रभावित संस्करण: 3.12 और पूर्ववर्ती

तकनीकी विवरण

बग ट्रैकर पर फ़ाइल अनुलग्नकों को हटाने के लिए जिम्मेदार फ़ंक्शन trackers_data_delete_file() है, जो नीचे दिए गए कोड ब्लॉक में परिभाषित है।

frontend/php/include/trackers/data.php:2417

root@kitploit:~
function trackers_data_delete_file ($group_id, $item_id, $file_id)
{
  global $sys_trackers_attachments_dir;
  # सुनिश्चित करें कि अनुलग्नक समूह से संबंधित है।
  $res = db_execute ("
    SELECT bug_id from " . ARTIFACT . " WHERE bug_id = ? AND group_id = ?",
    [$item_id, $group_id]
  );
  if (db_numrows ($res) <= 0)
    {
      # TRANSLATORS: तर्क आइटम आईडी (एक संख्या) है।
      $msg = sprintf (
        _("Item #%s doesn't belong to project"), $item_id
      );
      fb ($msg, 1);
      return;
    }

  $result = false;
  # अनुलग्नक हटाएं।
  if (unlink ("$sys_trackers_attachments_dir/$file_id")) 
    $result = db_execute ("
      DELETE FROM trackers_file WHERE item_id = ?  AND file_id = ?",
      [$item_id, $file_id]
    );

फ़ंक्शन item_id में निर्दिष्ट बग आईडी का समूह, जिसे $group_id कहा जाता है, यह सत्यापित करने के लिए एक SQL क्वेरी से शुरू होता है कि क्या हमलावर उस समूह का सदस्य है। फ़ंक्शन यह जाँचने में विफल रहता है कि क्या file_id भी उसी समूह का हिस्सा है, जिसका अर्थ है कि जब तक item_id हमलावर के समूह में एक मान्य बग से मेल खाता है, हमलावर file_id को अपलोड निर्देशिका /var/lib/savane/trackers_attachments के भीतर किसी भी फ़ाइल की ओर इंगित करने के लिए संशोधित कर सकता है।

इसके अतिरिक्त, यह फ़ंक्शन केवल बग ट्रैकर प्रशासकों के लिए सुलभ है।

frontend/php/bugs/index.php:586

root@kitploit:~
  case 'delete_file':
    # एक संलग्न फ़ाइल निकालें।
    if ($is_trackeradmin)
      {
        trackers_data_delete_file($group_id, $item_id, $item_file_id);

         # पिछली सेटिंग्स अनसेट करें और आइटम पर वापस जाएं।
         $depends_search = $reassign_change_project_search = $add_cc
           = $input_file = $changed = $vfl = $details = null;
         include '../include/trackers_run/mod.php';
      }
    else
      exit_permission_denied ();
    break;

सत्यापन चरण

ये चरण एक ऐसी फ़ाइल को हटाने का प्रदर्शन करते हैं जो अनधिकृत है, हालांकि, ध्यान दें कि एक हमलावर उनकी आईडी द्वारा सभी फ़ाइलों के विलोपन को स्वचालित कर सकता है क्योंकि वे अनुमान लगाने योग्य हैं।

  1. बगट्रैकर वाले एक समूह का प्रशासक खाता रखें (हमलावर खाता)।
  2. एक अलग उपयोगकर्ता खाते (पीड़ित) के साथ, एक बग रिपोर्ट में एक फ़ाइल अनुलग्नक अपलोड करें, जो एक ऐसे समूह से संबंधित है जिसका हमलावर प्रशासक नहीं है। बाद की अपलोड निर्देशिका का एक नमूना इस प्रकार है जहाँ फ़ाइल 40231 पीड़ित द्वारा अपलोड की गई थी:
root@kitploit:~
root@60ae93fe131f:/var/lib/savane/trackers_attachments# ls
40226  40227  40230  40231
  1. उस समूह के मुखपृष्ठ पर जाएँ जिसका हमलावर प्रशासक है। फिर, Bugs > Browse पर जाएँ और तालिका के सबसे बाएँ कॉलम में एक मान्य आइटम आईडी नोट करें। इस आईडी का उपयोग अगले चरण में किया जाएगा।

  2. हमलावर के रूप में, पथ /bugs/index.php?func=delete_file&item_id=<ATTACKER_ITEM_ID>&item_file_id=<FILE_ID_TO_DELETE> पर एक get अनुरोध करें।

    मेरे मामले में, यह इस तरह दिखता है http://172.17.0.2:7890/bugs/index.php?func=delete_file&item_id=50697&item_file_id=40231।

  3. सत्यापित करें कि पीड़ित की फ़ाइल (एक ऐसे समूह से जिस पर हमलावर के पास विशेषाधिकार नहीं हैं) हटा दी गई है। उदाहरण के लिए:

root@kitploit:~
root@60ae93fe131f:/var/lib/savane/trackers_attachments# ls
40226  40227  40230

शमन

Savane संस्करण 3.13 या उच्चतर पर अपग्रेड करें। पैच यहाँ पाया जा सकता है।

टूल डाउनलोड करें