Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 13297|Відповідь: 2

[linux] Повідомлення про виправлення критичної вразливості безпеки бібліотеки Linux Glibc (важливо)

[Копіювати посилання]
Опубліковано 30.01.2015 18:36:02 | | |
Привіт, кілька днів томуLinuxВиявлено вразливість переповнення буфера у функції gethostbyname стандартної бібліотеки GNU glibc, а номер вразливості — CVE-2015-0235. Хакери можуть використовувати серію функцій gethostbyname для виконання віддаленого коду та його отриманняСерверЦя вразливість має багато шляхів тригерів і широкий масштаб впливу, будь ласка, зверніть увагу на неї та тимчасово виправте її вчасно, і ми оновимо її якнайшвидшеДзеркалюванняВиправляю. Будь ласка, знайте.

1. Дата виходу вразливості
201527 січня 2019 року


2. Програмне забезпечення та системи, які підтверджені як успішні використання
Glibc 2.2До версії 2.17 (включає версії 2.2 та 2.17)

3. Опис вразливостей
GNU glibcВразливість переповнення буфера була виявлена у функції gethostbyname стандартної бібліотеки, а номер вразливості — CVE-2015-0235. Glibc — це бібліотека на C, яка надає системні виклики та базові функції, такі як open, malloc, printf тощо. Усі динамічно підключені програми використовують Glibc. Віддалений зловмисник може використати цю вразливість для виконання довільного коду та підвищення привілеїв користувача, який запускає додаток.

4. Методи виявлення вразливостей


