Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 13297|Jawab: 2

[linux] Pemberitahuan Perbaikan Kerentanan Keamanan Kritis Perpustakaan Linux Glibc (Penting)

[Salin tautan]
Diposting pada 30/01/2015 18.36.02 | | |
Halo, beberapa hari yang laluLinuxKerentanan buffer overflow telah ditemukan dalam fungsi gethostbyname dari pustaka standar GNU glibc, dan nomor kerentanan adalah CVE-2015-0235. Peretas dapat menggunakan serangkaian fungsi gethostbyname untuk mengeksekusi kode jarak jauh dan mendapatkannyaserverKerentanan ini memiliki banyak jalur pemicu dan cakupan dampak yang besar, harap perhatikan dan perbaiki sementara tepat waktu, dan kami akan memperbaruinya sesegera mungkinPencerminanPerbaiki. Harap tahu.

1. Tanggal rilis kerentanan
2015Januari 27, 2019


2. Perangkat lunak dan sistem yang telah dikonfirmasi berhasil digunakan
Glibc 2.2Hingga 2.17 (termasuk versi 2.2 dan 2.17)

3. Deskripsi kerentanan
GNU glibcKerentanan buffer overflow diekspos dalam fungsi gethostbyname dari pustaka standar, dan nomor kerentanan adalah CVE-2015-0235. Glibc adalah library C yang menyediakan panggilan sistem dan fungsi dasar, seperti open, malloc, printf, dll. Semua program yang terhubung secara dinamis menggunakan Glibc. Penyerang jarak jauh dapat mengeksploitasi kerentanan ini untuk mengeksekusi kode arbitrer dan meningkatkan hak istimewa pengguna yang menjalankan aplikasi.

4. Metode deteksi kerentanan


Ikuti instruksinyaOperasiBisa.
#include <netdb.h>   
#include <stdio.h>   
#include <stdlib.h>   
#include <string.h>   
#include <errno.h>   
#define CANARY"in_the_coal_mine"   
struct {   
  penyangga char[1024];   
  kenari char[ukurandari(CANARY)];   
} temp = { "buffer", CANARY };   
int main(void) {   
  strukturkan resbuf hostent;   
  struct hostent *hasil;   
  int herrno;   
  int retval;   
  /*** strlen (nama) = size_needed -ukurandari (*host_addr) - ukurandari (*h_addr_ptrs) - 1; ***/   
  size_t len = sizeof(temp.buffer) -16*sizeof(unsigned char) - 2*sizeof(char *) - 1;   
  nama char[sizeof(temp.buffer)];   
  memset(nama, '0', len);   
  name[len] = '\0';   
  retval = gethostbyname_r(nama,&resbuf, temp.buffer, sizeof(temp.buffer), &result, &herrno);   
  if (strcmp(temp.canary, CANARY) !=0) {   
    puts("rentan");   
    keluar(EXIT_SUCCESS);   
  }   
  if (retval == ERANGE) {   
    meletakkan("tidak rentan");   
    keluar(EXIT_SUCCESS);   
  }   
  puts("seharusnya tidak terjadi");   
  keluar(EXIT_FAILURE);   
}


Simpan sebagai GHOST.c
Jalankan gcc GHOST.c -o GHOST


$./GHOST   
tidak rentan
Mewakili perbaikan yang berhasil.


5. Sarankan rencana perbaikan


Catatan Khusus: Karena glibc adalah komponen dasar dari sistem Linux, untuk menghindari dampak patching pada server Anda, disarankan agar Anda memilih waktu yang tepat untuk memperbaiki, dan pastikan untuk mencadangkan melalui operasi snapshot sebelum memperbaiki.



Centos 5/6/7:


yum update glibc


Ubuntu 12/14
apt-get update
apt-get install libc6


Debian 6


wget -O /etc/apt/sources.list.d/debian6-lts.listhttp://mirrors.aliyun.com/repo/debian6-lts.list
apt-get update
apt-get install libc6




Debian 7


apt-get update
apt-get install libc6


Buka 13


Penyegaran Zypper
Pembaruan Zypper Glibc*


Aliyun linux 5u7


wget -O /etc/yum.repos.d/aliyun-5.repohttp://mirrors.aliyun.com/repo/aliyun-5.repo  
yum update glibc





