Реклама

Освітні питання

Добавлено 15 жовтня 2018
mon-rozrobilo-koncepУ відомстві повідомляють, що метою концепції є проведення реформи професійної освіти Міністерством освіти і науки розроблений і запропонований до...
35
Добавлено 02 серпня 2018
mon-zaproshy-vish-Для участі в конкурсі необхідно пройти безкоштовну реєстрацію на сайті «Innovation – 2018» Міністерство освіти і науки запрошує заклади вищої освіти та...
351

Новини психології


on 09 грудня 2013, 14.17
Чому не виходить побудувати міцні і тривалі стосунки?
Сьогоднішня стаття на сайті Vashe - Soznanie.ru розповість Вам, чому не виходить зав'язати і утримати стосунки з людиною, яка



Уразливість в Windows 7 і Vista дозволяє підвищити привілеї в обхід UAC

Субота, 27 листопада 2010 Автор 

Безпека: Цікава уразливість для підвищення локальних привілеїв до рівня системи, з'явилася 24 листопада у вигляді статті на ресурсі The Code Project.

Буквально через декілька годин вона була видалена з цього ресурсу, але інформація вже поширилася по мережі і на мій погляд видаляти її було безглуздо. Підвищити привілеї можна на системах починаючи від XP і до Vista/Win7, причому серверні версії теж знаходяться під ударом. А що ще цікавіше уразливість актуальна, як на х86 системах, так і на х64. Правда представлений PoC код вдалося успішно запустити тільки на х86 системах.

Усьому провиною недостатній контроль параметрів функції WinAPI RtlQueryRegistryValues() : Ця функція використовується для отримання відразу декількох параметрів реєстру і на виході заповнює структуру _RTL_QUERY_REGISTRY_TABLE з результатами.

У полі EntryContext, з цієї структури, визначається тип вихідного буфера і ось тут існує цікавий нюанс, буфер може бути інтерпретований як структура UNICODE_STRING або як буфер з ULONG значень.

По заповненню цього буфера визначається тип ключа реєстру, до якого був зроблений запит. Усе б добре, але був знайдений ключ реєстру HKCU\EUDC\[Language]\SystemDefaultEUDCFont, до якого можна поводитися тільки з правами користувача і змінювати його тип на REG_BINARY за допомогою виклику функції Win32k.sys ->NtGdiEnableEudc(). В процесі роботи цієї функції передбачається, що значення реєстру REG_SZ і буфер розміщується в стеку, як структура UNICODE_STRING з якої перше значення ULONG інтерпретує довжину буфера, але якщо значення реєстру уявлено, як REG_BINARY, то виникає класичне переповнювання в стеку.

З урахуванням усіх цих нюансів був розроблений PoC (by noobpwnftw), який формує в реєстрі значення що перезаписує адресу повернення на стеку і виконує довільний буфер з кодом в режимі ядра.

Прочитано 3792 разів
Вадим Дудченко

Email Ця електронна адреса захищена від спам-ботів, Вам потрібно включити JavaScript для перегляду

Медіа



Реклама

Освітні питання

Добавлено 15 жовтня 2018
mon-rozrobilo-koncepУ відомстві повідомляють, що метою концепції є проведення реформи професійної освіти Міністерством освіти і науки розроблений і запропонований до...
35
Добавлено 02 серпня 2018
mon-zaproshy-vish-Для участі в конкурсі необхідно пройти безкоштовну реєстрацію на сайті «Innovation – 2018» Міністерство освіти і науки запрошує заклади вищої освіти та...
351

Новини психології


on 09 грудня 2013, 14.17
Чому не виходить побудувати міцні і тривалі стосунки?
Сьогоднішня стаття на сайті Vashe - Soznanie.ru розповість Вам, чому не виходить зав'язати і утримати стосунки з людиною, яка


Реклама GOOGLE