Parsl, SQL Injection, High

Listen to this Post

The vulnerability exists within the `parsl.monitoring.visualization.views.py` module of the Parsl library. User-supplied `workflow_id` parameters are taken directly from URL routes and concatenated into raw SQL query strings using Python’s unsafe `%` operator for string formatting, without any sanitization or parameterization. This occurs in multiple view functions handling dashboard endpoints like /workflow/<workflow_id>/dag_group_by_states. An attacker can inject SQL meta-characters (like single quotes) into the `workflow_id` value in the HTTP request. When the server builds the SQL command, the injected payload becomes part of the executed query syntax. This allows for boolean-based blind, time-based, and union-based SQL injection attacks against the underlying monitoring database (typically SQLite), enabling unauthorized data access or system disruption.
Platform: Parsl
Version: Multiple
Vulnerability : SQL Injection
Severity: High
date: Undisclosed

Prediction: Patch pending

What Undercode Say:

pip install 'parsl[monitoring,visualization]'
parsl-visualize --port 8080
curl "http://localhost:8080/workflow/VALID_ID'%20AND%20'1'='0/dag_group_by_states"
curl "http://localhost:8080/workflow/VALID_ID'%20AND%20'1'='1/dag_group_by_states"

How Exploit:

Inject workflow_id parameter.
Boolean-based blind SQLi.
Use UNION queries.
Exfiltrate database contents.

Protection from this CVE

Use parameterized queries.
Implement input validation.
Apply SQL escaping.

Impact:

[bash]
Data exfiltration possible.
Access control bypass.
Denial of service.

🎯Let’s Practice Exploiting & Learn Patching For Free:

Sources:

Reported By: github.com
Extra Source Hub:
Undercode

🔐JOIN OUR CYBER WORLD [ CVE News • HackMonitor • UndercodeNews ]

💬 Whatsapp | 💬 Telegram

📢 Follow DailyCVE & Stay Tuned:

𝕏 formerly Twitter 🐦 | @ Threads | 🔗 Linkedin Featured Image

Scroll to Top