無人アップグレードでハートブリードバグが修正されないのはなぜですか?


20

指示に従って無人アップグレードをインストールし、サーバー(ubuntuサーバー13.10)に自動セキュリティ更新プログラムをインストールしました。

https://help.ubuntu.com/community/AutomaticSecurityUpdates

今朝、サーバーにまだ心血のバグが残っている理由を理解してもらえますか?

$ openssl version -a
OpenSSL 1.0.1e 11 Feb 2013
built on: Wed Jan  8 20:58:47 UTC 2014
platform: debian-amd64

その他の情報:

$ cat /etc/apt/apt.conf.d/20auto-upgrades
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

$ cat /var/log/apt/history.log
....
Start-Date: 2014-04-03  15:33:59
Commandline: apt-get install nginx
Install: libxau6:amd64 (1.0.8-1, automatic), libx11-data:amd64 (1.6.1-1ubuntu1, automatic), libxcb1:amd64 (1.9.1-3ubuntu1, automatic), libvpx1:amd64 (1.2.0-2, automatic), libgd3:amd64 (2.1.0-2, automatic), libxdmcp6:amd64 (1.1.1-1, automatic), libxslt1.1:amd64 (1.1.28-2, automatic), nginx-common:amd64 (1.4.1-3ubuntu1.3, automatic), nginx:amd64 (1.4.1-3ubuntu1.3), nginx-full:amd64 (1.4.1-3ubuntu1.3, automatic), libx11-6:amd64 (1.6.1-1ubuntu1, automatic), libxpm4:amd64 (3.5.10-1, automatic)
End-Date: 2014-04-03  15:34:02

Start-Date: 2014-04-04  10:26:38
Commandline: apt-get install unattended-upgrades
Install: unattended-upgrades:amd64 (0.79.3ubuntu8)
End-Date: 2014-04-04  10:26:40

ありがとうございました


2
あなたの質問に答えるが、あなたのOSを修正するために、この中に答えを見ていないaskubuntu.com/questions/444817/am-i-affected-heartbleed-bug
リングØ

更新されたバージョンが必要であることに同意します。12.04サーバーは自動更新されており、昨日更新されました。確認しました/var/log/apt/history.logか?
ジョス14

@jos /var/log/apt/history.logの内容がありましたが、ここにはこれ以上の情報はありません
ギヨームヴィンセント14

回答:


28

サーバーにHeartbleedの脆弱性はありません。OpenSSLにはこの問題を修正するためのパッチが適用されています(アップグレードは行われません)。

OpenSSLバージョンの出力にはいくつかの重要な行がありません。これは、バージョン番号ではなく、パッチが適用されていることを確認する方法です。

openssl version -a                                                                ✭
OpenSSL 1.0.1e 11 Feb 2013
built on: Mon Apr  7 20:33:19 UTC 2014
platform: debian-amd64
options:  bn(64,64) rc4(16x,int) des(idx,cisc,16,int) blowfish(idx) 
compiler: cc -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -DTERMIO -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wa,--noexecstack -Wall -DOPENSSL_NO_TLS1_2_CLIENT -DOPENSSL_MAX_TLS1_2_CIPHER_LENGTH=50 -DMD32_REG_T=int -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM
OPENSSLDIR: "/usr/lib/ssl"

ここで重要なのは、「ビルドオン」行です(4月7日以降)。それ以外の場合:問題が発生しています。

更新、ビルド日付が良くないようだから:

無人アップグレードがまだ実行されていない可能性があります。私のサーバーでは、cron.dailyのスクリプトが6:25に実行されるように構成されています

25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )

また、/ etc / apt / apt.conf.d / 10periodicの内容を確認し、セキュリティ更新プログラムがインストールされていることを確認します。

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "7";
APT::Periodic::Unattended-Upgrade "1";

ソース:https : //help.ubuntu.com/lts/serverguide/automatic-updates.html


