- Vendors
-
Microsoft
- Windows Server 2016
Don’t miss out!
Thousands of developers use stack.watch to stay informed.
Get an email whenever new security vulnerabilities are reported in Microsoft Windows Server 2016.
By the Year
In 2025 there have been 145 vulnerabilities in Microsoft Windows Server 2016 with an average score of 7.2 out of ten.
Last year, in 2024 Windows Server 2016 had 493 security vulnerabilities published.
Right now, Windows Server 2016 is on track to have less security vulnerabilities in 2025 than it did last year.
Last year, the average CVE base score was greater by 0.36
Year | Vulnerabilities | Average Score |
---|---|---|
2025 | 145 | 7.16 |
2024 | 493 | 7.52 |
2023 | 505 | 7.52 |
2022 | 515 | 7.42 |
2021 | 505 | 7.38 |
2020 | 791 | 7.38 |
2019 | 443 | 7.32 |
2018 | 244 | 6.57 |
It may take a day or so for new Windows Server 2016 vulnerabilities to show up in the stats or in the list of recent security vulnerabilties. Additionally vulnerabilities may be tagged under a different product or component name.
Recent Microsoft Windows Server 2016 Security Vulnerabilities
Use after free in Windows Common Log File System Driver
CVE-2025-29824
7.8 — High
— April 08, 2025
Use after free in Windows Common Log File System Driver allows an authorized attacker to elevate privileges locally.
Dangling pointer
External control of file name or path in Windows NTLM
CVE-2025-24054
5.4 — Medium
— March 11, 2025
External control of file name or path in Windows NTLM allows an unauthorized attacker to perform spoofing over a network.
External Control of File Name or Path
Integer overflow or wraparound in Windows Fast FAT Driver
CVE-2025-24985
7.8 — High
— March 11, 2025
Integer overflow or wraparound in Windows Fast FAT Driver allows an unauthorized attacker to execute code locally.
Integer Overflow or Wraparound
Use after free in Windows Win32 Kernel Subsystem
CVE-2025-24983
7 — High
— March 11, 2025
Use after free in Windows Win32 Kernel Subsystem allows an authorized attacker to elevate privileges locally.
Dangling pointer
Insertion of sensitive information into log file in Windows NTFS
CVE-2025-24984
4.6 — Medium
— March 11, 2025
Insertion of sensitive information into log file in Windows NTFS allows an unauthorized attacker to disclose information with a physical attack.
Insertion of Sensitive Information into Log File
Out-of-bounds read in Windows NTFS
CVE-2025-24991
5.5 — Medium
— March 11, 2025
Out-of-bounds read in Windows NTFS allows an authorized attacker to disclose information locally.
Out-of-bounds Read
Heap-based buffer overflow in Windows NTFS
CVE-2025-24993
7.8 — High
— March 11, 2025
Heap-based buffer overflow in Windows NTFS allows an unauthorized attacker to execute code locally.
Heap-based Buffer Overflow
Improper neutralization in Microsoft Management Console
CVE-2025-26633
7 — High
— March 11, 2025
Improper neutralization in Microsoft Management Console allows an unauthorized attacker to bypass a security feature locally.
Improper Neutralization
Windows Core Messaging Elevation of Privileges Vulnerability
CVE-2025-21184
7 — High
— February 11, 2025
Windows Core Messaging Elevation of Privileges Vulnerability
Heap-based Buffer Overflow
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21190
8.8 — High
— February 11, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21200
8.8 — High
— February 11, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Windows Telephony Server Remote Code Execution Vulnerability
CVE-2025-21201
8.8 — High
— February 11, 2025
Windows Telephony Server Remote Code Execution Vulnerability
Double-free
Windows NTFS Elevation of Privilege Vulnerability
CVE-2025-21337
3.3 — Low
— February 11, 2025
Windows NTFS Elevation of Privilege Vulnerability
Authorization
Windows Deployment Services Denial of Service Vulnerability
CVE-2025-21347
6 — Medium
— February 11, 2025
Windows Deployment Services Denial of Service Vulnerability
insecure temporary file
Windows Remote Desktop Configuration Service Tampering Vulnerability
CVE-2025-21349
6.8 — Medium
— February 11, 2025
Windows Remote Desktop Configuration Service Tampering Vulnerability
authentification
Windows Kerberos Denial of Service Vulnerability
CVE-2025-21350
5.9 — Medium
— February 11, 2025
Windows Kerberos Denial of Service Vulnerability
Improper Input Validation
Microsoft Digest Authentication Remote Code Execution Vulnerability
CVE-2025-21368
8.8 — High
— February 11, 2025
Microsoft Digest Authentication Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Microsoft Digest Authentication Remote Code Execution Vulnerability
CVE-2025-21369
8.8 — High
— February 11, 2025
Microsoft Digest Authentication Remote Code Execution Vulnerability
Integer Overflow or Wraparound
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21371
8.8 — High
— February 11, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Windows Installer Elevation of Privilege Vulnerability
CVE-2025-21373
7.8 — High
— February 11, 2025
Windows Installer Elevation of Privilege Vulnerability
insecure temporary file
Kernel Streaming WOW Thunk Service Driver Elevation of Privilege Vulnerability
CVE-2025-21375
7.8 — High
— February 11, 2025
Kernel Streaming WOW Thunk Service Driver Elevation of Privilege Vulnerability
Improper Input Validation
Windows Lightweight Directory Access Protocol (LDAP) Remote Code Execution Vulnerability
CVE-2025-21376
8.1 — High
— February 11, 2025
Windows Lightweight Directory Access Protocol (LDAP) Remote Code Execution Vulnerability
Race Condition
Microsoft Message Queuing (MSMQ) Denial of Service Vulnerability
CVE-2025-21181
7.5 — High
— February 11, 2025
Microsoft Message Queuing (MSMQ) Denial of Service Vulnerability
Resource Exhaustion
NTLM Hash Disclosure Spoofing Vulnerability
CVE-2025-21377
6.5 — Medium
— February 11, 2025
NTLM Hash Disclosure Spoofing Vulnerability
External Control of File Name or Path
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21406
8.8 — High
— February 11, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Dangling pointer
Windows Core Messaging Elevation of Privileges Vulnerability
CVE-2025-21414
7 — High
— February 11, 2025
Windows Core Messaging Elevation of Privileges Vulnerability
Heap-based Buffer Overflow
Windows Setup Files Cleanup Elevation of Privilege Vulnerability
CVE-2025-21419
7.1 — High
— February 11, 2025
Windows Setup Files Cleanup Elevation of Privilege Vulnerability
insecure temporary file
Windows Disk Cleanup Tool Elevation of Privilege Vulnerability
CVE-2025-21420
7.8 — High
— February 11, 2025
Windows Disk Cleanup Tool Elevation of Privilege Vulnerability
insecure temporary file
Windows Storage Elevation of Privilege Vulnerability
CVE-2025-21391
7.1 — High
— February 11, 2025
Windows Storage Elevation of Privilege Vulnerability
insecure temporary file
Windows Ancillary Function Driver for WinSock Elevation of Privilege Vulnerability
CVE-2025-21418
7.8 — High
— February 11, 2025
Windows Ancillary Function Driver for WinSock Elevation of Privilege Vulnerability
Heap-based Buffer Overflow
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21413
8.8 — High
— January 14, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21411
8.8 — High
— January 14, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21409
8.8 — High
— January 14, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Windows upnphost.dll Denial of Service Vulnerability
CVE-2025-21389
7.5 — High
— January 14, 2025
Windows upnphost.dll Denial of Service Vulnerability
Resource Exhaustion
Windows CSC Service Elevation of Privilege Vulnerability
CVE-2025-21378
7.8 — High
— January 14, 2025
Windows CSC Service Elevation of Privilege Vulnerability
Heap-based Buffer Overflow
Windows CSC Service Information Disclosure Vulnerability
CVE-2025-21374
5.5 — Medium
— January 14, 2025
Windows CSC Service Information Disclosure Vulnerability
Out-of-bounds Read
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21243
8.8 — High
— January 14, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Integer Overflow or Wraparound
Windows Digital Media Elevation of Privilege Vulnerability
CVE-2025-21341
6.6 — Medium
— January 14, 2025
Windows Digital Media Elevation of Privilege Vulnerability
Out-of-bounds Read
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21339
8.8 — High
— January 14, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Windows Cryptographic Information Disclosure Vulnerability
CVE-2025-21336
5.6 — Medium
— January 14, 2025
Windows Cryptographic Information Disclosure Vulnerability
Side Channel Attack
MapUrlToZone Security Feature Bypass Vulnerability
CVE-2025-21332
8.8 — High
— January 14, 2025
MapUrlToZone Security Feature Bypass Vulnerability
Improper Resolution of Path Equivalence
Windows Installer Elevation of Privilege Vulnerability
CVE-2025-21331
7.3 — High
— January 14, 2025
Windows Installer Elevation of Privilege Vulnerability
insecure temporary file
MapUrlToZone Security Feature Bypass Vulnerability
CVE-2025-21328
4.3 — Medium
— January 14, 2025
MapUrlToZone Security Feature Bypass Vulnerability
Improper Resolution of Path Equivalence
Windows Digital Media Elevation of Privilege Vulnerability
CVE-2025-21327
6.6 — Medium
— January 14, 2025
Windows Digital Media Elevation of Privilege Vulnerability
Out-of-bounds Read
Windows Digital Media Elevation of Privilege Vulnerability
CVE-2025-21324
6.6 — Medium
— January 14, 2025
Windows Digital Media Elevation of Privilege Vulnerability
Out-of-bounds Read
Windows Kernel Memory Information Disclosure Vulnerability
CVE-2025-21323
5.5 — Medium
— January 14, 2025
Windows Kernel Memory Information Disclosure Vulnerability
Insertion of Sensitive Information into Log File
Windows Kernel Memory Information Disclosure Vulnerability
CVE-2025-21321
5.5 — Medium
— January 14, 2025
Windows Kernel Memory Information Disclosure Vulnerability
Insertion of Sensitive Information into Log File
Windows Kernel Memory Information Disclosure Vulnerability
CVE-2025-21320
5.5 — Medium
— January 14, 2025
Windows Kernel Memory Information Disclosure Vulnerability
Insertion of Sensitive Information into Log File
Windows Kernel Memory Information Disclosure Vulnerability
CVE-2025-21319
5.5 — Medium
— January 14, 2025
Windows Kernel Memory Information Disclosure Vulnerability
Insertion of Sensitive Information into Log File
Windows Kernel Memory Information Disclosure Vulnerability
CVE-2025-21318
5.5 — Medium
— January 14, 2025
Windows Kernel Memory Information Disclosure Vulnerability
Insertion of Sensitive Information into Log File
Windows Kernel Memory Information Disclosure Vulnerability
CVE-2025-21316
5.5 — Medium
— January 14, 2025
Windows Kernel Memory Information Disclosure Vulnerability
Insertion of Sensitive Information into Log File
MapUrlToZone Security Feature Bypass Vulnerability
CVE-2025-21329
4.3 — Medium
— January 14, 2025
MapUrlToZone Security Feature Bypass Vulnerability
Improper Resolution of Path Equivalence
Windows Digital Media Elevation of Privilege Vulnerability
CVE-2025-21310
6.6 — Medium
— January 14, 2025
Windows Digital Media Elevation of Privilege Vulnerability
Out-of-bounds Read
Windows Remote Desktop Services Remote Code Execution Vulnerability
CVE-2025-21309
8.1 — High
— January 14, 2025
Windows Remote Desktop Services Remote Code Execution Vulnerability
Sensitive Data Storage in Improperly Locked Memory
Windows Themes Spoofing Vulnerability
CVE-2025-21308
6.5 — Medium
— January 14, 2025
Windows Themes Spoofing Vulnerability
Information Disclosure
Windows Reliable Multicast Transport Driver (RMCAST) Remote Code Execution Vulnerability
CVE-2025-21307
9.8 — Critical
— January 14, 2025
Windows Reliable Multicast Transport Driver (RMCAST) Remote Code Execution Vulnerability
Dangling pointer
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21306
8.8 — High
— January 14, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21305
8.8 — High
— January 14, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Microsoft DWM Core Library Elevation of Privilege Vulnerability
CVE-2025-21304
7.8 — High
— January 14, 2025
Microsoft DWM Core Library Elevation of Privilege Vulnerability
Dangling pointer
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21303
8.8 — High
— January 14, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21302
8.8 — High
— January 14, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Windows Geolocation Service Information Disclosure Vulnerability
CVE-2025-21301
6.5 — Medium
— January 14, 2025
Windows Geolocation Service Information Disclosure Vulnerability
Authorization
Windows upnphost.dll Denial of Service Vulnerability
CVE-2025-21300
7.5 — High
— January 14, 2025
Windows upnphost.dll Denial of Service Vulnerability
Resource Exhaustion
Windows Kerberos Security Feature Bypass Vulnerability
CVE-2025-21299
7.8 — High
— January 14, 2025
Windows Kerberos Security Feature Bypass Vulnerability
Insecure Storage of Sensitive Information
Windows OLE Remote Code Execution Vulnerability
CVE-2025-21298
9.8 — Critical
— January 14, 2025
Windows OLE Remote Code Execution Vulnerability
Dangling pointer
BranchCache Remote Code Execution Vulnerability
CVE-2025-21296
7.5 — High
— January 14, 2025
BranchCache Remote Code Execution Vulnerability
Dangling pointer
SPNEGO Extended Negotiation (NEGOEX) Security Mechanism Remote Code Execution Vulnerability
CVE-2025-21295
8.1 — High
— January 14, 2025
SPNEGO Extended Negotiation (NEGOEX) Security Mechanism Remote Code Execution Vulnerability
Dangling pointer
Microsoft Digest Authentication Remote Code Execution Vulnerability
CVE-2025-21294
8.1 — High
— January 14, 2025
Microsoft Digest Authentication Remote Code Execution Vulnerability
Sensitive Data Storage in Improperly Locked Memory
Active Directory Domain Services Elevation of Privilege Vulnerability
CVE-2025-21293
8.8 — High
— January 14, 2025
Active Directory Domain Services Elevation of Privilege Vulnerability
Authorization
Microsoft Message Queuing (MSMQ) Denial of Service Vulnerability
CVE-2025-21290
7.5 — High
— January 14, 2025
Microsoft Message Queuing (MSMQ) Denial of Service Vulnerability
Resource Exhaustion
Microsoft Message Queuing (MSMQ) Denial of Service Vulnerability
CVE-2025-21289
7.5 — High
— January 14, 2025
Microsoft Message Queuing (MSMQ) Denial of Service Vulnerability
Resource Exhaustion
Windows COM Server Information Disclosure Vulnerability
CVE-2025-21288
6.5 — Medium
— January 14, 2025
Windows COM Server Information Disclosure Vulnerability
Use of Uninitialized Resource
Windows Installer Elevation of Privilege Vulnerability
CVE-2025-21287
7.8 — High
— January 14, 2025
Windows Installer Elevation of Privilege Vulnerability
Improper Privilege Management
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21286
8.8 — High
— January 14, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Microsoft Message Queuing (MSMQ) Denial of Service Vulnerability
CVE-2025-21285
7.5 — High
— January 14, 2025
Microsoft Message Queuing (MSMQ) Denial of Service Vulnerability
NULL Pointer Dereference
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21252
8.8 — High
— January 14, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Microsoft Message Queuing (MSMQ) Denial of Service Vulnerability
CVE-2025-21251
7.5 — High
— January 14, 2025
Microsoft Message Queuing (MSMQ) Denial of Service Vulnerability
Resource Exhaustion
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21250
8.8 — High
— January 14, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Windows Digital Media Elevation of Privilege Vulnerability
CVE-2025-21249
6.6 — Medium
— January 14, 2025
Windows Digital Media Elevation of Privilege Vulnerability
Out-of-bounds Read
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21248
8.8 — High
— January 14, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Heap-based Buffer Overflow
Windows Telephony Service Remote Code Execution Vulnerability
CVE-2025-21246
8.8 — High
— January 14, 2025
Windows Telephony Service Remote Code Execution Vulnerability
Out-of-bounds Read
Windows Digital Media Elevation of Privilege Vulnerability
CVE-2025-21255
6.6 — Medium
— January 14, 2025
Windows Digital Media Elevation of Privilege Vulnerability
Out-of-bounds Read
Windows Digital Media Elevation of Privilege Vulnerability
CVE-2025-21226
6.6 — Medium
— January 14, 2025
Windows Digital Media Elevation of Privilege Vulnerability
Out-of-bounds Read
Windows Digital Media Elevation of Privilege Vulnerability
CVE-2025-21227
6.6 — Medium
— January 14, 2025
Windows Digital Media Elevation of Privilege Vulnerability
Out-of-bounds Read
Windows Digital Media Elevation of Privilege Vulnerability
CVE-2025-21228
6.6 — Medium
— January 14, 2025
Windows Digital Media Elevation of Privilege Vulnerability
Out-of-bounds Read
Windows Digital Media Elevation of Privilege Vulnerability
CVE-2025-21229
6.6 — Medium
— January 14, 2025
Windows Digital Media Elevation of Privilege Vulnerability
Out-of-bounds Read
Microsoft Message Queuing (MSMQ) Denial of Service Vulnerability
CVE-2025-21230
7.5 — High
— January 14, 2025
Microsoft Message Queuing (MSMQ) Denial of Service Vulnerability
Improper Input Validation
IP Helper Denial of Service Vulnerability
CVE-2025-21231
7.5 — High
— January 14, 2025
IP Helper Denial of Service Vulnerability
Resource Exhaustion
Windows Digital Media Elevation of Privilege Vulnerability
CVE-2025-21261
6.6 — Medium
— January 14, 2025
Windows Digital Media Elevation of Privilege Vulnerability
Out-of-bounds Read
Windows Digital Media Elevation of Privilege Vulnerability
CVE-2025-21260
6.6 — Medium
— January 14, 2025
Windows Digital Media Elevation of Privilege Vulnerability
Out-of-bounds Read
Stay on top of Security Vulnerabilities
Want an email whenever new vulnerabilities are published for Microsoft Windows Server 2025 or by Microsoft? Click the Watch button to subscribe.
Любой компьютер или сервер нуждается, для полного функционирования, не только в качественном железе, но и в не менее качественном, а главное, безопасном программном обеспечении. Сегодня мы рассмотрим некоторые статистические данные, рассказывающие какие ОС самые уязвимые, какие более безопасные, и какие именно уязвимости в каждой из них были замечены чаще всего.
Для того, чтобы избежать невероятного лонгрида данный материал будет разделен на 4 части. Каждая из которых будет описывать уязвимости 5 операционных систем. В первой, то бишь в этой, части мы рассмотрим первые 5 участников нашего рейтинга, базируясь на данных за 2017 год.
Название ОС | Производитель | Общее число уязвимостей за 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 |
Прежде всего следует отметить тот факт, что данная статистика может быть интерпретирована по-разному, так как есть несколько расхождений с исходными данными участников — прежде всего это их возраст (какая-то ОС существует 5 лет, какая-то всего год), потому общие данные за весь период их существования не стоит брать в рассмотрение при сравнительном анализе, а учитывать как данные общего характера. Хотя, с другой стороны, когда у молодой ОС уязвимостей больше, чем у существующей многие годы, это наталкивает на определенные мысли.
Лидером нашего антирейтинга за 2017 и 2016 годы стал Android с результатами 666 и 523 уязвимостей соответственно. За все же время, когда собирались и обрабатывались статистические данные, лидирует ядро Linux (основа ОС семейства Linux) с 1921 уязвимостью.
Уязвимостей много, как мы видим, сотни, а то и тысячи. Вот основные виды уязвимостей, которые рассматриваются в нашем анализе:
- DoS (Denial of Service / отказ в обслуживании) ( эксплойт уязвимости приводит к DoS устройства);
- Обход чего-либо (например, пароля для входа в систему);
- Исполнение кода (возможность злоумышленником выполнить какую-то команду на устройстве жертвы);
- Повреждение памяти;
- Доступ к информации (имеется в виду секретная информация, полученная за счет уязвимости);
- Увеличение привилегий (в частности для вредоносного ПО);
- Переполнение (буфера);
Стоит рассмотреть более внимательно некоторые из уязвимостей, замеченные на той или иной ОС. Портал CVE Details выставляет баллы каждой из них. Число баллов зависит от уровня ущерба и массовости распространения. Максимальный показатель — 10 баллов. Именно о таких уязвимостях (если они есть и если они уникальны) и будет идти речь далее. Дабы эта статья не превратилась в пятитомник Ленина, будем уделять внимание только трем уязвимость из списка, который может содержать сотни пунктов.
Описание таблиц
В таблицах каждого из типов уязвимостей указываются определенные дополнительные параметры, касающиеся той или иной уязвимости. Подробнее о них.
Уровень воздействия на
1)
конфиденциальность
:
- Полный — уязвимость открывает злоумышленникам доступ ко всей информации на устройстве;
- Частичный — значительное раскрытие информации;
- Отсутствует — конфиденциальность не нарушается;
2)
целостность
:
- Полный — целостность системы полностью скомпрометирована, полная потеря защиты системы;
- Частичный — модификация некоторых системных файлов или информации возможна, но злоумышленник не имеет контроля над тем, что может быть изменено;
- Отсутствует — воздействия на целостность системы нет;
3)
доступность
:
- Полный — уязвимость позволяет злоумышленнику полностью закрыть доступ к ресурсу;
- Частичный — снижение производительности или непостоянная доступность ресурсов;
- Отсутствует — воздействия на доступность системы нет;
Сложность доступа
- Низкая — особых условий для получения доступа не требуется, как и не требуется специфический знаний или навыков;
- Средняя — необходимо удовлетворение некоторых условий для получения доступа;
- Высокая — специальные условия получения доступа, ограничивающие эксплойт;
Аутентификация
- Не требуется — аутентификация не требуется для эксплойта уязвимости;
- Single system — уязвимость требует, чтобы взломщик был залогинен в систему (например, через командную строку, режим рабочего стола или через веб-интерфейс).
А теперь, после того как мы ознакомились с общими данными и разобрались что и как будет в таблицах ниже по тексту, давайте перейдем к конкретному рассмотрению каждой из пяти ОС.
1. Android
Android
— OC для смартфонов, планшетов, игровых приставок и т.д. Первое появление — 2008 год. Общее число пользователей за все время существования порядка 2 миллиардов человек. Эта цифра поражает. А как мы знаем, чем распространеннее софт, тем внимательнее злоумышленники будут изучать его недостатки и дыры для их дальнейшего использования в своих темных делишках. Дебаты на тему безопасности ОС Android длятся уже очень давно. Кто-то считает ее самой худшей, кто-то утверждает, что для обычного пользователя-обывателя данная ОС вполне подходит и ее недостатки практически не ощущаются. Однако, мнения мнениями, а цифры могут сказать гораздо больше.
DoS
10 баллов заслужила 61 уязвимость из 253.
Уязвимость №1
На устройствах Samsung Galaxy S4-S7 существует программное переполнение в libomacp.so во время парсинга (синтаксического анализа)
OMACP
(в сообщениях
WAP Push SMS
), что приводит к повреждению
кучи (heap)
, что может привести к DoS и удаленному исполнению кода.
OMACP — системное приложение для вывода на экран устройства частичного содержания сообщения (предпросмотр).
WAP Push SMS — специальный формат смс, содержащих ссылки, для их легкой активации.
Куча (heap) — структура данных типа дерево.
Уязвимость №2
Множественное программное переполнение в MDSS драйвере для ядра Linux 3.x, которое используется в MSM устройствах на базе Android от Qualcomm Innovation Center (QuIC), позволяет злоумышленникам организовывать DoS и проводить другие злонамеренные действия.
Уязвимость №3
DRMExtractor.cpp в библиотеке libstagefright компонента mediaserver на устройствах Android не проверяет некоторые офсет данные, что позволяет злоумышленнику провести DoS, исполнение кода или повредить память, путем добавления созданного им медиафайла.
Таблица уязвимостей категории «DoS» в ОС Android
Обход чего-либо
5 случаев обхода из 104 набрали 10 баллов.
Уязвимость №1
app / aboot / aboot.c в компонентах Qualcomm на устройствах Nexus 5 под управлением ОС в Android неверно проверяет целостность переполнения, что позволяет злоумышленникам обойти установленные ограничения доступа с помощью созданных значений «начала» и размера.
Уязвимость №2
libs / gui / BufferQueueConsumer.cpp в mediaserver в Android не проверяет разрешение android.permission.DUMP, которое позволяет злоумышленникам получать конфиденциальную информацию и, следовательно, обходить неуказанный механизм защиты, посредством запроса дампа, о чем свидетельствует получение доступа подписи или SignatureOrSystem.
Уязвимость №3
media / libmedia / IOMX.cpp в mediaserver в Android не инициализирует параметр структуру данных, что позволяет злоумышленникам получать конфиденциальную информацию из памяти процесса и, как следствие, обходить неуказанный механизм защиты через неопределенные векторы, о чем свидетельствует получение доступа подписи или SignatureOrSystem.
Таблица уязвимостей категории «Обход чего-либо» в ОС Android
Исполнение кода
80 случаев из 346 набрали 10 баллов.
Уязвимость №1
На устройствах Samsung Galaxy S4-S7 существует программное переполнение в libomacp.so во время парсинга (синтаксического анализа) OMACP (в сообщениях WAP Push SMS), что приводит к повреждению кучи (heap), что может привести к DoS и удаленному исполнению кода.
Уязвимость №2
Уязвимость удаленного исполнения кода в Qualcomm crypto driver может привести к удаленной атаке с исполнением произвольного кода в контексте ядра.
Уязвимость №3
udp.c в ядре Linux до версии 4.5 позволяет удаленно исполнить произвольный код через UDP трафик, который запускает небезопасное вычисление второй контрольной суммы во время выполнения системного вызова recv с флагом MSG_PEEK.
Таблица уязвимостей категории «Исполнение кода» в ОС Android
Повреждение памяти
57 случаев из 118 — 10 баллов.
Уязвимость №1
libAACdec/src/aacdec_drc.cpp в mediaserver на устройствах Android неправильно лимитировал число потоков, что позволяло удаленно исполнить произвольный код или организовать DoS, путем добавление созданного злоумышленником медиафайла.
Уязвимость №2
libFLAC/stream_decoder.c в mediaserver нау стройствах Android не предотвращал свободные операции с неинициализированной памятью, что позволяло взломщику исполнить произвольный код или DoS через добавленный им медиафайл.
Уязвимость №3
DRMExtractor.cpp в библиотеке libstagefright компонента mediaserver на устройствах Android не проверяет некоторые офсет данные, что позволяет злоумышленнику провести DoS, исполнение кода или повредить память, путем добавления созданного им медиафайла.
Таблица уязвимостей категории «Повреждение памяти» в ОС Android
Доступ к информации
Всего лишь 4 случая из 210 набрали 10 баллов.
Уязвимость №1
media/libmedia/IOMX.cpp в mediaserver на устройствах Android не инициализирует структуру данных параметров, что позволяет взломщику получить доступ к ценной информации из памяти процесса, и, в последствии, обойти неустановленные механизмы зашиты через неопределенные векторы, о чем свидетельствует получение доступа подписи или SignatureOrSystem.
Уязвимость №2
media/libmedia/IOMX.cpp в mediaserver на устройствах Android не инициализирует определенные указатели буфера метаданных, что позволяет взломщику получить доступ к ценной информации из памяти процесса, и, в последствии, обойти неустановленные механизмы зашиты через неопределенные векторы, о чем свидетельствует получение доступа подписи или SignatureOrSystem.
Уязвимость №3
media/libmedia/IOMX.cpp в mediaserver на устройствах Android не инициализирует определенную структуру данных запроса ключа, что позволяет взломщику получить доступ к ценной информации из памяти процесса, и, в последствии, обойти неустановленные механизмы зашиты через неопределенные векторы, о чем свидетельствует получение доступа подписи или SignatureOrSystem.
Таблица уязвимостей категории «Доступ к информации» в ОС Android
Увеличение привилегий
6 случаев из 310 — 10 баллов.
Уязвимость №1
Увеличение привилегий осуществлялось злоумышленниками через уязвимость в mediaserver на устройствах Android версий 4.0.3 — 5.x, до версии 5.1.
Уязвимость №2
Множественное программное переполнение в функции GraphicBuffer::unflatten в platform/frameworks/native/libs/ui/GraphicBuffer.cpp позволяло злоумышленникам получать привилегии или провести DoS через вектор, активирующий большое число файловых дескрипторов или целочисленных значений.
Файловый дескриптор — неотрицательное целое число. При создании нового потока ввода-вывода, ядро возвращает процессу-автору его файловый дескриптор.
Уязвимость №3
Уязвимость типа
Use-after-free
в venc компоненте mm-video-v4l2 в mediaserver давала злоумышленникам возможность получить привилегии через созданное ими заявление, о чем свидетельствует получение доступа подписи или SignatureOrSystem.
Use-after-free — тип уязвимости повреждения памяти. Обозначает использование памяти устройства после ее освобождение (очистки).
Таблица уязвимостей категории «Увеличение привилегий» в ОС Android
Переполнение
100 случаев из 289 — 10 баллов.
Уязвимость №1
Во всех продуктах Qualcomm на базе Android от CAF использующих ядро Linux имелась ошибка слияния ssl с ClientHello, что приводило к утечке памяти.
Уязвимость №2
Во всех продуктах Qualcomm на базе Android от CAF использующих ядро Linux имелось программное переполнение в гипервизоре.
Уязвимость №3
Во всех продуктах Qualcomm на базе Android от CAF использующих ядро Linux драйвер потенциально мог привести к утечке памяти.
Таблица уязвимостей категории «Переполнение» в ОС Android
Число уязвимостей в ОС Android все же достаточно велико. Тем более, что большинство из них предоставляют злоумышленникам либо полный, либо частичный доступ к устройству и его данным. А это может привести к потере данных или даже к потере денежных средств, учитывая тот факт, что мобильные устройства часто используются для верификации входа в банковские и платежные системы.
2. Linux Kernel
Linux Kernel
— ядро операционной системы, основа ОС семейства Linux. Другими словами, это внутренности ОС, тогда как внешняя оболочка может быть разной. Первое появление — 1991 год. Несмотря на большое количество уязвимостей, обнаруженных за период с 1999 по 2017 год, ОС Linux не так популярна среди киберпреступников. А все связано с ее малым распространением в мире. По некоторым данным всего 1% от общего числа пользователей компьютеров используют именно эту ОС. А для получения большего профита хакерам нужно больше жертв.
DoS
23 уязвимости из 1070 набрали 10 баллов.
Уязвимость №1
Функция inet_csk_clone_lock в net/ipv4/inet_connection_sock.c позволяет злоумышленникам организовать DoS посредством управления принятым системным вызовом.
Уязвимость №2
Функция mq_notify в ядре Linux не устанавливает значение указателя сокета на NULL при входе в режим повторов. Во время закрытия сокета
Netlink
пользовательским пространством, злоумышленники могут организовать DoS.
Netlink — интерфейс ядра Linux для установки связи между пользовательскими процессами и процессами самого ядра.
Уязвимость №3
Функция __skb_flow_dissect в net/core/flow_dissector.c не удостоверяется в том, что n_proto, ip_proto и thoff инициализированы, что позволяет устроить DoS или исполнить произвольный код через созданный MPLS пакет.
Таблица уязвимостей категории «DoS» в ядре Linux
Обход чего-либо
Поскольку лишь 1 уязвимость заработала 10 баллов, мы рассмотрим (помимо нее) два случая, следующие за ней.
Уязвимость №1 (10)
Программное переполнение приводит к состоянию
TOCTOU
в гипервизоре PIL (Peripheral Image Loader), также вызывает
состояние гонки
, что может быть использовано для обхода аутентификации в PIL.
TOCTOU — Time of check to time of use — класс багов, вызванных изменениями в системе между проверкой состояния (к примеру, учетные данные входа) и использованием результатов этой проверки.
Состояние гонки — ошибка проектирования многопоточной системы или приложения, когда работа системы или приложения зависит от порядка выполнение кода.
Уязвимость №2 (9,3 балла)
arch/arm64/kernel/sys.c в ядре Linux до версии 4.0 позволяло пользователям обойти защитный механизм «strict page permissions» и модифицировать таблицу системных вызовов, в последствии получая привилегии, эксплуатируя доступ к записи.
Уязвимость №3 (9,3 балла)
Уязвимость раскрытия информации в загрузчике Qualcomm может дать локальному вредоносному ПО исполнить произвольный код в контексте загрузчика.
Таблица уязвимостей категории «Обход чего-либо» в ядре Linux
Исполнение кода
11 уязвимостей (10 баллов) из 236 всего.
Уязвимость №1
udp.c в ядре Linux версий до 4.5 позволяет удаленно исполнить произвольный код через UDP трафик, который запускает небезопасное вычисление второй контрольной суммы во время выполнения системного вызова recv с флагом MSG_PEEK.
Уязвимость №2
Уязвимость в прошивке Broadcom Wi-Fi давала возможность удаленно исполнить произвольный код внутри контекста Wi-Fi SoC.
Уязвимость №3
Функция __skb_flow_dissect в net/core/flow_dissector.c не удостоверяется в том, что n_proto, ip_proto и thoff инициализированы, что позволяет устроить DoS или исполнить произвольный код через созданный MPLS пакет.
Таблица уязвимостей категории «Исполнение кода» в ядре Linux
Повреждение памяти
3 уязвимости (10 баллов) из 109 всего.
Уязвимость №1
Переполнение буфера в RNDIS имплементации USB давало возможность устроить DoS через удаленный NDIS отклик к OID_GEN_SUPPORTED_LIST, что приводило к выделению памяти на данные ответа, а не на его структуру.
Уязвимость №2
Программная ошибка в функции CIFSFindNext в fs/cifs/cifssmb.c позволяла удаленным серверам CIFS создавать DoS через большое значение длины в ответе на запрос чтения директории.
Уязвимость №3
sound/soc/msm/qdsp6v2/msm-audio-effects-q6-v2.c в звуковом драйвере MSM QDSP6 для ядра Linux 3.x, используемого в MSM устройствах на базе Android от Qualcomm Innovation Center (QuIC), давало возможность организовать DoS через созданное приложение, которое заставляло ioctl вызывать неправильное использование указателя параметров.
ioctl — системный вызов для операций ввода-вывода и других, которые не могут быть обработаны обычными системными вызовами.
Таблица уязвимостей категории «Повреждение памяти» в ядре Linux
Доступ к информации
На данный момент не было зафиксировано уязвимостей, которые можно было бы оценить в 10 баллов, потому рассмотрим те, что есть.
Уязвимость №1 (9.3)
Уязвимость раскрытия информации в загрузчике Qualcomm может дать локальному вредоносному ПО исполнить произвольный код в контексте загрузчика.
Уязвимость №2 (8.5)
OZWPAN драйвер опирается на ненадежный атрибут во время парсинга пакетов, что позволяет провести DoS и получить доступ к ценной информации из памяти ядра за счет созданного пакета.
Уязвимость №3 (7.9)
Имплементация xfs в ядре до версии 2.6.35 не просматривает
btrees
структуру
inode
-ов перед чтением буферов
inode
-ов, что позволяет удаленному аутентифицированному пользователю считывать несвязанные файлы, либо считывать и перезаписывать дисковые блоки, которые на момент операции подвязаны к активному файлу, но ранее были подвязаны к несвязанному файлу, путем доступа к
NFS
.
inode (индексный дескриптор) — структура данных
btrees — структура данных, дерево поиска
NFS — протокол сетевого доступа к файловым системам
Таблица уязвимостей категории «Доступ к информации» в ядре Linux
Увеличение привилегий
3 уязвимости (10 баллов) из 250 всего.
Уязвимость №1
Функция «capabilities» (возможности) в Linux до версии 2.2.16 позволяла локальным пользователям получить привилегии путем настройки capabilities для предотвращения снятия привилегий
setuid
программой.
setuid — установка ID пользователя во время выполнения
Уязвимость №2
Множественное программное переполнение в 32-битном эмуляторе для AMD64 архитектур позволял злоумышленникам провести DoS или получить привилегии рута через неустановленные векторы, которые активировали функциональные вызовы copy_from_user с неправильными аргументами длины.
Уязвимость №3
Уязвимость Use-after-free в функции kvm_ioctl_create_device в virt/kvm/kvm_main.c позволяла пользователю-хосту проводить DoS или получить привилегии через созданные ioctl вызовы на /dev/kvm устройство.
Таблица уязвимостей категории «Увеличение привилегий» в ядре Linux
Переполнение
Из 305 уязвимостей 17 набрали 10 баллов.
Уязвимость №1
Возможное программное переполнение в системном вызове SMMU. Неверная проверка ввода в системном вызове ADSP SID2CB может привести к перезаписи памяти гипервизора.
Уязвимость №2
Переполнение буфера в подсистеме хранилища. Неверные параметры как часть ответа к RPMB командам может привести к переполнению буфера.
Уязвимость №3
В /drivers/isdn/i4l/isdn_net.c: буфер, контролируемый пользователем, копируется в локальный буфер в константном размере с использованием strcpy без проверки длины, что может привести к переполнению буфера.
Таблица уязвимостей категории «Переполнение» в ядре Linux
Как видно из данных выше, критических уязвимостей крайне мало. Большинство из них не имели сильного влияния на работу системы или целостность данных.
3. Iphone Os
Iphone Os
— операционная система для мобильных устройств (смартфоны, планшеты и т.д.) от компании Apple. С июня 2010 года именуется просто iOS. Первое появление — 2007 год. Общее число пользователей по всему миру составляет порядка 700 миллионов человек.
iOS за все время своего существования насобирала 1328 уязвимостей, что на 624 меньше, чем Linux. Однако вся суть именно в периоде, в течение которого собирались эти статистические данные. 1328 уязвимостей за 10 лет — гораздо хуже, чем 1952 за 19 лет. А все опять таки из-за популярности данной ОС.
DoS
11 уязвимостей из 739 набрали 10 баллов.
Уязвимость №1
libxml2 в iOS до 10 версии позволял злоумышленникам провести DoS или исполнить код на устройстве жертвы за счет внедрения созданного ими XML документа.
Уязвимость №2
Audio в устройствах с iOS ниже 10-ой версии давал возможность организовать DoS или исполнить код по неустановленному вектору.
Уязвимость №3
На Wi-Fi чипах Broadcom BCM4355C0 версия 9.44.78.27.0.1.56 и других правильно созданные фреймы
over-the-air
потенциально могли спровоцировать переполнение кучи прошивки Wi-Fi и/или переполнение стека. Это приводило к DoS.
over-the-air — случаи удаленного беспроводного управления злоумышленником мобильного устройства.
Таблица уязвимостей категории «DoS» в iOS
Обход чего-либо
1 уязвимость из 142 набрала 10 баллов.
Уязвимость №1 (10)
Ядро в iOS до версии 8.1.3 не применяет атрибут «read-only» сегмента разделяемой памяти во время использования режима пользовательского кеша, что позволяет злоумышленникам обойти намеченные ограничения доступа через созданное приложение.
Уязвимость №2 (9.3)
Ядро iOS до версии 5.1 неправильно обрабатывает отладочные системные вызовы, что позволяет злоумышленникам удаленно обходить sandbox ограничения.
Уязвимость №3 (9.3)
Ядро iOS до версии 9.3 неправильно ограничивает исполнительные права, что позволяет злоумышленникам обойти механизм защиты подписи кода через созданное приложение.
Таблица уязвимостей категории «Обход чего-либо» в iOS
Исполнение кода
17 из 661 уязвимостей — 10 баллов.
Уязвимость №1
libxml2 в iOS до версии 9.3 позволял злоумышленникам исполнить код на устройстве жертвы за счет внедрения созданного ими XML документа.
Уязвимость №2
libxml2 в iOS до 10 версии позволял злоумышленникам провести DoS или исполнить код на устройстве жертвы за счет внедрения созданного ими XML документа.
Уязвимость №3
Audio в устройствах с iOS ниже 10-ой версии давал возможность организовать DoS или исполнить код по неустановленному вектору.
Таблица уязвимостей категории «Исполнение кода» в iOS
Повреждение памяти
6 из 563 уязвимостей набрали 10 баллов.
Уязвимость №1
libxml2 в iOS до версии 9.3 позволял злоумышленникам повредить память на устройстве жертвы за счет внедрения созданного ими XML документа.
Уязвимость №2
libxml2 в iOS до 10 версии позволял злоумышленникам повредить память на устройстве жертвы за счет внедрения созданного ими XML документа.
Уязвимость №3
Audio в устройствах с iOS ниже 10-ой версии давал возможность повредить память или исполнить код по неустановленному вектору.
Таблица уязвимостей категории «Повреждение памяти» в iOS
Доступ к информации
Не зафиксировано уязвимостей, оцененных в 10 баллов.
Уязвимость №1 (7.5)
На смартфонах с iPhone OS 1.0-2.1 и на iPod touch 1.1-2.1 система изменяла уровень шифрования PPTP VPN соединения на более низкий, тем самым упрощая доступ злоумышленников к ценной информации и даже позволяла перехватить соединение путем расшифровки сетевого трафика.
Уязвимость №2 (7.5)
Ядро iOS до версии 8.3 вносило изменения в маршрутизацию в ответ на ICMP_REDIRECT сообщение, что позволяло взломщикам устроить DoS или заполучить информацию о пакете, через созданный ими ICMP пакет.
Уязвимость №3 (7.1)
XSL реализация стилей в WebKit на устройствах с iPhone OS 1.0-2.2.1 (также и на iPod touch версий 1.1-2.2.1) неправильно обрабатывала внешние XML-объекты, что позволяло удаленно считывать пользовательские данные за счет созданного
DTD
.
DTD — Document Type Definition — определение типа документа.
Таблица уязвимостей категории «Доступ к информации» в iOS
Увеличение привилегий
Лишь 1 из 38 уязвимостей была удостоена 10 баллов.
Уязвимость №1 (10 баллов)
Ядро iOS до 9 версии позволяло локальным пользователям получить привилегии, что приводило к DoS через не идентифицированный вектор.
Уязвимость №2 (7.9)
На iOS версий 7-9 за счет уязвимости BlueBorne в имплементации LEAP (Low Energy Audio Protocol) можно было отправлять большие аудио-команды на устройство-жертву, что приводило к переполнению кучи данными, подконтрольными злоумышленниками. Поскольку аудио-команды, которые передаются через LEAP, неправильно проверяются, взломщик может получить полный контроль над устройством через крайне высокий уровень привилегий Bluetooth стека. Атака обходит механизм контроля доступа Bluetooth, но при этом в настройках все же Bluetooth должен быть включен.
Уязвимость №3 (7.2)
Маршрутизация в iOS до версии 4.2 получала доступ к недействительному указателю во время обработки правил фильтрации пакетов, что позволяло локальному пользователю получить привелегии через неустановленный вектор.
Таблица уязвимостей категории «Увеличение привилегий» в iOS
Переполнение
14 из 580 уязвимостей заслужили 10 баллов.
Уязвимость №1
Переполнение буфера могло возникнуть при обработке сообщений от даунлинка NAS в Qualcomm телефонии на устройствах: iPhone 5 и старше, iPad 4-ого поколения и старше, iPod touch 6-ого поколения.
Уязвимость №2
На Wi-Fi чипах Broadcom BCM4355C0 версия 9.44.78.27.0.1.56 взломщик мог создать искаженный RRM фрейм чтобы спровоцировать переполнение внутреннего буфера в прошивке Wi-Fi.
Уязвимость №3
На Wi-Fi чипах Broadcom BCM4355C0 версия 9.44.78.27.0.1.56 и других правильно созданные фреймы over-the-air потенциально могли спровоцировать переполнение кучи прошивки Wi-Fi и/или переполнение стека.
Таблица уязвимостей категории «Переполнение» в iOS
Главный конкурент Android уступает ему как и в общем числе уязвимостей, так и в числе 10-бальников. Это говорит о более высоком уровне безопасности ОС, более серьезном подходе к проектированию программного обеспечения. Учитывая закрытость системы iOS и высокую степень цензурирования приложений в App Store, создание приложений под эту ОС усложняется. А далеко не все кибер-злоумышленники захотят тратить уйму времени и сил на создание вредоносного ПО. С Android все гораздо проще.
4. Windows 10
Windows 10
— операционная система для продуктов корпорации Microsoft, впервые появилась в 2014 году. Общее число пользователей по данным весны 2017 года перевалило за 500 миллионов.
Windows до сих пор многими людьми считается самой «дырявой» ОС. Как показал нам Android, это уже не так. По данным за 2017 год Windows 10 содержит 255 уязвимостей, в то время как у ее знаменитого соперника macOS — 236.
DoS
Из зафиксированных на данный момент 40 уязвимостей, которые привели к DoS, нет тех, что набрали 10 баллов, потому берем для рассмотрения те, что идут следом.
Уязвимость №1 (9.3)
atmfd.dll в библиотеке Adobe Type Manager позволяло удаленно организовать DoS посредством созданного OpenType шрифта.
Уязвимость №2 (7.8)
HTTP.sys позволял устроить DoS через созданные запросы HTTP 2.0.
Уязвимость №3 (7.8)
Неустановленный вектор использования уязвимости, приводивший к DoS.
Таблица уязвимостей категории «DoS» в Windows 10
Обход чего-либо
Из зафиксированных на данный момент 42 уязвимостей, которые привели к обходу, нет тех, что набрали 10 баллов, потому берем для рассмотрения те, что идут следом.
Уязвимость №1 (9.3)
RDP позволял взломщикам обойти ограничения доступа и установить сессию для аккаунтов без пароля через модифицированный RDP клиент.
Уязвимость №2 (7.2)
Task Scheduler (планировщик задач) позволял локальному пользователю обойти ограничения системных файлов и удалить любой их них. Вектор не установлен.
Уязвимость №3 (7.2)
CSRSS
не могу правильно управлять маркерами процесса, что позволяло локальному пользователю получить привилегии через созданное приложение.
CSRSS — Процесс исполнения клиент-сервер.
Таблица уязвимостей категории «Обход чего-либо» в Windows 10
Исполнение кода
4 уязвимости из 110 набрали 10 баллов.
Уязвимость №1
ОС позволяла злоумышленникам получить контроль над системой, когда Windows Search не удавалось обработать объекты в памяти.
Уязвимость №2
ОС позволяла взломщику удаленно исполнить команду на машине жертвы посредством того, как Windows Search обрабатывал объекты памяти.
Уязвимость №3
ОС позволяла удаленное исполнение кода, когда ей не удавалось правильным образом обработать DNS ответы.
Таблица уязвимостей категории «Исполнение кода» в Windows 10
Повреждение памяти
Из 14 уязвимостей повреждения памяти нет таковых, что заслужили 10 баллов. Рассмотрим тех, что идут следом.
Уязвимость №1 (9.3)
The Imaging Component позволял злоумышленнику повредить память через созданный им документ.
Уязвимость №2 (9.3)
Animation Manager позволял исполнить код за счет созданного веб-сайта.
Уязвимость №3 (9.3)
Media Foundation позволял исполнить код за счет созданного веб-сайта.
Таблица уязвимостей категории «Повреждение памяти» в Windows 10
Доступ к информации
Среди 140 уязвимостей не было критичных. Максимальный балл — 7.2.
Уязвимость №1 (7.2)
Драйверы в режима ядра могли дать аутентифицированному злоумышленнику возможность исполнить созданное им приложение для получения информации или даже DoS.
Уязвимость №2 (5.0)
GDI (Graphics Device Interface) позволял обойти механизм защиты ASLR через неустановленный вектор.
Уязвимость №3 (5.0)
ActiveSyncProvider позволял взломщику обнаружить учетные данные жертвы, используя неудачную попытку Universal Outlook установить безопасное соединение.
Таблица уязвимостей категории «Доступ к информации» в Windows 10
Увеличение привилегий
Из 127 только 2 уязвимости набрали 10 баллов.
Уязвимость №1 (10)
Драйверы в режима ядра давали пользователю возможность получить привелегии через созданное им приложение.
Уязвимость №2 (10)
Графические компоненты в ядре позволяли локальному пользователю получить привелегии через созданное им приложение.
Уязвимость №3 (9.3)
Драйвер
CLFS
позволяли локальному пользователю получить привилегии через созданное им приложение.
CLFS — Common Log File System, подсистема, доступная как в режиме пользователя, так и в режиме ядра, необходимая для создания транзакционных логов.
Таблица уязвимостей категории «Увеличение привилегий» в Windows 10
Переполнение
Максимальный балл в данной категории для данной ОС составил 9.3.
Уязвимость №1 ( 9.3)
Компонент Windows Uniscribe предоставлял возможность удаленно исполнить код за счет неудачной попытки обработать объекты памяти.
Уязвимость №2 ( 9.3)
Microsoft JET Database Engine давал взломщику полный контроль над системой, за счет определенного способа обработки им объектов памяти.
Уязвимость №3 ( 9.3)
Microsoft JET Database Engine давал взломщику полный контроль над системой, за счет определенного способа обработки им объектов памяти.
Таблица уязвимостей категории «Переполнение» в Windows 10
На данный момент самой большой проблемой в ОС Windows 10 является безопасность данных. Как мы видим по вышеуказанным данным именно уязвимостей, дающих доступ к информации и увеличивающих привилегии, зафиксировано больше всего. Вокруг десятки кружится целый вихрь споров, скандалов и судебных исков, по большей степени связанных с обновлениями, которые не страшивают разрешения у пользователя. Также серьезные опасения вызывает факт сбора практически любой пользовательской информации с целью «улучшения работы». Многим это нарушение конфиденциальности не понравилось.
5. Windows Server 2016
Windows Server 2016
— серверная операционная система последнего поколения от Microsoft, появившаяся в 2016 году. Учитывая юный возраст данной ОС, пока сложно объективно оценить ее безопасность и устойчивость к воздействию злоумышленников. Как и с Windows 10, самой яркой проблемой остается защита информации.
DoS
Уязвимостей, которые были использованы для DoS, было зафиксировано не так много, всего 29. Из них никто не набрал 10 баллов.
Уязвимость №1 (7.8)
Уязвимость в
SMB
давала возможность организовать DoS за счет созданного запроса к серверу.
SMB — Server Block Message — сетевой протокол, обеспечивающий связь между сетью и пользователем, который дает удаленный доступ к файлам, сетевым ресурсам и т.д.
Уязвимость №2 (7.2)
API ядра не мог верным образом соблюдать права доступа, что позволяло локальному пользователю подделывать процессы, межпроцессорные коммуникации и приводить к DoS через специально созданное приложение.
Уязвимость №3 (7.2)
Драйверы режима ядра имеет уязвимость, что приводила к DoS, посредством запуска созданного аутентифицированным пользователем специального приложения. Также давало возможность завладеть информацией.
Таблица уязвимостей категории «DoS» в Windows Server 2016
Обход чего-либо
15 — всего. Максимальный балл — 6.0.
Уязвимость №1 (6.0)
ОС позволяла обойти расширенную защиту аутентификации, когда Kerberos не мог предотвратить манипуляции с полем SNAME во время обмена «
билетами
».
Kerberos — сетевой протокол аутентификации, механизм предварительной аутентификации сервера и клиента, до установления связи между ними.
«Билет» — Ticket — необходим для подтверждения идентичности пользователя
Уязвимость №2 (5.0)
ОС позволяла обойти механизм защиты Secure Boot за счет созданного boot протокола.
Уязвимость №3 (4.6)
Имплементация безопасного режима ядра в ОС позволяла локальным пользователям обойти механизм защиты VTL с помощью созданного приложения.
VTL — virtual trust level.
Таблица уязвимостей категории «Обход чего-либо» в Windows Server 2016
Исполнение кода
3 уязвимости из 53 набрали 10 баллов.
Уязвимость №1
ОС позволяла взять систему под контроль, когда Windows Search не справлялся с обработкой объектов памяти.
Уязвимость №2
ОС позволяла взять систему под контроль, когда Windows Search не справлялся с обработкой объектов памяти.
Уязвимость №3
ОС позволяла удаленное исполнение кода, когда не могла должным образом обработать DNS ответы.
Таблица уязвимостей категории «Исполнение кода» в Windows Server 2016
Повреждение памяти
Всего лишь 5 зафиксированных уязвимостей. Максимальный балл — 9.3.
Уязвимость №1
Animation Manager позволял использовать созданный веб-сайт для удаленного исполнения кода.
Уязвимость №2
Media Foundation позволял использовать созданный веб-сайт для удаленного исполнения кода.
Уязвимость №3
Служба
iSNS Server
позволяла создавать вредоносные запросы через программное переполнение.
iSNS Server — Internet Storage Name Service — сетевой протокол автоматизации процесса открытия, конфигурирования и управления ISCSI устройств и оптоволоконного канала в сетях TCP/IP.
Таблица уязвимостей категории «Повреждение памяти» в Windows Server 2016
Доступ к информации
Из 97 уязвимостей нет 10-бальных, максимальный балл — 7.2.
Уязвимость №1 (7.2)
Драйверы режима ядра позволяли локальному аутентифицированному пользователю запустить специально созданное приложение для получения информации.
Уязвимость №2 (5.0)
Компонент Windows Search позволял обнаружить информацию, когда не справлялся с обработкой объектов памяти.
Уязвимость №3 (4.3)
atmfd.dll давал возможность удаленному злоумышленнику получить ценную информацию из памяти процесса через созданный Open Type шрифт на веб-сайте.
Таблица уязвимостей категории «Доступ к информации» в Windows Server 2016
Увеличение привилегий
36 уязвимостей всего (максимальный балл 9.3).
Уязвимость №1 (9.3)
CLFS
обеспечивал локальных пользователей возможностью получить привилегии через созданное приложение.
CLFS — Common Log File System — подсистема, доступная как в режиме пользователя, так и в режиме ядра, необходимая для создания транзакционных логов.
Уязвимость №2 (9.3)
CLFS обеспечивал локальных пользователей возможностью получить привилегии через созданное приложение.
Уязвимость №3 (9.3)
CLFS обеспечивал локальных пользователей возможностью получить привилегии через созданное приложение.
Таблица уязвимостей категории «Увеличение привилегий» в Windows Server 2016
Переполнение
24 уязвимости всего. 10 баллов набрали 0 из них.
Уязвимость №1 (9.3)
Компонент Uniscribe при неудавшейся попытке верно обработать объекты памяти приводил к появлению возможности исполнения кода.
Уязвимость №2 (9.3)
JET Database Engine давал контроль над всей системой, в виду того как он обрабатывал объекты памяти.
Уязвимость №3 (9.3)
JET Database Engine давал контроль над всей системой, в виду того как он обрабатывал объекты памяти.
Таблица уязвимостей категории «Переполнение» в Windows Server 2016
Критических уязвимостей в Windows Server 2016 крайне мало. Не факт, конечно, что такая тенденция сохранится и дальше. Но будем надеяться. Учитывая довольно низкий уровень распространения данной ОС среди пользователей, можно смело заявить, что эксплойт многих из багов пока не вызывает паники и желания быстренько сменить ОС на другую. Однако, учитывая то, что данная операционная система предназначена для серверов, которые в свою очередь являются, по факту, хранилищем данных, большое опасение вызывает столь большое число уязвимостей, которые могут привести к потере этих данных.
На этом мы заканчиваем первую часть разбора уязвимостей различных ОС. В следующей части мы рассмотрим macOS и несколько ОС Windows предыдущего поколения (как пользовательские, так и серверные). И помните, что нет идеальной ОС для всех, есть идеальная ОС для вас. Любой продукт, любое ПО имеет свои плюсы и минусы, свои преимущества и недостатки. Важно сопоставлять их и понимать для себя чем стоит пожертвовать и ради чего. Приятного всем дня и поменьше багов в ваших ОС.
На правах рекламы.Это не просто виртуальные серверы! Это 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 в Нидерландах и США!
Exclude new CVEs:
DATE | CVE | VULNERABILITY TITLE | RISK |
---|---|---|---|
2025-03-11 | CVE-2025-24054 | Unspecified vulnerability in Microsoft products External control of file name or path in Windows NTLM allows an unauthorized attacker to perform spoofing over a network. network low complexity microsoft |
5.4
5.4 |
2025-03-11 | CVE-2025-24983 | Use After Free vulnerability in Microsoft products Use after free in Windows Win32 Kernel Subsystem allows an authorized attacker to elevate privileges locally. local high complexity microsoft CWE-416 |
7.0
7.0 |
2025-03-11 | CVE-2025-24984 | Information Exposure Through Log Files vulnerability in Microsoft products Insertion of sensitive information into log file in Windows NTFS allows an unauthorized attacker to disclose information with a physical attack. low complexity microsoft CWE-532 |
4.6
4.6 |
2025-03-11 | CVE-2025-24985 | Heap-based Buffer Overflow vulnerability in Microsoft products Integer overflow or wraparound in Windows Fast FAT Driver allows an unauthorized attacker to execute code locally. local low complexity microsoft CWE-122 |
7.8
7.8 |
2025-02-11 | CVE-2025-21184 | Unspecified vulnerability in Microsoft products Windows Core Messaging Elevation of Privileges Vulnerability local high complexity microsoft |
7.0
7.0 |
2025-02-11 | CVE-2025-21190 | Unspecified vulnerability in Microsoft products Windows Telephony Service Remote Code Execution Vulnerability network low complexity microsoft |
8.8
8.8 |
2025-02-11 | CVE-2025-21200 | Unspecified vulnerability in Microsoft products Windows Telephony Service Remote Code Execution Vulnerability network low complexity microsoft |
8.8
8.8 |
2025-02-11 | CVE-2025-21201 | Unspecified vulnerability in Microsoft products Windows Telephony Server Remote Code Execution Vulnerability network low complexity microsoft |
8.8
8.8 |
2025-02-11 | CVE-2025-21208 | Unspecified vulnerability in Microsoft products Windows Routing and Remote Access Service (RRAS) Remote Code Execution Vulnerability network low complexity microsoft |
8.8
8.8 |
2025-02-11 | CVE-2025-21212 | Unspecified vulnerability in Microsoft products Internet Connection Sharing (ICS) Denial of Service Vulnerability low complexity microsoft |
6.5
6.5 |
CVE is a registered MITRE Corporation trademark and MITRE’s CVE website is the authoritative source of CVE content. CWE is a registered MITRE Corporation trademark and MITRE’s CWE website is the authoritative source of CWE content.
В августе 2020 года Microsoft выпустила обновление, закрывающее критическую уязвимость в Active Directory — CVE-2020-1472 (более известную, как Zerologon), которое еще 2 месяца назад было успешно установлено на всех DC. Но не все администраторы знают, что этим обновлением для контролеров домена история не закончится. В этой статье мы рассмотрим особенности уязвимости Zerologon, как защитить от нее контроллеры домена AD, почему в феврале будет еще одно обновление Zerologon и что со всем этим делать администратору домена.
Содержание:
- В чем особенность уязвимости CVE-2020-1472 (ZeroLogon)?
- Обновления Windows Server для защиты от критической уязвимости Zerologon
- Как защитить домен Active Directory от уязвимости ZeroLogon?
- Групповые политики для Zerologon
В чем особенность уязвимости CVE-2020-1472 (ZeroLogon)?
Критическая уязвимость CVE-2020-1472 в Active Directory на всех версиях Windows Server (2008 R2, 2012, 2016, 2019) позволяет неаутентифицированному атакующему удаленно получить права администратора домена. За счет ошибки в реализации протокола шифрования AES-CFB8 в Netlogon Remote Protocol (MS-NRPC) атакующий, имеющий доступ по сети к контроллеру домена, может эскалировать свои привилегии и изменить пароль учетной записи контроллера домена в AD. После этого атакующий может авторизоваться на DC с правами SYSTEM и получить полный доступ к базе Active Directory (сбросить пароли администраторов домена, или любые другие действия в AD).
Протокол Netlogon служит для аутентификации пользователей и компьютерах в доменных сетях AD. В том числе протокол Netlogon используется для удаленного обновления пароля учетных записей компьютеров в домене AD.
Для реализации уязвимости Zerologon атакующему нужно установить соединение через Netlogon (используются порты RPC локатора TCP/135, динамический диапазон RPC и протокол SMB по порту TCP/445) с помощью определенной последовательности, начинающейся с нулей (zero). Уязвимость в Netlogon позволяет выдать себя за легитимный компьютер домена, а эскалация привилегий позволяет сменить пароль аккаунта DC.
Данной уязвимости присвоен максимальный рейтинг CVSS – 10 из 10 баллов.
Уязвимости подвержены все версии Windows Server:
- Windows Server 2019, Windows Server 2016;
- Windows Server 2004, 1909, 1903 ;
- Windows Server 2012 R2/2012;
- Windows Server 2008 R2 SP 1.
На данный момент в публичном доступе есть несколько работающих эксплоитов Zerologon (в том числе модуль zerologon был добавлен в mimikatz).
Не тестируйте zerologon эксплоиты в своей сети, т.к. при сбросе пароля DC на пустой вы можете повредить свою инфраструктуру AD.
Есть и Python скрипт для тестирования ваших DC на zerologon уязвимость — https://github.com/SecuraBV/CVE-2020-1472.
Обновления Windows Server для защиты от критической уязвимости Zerologon
В связи с тем, что срок расширенной поддержки Windows Server 2008 R2 завершен в начале этого года, Microsoft не выпустила общедоступное исправление для этой версии ОС. Однако если вы приобрели годовую платную подписку Extended Security Updates (ESU), вы можете получить и установить обновление 4571729.
Для Windows Server 2008 R2 есть неофициальный патч уязвимости Zerologon — 0patch (https://blog.0patch.com/2020/09/micropatch-for-zerologon-perfect.html). Вы можете использовать его на свой страх и риск.
Для остальных версий Windows Server обновления доступны через Windows Update, WSUS или вы можете скачать их в Microsoft Update Catalog и установить msu файлы вручную.
- Windows Server 2019 (KB4565349), Windows Server 2016 (KB571694);
- Windows Server 2004 (4566782), 1909 (KB4565351), 1903 (KB4565351);
- Windows Server 2012 R2 (KB4571723), Windows Server 2012 (KB4571702).
Как защитить домен Active Directory от уязвимости ZeroLogon?
Обновления, закрывающие уязвимость Zerologon, были выпущены еще в августе 2020 года. Чтобы защитить ваши сервера, вам необходимо установить августовское (или более позднее) кумулятивное обновление для вашей версии Windows Server на всех контроллерах домена.
Но на самом деле все не заканчивается с установкой этого патча.
Microsoft планирует исправить уязвимость Zerologon в два этапа, позволяющих относительно плавно перейти на безопасный удаленный вызов процедур (RPC) в Netlogon:
- Первый этап. Августовский патч представляет собой экстренную заплатка для контроллеров домена от известного сценария атаки. Но это не полноценно устранение уязвимости (возможны и другие сценарии атаки на DC через Netlogon). Устаревшие системы, которые не поддерживают новую, безопасную версию протокола RPC для Netlogon, все еще могут подключиться к контроллеру домену;
- Второй этап. Следующее обновление запланировано на 9 февраля 2021 года. После установки этого обновления все сервера должны отклонять подключения, выполняемые через старую версию протокола Netlogon (впрочем, для legacy систем можно сделать исключения с помощью GPO, об этом чуть ниже).
После установки первого обновления в журналах контроллеров домена вы можете обнаружить события подключения по небезопасной версии Netlogon RPC. Кроме того, если у вас не осталось legacy устройств, вы можете заранее, не дожидаясь 2021 года, отключить на DC поддержку старой версии Netlogon RPC (с помощью параметра реестра FullSecureChannelProtection).
После установки обновлений безопасности, в журналах контроллеров домена станут фиксироваться событии подключения компьютеров с помощью уязвимой версии протокола Netlogon. Нужно обращать внимание на следующие EventID от источника NETLOGON в журнале Event Viewer -> Windows Logs -> System:
- EventID 5827 и 5828 —
The Netlogon service denied a vulnerable Netlogon secure channel connection from a machine account
. Данное сообщение говорит о том, что для данного компьютера запрещено подключение по уязвимой версии протокола Netlogon (до февраля 2021 года это событие информационное, реальных действий по запрету подключений не выполняется);Можно сохранить все события в CSV файл и проанализировать имена подключающихся к DC устройств с помощью PowerShell команды:
Get-EventLog -LogName System -InstanceId 5827 -Source NETLOGON|Select-Object message| Export-Csv c:\ps\5827.csv -Encoding utf8
- EventID 5829 — разрешено подключение по уязвимой версии Netlogon
EventID 583, 5831 – подключение по уязвимой версии Netlogon разрешено благодаря за счет наличия устройства в политике «Domain controller: Allow vulnerable Netlogon secure channel connections».
До февраля 2021 вам нужно установить актуальные обновляя безопасности на всех обнаруженных устройствах. На Windows достаточно установить актуальное кумулятивное обновление. На других устройствах, использующих Netlogon Remote Protocol, нужно запросить обновление у вендора.
В феврале будет выпущено отдельно обновление безопасности, которое в обязательном порядке переведет контроллер домена в режим, в котором все подключающиеся устройства в обязательном порядке должны использовать безопасную версию протокола Netlogon. При этом устройства, указанные в событии 5829 (не поддерживает защищенную версию Netlogon) не смогут корректно работать в домене. Такие устройства придется вручную добавлять в исключения GPO
Это означает, что в вашем домене не смогут нормально работать снятые с поддержки версии Win: Windows XP/ Windows Server 2003/Vista/2008.
Групповые политики для Zerologon
Если в вашей сети не осталось устройств, поддерживающих только небезопасную версию, вы можете создать отдельную GPO политику, которая принудительно переведет все DC в сети на использование безопасной версии протокола Netlogon не дожидаясь 9 февраля 2021 года (когда будет выпущено обновление второго этапа, запрещающее подключаться по небезопасной версии Netlogon). Для этого нужно с помощью GPO распространить следующий ключ реестра на все DC:
- Ветка
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters
- Тип параметра:
DWORD
- Имя параметра:
FullSecureChannelProtection
Возможные значения:
1
— запрет на использование уязвимой версии Netlogon для установки соединения с DC. Данный ключ не действует на аккаунты, добавленные в политику “Domain controller: Allow vulnerable Netlogon secure channel connections» (см ниже);
0
– разрешить DC принимать подключения с уязвимой версией Netlogon с не-Windows устройств;
Как разрешить подключение к DC через Netlogon со сторонних устройств?
В групповых политиках появился отдельный параметр, позволяющий разрешить определенным устройствам/аккаунтам использовать уязвимую версию Netlogon для подключения к DC. Эта политика называется Domain controller: Allow vulnerable Netlogon secure channel connections и находится в разделе Computer Configuration -> Windows Settings -> Security Settings -> Local Policies -> Security Options.
Вам нужно создать группы безопасности в AD, добавить в нее аккаунты/устройства, которым нужно разрешить устанавливать безопасный канал с контролером домена без использования новой версии Netlogon RPC.
Включите политику для DC (на уровне Default Domain Controller policy), нажмите кнопку Define Security и укажите группу, которой разрешено использовать небезопасный Netlogon (Create Vulnerable Connection -> Allow).
С помощью опции Deny вы можете принудительно запретить подключаться по небезопасному Netlogon RPC определённым устройствам.