There is a lack of input validation for user-provided values in certain functions.
In the GitHub.repo()
function, the user can provide any string for the repo_name
field. These inputs are not validated or safely encoded and are sent directly to the server.
Impact
This means a user can add path traversal patterns like ../
in the input to access any other endpoints on api.github.com
that were not intended.
Patches
Users should upgrade immediately to v5.9.1 or later. All prior versions are vulnerable. We recommend users upgrade to v5.10.0
Workarounds
None
References
Fixed by: #224 (which is available in v5.9.1).
Credits
splitline from the DEVCORE Research Team for reported similar issues in other packages. Audit of equivalent problems in this package resulted in this issue, found by Dilum Aluthge.
There is a lack of input validation for user-provided values in certain functions.
In the
GitHub.repo()
function, the user can provide any string for therepo_name
field. These inputs are not validated or safely encoded and are sent directly to the server.Impact
This means a user can add path traversal patterns like
../
in the input to access any other endpoints onapi.github.com
that were not intended.Patches
Users should upgrade immediately to v5.9.1 or later. All prior versions are vulnerable. We recommend users upgrade to v5.10.0
Workarounds
None
References
Fixed by: #224 (which is available in v5.9.1).
Credits
splitline from the DEVCORE Research Team for reported similar issues in other packages. Audit of equivalent problems in this package resulted in this issue, found by Dilum Aluthge.