CVE-2021-47711

8.8 HIGH

📋 TL;DR

This SQL injection vulnerability in Kentico Xperience allows authenticated editors to execute arbitrary SQL queries through online marketing macro parameters. Attackers can access, modify, or delete database content by exploiting insufficient input validation. Organizations using vulnerable Kentico Xperience versions with authenticated editor accounts are affected.

💻 Affected Systems

Products:
  • Kentico Xperience
Versions: Versions prior to hotfixes released in October 2021
Operating Systems: Windows, Linux
Default Config Vulnerable: ⚠️ Yes
Notes: Requires authenticated editor access to online marketing macros functionality.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete database compromise including data theft, data destruction, privilege escalation to administrative accounts, and potential server takeover via SQL server command execution.

🟠

Likely Case

Unauthorized data access and manipulation of marketing data, user information, and content management system data by authenticated malicious editors.

🟢

If Mitigated

Limited impact with proper input validation, parameterized queries, and least privilege access controls in place.

🌐 Internet-Facing: MEDIUM
🏢 Internal Only: HIGH

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires authenticated editor access but uses simple SQL injection techniques against known vulnerable parameters.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Hotfixes available via Kentico DevNet

Vendor Advisory: https://devnet.kentico.com/download/hotfixes

Restart Required: Yes

Instructions:

1. Download appropriate hotfix from Kentico DevNet. 2. Backup your Kentico Xperience installation and database. 3. Apply the hotfix according to Kentico's installation instructions. 4. Restart the application and verify functionality.

🔧 Temporary Workarounds

Input Validation Enhancement

all

Implement strict input validation for all macro method parameters to reject SQL special characters.

Parameterized Queries

all

Modify online marketing macro code to use parameterized SQL queries instead of string concatenation.

🧯 If You Can't Patch

  • Restrict editor access to only trusted personnel and implement strict access controls.
  • Implement web application firewall (WAF) rules to block SQL injection patterns targeting macro parameters.

🔍 How to Verify

Check if Vulnerable:

Review Kentico Xperience version and check if hotfixes for CVE-2021-47711 have been applied. Test macro parameters for SQL injection vulnerabilities.

Check Version:

Check Kentico administration dashboard or web.config for version information.

Verify Fix Applied:

Verify hotfix installation through Kentico administration interface and test that SQL injection attempts on macro parameters are properly blocked.

📡 Detection & Monitoring

Log Indicators:

  • Unusual SQL queries in database logs
  • Multiple failed macro parameter validation attempts
  • Suspicious editor account activity

Network Indicators:

  • SQL error messages in HTTP responses
  • Unusual parameter patterns in POST requests to macro endpoints

SIEM Query:

source="web_server" AND (url="*macro*" AND (param="*sql*" OR param="*union*" OR param="*select*"))

🔗 References

📤 Share & Export