- PVSM.RU - https://www.pvsm.ru -
Ранее мы писали про некоторые механизмы затруднения эксплуатации (mitigation) для Windows и приложений, которые Microsoft пыталась привнести с выпуском новых ОС. Как правило подобные механизмы основываются на следующих концептуальных подходах:

Последний пункт заслуживает особого внимания, поскольку такое нововведение было добавлено MS именно в Windows 8.1 как расширение для AppContainer mode или Integrity Level. Условно говоря, недоверенное приложение aka restricted caller (чей Integrity Level < Medium [8]) не имеет права получить информацию об адресах различных объектов в режиме ядра, что означает фактическую компрометацию ограничений KASLR и последующую возможную эксплуатацию LPE (Local Privelege Escalation). Основными функциями разглашения подобной информации были разумеется NtQuerySystemInformation с различными классами, а также NtQueryProcessInformation. Именно к этим функциям ограничен доступ для соответствующих приложений.
В случае c NtQuerySystemInformation приложению с низким Integrity Level будет возвращен STATUS_ACCESS_DENIED если он запрашивает информацию по следующим классам:

Рис. Точки вызова функции проверки Integrity Level в маркере доступа приложения, которое пытается получить доступ к ntoskrnl!NtQuerySystemInformation. ntoskrnl!ExpQuerySystemInformation отвечает за сбор информации для соответствующих классов, в ней и выполняется вызов функции ntoskrnl!ExIsRestrictedCaller, которая осуществляет саму проверку.
Кроме NtQuerySystemInformation доступ блокируется и к функции NtQueryInformationProcess, через которую приложение может получить доступ к адресам различных объектов. Для классов ProcessHandleTracing, ProcessWorkingSetWatch/ProcessWorkingSetWatchEx также возвращается соответствующий статус ошибки.
www.alex-ionescu.com/?p=82 [7]
Автор: esetnod32
Источник [9]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/windows/48592
Ссылки в тексте:
[1] User Account Control: http://windows.microsoft.com/en-us/windows7/what-is-user-account-control
[2] Integrity Level: http://msdn.microsoft.com/en-us/library/bb625957.aspx
[3] DEP&ASLR: http://blogs.technet.com/b/srd/archive/2010/12/08/on-the-effectiveness-of-dep-and-aslr.aspx?Redirected=true
[4] NonPagedPoolNx: http://msdn.microsoft.com/en-us/library/windows/hardware/hh920391(v=vs.85).aspx
[5] EMET: http://habrahabr.ru/company/eset/blog/184428/
[6] AppContainer: http://blogs.msdn.com/b/ieinternals/archive/2012/03/23/understanding-ie10-enhanced-protected-mode-network-security-addons-cookies-metro-desktop.aspx
[7] KASLR bypass mitigation: http://www.alex-ionescu.com/?p=82
[8] Medium: http://msdn.microsoft.com/en-us/library/bb625963.aspx
[9] Источник: http://habrahabr.ru/post/202548/
Нажмите здесь для печати.