-------------------------------------------------
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
Read more https://packetstormsecurity.com/files/159107/hylandonbase-deserialize.txt

