
CVE-2020-11651 & CVE-2020-11652 向けの Salt セキュリティバックポート
以前のバージョンの公式パッチは以下でリクエストできます: https://www.saltstack.com/lp/request-patch-april-2020/
⚠ ここのパッチはカスタムであり、公式のものとは異なる場合があります ⚠
このリポジトリのパッチは以下の CVE に対応しています:
さらに以下のバグ修正が含まれています:
_minion_runner を minion_runner に修正。参照: https://docs.saltstack.com/en/latest/topics/releases/3000.2.html#known-issue_find_file_and_stat を _find_hash_and_stat に修正。参照 https://github.com/rossengeorgiev/salt-security-backports/issues/1run_func を削除import salt.utils.verify を追加上記の修正は SaltStack の最新リリース (具体的には v2019.2.5 および v3000.3) に含まれています。
チェックスクリプトは salt-master 上で root としてローカルに実行する必要があります
python salt-cve-check.py
Salt 2017.7.8 の出力例:
[+] Salt version: 2017.7.8
[ ] This version of salt is vulnerable! Check results below
[+] Checking salt-master (127.0.0.1:4506) status... ONLINE
[+] Checking if vulnerable to CVE-2020-11651... YES
[+] Checking if vulnerable to CVE-2020-11652 (read_token)... YES
[+] Checking if vulnerable to CVE-2020-11652 (read)... YES
[+] Checking if vulnerable to CVE-2020-11652 (write1)... YES
[+] Checking if vulnerable to CVE-2020-11652 (write2)... YES
# salt パッケージのディレクトリを特定してください (必要に応じて python3 を使用)
python -c "import imp; print(imp.find_module('salt')[1])"
# 私の環境では: /usr/lib/python2.7/dist-packages/salt
# パッチを適用
# (-b フラグを追加すると、変更前にファイルを同じパスに .orig サフィックスでバックアップします)
# (同じコマンドに -R フラグを付けて実行すると、パッチを取り消せます)
patch -p2 -d /usr/lib/python2.7/dist-packages/salt < 2017.7.8_CVE-2020-11651.patch
patch -p2 -d /usr/lib/python2.7/dist-packages/salt < 2017.7.8_CVE-2020-11652.patch
# salt-master を再起動
systemctl restart salt-master
# or
service salt-master restart
チェックスクリプトを再実行:
user@salt # python salt-cve-check.py
[+] Salt version: 2017.7.8
[ ] This version of salt is vulnerable! Check results below
[+] Checking salt-master (127.0.0.1:4506) status... ONLINE
[+] Checking if vulnerable to CVE-2020-11651... NO
[+] Checking if vulnerable to CVE-2020-11652 (read_token)... NO
[+] Checking if vulnerable to CVE-2020-11652 (read)... NO
[+] Checking if vulnerable to CVE-2020-11652 (write1)... NO
[+] Checking if vulnerable to CVE-2020-11652 (write2)... NO