{"id":"CVE-2019-10311","aliases":["EUVD-2022-4738","GHSA-pc24-753j-gmqf"],"status":"published","title":"Jenkins Ansible Tower Plugin missing permission check","description":"A missing permission check in Jenkins Ansible Tower Plugin 0.9.1 and earlier in the TowerInstallation.TowerInstallationDescriptor#doTestTowerConnection form validation method allowed attackers with Overall/Read permission to connect to an attacker-specified URL using attacker-specified credentials IDs obtained through another method, capturing credentials stored in Jenkins.","severity":{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-09","score":0.01814,"percentile":0.78817,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-862"],"published":"2019-04-30T12:25:17Z","modified":"2026-11-09T10:45:06Z","fixes":[{"ecosystem":"Maven","package":"org.jenkins-ci.plugins:ansible-tower","fixed_in":["0.9.2"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"Maven","package":"org.jenkins-ci.plugins:ansible-tower","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"0.9.1"},{"fixed":"0.9.2"}]}]},{"source":"osv","ecosystem":"Maven","package":"org.jenkins-ci.plugins:ansible-tower","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.9.2"}]}],"versions":["0.5.0","0.5.1","0.5.2","0.5.3","0.5.4","0.6.0","0.6.1","0.7.0","0.8.0","0.8.1","0.8.2","0.8.3","0.8.4","0.8.5","0.8.6","0.8.7","0.9.0","0.9.1"]}],"products":[{"vendor":"jenkins","product":"ansible_tower"},{"vendor":"jenkins project","product":"jenkins ansible tower plugin"}],"references":[{"url":"http://www.openwall.com/lists/oss-security/2019/04/30/5","tags":["mailing-list","x_refsource_MLIST","x_transferred","Mailing List","Third Party Advisory","advisory","web"]},{"url":"http://www.securityfocus.com/bid/108159","tags":["vdb-entry","x_refsource_BID","x_transferred","Third Party Advisory","VDB Entry","advisory"]},{"url":"https://jenkins.io/security/advisory/2019-04-30/#SECURITY-1355","tags":["x_refsource_CONFIRM","x_transferred","Vendor Advisory","advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2019-10311","tags":["advisory"]},{"url":"https://web.archive.org/web/20200227073756/http://www.securityfocus.com/bid/108159","tags":["web"]},{"url":"https://www.jenkins.io/security/advisory/2019-04-30/#SECURITY-1355%20(1)","tags":["web"]},{"url":"https://github.com/advisories/GHSA-pc24-753j-gmqf"}],"sources":{"cve":[{"id":"CVE-2019-10311","description":"A missing permission check in Jenkins Ansible Tower Plugin 0.9.1 and earlier in the TowerInstallation.TowerInstallationDescriptor#doTestTowerConnection form validation method allowed attackers with Overall/Read permission to connect to an attacker-specified URL using attacker-specified credentials IDs obtained through another method, capturing credentials stored in Jenkins.","status":"published","published":"2019-04-30T12:25:17Z","modified":"2024-08-04T22:17:20.32Z","updated_at":"2026-11-02T14:20:19.399352Z"}],"euvd":[{"id":"EUVD-2022-4738","description":"A missing permission check in Jenkins Ansible Tower Plugin 0.9.1 and earlier in the TowerInstallation.TowerInstallationDescriptor#doTestTowerConnection form validation method allowed attackers with Overall/Read permission to connect to an attacker-specified URL using attacker-specified credentials IDs obtained through another method, capturing credentials stored in Jenkins.","status":"published","published":"2019-04-30T12:25:17Z","modified":"2024-08-04T22:17:20Z","updated_at":"2026-11-03T02:40:53.055308Z"}],"ghsa":[{"id":"GHSA-pc24-753j-gmqf","title":"Jenkins Ansible Tower Plugin missing permission check","description":"Jenkins Ansible Tower Plugin did not perform permission checks on a method implementing form validation. This allowed users with Overall/Read access to Jenkins to connect to an attacker-specified URL using attacker-specified credentials IDs obtained through another method, capturing credentials stored in Jenkins.\n\nAdditionally, this form validation method did not require POST requests, resulting in a cross-site request forgery vulnerability.\n\nThis form validation method now requires POST requests and Overall/Administer permissions.","status":"published","published":"2022-05-24T16:44:55Z","modified":"2023-10-26T21:48:27Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-862"],"updated_at":"2026-11-02T14:37:10.053831Z"}],"nvd":[{"id":"CVE-2019-10311","description":"A missing permission check in Jenkins Ansible Tower Plugin 0.9.1 and earlier in the TowerInstallation.TowerInstallationDescriptor#doTestTowerConnection form validation method allowed attackers with Overall/Read permission to connect to an attacker-specified URL using attacker-specified credentials IDs obtained through another method, capturing credentials stored in Jenkins.","status":"published","published":"2019-04-30T13:29:05.533Z","modified":"2026-06-17T02:10:41.413Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":4,"vector":"AV:N/AC:L/Au:S/C:P/I:N/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-862"],"updated_at":"2026-11-02T14:05:12.471695Z"}],"osv":[{"id":"CVE-2019-10311","description":"A missing permission check in Jenkins Ansible Tower Plugin 0.9.1 and earlier in the TowerInstallation.TowerInstallationDescriptor#doTestTowerConnection form validation method allowed attackers with Overall/Read permission to connect to an attacker-specified URL using attacker-specified credentials IDs obtained through another method, capturing credentials stored in Jenkins.","status":"published","published":"2019-04-30T13:29:05.533Z","modified":"2026-11-10T02:45:07.699984808Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-09T10:53:57.550641Z"},{"id":"GHSA-pc24-753j-gmqf","title":"Jenkins Ansible Tower Plugin missing permission check","description":"Jenkins Ansible Tower Plugin did not perform permission checks on a method implementing form validation. This allowed users with Overall/Read access to Jenkins to connect to an attacker-specified URL using attacker-specified credentials IDs obtained through another method, capturing credentials stored in Jenkins.\n\nAdditionally, this form validation method did not require POST requests, resulting in a cross-site request forgery vulnerability.\n\nThis form validation method now requires POST requests and Overall/Administer permissions.","status":"published","published":"2022-05-24T16:44:55Z","modified":"2024-02-16T08:12:41.549509Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-862"],"updated_at":"2026-11-02T15:46:52.891208Z"}]}}
