Уязвимости операционных систем. Часть III

в 8:32, , рубрики: Debian, Fedora, linux, Ubuntu, Watch OS, windows, Windows RT 8.1, Блог компании ua-hosting.company

Уязвимости операционных систем. Часть III - 1

Половина пути пройдена. Мы уже знаем какие дыры есть в ОС Android или в macOS. Сегодня речь пойдет об операционных системах, которые не так распространены, как тот же Android, но заслуживают не меньшего внимания. Если же вы желаете ознакомиться с уязвимостями ОС из предыдущих частей — вот ссылочки: Часть I и Часть II.

Но для начала я хотел бы напомнить о том, почему именно эти ОС мы сегодня рассматриваем, как выбираются уязвимости и какие данные о них содержатся в таблицах, коих вы увидите довольно много ниже по тексту.

В данной части мы будем изучать третью пятерку операционных систем из таблицы ниже (выделены жирным шрифтом):

Название ОС Производитель Общее число уязвимостей за 2017 год Общее число уязвимостей за 2016 год Общее число уязвимостей за все время ведения статистики
Android Google 666 523 1357
Linux Kernel Linux 381 217 1921
Iphone Os Apple 293 161 1277
Windows 10 Microsoft 226 172 451
Windows Server 2016 Microsoft 212 39 251
Windows Server 2008 Microsoft 212 133 981
Mac Os X Apple 210 215 1888
Windows Server 2012 Microsoft 201 156 606
Windows 7 Microsoft 197 134 838
Windows 8.1 Microsoft 192 154 542
Windows Rt 8.1 Microsoft 124 139 438
Debian Linux Debian 95 327 1029
Fedora Fedora project 84 120 441
Ubuntu Linux Canonical 66 279 867
WatchOS Apple 65 77 231
Windows Vista Microsoft 64 125 814
Opensuse Opensuse Project 58 5 119
Leap Opensuse Project 57 2 60
Leap Novell 48 260 349
XEN XEN 44 28 228

Касательно выбора уязвимостей для более подробного рассмотрения (поскольку это уже писалось в предыдущей части, спрячем все под спойлер, дабы не удлинять текст):

Стоит рассмотреть более внимательно некоторые из уязвимостей, замеченные на той или иной ОС. Портал CVE Details выставляет баллы каждой из них. Число баллов зависит от уровня ущерба и массовости распространения. Максимальный показатель — 10 баллов. Именно о таких уязвимостях (если они есть и если они уникальны) и будет идти речь далее. Дабы эта статья не превратилась в пятитомник Ленина, будем уделять внимание только трем уязвимость из списка, который может содержать сотни.

Касательно структуры данных в таблицах (поскольку это уже писалось в предыдущей части, спрячем все под спойлер, дабы не удлинять текст):

Описание таблиц

В таблицах каждого из типов уязвимостей указываются определенные дополнительные параметры, касающиеся той или иной уязвимости. Подробнее о них.

Уровень воздействия на

1) конфиденциальность:

  • Полный — уязвимость открывает злоумышленникам доступ ко всей информации на устройстве;
  • Частичный — значительное раскрытие информации;
  • Отсутствует — конфиденциальность не нарушается;

2) целостность:

  • Полный — целостность системы полностью скомпрометирована, полная потеря защиты системы;
  • Частичный — модификация некоторых системных файлов или информации возможна, но злоумышленник не имеет контроля над тем, что может быть изменено;
  • Отсутствует — воздействия на целостность системы нет;

3) доступность:

  • Полный — уязвимость позволяет злоумышленнику полностью закрыть доступ к ресурсу;
  • Частичный — снижение производительности или непостоянная доступность ресурсов;
  • Отсутствует — воздействия на доступность системы нет;

Сложность доступа

  • Низкая — особых условий для получения доступа не требуется, как и не требуется специфический знаний или навыков;
  • Средняя — необходимо удовлетворение некоторых условий для получения доступа;
  • Высокая — специальные условия получения доступа, ограничивающие эксплойт;

Аутентификация

  • Не требуется — аутентификация не требуется для эксплойта уязвимости;
  • Single system — уязвимость требует, чтобы взломщик был залогинен в систему (например, через командную строку, режим рабочего стола или через веб-интерфейс).

1. Windows Rt 8.1

Уязвимости операционных систем. Часть III - 2

Windows Rt 8.1 — операционная система семейства Windows NT, вышедшая 26 октября 2012 года.

Уязвимости операционных систем. Часть III - 3

DoS

Всего уязвимостей — 36. 10 баллов набрало — 0.

Уязвимость №1 (9.3)

usp10.dll в Uniscribe позволял добавить в файл шрифта EMF+ запись, что открывало возможность исполнить код или привести к DoS.

Уязвимость №2 (9.3)

MSXML 3.0 позволял через созданный XML контент устроить DoS.

Уязвимость №3 (9.3)

atmfd.dll в библиотеке Adobe Type Manager позволял удаленному злоумышленнику устроить DoS через созданный им OpenType шрифт.