1
私は困っている:(built on: Wed Jan 8 20:58:47 UTC 2014 platform: debian-amd64
ギヨームヴィンセント14

実行するだけでsudo apt-get update && sudo apt-get dist-upgrade最新の状態になります。
エドタートル14

ありがとう@EddTurtle、これは私の質問ではありません!私の質問は、自動更新が機能しない理由です。
ギヨームヴィンセント14

私の/etc/apt/apt.conf.d/10periodicが良くなかったか、または午前5時にcronがアップグレードを見つけられなかったかもしれません。ありがとう@ mathieu-comandon
ギヨームヴィンセント

@guillaumevincent無人アップグレードがインストールした最後のパッケージであることに気付いたので、構成の問題である必要がありました。
ジョス14

12

まず、アップグレードを実行する必要があります。無人アップグレードは1日に1回しか実行されず、修正プログラムが公開されてから1日未満です(2014-04-07 GMT 20:00頃)。libssl1.0.0使いやすいように、バージョン1.0.1e-3ubuntu1.2以降にアップグレードしたことを確認してください。(正確には、修正はバージョン1.0.1-4ubuntu5.12で提供されました。)

次に、これは非常に悪い脆弱性であることに注意してください。攻撃者が脆弱なサーバーに接続して機密データを取得する可能性があります。SSLサーバーを実行している場合、脆弱性が発表される少し前からサーバーのメモリにあったデータが漏洩した可能性があります。これには、特にサーバーのSSL秘密鍵が含まれるため、新しいものを生成し、古いものを無効にする必要があります。

詳細については、OpenSSLでHeartbleedバグにパッチを適用する方法(CVE-2014-0160)を参照してください


発表時からだけでなく、約2年間サーバーのメモリに何かが漏れていた可能性があります。
ピロキシー14

@pieroxyサーバーのメモリに長時間存在するものはすべて上書きされる可能性が高いため、他の多くの攻撃ベクトルについても心配する必要があります。例外は、以前にバグを知っていてそれを静かに悪用した可能性のある敵を心配している場合です。政府レベルの敵はよく知っていたかもしれません。
ジル「SO-悪であるのをやめる」14

7

内部バージョン文字列を信頼することはできません。バージョンには1.0.1e、1.0.0から1.0.0fまでのバグが影響しています。これは、opensslの脆弱なバージョンがまだあるかどうかを判断するのに十分ですか?いいえ。OpenSSLの内部バージョンは、一部の更新が適用されても変更されません。バージョンを確実に識別する唯一の方法は、以下を使用してパッケージマネージャーのバージョンを確認することapt-cache policyです:

➜  ~  apt-cache policy openssl
openssl:
  Installed: 1.0.1f-1
  Candidate: 1.0.1f-1
  Version table:
 *** 1.0.1f-1 0
        500 http://http.debian.net/debian/ testing/main i386 Packages
        100 /var/lib/dpkg/status
➜  ~  dpkg -l openssl
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version      Architecture Description
+++-==============-============-============-=================================
ii  openssl        1.0.1f-1     i386         Secure Sockets Layer toolkit - cr
➜  ~  

ご覧のとおり、opensslの私のバージョンは優れており、変更ログを確認すると、1.0.1fであるため、影響を受けているようです。

➜  ~ apt-get changelog openssl
openssl (1.0.1f-1) unstable; urgency=high

  * New upstream version
    - Fix for TLS record tampering bug CVE-2013-4353
    - Drop the snapshot patch
  * update watch file to check for upstream signature and add upstream pgp key.
  * Drop conflicts against openssh since we now on a released version again.

 -- Kurt Roeckx <kurt@roeckx.be>  Mon, 06 Jan 2014 18:50:54 +0100

ええ、私はまだ影響を受けています。変更ログにはCVE-2014-0160への参照は一切ありません。しかし、私はSSL / TSLサービスを実行していないので、待つことができます。このバージョンのOpenSSLを使用してSSL証明書を生成する必要はありません。その場合、Gillesのアドバイスに従う必要があります。サービスを停止し、証明書を失効させ、新しいサービスを生成します。


注:「apt-cache changelog」は私にとって有効なコマンドではありませんが、「aptitude changelog」は有効なコマンドです。
ColinM

1
@ColinM申し訳ありませんが、apt-getではなく、apt-cacheのクリップボードの問題でした。
Braiam
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.