You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Combined with user-provided data, this allows JSON injection that leads to security vulnerabilities in the Checkout-Java-SDK library (e.g. manipulating OrdersCreateRequest via injection in user-provided address data) when no additional security measures are in place (e.g. restricting character sets or input lengths).
I created a commit on a forked repo that shows this defect with two failing tests: j13z@3dce573
The text was updated successfully, but these errors were encountered:
Hi,
this issue is affecting our customers and we would like to get it solved. It's a major security issue.
I'm a bit surprised that there is no reaction here?!
General information
Issue description
The JSON serializer implementation does not properly JSON-encode string values. In fact, they are not encoded at all. See this critical line that constructs the JSON value (the right part after the colon) by just quoting the input string value and otherwise copying it unchanged:
https://github.com/paypal/paypalhttp_java/blob/master/paypalhttp/src/main/java/com/paypal/http/serializer/Json.java#L133
Combined with user-provided data, this allows JSON injection that leads to security vulnerabilities in the Checkout-Java-SDK library (e.g. manipulating
OrdersCreateRequest
via injection in user-provided address data) when no additional security measures are in place (e.g. restricting character sets or input lengths).I created a commit on a forked repo that shows this defect with two failing tests: j13z@3dce573
The text was updated successfully, but these errors were encountered: