Mengapa peningkatan tanpa pengawasan tidak memperbaiki bug yang patah hati?

20

Saya telah mengikuti instruksi untuk menginstal peningkatan tanpa pengawasan untuk menginstal pembaruan keamanan otomatis di server saya (server ubuntu 13.10).

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

Dapatkah Anda membantu saya untuk memahami mengapa pagi ini saya masih memiliki bug heartbleed di server saya?

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

Informasi lainnya:

$ 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

Terima kasih

Guillaume Vincent
sumber
2
Tidak menjawab pertanyaan Anda, tetapi lihat jawabannya di sini untuk memperbaiki OS Anda askubuntu.com/questions/444817/am-i- terpengaruh- heartbleed
Ring Ø
Saya setuju bahwa Anda harus memiliki versi yang diperbarui. Server 12,04 saya sedang dalam pembaruan otomatis dan diperbarui kemarin. Apakah kamu memeriksa /var/log/apt/history.log?
Jos
@ jo Saya punya konten /var/log/apt/history.log saya, tidak ada informasi lebih lanjut di sini
Guillaume Vincent

Jawaban:

28

Anda tidak memiliki kerentanan Heartbleed di server Anda, OpenSSL telah ditambal untuk memperbaiki masalah ini (tanpa memutakhirkannya).

Anda telah meninggalkan beberapa baris penting dalam keluaran versi OpenSSL, itu adalah bagaimana Anda tahu itu telah ditambal, bukan dengan nomor versi:

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"

Garis 'bangun' adalah yang penting di sini, 7 April atau setelahnya: Anda baik. Kalau tidak: Anda dalam masalah.

Pembaruan, karena tanggal pembuatan sepertinya tidak bagus:

Mungkin upgrade tanpa pengawasan belum berjalan, di server saya skrip di cron.daily dikonfigurasi untuk berjalan pada 6:25

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

Juga, periksa konten /etc/apt/apt.conf.d/10 periodic dan periksa apakah pembaruan keamanan diinstal:

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

Sumber: https://help.ubuntu.com/lts/serverguide/automatic-updates.html

Mathieu Comandon
sumber
1
Saya dalam kesulitan :(built on: Wed Jan 8 20:58:47 UTC 2014 platform: debian-amd64
Guillaume Vincent
jalankan saja sudo apt-get update && sudo apt-get dist-upgradedan Anda harus up-to-date.
Edd Turtle
Terima kasih @EddTurtle, ini bukan pertanyaan saya! Pertanyaan saya adalah mengapa pembaruan otomatis tidak berfungsi!
Guillaume Vincent
/etc/apt/apt.conf.d/10 periodic saya tidak bagus atau mungkin cron tidak menemukan peningkatan pada jam 5 pagi. Terima kasih @ mathieu-comandon
Guillaume Vincent
@guillaumevincent Saya baru saja memperhatikan bahwa upgrade tanpa pengawasan adalah paket terakhir yang Anda instal - jadi itu harus menjadi masalah konfigurasi.
Jos
12

Pertama, Anda perlu melakukan upgrade. Peningkatan tanpa pengawasan hanya berjalan sekali sehari, dan sudah kurang dari 1 hari sejak perbaikan terjadi (2014-04-07 sekitar 20:00 GMT). Untuk cakep, pastikan Anda telah libssl1.0.0memutakhirkan ke versi 1.0.1e-3ubuntu1.2 atau lebih tinggi. (Tepatnya, perbaikannya ada dalam versi 1.0.1-4ubuntu5.12.)

Selanjutnya, perhatikan bahwa ini adalah kerentanan yang sangat buruk: mungkin memungkinkan penyerang memperoleh data rahasia dengan menghubungkan ke server Anda yang rentan. Jika Anda menjalankan server SSL, maka data apa pun yang ada di memori server sejak beberapa saat sebelum kerentanan diumumkan mungkin telah bocor. Ini termasuk, khususnya, kunci privat SSL server, jadi Anda harus membuat yang baru dan mencabut yang lama.

Untuk informasi lebih lanjut, lihat Cara menambal bug Heartbleed (CVE-2014-0160) di OpenSSL?

Gilles 'SANGAT berhenti menjadi jahat'
sumber
Apa pun di memori server selama sekitar dua tahun mungkin telah bocor, bukan hanya sejak saat pengumuman.
pieroxy
@pieroxy Apa pun yang sudah ada dalam memori server untuk waktu yang lama sangat mungkin telah ditimpa, hingga Anda juga harus khawatir tentang banyak vektor serangan lainnya. Pengecualiannya adalah jika Anda khawatir tentang musuh yang mungkin telah mengetahui bug sebelumnya dan mengeksploitasinya secara diam-diam - musuh di tingkat pemerintah mungkin sudah tahu, kemungkinan tidak akan dimiliki oleh penjahat biasa.
Gilles 'SO- stop being evil'
7

Anda tidak dapat mempercayai string versi internal. Versi mengatakan 1.0.1edan bug mempengaruhi dari 1.0.0 hingga 1.0.0f. Apakah ini cukup untuk menentukan apakah Anda masih memiliki versi openssl yang rentan? Tidak. Versi internal OpenSSL tidak berubah, bahkan melalui beberapa pembaruan diterapkan. Satu-satunya cara untuk mengidentifikasi versi Anda dengan andal adalah mencari versi pengelola paket menggunakan apt-cache policyatau alat lain:

➜  ~  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
➜  ~  

Seperti yang Anda lihat, versi openssl saya lebih unggul, karena tampaknya terpengaruh, karena ini 1.0.1f, sekarang jika saya memeriksa changelogs:

➜  ~ 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 <[email protected]>  Mon, 06 Jan 2014 18:50:54 +0100

Ya, saya masih terpengaruh. Tidak ada referensi ke CVE-2014-0160 di changelog apa pun. Tapi, saya tidak menjalankan layanan SSL / TSL, jadi saya bisa menunggu. Saya hanya tidak perlu membuat sertifikat SSL menggunakan versi OpenSSL ini. Jika ya, saya hanya harus mengikuti saran Gilles: menghapus layanan, mencabut sertifikat, menghasilkan yang baru.

Braiam
sumber
Catatan: "apt-cache changelog" bukan perintah yang valid untuk saya, tetapi "aptitude changelog" adalah.
ColinM
1
@ColinM maaf, masalah apt-get, bukan apt-cache, clipboard.
Braiam