Red Hat Enterprise Linux 8.1 betaでのRed Hat Enterprise Linux 8.0からの新機能/変更点まとめ(2)
ここでは、RHEL 8.1 betaのRHEL 8.0からの差分を簡単に纏めてみます。
RHEL 8.0の個々の新機能の紹介は、別途ブログで順次投稿していく予定です。
RHEL8.1betaでのRHEL8.0からの新機能/変更点まとめ記事の過去記事はこちらを参照ください。
RHEL 8.1 betaとRHEL 8.0との差分
ここでは、RHEL 8.1betaのRHEL 8.0からの差分の情報を、Red Hatのリリースノート(8.1 beta Release Notes: Chapter 4. New features)から抜き出してそれぞれ(順不同になってしまいますが)確認したいと思います。
リリースノートによると、RHEL 8.1 betaでの新しい機能としては
- The web console
- Installer and image creation
- Kernel
- Infrastructure services
- Dynamic programming languages, web and database servers
- Desktop
- Graphics infrastructures
- Hardware enablement
- Identity Management
- Compilers and development tools
- File systems and storage
- High availability and clusters
- Networking
- Security
があります。
今回は前回に引き続き、「14. Security」の新機能/変更点での残りの項目を簡単に纏めます。
尚、RHEL上のパッチの確認には、RHNのサイトからダウンロードできる、それぞれのパッケージのsrc.rpmからソースコード及びpatchとSPECファイルを参照しています。
14.Securityの新機能/変更点(続き)
14.2 OpenSCAP
- OpenSCAP 1.3.1にバージョンアップ
OpenSCAPのバージョンが1.3から1.3.1にバージョンアップしました。OpenSCAP 1.3.1のリリースノートはこちらになります。以降の差分は、このOpenSCAPのバージョンアップから来ています。
- SCAP 1.3ソースデータストリーム:試験/XMLスキーマ/バリデーションのサポート
SCAP 1.3をサポートするようになりました。SCAPは、別途@ITでも連載していますがセキュリティに関する様々な手続きを自動化するための共通化フレームワークになります。多分、CVE-2019-XXXという脆弱性の番号や、CVSS:3.0/AV:L/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:Hといったような脆弱性の評価ベクターの話を聞いたことがあると思いますが、それらはすべてSCAPの構成要素になります。
詳細な説明は避けますが、今回のバージョンからSCAP1.3がサポートされるようになりました。SCAPはこれまで1.0〜1.2までがリリースされてきました。SCAP1.3を含めて、それぞれの主な構成要素のバージョンを下記に記します。
- SCAP1.0
- SCAP Content Validation Tool: 1.1.2.9(Released: 04/28/2011)
- XCCDF: 1.1.4
- OVAL: 5.3
- CCE: 5
- CPE: 2.2
- CVSS: 2
- SCAP1.1
- SCAP Content Validation Tool: 1.1.2.9(Released: 04/28/2011)
- XCCDF: 1.1.4
- OVAL: 5.8
- CCE: 5
- CPE: 2.2
- CVSS: 2
- SCAP1.2
- SCAP Content Validation Tool: 1.2.1.16(Released: 12/16/2016)
- XCCDF: 1.2
- OVAL: 5.10
- CCE: 5
- CPE: 2.3
- CVSS: 2
- SCAP1.3
- SCAP Content Validation Tool: 1.3.2(Released: 02/14/2018)
- XCCDF: 1.2
- OVAL: 5.11.2
- CCE: 5
- CPE: 2.3
- CVSS: 3
- SCAP1.0
今回、SCAP1.3をサポートしたということで、例えばOVAL 5.11.1をベースにした監査ファイルを、openscapパッケージが提供するoscapコマンドに食わせてやっても正しく実行できるようになりました。oscapコマンドがサポートしているOVALやXCCDFなどのバージョンは、”-V”オプションを用いて確認することが出来ます。それぞれ
[RHEL8] OpenSCAP command line tool (oscap) 1.3.0 Copyright 2009--2018 Red Hat Inc., Durham, North Carolina. ==== Supported specifications ==== XCCDF Version: 1.2 OVAL Version: 5.11.1 CPE Version: 2.3 CVSS Version: 2.0 CVE Version: 2.0 Asset Identification Version: 1.1 Asset Reporting Format Version: 1.1 CVRF Version: 1.1
[RHEL8.1] OpenSCAP command line tool (oscap) 1.3.1 Copyright 2009--2018 Red Hat Inc., Durham, North Carolina. ==== Supported specifications ==== XCCDF Version: 1.2 OVAL Version: 5.11.1 CPE Version: 2.3 CVSS Version: 2.0 CVE Version: 2.0 Asset Identification Version: 1.1 Asset Reporting Format Version: 1.1 CVRF Version: 1.1
となっており、oscapのバージョンは上がっていますが、少なくとも”-V”で出力されるオプションではOVAL 5.11.2のサポートはされていないことがわかります。こちらはRHEL8.1が未だbetaバージョンであるためで、RHEL8.1がリリースされた際には5.11.2のサポートがされるようになるのだろうと期待されます。
- “–oval-results”のオプションがデフォルトに
RHEL8のバージョンのOpenSCAP 1.3までは”–oval-results”を付けることでHTMLファイル下部の「Show all result details」をクリックすることで出力される詳細ページの中に”OVAL test results details”がHTMLファイルに出力されていましたが、RHEL8.1betaのバージョンのOpenSCAP 1.3.1からは”–oval-results”オプションがデフォルトで選ばれるようになっており、特にオプションを指定しなくても、”OVAL test results details”がHTMLファイルに出力されます。
以下のスキャンを試しにRHEL8とRHEL8.1betaで実施してみます。
[RHEL8] [sios@rhel8test ~]$ oscap xccdf eval --profile xccdf_org.ssgproject.content_profile_pci-dss --report pci-dss-rhel8.html /usr/share/xml/scap/ssg/content/ssg-rhel8-ds.xml
[RHEL8.1beta] [sios@rhel8test ~]$ oscap xccdf eval --profile xccdf_org.ssgproject.content_profile_pci-dss --report pci-dss-rhel81beta.html /usr/share/xml/scap/ssg/content/ssg-rhel8-ds.xml
出力されるファイル(Zipしてます)がこちら(RHEL8)とこちら(RHEL8.1beta)のZipファイルになり、RHEL8.1ではOVAL DetailsがHTMLファイルにデフォルトで出力されていることがわかります。
- scap-security-guideのバージョンが0.1.44に
scap-security-guideのバージョンが0.1.44にバージョンアップしました。0.1.44のRelease Notesはこちらになります。主な変更点としては、
- 生成されるAnsible Playbookの名前がrole->playbookに変更された(下記は一例)。
### Ansible ... -ssg-rhel6-role-standard.yml -ssg-rhel6-role-stig-rhel6-server-upstream.yml -ssg-rhel6-role-usgcb-rhel6-server.yml -ssg-rhel7-role-C2S.yml -ssg-rhel7-role-cjis-rhel7-server.yml -ssg-rhel7-role-common.yml -ssg-rhel7-role-docker-host.yml -ssg-rhel7-role-nist-800-171-cui.yml +rhel6-playbook-standard.yml +rhel6-playbook-stig-rhel6-server-upstream.yml +rhel6-playbook-usgcb-rhel6-server.yml +rhel7-playbook-C2S.yml +rhel7-playbook-cjis-rhel7-server.yml +rhel7-playbook-common.yml +rhel7-playbook-docker-host.yml +rhel7-playbook-cui.yml ...
- RHV4のRed Hat Virtualization Host (RHVH) STIG Profile(draft) / RHEL7のRed Hat Enterprise Linux Virtualization Host (RHEH)がデフォルトで有効になりました。
[RHVH] diff -Nru scap-security-guide-0.1.43/rhv4/profiles/rhvh-stig.profile scap-security-guide-0.1.44/rhv4/profiles/rhvh-stig.profile --- scap-security-guide-0.1.43/rhv4/profiles/rhvh-stig.profile 2019-03-02 00:22:48.000000000 +0900 +++ scap-security-guide-0.1.44/rhv4/profiles/rhvh-stig.profile 2019-05-03 23:38:37.000000000 +0900 @@ -1,4 +1,4 @@ -documentation_complete: false +documentation_complete: true title: '[DRAFT] DISA STIG for Red Hat Virtualization Host (RHVH)' @@ -116,7 +116,6 @@ - audit_rules_file_deletion_events_renameat - audit_rules_file_deletion_events_rename - audit_rules_file_deletion_events_rmdir - - audit_rules_file_deletion_events
[RHEH] diff -Nru scap-security-guide-0.1.43/rhel7/profiles/rhelh-stig.profile scap-security-guide-0.1.44/rhel7/profiles/rhelh-stig.profile --- scap-security-guide-0.1.43/rhel7/profiles/rhelh-stig.profile 2019-03-02 00:22:48.000000000 +0900 +++ scap-security-guide-0.1.44/rhel7/profiles/rhelh-stig.profile 2019-05-03 23:38:37.000000000 +0900 @@ -1,4 +1,4 @@ -documentation_complete: false +documentation_complete: true title: '[DRAFT] DISA STIG for Red Hat Enterprise Linux Virtualization Host (RHELH)' @@ -361,6 +361,7 @@ - configure_opensc_nss_db - configure_opensc_card_drivers - force_opensc_card_drivers + - package_pcsc-lite_installed - service_pcscd_enabled
- Podmanをコンテナ環境だと認識するように変更しました。
diff -Nru scap-security-guide-0.1.43/shared/checks/oval/installed_env_is_a_container.xml scap-security-guide-0.1.44/shared/checks/oval/installed_env_is_a_container.xml --- scap-security-guide-0.1.43/shared/checks/oval/installed_env_is_a_container.xml 2019-03-02 00:22:48.000000000 +0900 +++ scap-security-guide-0.1.44/shared/checks/oval/installed_env_is_a_container.xml 2019-05-03 23:38:37.000000000 +0900 @@ -5,19 +5,28 @@ multi_platform_all - < description>Check if file /.dockerenv exists, if it does then we consider to be a docker filesystem.</ description> + < description>Check for presence of files characterizing container filesystems.</ description> < reference ref_id="cpe:/a:container" source="CPE" /> < /metadata> - < criteria> - < criterion comment="Check if /.dockerenv exists" test_ref="installed_env_is_a_container" /> + < criteria operator="OR"> + < criterion comment="Check if /.dockerenv exists" test_ref="test_installed_env_is_a_docker_container" /> + < criterion comment="Check if /run/.containerenv exists" test_ref="test_installed_env_is_a_podman_container" />
- 生成されるAnsible Playbookの名前がrole->playbookに変更された(下記は一例)。
14.3 OpenSSH
OpenSSHのバージョンが7.8p1から8.0p1に更新されました。バグフィックス以外の主な変更点としては下記になります。
- ssh-keygenのRSAキーのデフォルトビット数が下記のように2048から3072に変更されました。
[7.8p1] /* Number of bits in the RSA/DSA key. This value can be set on the command line. */ #define DEFAULT_BITS 2048 #define DEFAULT_BITS_DSA 1024 #define DEFAULT_BITS_ECDSA 256 u_int32_t bits = 0;
* SHA1 we limit the DSA key size 1k bits. */ #define DEFAULT_BITS 3072 #define DEFAULT_BITS_DSA 1024 #define DEFAULT_BITS_ECDSA 256
- sshd_confで指定できた”ShowPatchLevel”オプションが完全に削除されました。”ShowPatchLevel”オプションは、sshで接続した際にクライアント側にパッチレベルを通知するオプションになります(デフォルトはnoになっています)。
[7.8p1] /etc/ssh/sshd_config ----省略--- #ClientAliveCountMax 3 #ShowPatchLevel no #UseDNS no ----省略---
この場合には、下記のようにクライアント側で”ssh -v”とVerifyオプションを付けた時に
[7.8p1] sios@debian:~/SIOS/RHEL/RHEL8.1$ ssh -l sios -v [RHEL8.1] OpenSSH_7.9p1 Debian-10, OpenSSL 1.1.1c 28 May 2019 debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying options for * ---省略--- debug1: Local version string SSH-2.0-OpenSSH_7.9p1 Debian-10 debug1: Remote protocol version 2.0, remote software version OpenSSH_7.8 <-- ココ ---省略---
と、”OpenSSH_7.8″とだけ表示しますが、”ShowPatchLevel”をyesにすると、下記のようにクライアント側で”ssh -v”とVerifyオプションを付けた時に
[7.8p1] debug1: Local version string SSH-2.0-OpenSSH_7.9p1 Debian-10 debug1: Remote protocol version 2.0, remote software version OpenSSH_7.8p1-FC-7.8p1-4 <-- ココ
のように、パッチレベルを表示します。OpenSSH 8.0p1からはこの”ShowPatchLevel”オプションそのものが無くなり、常にパッチレベルを表示しない状態になっています。
sios@debian:~/SIOS/RHEL/RHEL8.1$ ssh -l sios -v [RHEL8.1] OpenSSH_7.9p1 Debian-10, OpenSSL 1.1.1c 28 May 2019 debug1: Local version string SSH-2.0-OpenSSH_7.9p1 Debian-10 debug1: Remote protocol version 2.0, remote software version OpenSSH_8.0 <-- ココ
次回予告
ここまでで「14. Security」の変更点は終わりです。次回はその他、Kernel等の修正点等を簡単に纏めます。