CVSSv3.1 Score ------------------------------------------------- AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H Vendor ------------------------------------------------- Hyland Software - (https://www.hyland.com/en/ and https://www.onbase.com/en/) Product ------------------------------------------------- Hyland OnBase All derivatives based on OnBase Versions Affected ------------------------------------------------- All versions up to and prior to OnBase Foundation EP1 (tested: 19.8.9.1000) and OnBase 18 (tested: 18.0.0.32). OnBase Foundation EP2 and OnBase Foundation EP3 were not available to test, but Hyland's response indicates that they are not likely to have fixed the vulnerabilities, especially given how numerous the instances of insecure deserialization are. Credit ------------------------------------------------- Adaptive Security Consulting Vulnerability Summary ------------------------------------------------- Because Hyland OnBase largely relies on client-side validation, the server-side contains a number of critical deserialization flaws allowing remote attackers to run arbitrary code on the OnBase server. All versions of OnBase were found to be equally vulnerable. Technical Details ------------------------------------------------- Hyland OnBase uses ASP.NET's BinaryFormatter.Deserialize to deserialize user input allowing attackers to directly inject bytecode into SOAP messages. Using ysoserial.net, we were able to create payloads that were then encoded and sent to the OnBase server where they were executed. It was also noted that the OnBase server also allows several XML-based attacks, including insecure XML deserialization using several XML deserialization libraries, however the use of BinaryFormatter made attacks significantly easier as ysoserial.net and other tools support it by default while XML-based deserialization required more manual proof of concept creation. The XML-based deserialization vulnerabilities are less frequent than the BinaryFormatter because different deserializers seem to be used within the application. Two instances of insecure JSON deserialization were also noted that allowed executing arbitrary code. It is likely that the Unity Client is also vulnerable, however it was not a major focus of the penetration test. Solution ------------------------------------------------- Unfortunately, attempts to notify Hyland of the vulnerabilities have been rebuffed as not being something that they have to fix since fixing vulnerabilities, according to the Director of Application Security, is "creating custom code" and no known fix is in place. It is recommended that users try to mitigate the vulnerability by ensuring that the OnBase server is inaccessible to anyone other than trusted users and that a WAF be used (note that OnBase can use "optimized" communication that is pure binary -- if this is used, it will be much harder to configure the WAF to protect against these vulnerabilities). Timeline ------------------------------------------------- 07 May 2019 - Adaptive Security Consulting discovered a series of vulnerabilities in medical records management and search applications being considered by our client 15 May 2019 - The client was provided with the results of the assessment, including POCs for a number of high and critical vulnerabilities 12 July 2019 - Client asked for more information and demonstrations 01 October 2019 - Client asked to test latest version of Hyland software 15 October 2019 - Client was informed that EP1 contained many of the same vulnerabilities March 2020 - Client contacted Hyland and spoke with the Director of Application Security who said that fixing vulnerabilities was "writing custom code" and that Hyland "doesn't write custom code" 21 April 2020 - Adaptive Security Consulting attempted to contact Hyland's Application Security Team via email on behalf of client, but attempts were ignored