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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-34038 — CVE-2026-34038: Coolify में प्रमाणित दूरस्थ कमांड इंजेक्शन | Kitploit
उपकरण/GitHubGitHub/themehackers/cve-2026-34038
भेद्यता विश्लेषणकोड विश्लेषणशोषणवेब एप्लिकेशन शोषणपेपर और शोधलर्निंग और शिक्षा
GitHubthemehackers/cve-2026-34038

CVE-2026-34038

CVE-2026-34038: Coolify में प्रमाणित दूरस्थ कमांड इंजेक्शन

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

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

सभी देखें →

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

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

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

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

CVE-2026-34038: Coolify में प्रमाणित रिमोट कमांड इंजेक्शन

इस रिपॉजिटरी में CVE-2026-34038 का दस्तावेज़ीकरण और विश्लेषण शामिल है, जो Coolify में एक गंभीर कमांड इंजेक्शन भेद्यता है।

सारांश

Coolify में एक प्रमाणित रिमोट कमांड इंजेक्शन भेद्यता (CWE-78) उन उपयोगकर्ताओं को अनुमति देती है जिनके पास एप्लिकेशन "लिखने" की अनुमति है, वे रिमोट कोड निष्पादन (RCE) प्राप्त कर सकते हैं और परिनियोजन लॉग के माध्यम से संवेदनशील पर्यावरण चर (जैसे, डेटाबेस क्रेडेंशियल्स, API कुंजियाँ) को एक्सफ़िल्ट्रेट कर सकते हैं, भले ही बिल्ड वातावरण डॉकर सॉकेट को अलग करता हो।

  • भेद्यता प्रकार: CWE-78 (OS कमांड इंजेक्शन)
  • गंभीरता: गंभीर (CVSS 10.0)
  • वेक्टर: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H

पूर्वापेक्षाएँ और सीमाएँ

  • न्यूनतम आवश्यक अनुमतियाँ: write (कॉन्फ़िगरेशन अपडेट करने के लिए) और read:sensitive (लॉग के माध्यम से एक्सफ़िल्ट्रेटेड डेटा पढ़ने के लिए)।
  • बायपास: एक तंत्र मौजूद है जो स्पष्ट deploy अनुमतियों के बिना टोकन को बिल्ड ट्रिगर करने की अनुमति देता है।
  • हमले की सतह: समग्र हमले की सतफ प्रारंभिक अनुमान से बड़ी है क्योंकि प्रशासनिक/रूट विशेषाधिकारों की आवश्यकता नहीं है।

तकनीकी विवरण

1. dockerfile_location इंजेक्शन

फ़ाइल: app/Jobs/ApplicationDeploymentJob.php

इनपुट में उचित शेल एस्केपिंग या इनपुट सत्यापन का अभाव है, जो ;, &&, और पाइप जैसे मेटाकैरेक्टर का उपयोग करके सीधे कमांड इंजेक्शन की अनुमति देता है।

root@kitploit:~
// Lines 2976-2978: Traditional build with args
$build_command = $this->wrap_build_command_with_env_export(
    "docker build {$this->buildTarget} --network {$this->destination->network} -f {$this->workdir}{$this->dockerfile_location} {$this->build_args} --progress plain -t $this->build_image_name {$this->workdir}"
);

// Lines 526: Also used in simple dockerfile deployment
executeInDocker($this->deployment_uuid, "echo '$dockerfile_base64' | base64 -d | tee {$this->workdir}{$this->dockerfile_location} > /dev/null"),

2. pre_deployment_command निष्पादन

फ़ाइल: app/Jobs/ApplicationDeploymentJob.php (पंक्तियाँ 3882-3909)

जबकि बुनियादी एस्केपिंग की जाती है, फ़ंक्शन स्वाभाविक रूप से नेटिव शेल कमांड चलाता है, जिससे डेटा को सीधे बिल्ड लॉग में डंप करना संभव हो जाता है।

root@kitploit:~
private function run_pre_deployment_command()
{
    if (empty($this->application->pre_deployment_command)) {
        return;
    }
    // ...
    $cmd = "sh -c '".str_replace("'", "'\\''", $this->application->pre_deployment_command)."'";
    $exec = "docker exec {$containerName} {$cmd}";
    $this->execute_remote_command(
        [
            'command' => $exec,
            'hidden' => true,
        ],
    );
}

उपचार

1. dockerfile_location इनपुट को स्वच्छ करें (ApplicationDeploymentJob.php में):

सख्त रेगुलर एक्सप्रेशन का उपयोग करके इनपुट को मान्य करें और शेल तर्क को एस्केप करें:

root@kitploit:~
if ($this->application->dockerfile_location) {
    if (!preg_match('/^[a-zA-Z0-9._\-\/]+$/', $this->application->dockerfile_location)) {
        throw new \RuntimeException("Invalid dockerfile_location: contains forbidden characters");
    }
    if (str_contains($this->application->dockerfile_location, '..')) {
        throw new \RuntimeException("Invalid dockerfile_location: path traversal detected");
    }
    $this->dockerfile_location = escapeshellarg($this->application->dockerfile_location);
}

2. API-स्तर का सत्यापन (bootstrap/helpers/api.php):

root@kitploit:~
'dockerfile_location' => [
    'string',
    'nullable',
    'regex:/^[a-zA-Z0-9._\-\/]+$/',
    'max:255'
],

3. अन्य दिशानिर्देश:

  • शेल मेटाकैरेक्टर को अवरुद्ध करने वाली सख्त अनुमति सूची लागू करें।
  • परिनियोजन अनुमति बायपास लॉजिक को ठीक करें।
  • docker_compose_location जैसे समकक्ष फ़ील्ड का ऑडिट करें।

संदर्भ और श्रेय

  • रिपोर्टर / श्रेय: ThemeHackers
  • आधिकारिक सलाह: GitHub सुरक्षा सलाह (GHSA-qqrq-r9h4-x6wp)
टूल डाउनलोड करें