Уязвимости операционных систем. Часть III - 4
Таблица уязвимостей категории «DoS» в ОС Windows Rt 8.1

Обход чего-либо

53 уязвимости всего. 0 набрали 10 баллов.

Уязвимость №1 (9.3)

ОС позволяла злоумышленникам обойти протоколы безопасности песочницы приложений и произвести действия в реестре через созданное приложение.

Уязвимость №2 (9.3)

ОС позволяла злоумышленникам обойти протоколы безопасности песочницы приложений и произвести действия в файловой системе через созданное приложение.

Уязвимость №3 (7.6)

ОС не могла верно ограничить обмен данных клавиатуры и мыши между программами на разных уровнях целостности, что позволяло атакующему обойти ограничения доступа, путем получения контроля над низкоуровневым процессом для запуска экранной клавиатуры, а далее скачать созданное приложение.

Уязвимости операционных систем. Часть III - 5
Таблица уязвимостей категории «Обход чего-либо» в ОС Windows Rt 8.1

Исполнение кода

126 уязвимостей всего. 10 баллов — 5.

Уязвимость №1

ОС позволяло взломщику получить контроль над системой, когда Windows Search не справлялся с обработкой объектов памяти.

Уязвимость №2

ОС позволяло взломщику получить контроль над системой, когда Windows Search не справлялся с обработкой объектов памяти.

Уязвимость №3

ОС позволяла удаленно исполнить произвольный код, поскольку не могла обработать DNS ответы.

Уязвимости операционных систем. Часть III - 6
Таблица уязвимостей категории «Исполнение кода» в ОС Windows Rt 8.1

Повреждение памяти

Всего — 21 уязвимость. 10 баллов — 0.

Уязвимость №1 (9.3)

Компонент Imaging позволял удаленному взломщику исполнить код через созданный документ.

Уязвимость №2 (9.3)

Animation Manager позволял удаленному взломщику исполнить код через созданный веб-сайт.

Уязвимость №3 (9.3)

Media Foundation позволял удаленному взломщику исполнить код через созданный веб-сайт.

Уязвимости операционных систем. Часть III - 7
Таблица уязвимостей категории «Повреждение памяти» в ОС Windows Rt 8.1

Доступ к информации

Всего обнаружено 108 уязвимостей. 10 баллов — 0.

Уязвимость №1 (7.2)

Драйверы в режима ядра могли дать аутентифицированному злоумышленнику возможность исполнить созданное им приложение для получения информации или даже DoS.

Уязвимость №2 (6.6)

win32k.sys в драйверах режима ядра давал возможность локальным пользователям завладеть информацией из памяти ядра через созданное приложение.

Уязвимость №3 (5.8)

SChannel не мог гарантировать того, что сертификат сервера X.509 во время перезаключения тот же что и перед перезаключением, что давало возможность получить информацию или модифицировать TLS данные через «triple handshake attack».

Уязвимости операционных систем. Часть III - 8
Таблица уязвимостей категории «Доступ к информации» в ОС Windows Rt 8.1

Увеличение привилегий

Всего — 155. 10 баллов набрало 2.

Уязвимость №1 (10)

Драйверы режима ядра ОС позволяли локальному пользователю получить привилегии через созданное приложение.

Уязвимость №2 (10)

Компонент Graphics в ядре ОС давал возможность локальным пользователям получить привилегии через созданное приложение.

Уязвимость №3 (9.3)

Обход директории в компоненте TSWbPrxy ОС давал возможность получить привилегии через создана путь в исполняемом файле.

Уязвимости операционных систем. Часть III - 9
Таблица уязвимостей категории «Увеличение привилегий» в ОС Windows Rt 8.1

Переполнение

Всего — 48. 10 баллов — 0.

Уязвимость №1 (9.3)

Компонент Uniscribe при неудавшейся попытке верно обработать объекты памяти приводил к появлению возможности исполнения кода.

Уязвимость №2 (9.3)

JET Database Engine давал контроль над системой, в виду того как обрабатывал объекты памяти.

Уязвимость №3 (9.3)

JET Database Engine давал контроль над системой, в виду того как обрабатывал объекты памяти.

Уязвимости операционных систем. Часть III - 10
Таблица уязвимостей категории «Переполнение» в ОС Windows Rt 8.1

Как и в предыдущей версии ОС Windows — 8-ой, тут наблюдается та же тенденция. Большее число уязвимостей касаются увеличения привилегий, что приводит к появлению возможности активировать удаленно зловредное ПО, что, в свою очередь, способно эксплуатировать иные уязвимости и приводить к различного рода последствиям.

2. Debian Linux

Уязвимости операционных систем. Часть III - 11
Debian Linux — операционная система, впервые выпущенная 16 августа 1993 года. Одно из самых популярных воплощений Linux, Debian подходит для использования как на рабочих станциях, так и на серверах.

