Lack of authentication mechanism in Jenkins Git Plugin webhook
Moderate severity
GitHub Reviewed
Published
Jul 28, 2022
to the GitHub Advisory Database
•
Updated Jan 5, 2024
Description
Published by the National Vulnerability Database
Jul 27, 2022
Published to the GitHub Advisory Database
Jul 28, 2022
Reviewed
Aug 10, 2022
Last updated
Jan 5, 2024
Git Plugin provides a webhook endpoint at
/git/notifyCommit
that can be used to notify Jenkins of changes to an SCM repository. For its most basic functionality, this endpoint receives a repository URL, and Jenkins will schedule polling for all jobs configured with the specified repository. In Git Plugin 4.11.3 and earlier, this endpoint can be accessed with GET requests and without authentication.This webhook endpoint does not require POST requests, resulting in a cross-site request forgery (CSRF) vulnerability.
Git Plugin 4.11.4 requires a
token
parameter which will act as an authentication for the webhook endpoint. While GET requests remain allowed, attackers would need to be able to provide a webhook token. For more information see the plugin documentation.References