The SteelCentral Aternity User Experience monitoring solution is prone to a privilege escalation vulnerability that allows a low privileged attacker to gain SYSTEM privileges upon execution of a specially crafted executable file on a target system.
“Riverbed Technology, Inc. is an American information technology company. Its products consist of software and hardware focused on network performance monitoring, application performance management, and wide area networks (WANs), icluding SD-WAN and WAN optimization.”
It is recommended to update the SteelCentral Aternity Agent to the latest version available at the time of the update. SEC Consult recommends to perform a thorough security review conducted by security professionals to identify and resolve all security issues.
Privilege Escalation Vulnerability
The SteelCentral Aternity agent uses an executable running as a high privileged Windows service to perform administrative tasks and collect data from other processes. The SteelCentral Aternity Agent distributes functionality among different processes and uses IPC (Inter-Process Communication) primitives to enable the processes to cooperate. Because access security is not properly implemented upon IPC channels, malicious processes can trick application processes to perform arbitrary actions.
The SteelCentral Aternity User Experience monitoring solution is therefore prone to a privilege escalation vulnerability that allows a low privileged attacker to gain SYSTEM privileges upon execution of a specially crafted executable file on a target system. This vulnerability has proven exploitable and a reliable exploit has been developed.
By using such an exploit an attacker could execute arbitrary code with SYSTEM privileges. An attacker could use SYSTEM privileges to add users, exfiltrate
information and create and remove arbitrary files.
The following individual vulnerabilities have been discovered and chained together into an exploit (see proof of concept):
Insufficient security on InterProcess Communication channels (CVE-2020-15593)
Any user in the system is allowed to access the interprocess communication channel “AternityAgentAssistantIpc”, retrieve a serialized object and call object
methods remotely. Among others, the methods allow any user to:
- Create and/or overwrite arbitrary XML files across the system
- Create arbitrary directories across the system
- Load arbitrary plugins (i.e. CSharp assemblies) from the “Program Files (x86)/Aternity Information Systems/Assistant/plugins” directory and execute code contained in them ()
Directory traversal on plugin load path resolution (CVE-2020-15592)
The remotely callable methods from remotable objects available through interprocess communication allow loading of arbitrary plugins (i.e. CSharp Assemblies) from the “Program Files (x86)/Aternity Information Systems/Assistant/plugins” directory, where the name of the plugin is passed as part of an XML-serialized object. However, because the name of the DLL is concatenated with the “.\plugins” string, a directory traversal vulnerability exists in the way plugins are resolved.
Combining these two vulnerabilities together, privilege escalation from a low-privileged user to SYSTEM can be achieved.
Proof of concept
Exploit not provided in this advisory.
Vulnerable / tested versions
The following version has been tested: SteelCentral Aternity Agent 18.104.22.168
Vendor contact timeline
|2019-12-16||Contacting vendor through firstname.lastname@example.org. Vendor refuses to discuss vulnerability further without serial number and customer name, support ticket closed.|
|2020-01-29||Client supplies vendor contact. Vendor contacted again and technical details supplied.|
|2020-01-30||Vendor asks for more details. Further details are provided.|
|2020-02-06||Vendor provided a remediation procedure to remove vulnerability until permanent fix is provided.|
|2020-02-19||Contacted vendor and asked for progress on final fix. Vendor is not able to provide a final fix timeline estimation.|
|2020-05-28||Relaying advisory and SEC Consult responsible disclosure policy to vendor through client.|
|2020-06-21||Vendor applied vulnerability remediation to all SaaS customers.|
|2020-06-22||SEC Consult and vendor hold meeting to align responsible disclosure timelines.|
|2020-06-22||Vendor published fix for Agent as version v11.0.3 available to all on-premise customers.|
|2020-06-23||Vendor notified all on-premise customers on procedure to remediation and of new Agent 11.0.3.|
|2020-06-24||SEC Consult and vendor hold second meeting to align responsible disclosure timelines.|
|2020-07-24||SEC Consult releases advisory.|
Update SteelCentral Aternity Agent to version 11.0.3. See following URL: https://aternity.force.com/customersuccess/s/euem-agent
Not installing the Recorder and ProductDiagnostics components renders the vulnerability not exploitable. Aternity has also published a workaround: https://aternity.force.com/customersuccess/s/article/Recorder-tool-security-notification-mitigation-steps-for-On-Prem
EOF Eneko Cruz Elejalde / @2020
- TitlePrivilege Escalation Vulnerability
- ProductSteelCentral Aternity Agent
- Vulnerable version22.214.171.124
- CVE numberCVE-2020-15592, CVE-2020-15593
- ByEneko Cruz Elejalde (Office Zurich) | SEC Consult Vulnerability Lab