Забавный факт: все рабочие версии ОС носят названия имен персонажей анимационного фильма «История игрушек». А вот нестабильная версия именуется Сид (так звали мальчика в том же мультике, которые издевался над игрушками).

Уязвимости операционных систем. Часть III - 12

DoS

Всего — 500 уязвимостей. Однако среди такого большого числа только 16 набрали 10 баллов.

Уязвимость №1

Функция xmlNextChar в libxml2 позволяла с помощью созданного XML документа организовать DoS удаленным взломщиком.

Уязвимость №2

Переполнение буфера в куче функции encode_msg в encode_msg.c в модуле SEAS Kamailio позволяло удаленному взломщику устроить DoS или исполнить код через большой SIP пакет.

Уязвимость №3

Множество неустановленных уязвимостей в браузере Mozilla Firefox до версии 46.0 и Firefox ESR 45.x до версии 45.1 позволяли удаленному злоумышленнику организовать DoS через неустановленный вектор.

Уязвимости операционных систем. Часть III - 13
Таблица уязвимостей категории «DoS» в ОС Debian Linux

Обход чего-либо

Из 67 уязвимостей только 4 набрали 10 баллов.

Уязвимость №1

Gallery версии 1.4.3 и старше позволял обойти аутентификацию и получить права администратора Gallery.

Уязвимость №2

Google Chrome, старше 48.0.2564.116, позволял обойти правило ограничения домена Blink и обойти протоколы безопасности песочницы через неустановленный вектор.

Уязвимость №3

Функция pam_sm_authenticate в pam_sshauth.c в libpam-sshauth давала контекстнозависимым взломщикам обойти аутентификацию или получить привилегии через системный аккаунт пользователя.

Уязвимости операционных систем. Часть III - 14
Таблица уязвимостей категории «Обход чего-либо» в ОС Debian Linux

Исполнение кода

Всего — 200. 10 баллов — 25.

Уязвимость №1

Множество неустановленных уязвимостей в браузере Mozilla Firefox до версии 46.0 и Firefox ESR 45.x до версии 45.1 позволяли удаленному злоумышленнику организовать DoS через неустановленный вектор.

Уязвимость №2

Функция OpenBlob в blob.c в GraphicsMagick до версии 1.3.24 и ImageMagick позволяла взломщику исполнить произвольный код через использование символа «|» ы начале имени файла.

Уязвимость №3

Уязвимость Use-after-free в функции __sys_recvmmsg в net/socket.c в ядре Linux до версии 4.5.2 позволяла удаленному злоумышленнику исполнить произвольный код через векторы, обусловленные использованием ненадлежащего системного вызова recvmmsg во время обработки ошибок.

Уязвимости операционных систем. Часть III - 15
Таблица уязвимостей категории «Исполнение кода» в ОС Debian Linux

Повреждение памяти

Всего — 37 уязвимостей. Из них 10 баллов набрали 4.

Уязвимость №1

Множество неустановленных уязвимостей в браузере Mozilla Firefox до версии 46.0 и Firefox ESR 45.x до версии 45.1 позволяли удаленному злоумышленнику организовать DoS через неустановленный вектор.

Уязвимость №2

Переполнение буфера в куче функции encode_msg в encode_msg.c в модуле SEAS Kamailio позволяло удаленному взломщику устроить DoS или исполнить код через большой SIP пакет.

Уязвимость №3

Множество неустановленных уязвимостей в браузере Mozilla Firefox до версии 46.0 и Firefox ESR 45.x до версии 45.1 позволяли удаленному злоумышленнику организовать DoS через неустановленный вектор.

Уязвимости операционных систем. Часть III - 16
Таблица уязвимостей категории «Повреждение памяти» в ОС Debian Linux

Доступ к информации

Всего — 77. 10 баллов — 0 уязвимостей.

Уязвимость №1 (9.0)

Скрипт oarsh в OAR до версии 2.5.7 позволял удаленному аутентифицированному пользователю кластера получить ценную информацию и получить привилегии через векторы, включающие опции OpenSSH.

Уязвимость №2 (7.5)

Функция htmlParseComment в HTMLparser.c в libxml2 позволяла получить доступ к информации через незакрытый HTML комментарий.

Уязвимость №3 (7.2)

x86 эмуляция Xen от 3.2.x до версии 4.5.x неверно игнорировала переопределение сегментов для инструкций с операндами регистра, что позволяло локальному пользователю-гостю получить информацию через неустановленный вектор.

Операнд — аргумент операции.

Уязвимости операционных систем. Часть III - 17
Таблица уязвимостей категории «Доступ к информации» в ОС Debian Linux

Увеличение привилегий

Всего обнаружено 41 уязвимость. 10 баллов набрали 2 из них.

Уязвимость №1 (10)

rpc.statd в пакете nfs-utils в различных дистрибутивах Linux неверно строки с ненадежным форматом, что позволяло удаленно получить привилегии.

Уязвимость №2 (10)

