ITインフラエンジニアのおつむの整理

ITインフラエンジニア(現ニート)の頭の整理場所。ほぼ日記になる予定。

OpenSSLの脆弱性情報が出るらしいですね

前の職場で色々と悩みが多かったのでとりあえず辞めました。無職です。 最近は自分が個人で作成した環境やプログラミングをちゃんと整理しようとgitを勉強してます。

そんな無職のなか、OpenSSLのでcriticalに分類される脆弱性について修正リリースが今日~明日で出るらしいですね。

news.mynavi.jp

対象はバージョン3以降を使用しているもの全てらしい。あとOpenSSHもたしかOpenSSLを使用している記憶があったのでそっちも怪しいですね。
とりあえず個人で使用しているAmazon Linuxで使用しているサーバで以下確認してみました。

# openssl version
OpenSSL 1.0.2k-fips  26 Jan 2017

# yum info openssl
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
230 packages excluded due to repository priority protections
Installed Packages
Name        : openssl
Arch        : x86_64
Epoch       : 1
Version     : 1.0.2k
Release     : 24.amzn2.0.4
Size        : 830 k
Repo        : installed
From repo   : amzn2-core
Summary     : Utilities from the general purpose cryptography library with TLS implementation
URL         : http://www.openssl.org/
License     : OpenSSL
Description : The OpenSSL toolkit provides support for secure communications between
            : machines. OpenSSL includes a certificate management tool and shared
            : libraries which provide various cryptographic algorithms and
            : protocols.

# yum deplist openssh | grep ssl
   provider: openssl-libs.x86_64 1:1.0.2k-24.amzn2.0.4
   provider: openssl-libs.x86_64 1:1.0.2k-24.amzn2.0.4
   provider: openssl-libs.x86_64 1:1.0.2k-24.amzn2.0.4
   provider: openssl-libs.x86_64 1:1.0.2k-24.amzn2.0.4

調べたサーバは月1でyum updateを実行しているのですが、それでもバージョンは1系なんですね。リポジトリは特に弄ってません。なのでOpenSSLの公式から3系をダウンロードしてインストールしている人やリポジトリを弄っている人が影響してるのかなーと個人的に推測してます。
あとsshでもやはり依存関係があり、OpenSSLを使用しているようですね。なので会社勤めしている人は証明書作成とかしてないしOpenSSL使ってないっしょ!とかではなくちゃんと確認しましょうね。

と色々調べているうちに、OpenSSLを調べているうちに2014年にも「Heartbleed」というCriticalの脆弱性が出ていたことを初めて知りました。自分が社会人として働き始めたのが2017年なので、全然前ですね。 Heartbeatを調べてみると、SSL/TLSセッションを維持するためのKeepAliveを実現するために、ハートビート機能があるらしいです。初めて知りました。
Heartbleedはそこで不正なリクエストをした際に、サーバ上のメモリから意図しない情報が返されてしまったようです。

今回はどんな感じなのかまだわからないですが、働いていたら各ベンダーに連絡したりと色々面倒だったろうなとほっとしてます。バージョン3以降なので影響が少なそうというのはありますが、log4jの時くらいに心配はした方が良いのかもと思ってます。対応する方は頑張ってください。

追記

Twitterで調べてみたら、RHEL9やUbuntu22.04が3系を使用しているらしい。 ほんと最近建てたばかりのRHEL9がローカルにあるの思い出したので調べてみたら確かに3系だった、、、公開してないしいいやと思い確認さぼってた。

# openssl version
OpenSSL 3.0.1 14 Dec 2021 (Library: OpenSSL 3.0.1 14 Dec 2021)

さらに追記

よくよく考えたら自分が公開しているサーバはdockerコンテナのnginxをリバースプロキシとして使用しているので、そこも確認しないとでした。そのため確認したところそちらも問題なさそうでした。
意外だったのが、OpenSSLをインストールして使用しているのかと思ってましたがopenssl versionコマンドでは確認できず、nginxコマンドで確認できました。nginxはdockerイメージを使用させてもらっていたので知らなかったのですが、nginxをインストール時にOpenSSLを指定してビルドする感じなんですかね。

# nginx -V
nginx version: nginx/1.17.4
built by gcc 8.3.0 (Debian 8.3.0-6)
built with OpenSSL 1.1.1c  28 May 2019
TLS SNI support enabled
<載せていいのか調べるの面倒だったので割愛>

hackers-high.com