• 公告ID (KylinSec-SA-2021-2003)

摘要:

ansible security update

安全等级: High

公告ID: KylinSec-SA-2021-2003

发布日期: 2021年9月24日

关联CVE: CVE-2020-1739   CVE-2020-1740   CVE-2020-1738   CVE-2020-1735   CVE-2020-1736   CVE-2020-10684   CVE-2019-14904   CVE-2020-1737   CVE-2021-20191   CVE-2020-10729   CVE-2020-1753  

  • 详细介绍

1. 漏洞描述

   

Ansible is a radically simple model-driven configuration management, multi-node deployment, and remote task execution system. Ansible works over SSH and does not require any software or daemons to be installed on remote nodes. Extension modules can be written in any language and are transferred to managed machines automatically.

Security Fix(es):

A flaw was found in Ansible 2.7.16 and prior, 2.8.8 and prior, and 2.9.5 and prior when a password is set with the argument "password" of svn module, it is used on svn command line, disclosing to other users within the same node. An attacker could take advantage by reading the cmdline file from that particular PID on the procfs.(CVE-2020-1739)

A flaw was found in Ansible Engine when using Ansible Vault for editing encrypted files. When a user executes "ansible-vault edit", another user on the same computer can read the old and new secret, as it is created in a temporary file with mkstemp and the returned file descriptor is closed and the method write_data is called to write the existing secret in the file. This method will delete the file before recreating it insecurely. All versions in 2.7.x, 2.8.x and 2.9.x branches are believed to be vulnerable.(CVE-2020-1740)

A flaw was found in Ansible Engine when the module package or service is used and the parameter 'use' is not specified. If a previous task is executed with a malicious user, the module sent can be selected by the attacker using the ansible facts file. All versions in 2.7.x, 2.8.x and 2.9.x branches are believed to be vulnerable.(CVE-2020-1738)

A flaw was found in the Ansible Engine when the fetch module is used. An attacker could intercept the module, inject a new path, and then choose a new destination path on the controller node. All versions in 2.7.x, 2.8.x and 2.9.x branches are believed to be vulnerable.(CVE-2020-1735)

A flaw was found in Ansible Engine when a file is moved using atomic_move primitive as the file mode cannot be specified. This sets the destination files world-readable if the destination file does not exist and if the file exists, the file could be changed to have less restrictive permissions before the move. This could lead to the disclosure of sensitive data. All versions in 2.7.x, 2.8.x and 2.9.x branches are believed to be vulnerable.(CVE-2020-1736)

A flaw was found in Ansible Engine, all versions 2.7.x, 2.8.x and 2.9.x prior to 2.7.17, 2.8.9 and 2.9.6 respectively, when using ansible_facts as a subkey of itself and promoting it to a variable when inject is enabled, overwriting the ansible_facts after the clean. An attacker could take advantage of this by altering the ansible_facts, such as ansible_hosts, users and any other key data which would lead into privilege escalation or code injection.(CVE-2020-10684)

A flaw was found in the solaris_zone module from the Ansible Community modules. When setting the name for the zone on the Solaris host, the zone name is checked by listing the process with the 'ps' bare command on the remote machine. An attacker could take advantage of this flaw by crafting the name of the zone and executing arbitrary commands in the remote host. Ansible Engine 2.7.15, 2.8.7, and 2.9.2 as well as previous versions are affected.(CVE-2019-14904)

A flaw was found in Ansible 2.7.17 and prior, 2.8.9 and prior, and 2.9.6 and prior when using the Extract-Zip function from the win_unzip module as the extracted file(s) are not checked if they belong to the destination folder. An attacker could take advantage of this flaw by crafting an archive anywhere in the file system, using a path traversal. This issue is fixed in 2.10.(CVE-2020-1737)

A flaw was found in ansible. Credentials, such as secrets, are being disclosed in console log by default and not protected by no_log feature when using those modules. An attacker can take advantage of this information to steal those credentials. The highest threat from this vulnerability is to data confidentiality. Versions before ansible 2.9.18 are affected.(CVE-2021-20191)

A flaw was found in the use of insufficiently random values in Ansible. Two random password lookups of the same length generate the equal value as the template caching action for the same file since no re-evaluation happens. The highest threat from this vulnerability would be that all passwords are exposed at once for the file. This flaw affects Ansible Engine versions before 2.9.6.(CVE-2020-10729)

A security flaw was found in Ansible Engine, all Ansible 2.7.x versions prior to 2.7.17, all Ansible 2.8.x versions prior to 2.8.11 and all Ansible 2.9.x versions prior to 2.9.7, when managing kubernetes using the k8s module. Sensitive parameters such as passwords and tokens are passed to kubectl from the command line, not using an environment variable or an input configuration file. This will disclose passwords and tokens from process list and no_log directive from debug module would not have any effect making these secrets being disclosed on stdout and log files.(CVE-2020-1753)

2. 影响范围

cve名称 产品 组件 是否受影响
CVE-2020-1739 KY3.4-4A ansible Fixed
CVE-2020-1740 KY3.4-4A ansible Fixed
CVE-2020-1735 KY3.4-4A ansible Fixed
CVE-2020-10684 KY3.4-4A ansible Fixed
CVE-2019-14904 KY3.4-4A ansible Fixed
CVE-2020-1737 KY3.4-4A ansible Fixed
CVE-2021-20191 KY3.4-4A ansible Fixed
CVE-2020-10729 KY3.4-4A ansible Fixed
CVE-2020-1753 KY3.4-4A ansible Fixed

3. 影响组件

    ansible

4. 修复版本

   

KY3.4-4A

软件名称 架构 版本号
ansible noarch 2.5.5-4.kb2.ky3
ansible-help noarch 2.5.5-4.kb2.ky3

5. 修复方法

dnf update ansible-help ansible

6. 下载链接

   

KY3.4-4A:

x86_64:

     ansible   

     ansible-help   

aarch64:

     ansible   

     ansible-help   

上一篇:KylinSec-SA-2021-1347 下一篇:KylinSec-SA-2021-1350