Python 2.6.8/2.7.3/3.3.2 HTTP read_status HTTP Header отказ в обслуживании

CVSS Meta Temp ScoreТекущая цена эксплойта (≈)Балл интереса CTI
7.2$0-$5k0.00

СводкаИнформация

Уязвимость была найдена в Python 2.6.8/2.7.3/3.3.2. Она была классифицирована как проблематичный. Неизвестная функция компонента HTTP Handler поражена. Манипуляция в рамках HTTP Header приводит к отказ в обслуживании. Эта уязвимость была названа CVE-2013-1752. Эксплойт отсутствует. Рекомендуется произвести апгрейд соответствующего компонента.

ПодробностиИнформация

Уязвимость была найдена в Python 2.6.8/2.7.3/3.3.2. Она была классифицирована как проблематичный. Неизвестная функция компонента HTTP Handler поражена. Манипуляция в рамках HTTP Header приводит к отказ в обслуживании. Использование CWE для описания проблемы приводит к CWE-404. Слабость была опубликована 25.09.2012 специалистом Christian Heimes от компании OUSPG под идентификатором Issue16037 как Bug Report (Веб-сайт). Консультация доступна по адресу bugs.python.org.

Эта уязвимость была названа CVE-2013-1752. CVE был назначен 15.02.2013. Доступна техническая информация. Популярность этой уязвимости ниже среднего. Эксплойт отсутствует. На текущий момент стоимость эксплойта может быть примерно USD $0-$5k. В бюллетене отмечено:

The httplib module / package can read arbitrary amounts of data from its socket when it's parsing the HTTP header. This may lead to issues when a user connects to a broken HTTP server or something that isn't a HTTP at all. The issue can be broken up into two parts: parsing the HTTP status line parsing and parsing the remaining HTTP headers.

Это объявлено как Не определено. В 0-дневный период предполагаемая подземная цена составляла около $0-$5k. Сканер уязвимостей Nessus содержит плагин с ID 75315. Это относится к семейству SuSE Local Security Checks. Этот плагин выполняется в контексте типа l. Он использует порт 0. Коммерческий сканер уязвимостей Qualys способен проверить эту проблему с помощью плагина 350081 (Amazon Linux Security Advisory for python26: ALAS-2015-621).

Установка версии 2.7.4, 2.6.9 и 3.3.3 позволяет решить данный вопрос. Последняя версия доступна для скачивания по ссылке hg.python.org. Рекомендуется произвести апгрейд соответствующего компонента. Данная уязвимость будет решена с помощью следующих строк кода:

--- a/Lib/httplib.py
+++ b/Lib/httplib.py
@ -362,7 +362,9 @

def _read_status(self): # Initialize with Simple-Response defaults - line = self.fp.readline() + line = self.fp.readline(_MAXLINE + 1) + if len(line) > _MAXLINE: + raise LineTooLong("header line") if self.debuglevel > 0: print "reply:", repr(line) if not line:

В уведомлении содержится следующий комментарий:
Reading and parsing of the HTTP status line is already limited in Python 3.x. Python 2.7 and lower may read arbitrary amounts of bytes from the socket until it finds a newline char. (…) Both Python 2 and Python 3 accept an unlimited count of HTTP headers with a maximum length of 64k each. As headers are accumulated in an list it may consume lots of memory. I suggest that we limit the maximum amount of HTTP header lines to a sane value. How does 100 sound to you?

Уязвимость также задокументирована в других базах данных уязвимостей: SecurityFocus (BID 61050), X-Force (90056), Secunia (SA56226), Vulnerability Center (SBV-57793) и Tenable (75315).

ПродуктИнформация

Тип

Имя

Версия

Лицензия

CPE 2.3Информация

CPE 2.2Информация

CVSSv4Информация

VulDB Вектор: 🔍
VulDB Надёжность: 🔍

CVSSv3Информация

VulDB Meta Base Score: 7.5
VulDB Meta Temp Score: 7.2

VulDB Базовый балл: 7.5
VulDB Временная оценка: 7.2
VulDB Вектор: 🔍
VulDB Надёжность: 🔍

CVSSv2Информация

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
ВекторСложностьАутентификацияКонфиденциальностьЦелостностьДоступность
РазблокироватьРазблокироватьРазблокироватьРазблокироватьРазблокироватьРазблокировать
РазблокироватьРазблокироватьРазблокироватьРазблокироватьРазблокироватьРазблокировать
РазблокироватьРазблокироватьРазблокироватьРазблокироватьРазблокироватьРазблокировать

VulDB Базовый балл: 🔍
VulDB Временная оценка: 🔍
VulDB Надёжность: 🔍

ЭксплуатацияИнформация

Класс: отказ в обслуживании
CWE: CWE-404
CAPEC: 🔍
ATT&CK: 🔍

Физический: Нет
Локальный: Нет
Удалённый: Да

Доступность: 🔍
Статус: Не определено
Прогноз цен: 🔍
Оценка текущей цены: 🔍

0-DayРазблокироватьРазблокироватьРазблокироватьРазблокировать
СегодняРазблокироватьРазблокироватьРазблокироватьРазблокировать

Nessus ID: 75315
Nessus Имя: openSUSE Security Update : python3 (openSUSE-SU-2014:0498-1)
Nessus Файл: 🔍
Nessus Риск: 🔍
Nessus Семейство: 🔍
Nessus Context: 🔍
Nessus Port: 🔍

OpenVAS ID: 14611
OpenVAS Имя: Amazon Linux Local Check: alas-2015-621
OpenVAS Файл: 🔍
OpenVAS Семейство: 🔍

Qualys ID: 🔍
Qualys Имя: 🔍

Разведка угрозИнформация

Интерес: 🔍
Активные акторы: 🔍
Активные группы APT: 🔍

КонтрмерыИнформация

Рекомендация: Обновление
Статус: 🔍

Время реакции: 🔍
0-дневное время: 🔍
Время экспозиции: 🔍

Обновление: Python 2.7.4/2.6.9/3.3.3

ХронологияИнформация

25.09.2012 🔍
25.09.2012 +0 дни 🔍
15.02.2013 +143 дни 🔍
09.07.2013 +144 дни 🔍
27.12.2013 +171 дни 🔍
27.12.2013 +0 дни 🔍
04.04.2014 +98 дни 🔍
13.06.2014 +70 дни 🔍
29.03.2016 +655 дни 🔍
03.02.2019 +1041 дни 🔍

ИсточникиИнформация

Консультация: Issue16037
Исследователь: Christian Heimes
Организация: OUSPG
Статус: Подтверждённый

CVE: CVE-2013-1752 (🔍)
GCVE (CVE): GCVE-0-2013-1752
GCVE (VulDB): GCVE-100-11633

OVAL: 🔍

X-Force: 90056
SecurityFocus: 61050 - Google Chrome CVE-2013-2877 Out of Bounds Denial of Service Vulnerability
Secunia: 56226 - Python Multiple Vulnerabilities, Less Critical
OSVDB: 101386
Vulnerability Center: 57793 - Python SSL Module Remote DoS due to Unlimited readline() Function Call, Medium

Смотрите также: 🔍

ВходИнформация

Создано: 27.12.2013 23:38
Обновлено: 03.02.2019 10:15
Изменения: 27.12.2013 23:38 (76), 03.02.2019 10:15 (8)
Завершенный: 🔍
Cache ID: 216::103

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Обсуждение

Do you know our Splunk app?

Download it now for free!