systemdの脆弱性情報(Moderate: CVE-2019-3843, CVE-2019-3844)

こんにちは。SIOS OSSエバンジェリスト/セキュリティ担当の面 和毅です。

04/27/2018にsystemdの脆弱性情報(Moderate: CVE-2019-3843, CVE-2019-3844)が公開されましたので、簡単に纏めます。




関係するCVEとPriority/CVSS

  • CVE-2019-3843

    • SUSE
      • CVSS v3 Base Score: 4.5
      • Vector: AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L
    • Red Hat Customer Potal
      • CVSS v3 Base Score: 4.5
      • Vector: CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L
  • CVE-2019-3844

    • SUSE
      • CVSS v3 Base Score: 4.5
      • Vector: AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L
    • Red Hat Customer Potal
      • CVSS v3 Base Score: 4.5
      • Vector: CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L

修正方法

各ディストリビューションの情報を確認してください。

脆弱性概要(詳細は一次情報源をご確認ください)

  • CVE-2019-3843
    • Bug 1684607 (CVE-2019-3843) – CVE-2019-3843 systemd: services with DynamicUser can create SUID/SGID binaries
    • DynamicUserプロパティを用いているsystemdサービスによるSUID/SGIDバイナリの作成の可能性
    • DynamicUsreプロパティを設定されている場合、ユニットがスタートする際にUNIXユーザ/グループのペアが動的に割り当てられ、停止する際にリリースされます。このプロパティを有効にしてsystemdサービスで使われている場合、一時的な権限でプログラムを実行できる可能性があるSUID/SGIDされたバイナリファイルをシステムに残す可能性が有ります。ローカルの攻撃者は、これを利用して将来UID/GIDがリサイクルされる際に、異なるサービスが所有するリソースにアクセスすることが出来る可能性があります。
  • CVE-2019-3844
    • Bug 1684610 (CVE-2019-3844) – CVE-2019-3844 systemd: services with DynamicUser can get new privileges and create SGID binaries
    • DynamicUserプロパティを用いているsystemdサービスによる新たな特権の獲得とSGIDバイナリの作成の可能性
    • DynamicUsreプロパティを設定されている場合、ユニットがスタートする際にUNIXユーザ/グループのペアが動的に割り当てられ、停止する際にリリースされます。このプロパティを有効にしてsystemdサービスで使われている場合、SUIDバイナリファイルの実行を通して新しい特権を獲得できることがわかりました。これにより、setgidビットが設定されたバイナリを作成することが出来ます。ローカルの攻撃者は、これを利用して将来GIDがリサイクルされる際に、異なるサービスが所有するリソースにアクセスすることが出来る可能性があります。

PoC

この脆弱性を利用して、DynamicUser=yesにしたサービスが一時的に作成したファイル(/usr/bin/idコマンドのコピー)を利用して、一般ユーザが実行した際にその他のグループ(cdrom, floppy, sudo等)として実行できることを確認します。

エクスプロイトコード(breakout_assisted.c, breakout_helper.c)はこちらのサイトでは念の為割愛します。

sios@debian:~/2019-3843-3844$ ./breakout_helper
connected to other chroot, sending cwdfd...
all ok on this side!
sios@debian:~/2019-3843-3844$ ls -la
合計 144
drwxrwxrwx 2 sios  sios  4096  5月  1 10:25 .
drwxr-xr-x 9 sios  sios  4096  5月  1 10:19 ..
-rwxr-xr-x 1 sios  sios 17432  5月  1 10:24 breakout_assisted
-rw-r--r-- 1 sios  sios  1932  5月  1 10:19 breakout_assisted.c
-rwxr-xr-x 1 sios  sios 16872  5月  1 10:20 breakout_helper
-rw-r--r-- 1 sios  sios  1074  5月  1 10:20 breakout_helper.c
-rwsr-xr-x 1 64642  64642 43808  5月  1 10:25 suid_dst
-rwxr-xr-x 1 sios  sios 43808  5月  1 10:21 suid_src
sios@debian:~/2019-3843-3844$ ./suid_dst
uid=1000(sios) gid=111(sios) euid=64642 groups=111(sios),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev),106(kvm),108(netdev),114(libvirt),64055(libvirt-qemu)


対処方法

各ディストリビューションの案内に従い、アップデートを行ってください。全てのRed Hat製品でパッチが行き渡っているかを確認するには、Red Hat SatelliteやKatello、Spacewalk等を使うと管理が便利でしょう。


セキュリティ系連載案内


セミナー情報1

2019/07/31 10:00-17:00で開催される、一般社団法人 日本情報システム・ユーザ協会(JUAS)様による有料ハンズオンセミナー「ハンズオンで学ぶ!クラウド時代の運用管理とセキュリティ対策 」にて当ブログの筆者「面 和毅」が講師を努めます。

本セミナーでは、大手ベンダーや外資系企業、ユーザー企業などでセキュリティの専門家として20年以上の経験を持ち、現在、セキュリティエバンジェリストとして活躍する講師が実体験を交えながら、クラウド上のサーバーを安価に守る方法を、演習をまじえ、具体的にお伝えします。

https://juasseminar.jp/seminars/view/4119290にて申し込みを行っております。奮ってご参加ください。


セミナー情報2

2019/05/30 18:00-22:00で、「「やってはイケナイ」をやってみよう」セミナーを行います。

このセミナーでは、実際に色々な「やってはイケナイ」をデモを交えて行い、実際にどのような問題が発生するのかを確認し、その様な万が一の場合を防ぐために行っておくべき対策を紹介していきます。

https://sios.connpass.com/event/129136/がプログラム内容と申し込みの詳細になります。奮ってご参加下さい。


タイトルとURLをコピーしました