Половина пути пройдена. Мы уже знаем какие дыры есть в ОС Android или в macOS. Сегодня речь пойдет об операционных системах, которые не так распространены, как тот же Android, но заслуживают не меньшего внимания. Если же вы желаете ознакомиться с уязвимостями ОС из предыдущих частей — вот ссылочки: Часть I и Часть II.
Но для начала я хотел бы напомнить о том, почему именно эти ОС мы сегодня рассматриваем, как выбираются уязвимости и какие данные о них содержатся в таблицах, коих вы увидите довольно много ниже по тексту.
В данной части мы будем изучать третью пятерку операционных систем из таблицы ниже (выделены жирным шрифтом):
Название ОС | Производитель | Общее число уязвимостей за 2017 год | Общее число уязвимостей за 2016 год | Общее число уязвимостей за все время ведения статистики |
---|---|---|---|---|
Android | 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 |
В таблицах каждого из типов уязвимостей указываются определенные дополнительные параметры, касающиеся той или иной уязвимости. Подробнее о них.
Уровень воздействия на
1) конфиденциальность:
- Полный — уязвимость открывает злоумышленникам доступ ко всей информации на устройстве;
- Частичный — значительное раскрытие информации;
- Отсутствует — конфиденциальность не нарушается;
2) целостность:
- Полный — целостность системы полностью скомпрометирована, полная потеря защиты системы;
- Частичный — модификация некоторых системных файлов или информации возможна, но злоумышленник не имеет контроля над тем, что может быть изменено;
- Отсутствует — воздействия на целостность системы нет;
3) доступность:
- Полный — уязвимость позволяет злоумышленнику полностью закрыть доступ к ресурсу;
- Частичный — снижение производительности или непостоянная доступность ресурсов;
- Отсутствует — воздействия на доступность системы нет;
Сложность доступа
- Низкая — особых условий для получения доступа не требуется, как и не требуется специфический знаний или навыков;
- Средняя — необходимо удовлетворение некоторых условий для получения доступа;
- Высокая — специальные условия получения доступа, ограничивающие эксплойт;
Аутентификация
- Не требуется — аутентификация не требуется для эксплойта уязвимости;
- Single system — уязвимость требует, чтобы взломщик был залогинен в систему (например, через командную строку, режим рабочего стола или через веб-интерфейс).
1. Windows Rt 8.1
Windows Rt 8.1 — операционная система семейства Windows NT, вышедшая 26 октября 2012 года.
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 шрифт.
Таблица уязвимостей категории «DoS» в ОС Windows Rt 8.1
Обход чего-либо
53 уязвимости всего. 0 набрали 10 баллов.
Уязвимость №1 (9.3)
ОС позволяла злоумышленникам обойти протоколы безопасности песочницы приложений и произвести действия в реестре через созданное приложение.
Уязвимость №2 (9.3)
ОС позволяла злоумышленникам обойти протоколы безопасности песочницы приложений и произвести действия в файловой системе через созданное приложение.
Уязвимость №3 (7.6)
ОС не могла верно ограничить обмен данных клавиатуры и мыши между программами на разных уровнях целостности, что позволяло атакующему обойти ограничения доступа, путем получения контроля над низкоуровневым процессом для запуска экранной клавиатуры, а далее скачать созданное приложение.
Таблица уязвимостей категории «Обход чего-либо» в ОС Windows Rt 8.1
Исполнение кода
126 уязвимостей всего. 10 баллов — 5.
Уязвимость №1
ОС позволяло взломщику получить контроль над системой, когда Windows Search не справлялся с обработкой объектов памяти.
Уязвимость №2
ОС позволяло взломщику получить контроль над системой, когда Windows Search не справлялся с обработкой объектов памяти.
Уязвимость №3
ОС позволяла удаленно исполнить произвольный код, поскольку не могла обработать DNS ответы.
Таблица уязвимостей категории «Исполнение кода» в ОС Windows Rt 8.1
Повреждение памяти
Всего — 21 уязвимость. 10 баллов — 0.
Уязвимость №1 (9.3)
Компонент Imaging позволял удаленному взломщику исполнить код через созданный документ.
Уязвимость №2 (9.3)
Animation Manager позволял удаленному взломщику исполнить код через созданный веб-сайт.
Уязвимость №3 (9.3)
Media Foundation позволял удаленному взломщику исполнить код через созданный веб-сайт.
Таблица уязвимостей категории «Повреждение памяти» в ОС 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».
Таблица уязвимостей категории «Доступ к информации» в ОС Windows Rt 8.1
Увеличение привилегий
Всего — 155. 10 баллов набрало 2.
Уязвимость №1 (10)
Драйверы режима ядра ОС позволяли локальному пользователю получить привилегии через созданное приложение.
Уязвимость №2 (10)
Компонент Graphics в ядре ОС давал возможность локальным пользователям получить привилегии через созданное приложение.
Уязвимость №3 (9.3)
Обход директории в компоненте TSWbPrxy ОС давал возможность получить привилегии через создана путь в исполняемом файле.
Таблица уязвимостей категории «Увеличение привилегий» в ОС Windows Rt 8.1
Переполнение
Всего — 48. 10 баллов — 0.
Уязвимость №1 (9.3)
Компонент Uniscribe при неудавшейся попытке верно обработать объекты памяти приводил к появлению возможности исполнения кода.
Уязвимость №2 (9.3)
JET Database Engine давал контроль над системой, в виду того как обрабатывал объекты памяти.
Уязвимость №3 (9.3)
JET Database Engine давал контроль над системой, в виду того как обрабатывал объекты памяти.
Таблица уязвимостей категории «Переполнение» в ОС Windows Rt 8.1
Как и в предыдущей версии ОС Windows — 8-ой, тут наблюдается та же тенденция. Большее число уязвимостей касаются увеличения привилегий, что приводит к появлению возможности активировать удаленно зловредное ПО, что, в свою очередь, способно эксплуатировать иные уязвимости и приводить к различного рода последствиям.
2. Debian Linux
Debian Linux — операционная система, впервые выпущенная 16 августа 1993 года. Одно из самых популярных воплощений Linux, Debian подходит для использования как на рабочих станциях, так и на серверах.
Забавный факт: все рабочие версии ОС носят названия имен персонажей анимационного фильма «История игрушек». А вот нестабильная версия именуется Сид (так звали мальчика в том же мультике, которые издевался над игрушками).
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 через неустановленный вектор.
Таблица уязвимостей категории «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 давала контекстнозависимым взломщикам обойти аутентификацию или получить привилегии через системный аккаунт пользователя.
Таблица уязвимостей категории «Обход чего-либо» в ОС 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 во время обработки ошибок.
Таблица уязвимостей категории «Исполнение кода» в ОС 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 через неустановленный вектор.
Таблица уязвимостей категории «Повреждение памяти» в ОС 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 неверно игнорировала переопределение сегментов для инструкций с операндами регистра, что позволяло локальному пользователю-гостю получить информацию через неустановленный вектор.
Операнд — аргумент операции.
Таблица уязвимостей категории «Доступ к информации» в ОС 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а, что позволяло взломщику получить привилегии через неустановленный вектор.
Таблица уязвимостей категории «Увеличение привилегий» в ОС 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 через неустановленный вектор.
Таблица уязвимостей категории «Переполнение» в ОС Debian Linux
Несмотря на довольно большое количество уязвимостей, особенно в категории DoS, уровень их эксплойта и соответствующих последствий не столь велик. В виду специфической архитектуры, ОС Debian Linux может противостоять большинство злонамеренных атак, что делает ее крайне популярной среди компаний, дорожащих своими данными. Даже NASA использует данную ОС на рабочих станциях астронавтов на МКС.
3. Fedora
Fedora — дистрибутив операционной системы GNU/Linux, первый выпуск — 6 ноября 2003 года. Данный дистрибутив полностью поддерживается сообществом, то есть теми, кто им пользуется и теми, кто разрабатывает ПО под него. Fedora это своего рода песочница для разработчиков, так как софт состоит из свободного ПО, т.е. такого, которое может неограниченно использоваться и даже изменяться пользователем.
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», что, в переводе с английского, означает — двусторонняя очередь. Контейнер Дек очень похож на контейнер — Вектор, также как и Вектора, Деки являются динамическими массивами.
Таблица уязвимостей категории «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 позволял обойти аутентификацию.
Таблица уязвимостей категории «Обход чего-либо» в ОС 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 позволяли удаленному взломщику исполнить произвольный код через неустановленй вектор.
Таблица уязвимостей категории «Исполнение кода» в ОС 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 позволяли удаленному взломщику исполнить произвольный код через неустановленный вектор.
Таблица уязвимостей категории «Повреждение памяти» в ОС 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».
Таблица уязвимостей категории «Доступ к информации» в ОС 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.
Таблица уязвимостей категории «Увеличение привилегий» в ОС 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 путем активации изменения размера деки.
Таблица уязвимостей категории «Переполнение» в ОС Fedora
Несмотря на то что Fedora существует уже практически 15 лет, общее число зафиксированных уязвимостей сравнительно небольшое. Можно утверждать, что это связано с использование открытого ПО. Так как сами пользователи совершенствуют его. Чем больше людей работают над софтом, тем больше у него шансов избежать некоторых багов и дыр. Как говорится, одна голова хорошо, а две лучше.
4. Ubuntu Linux
Ubuntu Linux — операционная система на базе Debian GNU/Linux. Первое появление — 20 октября 2004 года. Примерное число пользователей около 20 миллионов. Еще одна ОС с свободным программным обеспечением. Крайне популярна. Ее используют и в правительстве Франции, и как основную ОС на рабочих станция сотрудников Google, и как сервер базы данных проекта Wikipedia, и т.д.
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 пакете.
Таблица уязвимостей категории «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.
Таблица уязвимостей категории «Обход чего-либо» в ОС 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 во время обработки ошибок.
Таблица уязвимостей категории «Исполнение кода» в ОС 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 давали возможность удаленному злоумышленнику привести к повреждению памяти через неустановленный вектор.
Таблица уязвимостей категории «Повреждение памяти» в ОС 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.
Таблица уязвимостей категории «Доступ к информации» в ОС 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 начинались с ./, что позволяло удаленному взломщику устанавливать и изменять протоколы безопасности и получить привилегии через созданный пакет.
Таблица уязвимостей категории «Увеличение привилегий» в ОС 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.
Таблица уязвимостей категории «Переполнение» в ОС Ubuntu Linux
Больше всего уязвимостей зафиксировано в категории «DoS» (441), однако критических крайне мало. Что касается остальных категорий, то среди них число уязвимостей высшего уровня также не вызывает опасений. Стойкость к внешним зловредным воздействиям системы и незначительность последствий эксплойта уязвимостей — одни из решающих факторов выбора данной ОС.
5. WatchOS
WatchOS — специальная операционная система для часов Apple Watch, вышла в свет 24 апреля 2015 года. ОС не для ПК, не для сервера, а для наручных часов. Но это все же операционная система, и в ней также, как и у других, есть свои недостатки.
DoS
Из 181 уязвимости 9 штук набрали 10 баллов.
Уязвимость №1
Уязвимость была выявлена в watchOS до версии 4. Основой является компонент «Wi-Fi», позволявший удаленному взломщику исполнить код в привилегированном контексте или устроить DoS через созданный Wi-Fi трафик.
Уязвимость №2
Функция xmlNextChar в libxml2 до версии 2.9.4 позволяла удаленному взломщику устроить DoS через созданный XML документ.
Уязвимость №3
Компонент LaunchServices позволял злоумышленнику исполнить произвольный код или организовать DoS (повреждение памяти) через измененный plist.
Таблица уязвимостей категории «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 через созданное приложение.
Таблица уязвимостей категории «Обход чего-либо» в ОС WatchOS
Исполнение кода
7 уязвимостей из 137 набрали 10 баллов.
Уязвимость №1
libxml2 в watchOS до версии 3 позволял удаленному взломщику исполнить код или устроить DoS через созданный XML документ.
Уязвимость №2
Компонент LaunchServices в watchOS до версии 2.1 позволял взломщику исполнить произвольный код в привилегированном контексте или устроить DoS через измененный plist.
plist — файлы, которые хранят в себе сериализованные объекты.
Уязвимость №3 (9.3)
IOKit в ядре ОС позволял взломщику исполнить код в привилегированном контексте или устроить DoS через созданное приложение.
Таблица уязвимостей категории «Исполнение кода» в ОС WatchOS
Повреждение памяти
8 уязвимостей из 120 набрали 10 баллов.
Уязвимость №1 (9.3)
IOHIDFamily позволял взломщику исполнить код в привилегированном контексте или устроить DoS через созданное приложение.
Уязвимость №2 (9.3)
dyld в Dev Tools позволял взломщику исполнить код в привилегированном контексте или устроить DoS через созданное приложение.
Уязвимость №3 (9.3)
WebKit позволял взломщику исполнить код или устроить DoS через созданный веб-сайт.
Таблица уязвимостей категории «Повреждение памяти» в ОС 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 через созданный веб-сайт.
Таблица уязвимостей категории «Доступ к информации» в ОС WatchOS
Увеличение привилегий
Только 1 уязвимость из 21 набрала 10 баллов.
Уязвимость №1 (10)
Ядро в ОС позволяло локальному пользователю получить привилегии или устроить DoS через неустановленный вектор.
Уязвимость №2 (7.2)
IOMobileFrameBuffer в ОС позволял локальному пользователю получить привилегии или организовать DOS через неустановленный вектор.
Уязвимость №3 (7.2)
Компонент Disk Images позволял локальному пользователю получить привилегии или устроить DoS через неустановленный вектор.
Таблица уязвимостей категории «Увеличение привилегий» в ОС 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 через созданный файл шрифта.
Таблица уязвимостей категории «Переполнение» в ОС WatchOS
Закрытость софта от Apple, в том чисте и их операционных систем, не мешает им обладать некоторыми уязвимостями. На данный момент число которых не столь шокирует, но не стоит забывать, что WatchOS это молодой продукт. Будущее данной ОС в плане уязвимостей пока остается неясным. Делать какие либо предположение будет смело и неоправданно.
Как мы уже убедились, спустя три части наших исследований, ни одна из операционных систем не лишена своих слабостей, в данном случае уязвимостей. Однако это не повод говорить, что та или иная ОС плохая и ею нельзя пользоваться. В следующей, заключительной, части мы рассмотрим скандальную Windows Vista и парочку довольно экзотических систем, о которых не все знают. Удачного всем дня и минимум багов в софте.
На правах рекламы.Это не просто виртуальные серверы! Это
Как построить инфраструктуру корп. класса 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