Saransh Sharma created FINERACT-1033:
----------------------------------------

             Summary: Fineract OAuth Token Change Bug
                 Key: FINERACT-1033
                 URL: https://issues.apache.org/jira/browse/FINERACT-1033
             Project: Apache Fineract
          Issue Type: Bug
          Components: Security
            Reporter: Saransh Sharma


Fineract OAuth previously sent UUID values limited to 0-9, a-f, and dash for 
tokens. It recently changed to using a base-64 encoded value for tokens. This 
seems to work fine in many cases.

Previous token example:
"access_token": "a6c25cb8-7e73-446e-a49b-e9e54c3f26ee"

Current token example:
"access_token": "2VaGUd8Y25fCC1gBpGLZnfoC52s="

However, if the base-64 encoded value contains a + (plus sign) authentication 
fails. Fineract generates and sends the value to the community app with the + 
in the token value. The community app returns the token value with the + 
included. Fineract looks up the value in the database but replaces the + with a 
space before doing so.

In the example attached, Fineract provides an access token of 
4JdlsEQzpa3gsM7CbH5mFxTy+FU=
The community app uses the full token value with the + to request access.
Fineract responds denying access with this message: Invalid access token: 
4JdlsEQzpa3gsM7CbH5mFxTy FU=

 

Please review the attached file for detailed information and logs.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to