Дотримуйтесь інструкційЕксплуатаціяМожете.
#include <netdb.h>   
#include <stdio.h>   
#include <stdlib.h>   
#include <string.h>   
#include <errno.h>   
#define КАНАРКА"in_the_coal_mine"   
struct {   
  char buffer[1024];   
  канарка[sizeof(CANARY)];   
} temp = { "buffer", CANARY };   
int main(void) {   
  struct hostent resbuf;   
  struct hostent *result;   
  Інт Геррно;   
  int retval;   
  /*** strlen (ім'я) = size_needed -sizeof (*host_addr) - sizeofof (*h_addr_ptrs) - 1; ***/   
  size_t len = sizeof(temp.buffer) -16*sizeof(unsigned char) - 2*sizeof(char *) - 1;   
  ім'я символу[sizeof(temp.buffer)];   
  memset (ім'я, '0', Лен);   
  ім'я[len] = '\0';   
  retval = gethostbyname_r(name,&resbuf, temp.buffer, sizeof(temp.buffer), &result, &herrno);   
  якщо (strcmp(temp.canary, CANARY) !=0) {   
    puts («вразливий»);   
    вихід(EXIT_SUCCESS);   
  }   
  якщо (retval == ERANGE) {   
    puts("notvulable");   
    вихід(EXIT_SUCCESS);   
  }   
  puts("не повинен бути");   
  вихід(EXIT_FAILURE);   
}


Зберегти як GHOST.c
Запусти gcc GHOST.c -o GHOST


$./GHOST   
неуразливий
Це означає успішний ремонт.


5. Запропонуйте плани ремонту


Особлива примітка: Оскільки glibc є базовим компонентом системи Linux, щоб уникнути впливу патчів на сервер, рекомендується обрати відповідний час для ремонту і обов'язково зробити резервну копію за допомогою операції знімка перед ремонтом.



Centos 5/6/7:


Yum Update Glibc


Ubuntu 12/14
apt-get оновлення
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 оновлення
apt-get install libc6




Debian 7


apt-get оновлення
apt-get install libc6


Opensuse 13


Оновлення Zypper
Оновлення zypper glibc*


Aliyun linux 5u7


wget -O /etc/yum.repos.d/aliyun-5.repohttp://mirrors.aliyun.com/repo/aliyun-5.repo  
Yum Update Glibc





Попередній:C# копіюйте та вставляйте текстову інформацію у буфер обміну
Наступний:html dl dt dd синтаксична структура та використання елементів тегів
Опубліковано 30.01.2015 20:51:58 |
виправлено.
Опубліковано 31.01.2015 18:49:17 |
base | 3.7 kB 00:00     
base/primary_db | 4.6 MB 00:01     
Епель | 4.4 kB 00:00     
epel/primary_db | 6.3 MB 00:02     
Додатково | 3.4 kB 00:00     
Додаткові матеріали/primary_db |  30 кБ 00:00     
Оновлення | 3.4 kB 00:00     
Оновлення/primary_db | 2.1 MB 00:00     
Налаштування процесу оновлення
Розв'язання залежностей
--> Перевірка транзакції
---> Пакет glibc.x86_64 0:2.12-1.132.el6_5.2 буде оновлено
--> Залежність обробки: glibc = 2.12-1.132.el6_5.2 для пакету: glibc-devel-2.12-1.132.el6_5.2.x86_64
--> Залежність від обробки: glibc = 2.12-1.132.el6_5.2 для пакету: glibc-headers-2.12-1.132.el6_5.2.x86_64
--> Залежність обробки: glibc = 2.12-1.132.el6_5.2 для пакету: glibc-common-2.12-1.132.el6_5.2.x86_64
--> Залежність обробки: glibc = 2.12-1.132.el6_5.2 для пакету: nscd-2.12-1.132.el6_5.2.x86_64
---> Пакет glibc.x86_64 0:2.12-1.149.el6_6.5 буде оновленим
--> Перевірка транзакції
---> Пакет glibc-common.x86_64 0:2.12-1.132.el6_5.2 буде оновлено
---> Пакет glibc-common.x86_64 0:2.12-1.149.el6_6.5 буде оновленням
---> Пакет glibc-devel.x86_64 0:2.12-1.132.el6_5.2 буде оновлено
---> Пакет glibc-devel.x86_64 0:2.12-1.149.el6_6.5 буде оновленим
---> Пакет glibc-headers.x86_64 0:2.12-1.132.el6_5.2 буде оновлено
---> Пакет glibc-headers.x86_64 0:2.12-1.149.el6_6.5 буде оновленим
---> Пакет nscd.x86_64 0:2.12-1.132.el6_5.2 буде оновлено
---> Пакет nscd.x86_64 0:2.12-1.149.el6_6.5 буде оновленим
--> Завершене розв'язання залежності

Розв'язані залежності

=========================================================================================
Розмір репозиторію архіки пакету
=========================================================================================
Updating:
glibc x86_64 2.12-1.149.el6_6.5 оновлення 3.8 млн
Оновлення для залежностей:
glibc-common x86_64 2.12-1.149.el6_6.5 оновлення 14 млн
glibc-devel x86_64 2.12-1.149.el6_6.5 оновлення 983 k
glibc-headers x86_64 2.12-1.149.el6_6.5 оновлення 612 k
NSCD x86_64 2.12-1.149.el6_6.5 оновлення 223 k

Підсумок транзакцій
=========================================================================================
Пакет(и) оновлення 5

Загальний розмір завантаження: 20 млн
Чи це нормально [y/N]: y
Завантаження пакетів:
(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 кБ 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 кБ 00:00     
-----------------------------------------------------------------------------------------
Всього 4,6 МБ/с |  20 MB 00:04     
Біг rpm_check_debug
Запуск тесту транзакцій
Транзакційний тест успішно
Поточна транзакція
  Оновлення: glibc-2.12-1.149.el6_6.5.x86_64 1/10
  Оновлення: glibc-common-2.12-1.149.el6_6.5.x86_64 2/10
  Оновлення: glibc-headers-2.12-1.149.el6_6.5.x86_64 3/10
  Оновлення: glibc-devel-2.12-1.149.el6_6.5.x86_64 4/10
  Оновлення: nscd-2.12-1.149.el6_6.5.x86_64 5/10
  Прибирання: glibc-devel-2.12-1.132.el6_5.2.x86_64 6/10
  Очищення: glibc-headers-2.12-1.132.el6_5.2.x86_64 7/10
  Очищення: nscd-2.12-1.132.el6_5.2.x86_64 8/10
  Очищення: glibc-common-2.12-1.132.el6_5.2.x86_64 9/10
  Очищення: glibc-2.12-1.132.el6_5.2.x86_64 10/10
  Перевірка: nscd-2.12-1.149.el6_6.5.x86_64 1/10
  Перевірка: glibc-common-2.12-1.149.el6_6.5.x86_64 2/10
  Перевірка : glibc-devel-2.12-1.149.el6_6.5.x86_64 3/10
  Перевірка: glibc-headers-2.12-1.149.el6_6.5.x86_64 4/10
  Перевірка: glibc-2.12-1.149.el6_6.5.x86_64 5/10
  Перевірка : glibc-headers-2.12-1.132.el6_5.2.x86_64 6/10
  Перевірка: nscd-2.12-1.132.el6_5.2.x86_64 7/10
  Перевірка: glibc-devel-2.12-1.132.el6_5.2.x86_64 8/10
  Перевірка: glibc-2.12-1.132.el6_5.2.x86_64 9/10
  Перевірка: 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                                                      

Оновлено залежність:
  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         

Завершено!
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com