CVE-2020-11103
📋 TL;DR
This vulnerability in Webswing's JsLink mechanism allows remote attackers to execute arbitrary code on affected servers. It affects Webswing installations before version 2.6.12 LTS, and versions 2.7.x and 20.x before 20.1. Any organization using vulnerable Webswing versions is at risk of complete server compromise.
💻 Affected Systems
- Webswing
📦 What is this software?
Webswing by Webswing
Webswing by Webswing
⚠️ Risk & Real-World Impact
Worst Case
Complete system takeover with administrative privileges, data exfiltration, lateral movement within network, and persistent backdoor installation.
Likely Case
Remote code execution leading to application compromise, data theft, and potential ransomware deployment.
If Mitigated
Limited impact if proper network segmentation, least privilege, and monitoring are in place, but still significant risk.
🎯 Exploit Status
The vulnerability is in the JsLink mechanism which processes JavaScript from URLs, making exploitation straightforward for attackers.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 2.6.12 LTS, 20.1
Vendor Advisory: https://www.webswing.org/docs/2.6/discover/release_notes.html#release-notes-2-6-12
Restart Required: Yes
Instructions:
1. Download patched version from Webswing website. 2. Backup current installation. 3. Stop Webswing service. 4. Install patched version. 5. Restart Webswing service. 6. Verify version is updated.
🔧 Temporary Workarounds
Disable JsLink feature
allTemporarily disable the vulnerable JsLink mechanism until patching can be completed.
Edit webswing.config file and set 'jsLinkEnabled' to false
Network isolation
linuxRestrict network access to Webswing instances using firewall rules.
iptables -A INPUT -p tcp --dport [webswing-port] -s [trusted-ips] -j ACCEPT
iptables -A INPUT -p tcp --dport [webswing-port] -j DROP
🧯 If You Can't Patch
- Isolate Webswing instances in separate network segments with strict firewall rules
- Implement web application firewall (WAF) rules to block suspicious JsLink patterns
🔍 How to Verify
Check if Vulnerable:
Check Webswing version in admin console or configuration files. If version is before 2.6.12 LTS, or 2.7.x/20.x before 20.1, system is vulnerable.
Check Version:
Check webswing.config file or admin interface for version information
Verify Fix Applied:
Verify Webswing version is 2.6.12 LTS or 20.1 or later. Test JsLink functionality to ensure it's properly secured.
📡 Detection & Monitoring
Log Indicators:
- Unusual JsLink requests in access logs
- Suspicious JavaScript execution patterns
- Unexpected process creation from Webswing
Network Indicators:
- Outbound connections from Webswing to unusual destinations
- Large data transfers from Webswing server
SIEM Query:
source="webswing" AND (url="*jslink*" OR message="*JsLink*")
🔗 References
- https://bitbucket.org/meszarv/webswing/issues/375/webswing-jslink-mechanism-remote-code
- https://www.webswing.org/docs/2.6/discover/release_notes.html#release-notes-2-6-12
- https://bitbucket.org/meszarv/webswing/issues/375/webswing-jslink-mechanism-remote-code
- https://www.webswing.org/docs/2.6/discover/release_notes.html#release-notes-2-6-12