Функция pam_sm_authenticate в pam_sshauth.c в libpam-sshauth давала контекстнозависимым взломщикам обойти аутентификацию или получить привилегии через системный аккаунт пользователя.

Уязвимость №3 (9.0)

PostgreSQL неверно ограничивала доступ для неустановленных пользовательских конфигурационных настроек для PL/Javа, что позволяло взломщику получить привилегии через неустановленный вектор.

Уязвимости операционных систем. Часть III - 18
Таблица уязвимостей категории «Увеличение привилегий» в ОС Debian Linux

Переполнение

Всего — 294. 10 баллов — 25.

Уязвимость №1

Программное переполнение в конструкторе PointGFp в Botan позволяло удаленному злоумышленнику переписать память и исполнить произвольный код через созданную ECC точку, что провоцировало переполнение кучи.

ECC — error-correcting code.

Уязвимость №2

Переполнение буфера в куче функции encode_msg в encode_msg.c в модуле SEAS Kamailio позволяло удаленному взломщику устроить DoS или исполнить код через большой SIP пакет.

Уязвимость №3

Множество неустановленных уязвимостей в браузере Mozilla Firefox до версии 46.0 и Firefox ESR 45.x до версии 45.1 позволяли удаленному злоумышленнику организовать DoS через неустановленный вектор.

Уязвимости операционных систем. Часть III - 19
Таблица уязвимостей категории «Переполнение» в ОС Debian Linux

Несмотря на довольно большое количество уязвимостей, особенно в категории DoS, уровень их эксплойта и соответствующих последствий не столь велик. В виду специфической архитектуры, ОС Debian Linux может противостоять большинство злонамеренных атак, что делает ее крайне популярной среди компаний, дорожащих своими данными. Даже NASA использует данную ОС на рабочих станциях астронавтов на МКС.

3. Fedora

Уязвимости операционных систем. Часть III - 20
Fedora — дистрибутив операционной системы GNU/Linux, первый выпуск — 6 ноября 2003 года. Данный дистрибутив полностью поддерживается сообществом, то есть теми, кто им пользуется и теми, кто разрабатывает ПО под него. Fedora это своего рода песочница для разработчиков, так как софт состоит из свободного ПО, т.е. такого, которое может неограниченно использоваться и даже изменяться пользователем.

Уязвимости операционных систем. Часть III - 21

DoS

Из 205 уязвимости 10 набрали максимальный балл.

Уязвимость №1

Программное переполнение в функции RTPReceiverVideo::ParseRtpPacket в Mozilla Firefox до версии 43.0 и в Firefox ESR 38.x до версии 38.5 позволяло взломщику получить информацию, организовать DoS через активацию созданного WebRTC RTP пакета.

Уязвимость №2

Переполнение буфера в функции XDRBuffer::grow в js/src/vm/Xdr.cpp в Mozilla Firefox до версии 43.0 давало возможность устроить DoS через созданный JavaScript код.

Уязвимость №3

Переполнение буфера в функции nsDeque::GrowCapacity в xpcom/glue/nsDeque.cpp в Mozilla Firefox до версии 43.0 давало возможность устроить DoS через изменения размера деки.

Дек — deque — это сокращенная фраза «double-ended-queue», что, в переводе с английского, означает — двусторонняя очередь. Контейнер Дек очень похож на контейнер — Вектор, также как и Вектора, Деки являются динамическими массивами.

Уязвимости операционных систем. Часть III - 22
Таблица уязвимостей категории «DoS» в ОС Fedora

Обход чего-либо

Не одна уязвимость из 25 не набрала 10 баллов.

Уязвимость №1 (9.3)

OpenOffice.org (версии: 2.x, 3.0 до 3.2.1) позволял обойти макро ограничения безопасности Python и исполнить код Python через созданный ODT файл.

Уязвимость №2 (9.3)

Плагин scm в mock позволял обойти механизмы защиты chroot и получить привилегии root-а через созданный файл spec.

Уязвимость №3 (7.5)

ganglia-web до версии 3.7.1 позволял обойти аутентификацию.

Уязвимости операционных систем. Часть III - 23
Таблица уязвимостей категории «Обход чего-либо» в ОС Fedora

Исполнение кода

Всего — 84. 10 баллов — 6.

Уязвимость №1

Функция get_rpm_nvr_by_file_path_temporary в util.py в setroubleshoot до версии 3.2.22 позволял исполнить команду через среду metacharacters в файловом имени.

Уязвимость №2

Программное переполнение в функции RTPReceiverVideo::ParseRtpPacket в Mozilla Firefox до версии 43.0 и в Firefox ESR 38.x до версии 38.5 позволяло взломщику получить информацию, организовать DoS через активацию созданного WebRTC RTP пакета.

Уязвимость №3

Множество неустановленных уязвимостей в браузере Mozilla Firefox до версии 43.0 позволяли удаленному взломщику исполнить произвольный код через неустановленй вектор.

Уязвимости операционных систем. Часть III - 24
Таблица уязвимостей категории «Исполнение кода» в ОС Fedora

Повреждение памяти

Всего — 12. 10 баллов — 4.

Уязвимость №1

Функция mozilla::dom::OscillatorNodeEngine::ComputeCustom в подсистеме Web Audio в Mozilla Firefox до версии 29.0 и SeaMonkey до версии 2.26 позволяла удаленным злоумышленникам исполнить произвольный код или устроить DoS через созданный контент.

Уязвимость №2

Множество неустановленных уязвимостей в браузере Mozilla Firefox до версии 43.0 и Firefox ESR 38.x до версии 38.5 позволяли злоумышленникам устроить DoS, повредить памяти и исполнить произвольный код.

Уязвимость №3

Множество неустановленных уязвимостей в браузере Mozilla Firefox до версии 43.0 позволяли удаленному взломщику исполнить произвольный код через неустановленный вектор.

Уязвимости операционных систем. Часть III - 25
Таблица уязвимостей категории «Повреждение памяти» в ОС Fedora

Доступ к информации

Из 53 уязвимостей лишь одна набрала 10 баллов.

Уязвимость №1 (10)

Программное переполнение в функции RTPReceiverVideo::ParseRtpPacket в Mozilla Firefox до версии 43.0 и Firefox ESR 38.x до версии 38.5 позволяло удаленным злоумышленникам получить информацию, устроить DoS через активацию созданного WebRTC RTP пакета.

Уязвимость №2 (7.2)

x86 эмуляция Xen от 3.2.x до версии 4.5.x неверно игнорировала переопределение сегментов для инструкций с операндами регистра, что позволяло локальному пользователю-гостю получить информацию через неустановленный вектор.

Уязвимость №3 (6.9)

Множественное программное переполнение в Grub2 1.98-2.02 позволяло обойти аутентификацию, получить информацию, или устроить DoS через пробел в функции grub_username_get в grub-core/normal/auth.c или функции grub_password_get в lib/crypto.c, что вызывало ошибки в памяти «Off-by-two» и «Out of bounds overwrite».

Уязвимости операционных систем. Часть III - 26
Таблица уязвимостей категории «Доступ к информации» в ОС Fedora

Увеличение привилегий

Из 20 уязвимостей лишь одна набрала 10 баллов.

Уязвимость №1 (10)

libuv до версии 0.10.34 неверно обрабатывал привилегии групп, что позволяло взломщику получить привилегии через неустановленный вектор.

Уязвимость №2 (9.3)

Плагин scm в mock позволял обойти механизмы защиты chroot и получить привилегии root-а через созданный файл spec.

Уязвимость №3 (7.5)

Функция XGetImage в X.org libX11 до версии 1.6.4 позволяла удаленным Х серверам получить привилегии через векторы, включающие тип изображения и геометрию, что провоцировало операции out-of-bounds read.

Уязвимости операционных систем. Часть III - 27
Таблица уязвимостей категории «Увеличение привилегий» в ОС Fedora

Переполнение

8 уязвимостей из 123 набрали 10 баллов.

Уязвимость №1

Переполнение буфера в функции DirectWriteFontInfo::LoadFontFamilyData в gfx/thebes/gfxDWriteFontList.cpp в Mozilla Firefox до версии 43.0 позволяло взломщикам устроить DoS и иметь другие виды реализации через имя шрифта.

Уязвимость №2

Переполнение буфера в функции XDRBuffer::grow в js/src/vm/Xdr.cpp в Mozilla Firefox до версии 43.0 позволяла удаленному взломщику устроить DoS через созданный JavaScript код.

Уязвимость №3

Переполнение буфера в функции nsDeque::GrowCapacity в xpcom/glue/nsDeque.cpp в браузере Mozilla Firefox до версии 43.0 позволяло удаленному взломщику устроить DoS путем активации изменения размера деки.

Уязвимости операционных систем. Часть III - 28
Таблица уязвимостей категории «Переполнение» в ОС Fedora

Несмотря на то что Fedora существует уже практически 15 лет, общее число зафиксированных уязвимостей сравнительно небольшое. Можно утверждать, что это связано с использование открытого ПО. Так как сами пользователи совершенствуют его. Чем больше людей работают над софтом, тем больше у него шансов избежать некоторых багов и дыр. Как говорится, одна голова хорошо, а две лучше.

4. Ubuntu Linux

Уязвимости операционных систем. Часть III - 29

Ubuntu Linux — операционная система на базе Debian GNU/Linux. Первое появление — 20 октября 2004 года. Примерное число пользователей около 20 миллионов. Еще одна ОС с свободным программным обеспечением. Крайне популярна. Ее используют и в правительстве Франции, и как основную ОС на рабочих станция сотрудников Google, и как сервер базы данных проекта Wikipedia, и т.д.

Уязвимости операционных систем. Часть III - 30

DoS

Из 441 уязвимости только 12 набрали 10 баллов.

Уязвимость №1

Множество неустановленных уязвимостей в Google Chrome до версии 50.0.2661.75 приводил к DoS через неустановленный вектор.

Уязвимость №2

Функция xmlNextChar в libxml2 до версии 2.9.4 позволяла удаленному взломщику устроить DoS через созданный XML документ.

Уязвимость №3

Функция usbip_recv_xbuff в drivers/usb/usbip/usbip_common.c в ядре Linux до версии 4.5.3 позволяла удаленному взломщику устроить DoS через созданное значение в USB/IP пакете.

Уязвимости операционных систем. Часть III - 31
Таблица уязвимостей категории «DoS» в ОС Ubuntu Linux

Обход чего-либо

Из 70 уязвимостей никто не удостоился 10 баллов.

Уязвимость №1 (9.3)

OpenOffice.org (версии: 2.x, 3.0 до 3.2.1) позволял обойти макро ограничения безопасности Python и исполнить код Python через созданный ODT файл.

Уязвимость №2 (9.0)

Процесс openvswitch-agent в OpenStack Neutron с 2013.1 до 2013.2.4 и с 2014.1 до 2014.1.1 позволял удаленному аутентифицированному пользователю обойти протоколы безопасности через неверный CIDR в правиле безопасности групп, что предотвращало активацию других правил.

Уязвимость №3 (7.5)

nbd-server в Network Block Device (nbd) до версии 3.5 неверно проверял IP адреса, что могло позволить удаленному взломщику обойти установленные ограничения доступа через IP адрес который частично совпадает в конфигурационном файле authfile.

Уязвимости операционных систем. Часть III - 32
Таблица уязвимостей категории «Обход чего-либо» в ОС Ubuntu Linux

Исполнение кода

18 уязвимостей из 152 набрали 10 баллов.

Уязвимость №1

EPHEMERAL, HTTPS, MVG, MSL, TEXT, SHOW, WIN и PLT кодеры в ImageMagick до версии 6.9.3-10 и 7.x до версии 7.0.1-1 позволяли удаленному взломщику исполнить код через оболочку metacharacters в созданном изображении.

Уязвимость №2

Функция OpenBlob в blob.c в GraphicsMagick до версии 1.3.24 и ImageMagick позволяла удаленному взломщику исполнить произвольный код через символ «|» в начале имени файла.

Уязвимость №3

Уязвимость Use-after-free в функции __sys_recvmmsg в net/socket.c в ядре Linux до версии 4.5.2 позволяла удаленному злоумышленнику исполнить произвольный код через векторы, обусловленные использованием ненадлежащего системного вызова recvmmsg во время обработки ошибок.

Уязвимости операционных систем. Часть III - 33
Таблица уязвимостей категории «Исполнение кода» в ОС Ubuntu Linux

Повреждение памяти

10 баллов из 41 уязвимости набрали только 6.

Уязвимость №1

Множество неустановленных уязвимостей в браузере Mozilla Firefox до версии 39.0, Firefox ESR 31.x до 31.8 и с 38.x до 38.1, а также Thunderbird до версии 38.1 позволяли удаленному взломщику повредить память через неустановленный вектор.

Уязвимость №2

Множество неустановленных уязвимостей в браузере Mozilla Firefox до версии 40.0 и Firefox ESR с 38.x до 38.2 давали возможность удаленному злоумышленнику привести к повреждению памяти и падению приложений через неустановленный вектор.

Уязвимость №3

Множество неустановленных уязвимостей в браузере Mozilla Firefox до версии 40.0 давали возможность удаленному злоумышленнику привести к повреждению памяти через неустановленный вектор.

Уязвимости операционных систем. Часть III - 34
Таблица уязвимостей категории «Повреждение памяти» в ОС Ubuntu Linux

Доступ к информации

Ни одна из 86 уязвимостей не набрала 10 баллов.

Уязвимость №1 (8.5)

Драйвер OZWPAN в ядре Linux до версии 4.0.5 полагался на непроверенное значение длины поля во время парсинга пакетов, что позволяло удаленному взломщику получить информацию из памяти ядра или организовать DoS через созданный пакет.

Уязвимость №2 (7.2)

Функция __switch_to в arch/x86/kernel/process_64.c в ядре Linux неверно переключал контекст IOPL 64-bit PV Xen гостей, что позволяло локальному пользователю-гостю получить привилегии, устроить DoS или получить информацию используя доступ к порту I/O.

Уязвимость №3 (7.2)

Функция get_rock_ridge_filename в fs/isofs/rock.c в ядре Linux до версии 4.5.5 неверно обрабатывал вводные данные NM, содержащие символы «», что позволяло локальному пользователю получить информацию из памяти ядра через созданную файловую систему isofs.

Уязвимости операционных систем. Часть III - 35
Таблица уязвимостей категории «Доступ к информации» в ОС Ubuntu Linux

Увеличение привилегий

Всего зафиксировано 44 уязвимости, из которых ни одна не набрала 10 баллов.

Уязвимость №1 (9.0)

PostgreSQL неверно ограничивала доступ для неустановленных пользовательских конфигурационных настроек для PL/Javа, что позволяло взломщику получить привилегии через неустановленный вектор.

Уязвимость №2 (7.6)

Настройки по умолчанию в пакете openstack-neutron до версии 2013.2.3-7 неверно обрабатывал конфигурационный файл для rootwrap, что позволяло удаленному взломщику получить привилегии через созданный конфигурационный файл.

Уязвимость №3 (7.5)

click/install.py в click не требовала чтобы файлы в файловой системе пакетов tarballs начинались с ./, что позволяло удаленному взломщику устанавливать и изменять протоколы безопасности и получить привилегии через созданный пакет.

Уязвимости операционных систем. Часть III - 36
Таблица уязвимостей категории «Увеличение привилегий» в ОС Ubuntu Linux

Переполнение

Всего — 223 уязвимости. 10 баллов — 14 уязвимостей.

Уязвимость №1

Неустановленная уязвимость в Oracle Java SE (6u105, 7u91, 8u66); Java SE Embedded 8u65; JRockit R28.3.8 давала удаленному злоумышленнику воздействовать на конфиденциальность, целостность и доступность системы через вектор, включающий AWT. NOTE: Oracle не подтвердил слова третьих лиц о том, что это было программное переполнение буфера в функции readImage, что позволяло удаленному взломщику исполнить код через созданные данные изображения.

Уязвимость №2

Функция xmlNextChar в libxml2 до версии 2.9.4 позволяла удаленному взломщику устроить переполнение буфера через созданный XML документ.

Уязвимость №3

Функция usbip_recv_xbuff в drivers/usb/usbip/usbip_common.c в ядре Linux до версии 4.5.3 позволяла удаленному взломщику привести к переполнению буфера через созданное значение длины в пакете USB/IP.

Уязвимости операционных систем. Часть III - 37
Таблица уязвимостей категории «Переполнение» в ОС Ubuntu Linux

Больше всего уязвимостей зафиксировано в категории «DoS» (441), однако критических крайне мало. Что касается остальных категорий, то среди них число уязвимостей высшего уровня также не вызывает опасений. Стойкость к внешним зловредным воздействиям системы и незначительность последствий эксплойта уязвимостей — одни из решающих факторов выбора данной ОС.

5. WatchOS

Уязвимости операционных систем. Часть III - 38

WatchOS — специальная операционная система для часов Apple Watch, вышла в свет 24 апреля 2015 года. ОС не для ПК, не для сервера, а для наручных часов. Но это все же операционная система, и в ней также, как и у других, есть свои недостатки.

Уязвимости операционных систем. Часть III - 39

DoS

Из 181 уязвимости 9 штук набрали 10 баллов.

Уязвимость №1

Уязвимость была выявлена в watchOS до версии 4. Основой является компонент «Wi-Fi», позволявший удаленному взломщику исполнить код в привилегированном контексте или устроить DoS через созданный Wi-Fi трафик.

Уязвимость №2

Функция xmlNextChar в libxml2 до версии 2.9.4 позволяла удаленному взломщику устроить DoS через созданный XML документ.

Уязвимость №3

Компонент LaunchServices позволял злоумышленнику исполнить произвольный код или организовать DoS (повреждение памяти) через измененный plist.

Уязвимости операционных систем. Часть III - 40
Таблица уязвимостей категории «DoS» в ОС WatchOS

Обход чего-либо

10 уязвимостей, из которых нет тех, что набрали 10 баллов.

Всего — 16. 10 баллов — 0.

Уязвимость №1 (9.3)

Ядро в watchOS до версии 2.2 неверно ограничивало разрешение на выполнение, что позволяло взломщику обойти механизм защиты подписи кода через созданное приложение.

Уязвимость №2 (7.2)

Имплементация processor_set_tasks API в ОС позволяла локальному пользователю обойти механизм защиты прав и получить доступ к портам задач исполняемого процесса через использование привилегий root.

Уязвимость №3 (6.8)

AppSandbox в watchOS до версии 2.1 неверно обрабатывал жесткие ссылки, что позволяло удаленному пользователю обойти аннулирование доступа в Contacts через созданное приложение.

Уязвимости операционных систем. Часть III - 41
Таблица уязвимостей категории «Обход чего-либо» в ОС WatchOS

Исполнение кода

7 уязвимостей из 137 набрали 10 баллов.

Уязвимость №1

libxml2 в watchOS до версии 3 позволял удаленному взломщику исполнить код или устроить DoS через созданный XML документ.

Уязвимость №2

Компонент LaunchServices в watchOS до версии 2.1 позволял взломщику исполнить произвольный код в привилегированном контексте или устроить DoS через измененный plist.

plist — файлы, которые хранят в себе сериализованные объекты.

Уязвимость №3 (9.3)

IOKit в ядре ОС позволял взломщику исполнить код в привилегированном контексте или устроить DoS через созданное приложение.

