GHSA-5679-7QRC-5M7J
Vulnerability from github – Published: 2020-04-29 16:31 – Updated: 2021-09-02 18:48Impact
Authenticated users can craft a request that reveals Execution data and logs and Job details that they are not authorized to see.
Depending on the configuration and the way that Rundeck is used, this could result in anything between a high severity risk, or a very low risk. If access is tightly restricted and all users on the system have access to all projects, this is not really much of an issue. If access is wider and allows login for users that do not have access to any projects, or project access is restricted, there is a larger issue. If access is meant to be restricted and secrets, sensitive data, or intellectual property are exposed in Rundeck execution output and job data, the risk becomes much higher.
Details
An authenticated user could craft a request to:
- View Executions and download execution logs without access to
readorviewthe associated Job, or ad-hoc resource. - Get the list of running executions in a project, without Event
readaccess, if they havereadaccess to view the project. - View the Options definitions of a Job without access to view the Job.
- View the definition of a workflow step of a Job without access to view the Job.
- View the SCM diff of a modified Job definition if SCM is enabled, without Project
exportaccess level. - View the New User Profile Form for a different username, without User
adminaccess. Note: they would not be allowed to create or modify a profile for a different user, or reveal any user profile information for a different user.
Some authenticated API requests were not correctly checking appropriate authorization levels:
- The list of running Executions would be sent without
readaccess to Events. - The Plugin Input Parameters for a SCM plugin would be sent without authorization for project
import,scm_import,export, orscm_exportactions. - Job Retry action could retry an execution without
readorviewaccess to the Execution, which would reveal the Execution's option values. (runaccess to the Job was still required).
Patches
Upgrade to Rundeck version 3.2.6
Workarounds
None
References
Report
If you have any questions or comments about this advisory: * Email us at security@rundeck.com
To report security issues to Rundeck please use the form at http://rundeck.com/security
Reporter: Justine Osborne of Apple Information Security
{
"affected": [
{
"package": {
"ecosystem": "Maven",
"name": "org.rundeck:rundeck"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "3.2.6"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2020-11009"
],
"database_specific": {
"cwe_ids": [
"CWE-200",
"CWE-639"
],
"github_reviewed": true,
"github_reviewed_at": "2020-04-29T16:30:45Z",
"nvd_published_at": "2020-04-29T17:15:00Z",
"severity": "MODERATE"
},
"details": "### Impact\n\nAuthenticated users can craft a request that reveals Execution data and logs and Job details that they are not authorized to see.\n\n\u003e Depending on the configuration and the way that Rundeck is used, this could result in anything between a high severity risk, or a very low risk. If access is tightly restricted and all users on the system have access to all projects, this is not really much of an issue. If access is wider and allows login for users that do not have access to any projects, or project access is restricted, there is a larger issue. If access is meant to be restricted and secrets, sensitive data, or intellectual property are exposed in Rundeck execution output and job data, the risk becomes much higher.\n\n### Details\n\nAn authenticated user could craft a request to:\n\n* View Executions and download execution logs without access to `read` or `view` the associated Job, or ad-hoc resource.\n* Get the list of running executions in a project, without Event `read` access, if they have `read` access to view the project.\n* View the Options definitions of a Job without access to view the Job.\n* View the definition of a workflow step of a Job without access to view the Job.\n* View the SCM diff of a modified Job definition if SCM is enabled, without Project `export` access level.\n* View the New User Profile Form for a different username, without User `admin` access. Note: they would not be allowed to create or modify a profile for a different user, or reveal any user profile information for a different user.\n\nSome authenticated API requests were not correctly checking appropriate authorization levels:\n\n* The list of running Executions would be sent without `read` access to Events.\n* The Plugin Input Parameters for a SCM plugin would be sent without authorization for project `import`,`scm_import`,`export`, or `scm_export` actions.\n* Job Retry action could retry an execution without `read` or `view` access to the Execution, which would reveal the Execution\u0027s option values. (`run` access to the Job was still required).\n\n### Patches\nUpgrade to Rundeck version 3.2.6\n\n### Workarounds\nNone\n\n### References\n[3.2.6 Release Notes](https://docs.rundeck.com/docs/history/3_2_x/version-3.2.6.html)\n\n### Report\nIf you have any questions or comments about this advisory:\n* Email us at [security@rundeck.com](mailto:security@rundeck.com)\n\nTo report security issues to Rundeck please use the form at [http://rundeck.com/security](http://rundeck.com/security)\n\nReporter: Justine Osborne of Apple Information Security",
"id": "GHSA-5679-7qrc-5m7j",
"modified": "2021-09-02T18:48:11Z",
"published": "2020-04-29T16:31:12Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/rundeck/rundeck/security/advisories/GHSA-5679-7qrc-5m7j"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2020-11009"
},
{
"type": "WEB",
"url": "https://docs.rundeck.com/docs/history/3_2_x/version-3.2.6.html"
},
{
"type": "PACKAGE",
"url": "https://github.com/rundeck/rundeck"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
"type": "CVSS_V3"
}
],
"summary": "IDOR can reveal execution data and logs to unauthorized user in Rundeck"
}
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.