Mantan:C# menyalin dan menempelkan informasi teks ke clipboard
Depan:html dl dt dd Struktur dan penggunaan elemen tag HTML
Diposting pada 30/01/2015 20.51.58 |
telah diperbaiki.
Diposting pada 31/01/2015 18.49.17 |
Dasar | 3,7 kB 00:00     
Dasar/primary_db | 4.6 MB 00:01     
epel | 4,4 kB 00:00     
epel/primary_db | 6,3 MB 00:02     
Ekstra | 3,4 kB 00:00     
Ekstra/primary_db |  30 kB 00:00     
Pembaruan | 3,4 kB 00:00     
pembaruan/primary_db | 2,1 MB 00:00     
Menyiapkan Proses Pembaruan
Menyelesaikan Dependensi
--> Menjalankan pemeriksaan transaksi
---> Paket glibc.x86_64 0:2.12-1.132.el6_5.2 akan diperbarui
--> Dependensi Pemrosesan: glibc = 2.12-1.132.el6_5.2 untuk paket: glibc-devel-2.12-1.132.el6_5.2.x86_64
--> Dependensi Pemrosesan: glibc = 2.12-1.132.el6_5.2 untuk paket: glibc-headers-2.12-1.132.el6_5.2.x86_64
--> Dependensi Pemrosesan: glibc = 2.12-1.132.el6_5.2 untuk paket: glibc-common-2.12-1.132.el6_5.2.x86_64
--> Dependensi Pemrosesan: glibc = 2.12-1.132.el6_5.2 untuk paket: nscd-2.12-1.132.el6_5.2.x86_64
---> Paket glibc.x86_64 0:2.12-1.149.el6_6.5 akan menjadi pembaruan
--> Menjalankan pemeriksaan transaksi
---> Paket glibc-common.x86_64 0:2.12-1.132.el6_5.2 akan diperbarui
---> Paket glibc-common.x86_64 0:2.12-1.149.el6_6.5 akan menjadi pembaruan
---> Paket glibc-devel.x86_64 0:2.12-1.132.el6_5.2 akan diperbarui
---> Paket glibc-devel.x86_64 0:2.12-1.149.el6_6.5 akan menjadi pembaruan
---> Paket glibc-headers.x86_64 0:2.12-1.132.el6_5.2 akan diperbarui
---> Paket glibc-headers.x86_64 0:2.12-1.149.el6_6.5 akan menjadi pembaruan
---> Paket nscd.x86_64 0:2.12-1.132.el6_5.2 akan diperbarui
---> Paket nscd.x86_64 0:2.12-1.149.el6_6.5 akan menjadi pembaruan
--> Resolusi Dependensi Selesai

Dependensi Diselesaikan

=========================================================================================
Ukuran repositori versi lengkungan paket
=========================================================================================
Updating:
glibc x86_64 2.12-1.149.el6_6.5 pembaruan 3.8 M
Memperbarui dependensi:
glibc-common x86_64 2.12-1.149.el6_6.5 pembaruan 14 M
glibc-devel x86_64 2.12-1.149.el6_6.5 Pembaruan 983 K
glibc-headers x86_64 pembaruan 2.12-1.149.el6_6.5 612 k
Pembaruan NSCD x86_64 2.12-1.149.el6_6.5 223 K

Ringkasan Transaksi
=========================================================================================
Tingkatkan 5 Paket

Total ukuran unduhan: 20 M
Apakah ini baik-baik saja [y/N]: y
Mengunduh Paket:
(1/5): glibc-2.12-1.149.el6_6.5.x86_64.rpm | 3.8 MB 00:00     
(2/5): glibc-common-2.12-1.149.el6_6.5.x86_64.rpm |  14 MB 00:03     
(3/5): glibc-devel-2.12-1.149.el6_6.5.x86_64.rpm | 983 kB 00:00     
(4/5): glibc-headers-2.12-1.149.el6_6.5.x86_64.rpm | 612 kB 00:00     
(5/5): NSCD-2.12-1.149.el6_6.5.x86_64.rpm | 223 kB 00:00     
-----------------------------------------------------------------------------------------
Total 4.6 MB/dtk |  20 MB 00:04     
Menjalankan rpm_check_debug
Menjalankan Tes Transaksi
Tes Transaksi Berhasil
Menjalankan Transaksi
  Memperbarui : glibc-2.12-1.149.el6_6.5.x86_64 1/10
  Memperbarui : glibc-common-2.12-1.149.el6_6.5.x86_64 2/10
  Memperbarui : glibc-headers-2.12-1.149.el6_6.5.x86_64 3/10
  Memperbarui : glibc-devel-2.12-1.149.el6_6.5.x86_64 4/10
  Memperbarui : nscd-2.12-1.149.el6_6.5.x86_64 5/10
  Pembersihan : glibc-devel-2.12-1.132.el6_5.2.x86_64 6/10
  Pembersihan : glibc-headers-2.12-1.132.el6_5.2.x86_64 7/10
  Pembersihan : nscd-2.12-1.132.el6_5.2.x86_64 8/10
  Pembersihan : glibc-common-2.12-1.132.el6_5.2.x86_64 9/10
  Pembersihan : glibc-2.12-1.132.el6_5.2.x86_64 10/10
  Memverifikasi : nscd-2.12-1.149.el6_6.5.x86_64 1/10
  Memverifikasi : glibc-common-2.12-1.149.el6_6.5.x86_64 2/10
  Memverifikasi : glibc-devel-2.12-1.149.el6_6.5.x86_64 3/10
  Memverifikasi : glibc-headers-2.12-1.149.el6_6.5.x86_64 4/10
  Memverifikasi : glibc-2.12-1.149.el6_6.5.x86_64 5/10
  Memverifikasi : glibc-headers-2.12-1.132.el6_5.2.x86_64 6/10
  Memverifikasi : nscd-2.12-1.132.el6_5.2.x86_64 7/10
  Memverifikasi : glibc-devel-2.12-1.132.el6_5.2.x86_64 8/10
  Memverifikasi : glibc-2.12-1.132.el6_5.2.x86_64 9/10
  Memverifikasi : glibc-common-2.12-1.132.el6_5.2.x86_64 10/10

Updated:
  glibc.x86_64 0:2.12-1.149.el6_6.5                                                      

Dependensi Diperbarui:
  glibc-common.x86_64 0:2.12-1.149.el6_6.5 glibc-devel.x86_64 0:2.12-1.149.el6_6.5   
  GLIBC-headers.x86_64 0:2.12-1.149.el6_6.5 nscd.x86_64 0:2.12-1.149.el6_6.5         

Selesai!
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com