Уязвимости операционных систем. Часть III - 42
Таблица уязвимостей категории «Исполнение кода» в ОС WatchOS

Повреждение памяти

8 уязвимостей из 120 набрали 10 баллов.

Уязвимость №1 (9.3)

IOHIDFamily позволял взломщику исполнить код в привилегированном контексте или устроить DoS через созданное приложение.

Уязвимость №2 (9.3)

dyld в Dev Tools позволял взломщику исполнить код в привилегированном контексте или устроить DoS через созданное приложение.

Уязвимость №3 (9.3)

WebKit позволял взломщику исполнить код или устроить DoS через созданный веб-сайт.

Уязвимости операционных систем. Часть III - 43
Таблица уязвимостей категории «Повреждение памяти» в ОС WatchOS

Доступ к информации

Среди 33 нет нет уязвимостей, что набрали 10 баллов.

Уязвимость №1 (6.8)

Компонент libxml2 позволял удаленному взломщику получить информацию или устроить DoS через созданный XML файл.

Уязвимость №2 (5.8)

Функция xmlSAX2TextNode в SAX2.c в push-интерфейсе в HTML парсере в libxml2 до версии 2.9.3 позволяет взломщику устроить DoS или заполучить информацию через созданные XML данные.

Уязвимость №3 (5.8)

IOAcceleratorFamily в watchOS до версии 3 позволяла удаленному взломщику получить ценную информацию из памяти процесса или устроить DoS через созданный веб-сайт.

Уязвимости операционных систем. Часть III - 44
Таблица уязвимостей категории «Доступ к информации» в ОС WatchOS

Увеличение привилегий

Только 1 уязвимость из 21 набрала 10 баллов.

Уязвимость №1 (10)

Ядро в ОС позволяло локальному пользователю получить привилегии или устроить DoS через неустановленный вектор.

Уязвимость №2 (7.2)

IOMobileFrameBuffer в ОС позволял локальному пользователю получить привилегии или организовать DOS через неустановленный вектор.

Уязвимость №3 (7.2)

Компонент Disk Images позволял локальному пользователю получить привилегии или устроить DoS через неустановленный вектор.

Уязвимости операционных систем. Часть III - 45
Таблица уязвимостей категории «Увеличение привилегий» в ОС WatchOS

Переполнение

10 уязвимостей из 154 набрали 10 баллов.

Уязвимость №1 (9.3)

GasGauge в ОС позволял взломщику исполнить произвольный код в привелегированном контексте или устроить DoS через созданное приложение.

Уязвимость №2 (9.3)

FontParser в watchOS до версии 2.2 позволял удаленному взломщику исполнить произвольный код или устроить DoS через созданный PDF документ.

Уязвимость №3 (9.3)

TrueTypeScaler в watchOS до версии 2.2 позволял удаленному пользователю исполнить произвольный код или устроить DoS через созданный файл шрифта.

Уязвимости операционных систем. Часть III - 46
Таблица уязвимостей категории «Переполнение» в ОС WatchOS

Закрытость софта от Apple, в том чисте и их операционных систем, не мешает им обладать некоторыми уязвимостями. На данный момент число которых не столь шокирует, но не стоит забывать, что WatchOS это молодой продукт. Будущее данной ОС в плане уязвимостей пока остается неясным. Делать какие либо предположение будет смело и неоправданно.

Как мы уже убедились, спустя три части наших исследований, ни одна из операционных систем не лишена своих слабостей, в данном случае уязвимостей. Однако это не повод говорить, что та или иная ОС плохая и ею нельзя пользоваться. В следующей, заключительной, части мы рассмотрим скандальную Windows Vista и парочку довольно экзотических систем, о которых не все знают. Удачного всем дня и минимум багов в софте.

На правах рекламы.Это не просто виртуальные серверы! Это VPS (KVM) с выделенными накопителями, которые могут быть не хуже выделенных серверов, а в большинстве случаев — лучше! Мы сделали VPS (KVM) c выделенными накопителями в Нидерландах и США (конфигурации от VPS (KVM) — E5-2650v4 (6 Cores) / 10GB DDR4 / 240GB SSD или 4TB HDD / 1Gbps 10TB доступными по уникально низкой цене — от $29 / месяц, доступны варианты с RAID1 и RAID10), не упустите шанс оформить заказ на новый тип виртуального сервера, где все ресурсы принадлежат Вам, как на выделенном, а цена значительно ниже, при гораздо более производительном «железе»!

Как построить инфраструктуру корп. класса c применением серверов Dell R730xd Е5-2650 v4 стоимостью 9000 евро за копейки? Dell R730xd в 2 раза дешевле? Только у нас 2 х Intel Dodeca-Core Xeon E5-2650v4 128GB DDR4 6x480GB SSD 1Gbps 100 ТВ от $249 в Нидерландах и США!

Автор: Dmytro_Kikot

Источник

Поделиться

* - обязательные к заполнению поля