Как обойти контроль учетных записей
Перейти к содержимому

Как обойти контроль учетных записей

Обламываем UAC

Уж не знаю, сколько раз поднималась пресловутая тема контроля за действиями пользователя (которая начиная с Windows Vista известна как UAC): нужна ли она, насколько эффективна… Но мы рассмотрим этот вопрос еще раз, теперь с чисто прикладной, хакерской точки зрения. Рассмотрим плюсы и минусы системы, а также самое главное — как ее можно (и можно ли вообще) обойти.

Итак, что же такое UAC с точки зрения безопасности? Разработчики Windows (видимо, немало озаботившись унылыми сведениями из багтраков, регулярно пополняющимися все новыми и новыми уязвимостями в самой распространенной ОС в мире) решили, что если уж все или почти все юзеры сидят под правами администратора, то надо сделать некий программный компонент, который будет испрашивать у юзеров разрешения.
Оставим в стороне холивар на тему «Нужны ли простому юзеру права администратора?», поскольку сей крайне философский вопрос спорен: с одной стороны, права админа простому пользователю, действительно, не нужны, а с другой – они нужны туевой хуче довольно повседневных программ.
Итак, UAC призвана обеспечить пользователям возможность работать, не прибегая к административным правам. Обладая административными правами, пользователь может просматривать и изменять любую часть операционной системы, включая код и данные других пользователей и даже самой Windows. Без административных прав пользователи не могут случайно изменить системные параметры, вредоносная программа не может изменить параметры системной безопасности или отключить авер, а пользователи не могут нарушить безопасность важных данных других пользователей на общедоступных компьютерах. Работа с правами обычного пользователя, таким образом, помогает уменьшить количество срочных вызовов службы поддержки в корпоративных средах, смягчить ущерб от вредоносной программы, способствует более четкой работе домашних компьютеров и защищает уязвимые данные на общедоступных тачках.
UAC делит все исполняемые задачи на две группы – те, которые могут быть исполнены обычными пользователями и те, которые выполняются только администраторами. UAC незаметно для администратора переводит систему в режим непривилегированного пользователя, а когда требуются права администратора — появляется системный диалог, через который можно временно повысить свои права.
И ведь надо признать, что введение UAC довольно сильно обломало начинающих и не очень кодеров, зарабатывающих себе на жизнь разработкой малвари, так что на специальных бордах заказчики теперь в первую очередь спрашивают о возможности кода работать в Vista/7 и обходить UAC. Платили и до сих пор платят за это вполне адекватные деньги.

Немного ликбеза, или как законно получить права админа

Определить потребность системы и приложений в административных правах можно множеством способов. Один из них — команда контекстного меню и ярлык «Запуск от имени администратора» в пользовательском интерфейсе проводника. Эти элементы содержат цветной значок щита, который должен быть добавлен ко всем кнопкам или пунктам меню, выбор которых приводит к повышению прав. При выборе элемента «Запуск от имени администратора» проводник вызывает API-функцию ShellExecute с командой «runas».
Подавляющее большинство программ установки требуют административных прав, поэтому загрузчик образов, который инициирует запуск исполняемого файла, содержит код обнаружения установщиков для выявления устаревших версий. Часть алгоритмов используемой загрузчиком эвристики довольно проста: он ищет слова «setup», «install» или «update» в имени файла образа или внутренней информации о версии. Более сложные алгоритмы включают просмотр в исполняемом файле последовательностей байтов, обычно применяемых сторонними разработчиками в служебных программах – установочных оболочках.
Чтобы определить, нуждается ли целевой исполняемый файл в правах администратора, загрузчик образов также вызывает библиотеку совместимости приложений (appcompat). Библиотека обращается к базе данных совместимости приложений, чтобы определить, связаны ли с исполняемым файлом флаги совместимости RequireAdministrator или RunAsInvoker.
Самый общий способ запросить для исполняемого файла административные права — добавить в его файл манифеста приложения тег requestedElevationLevel. Манифесты — это XML-файлы, содержащие дополнительные сведения об образе. Они были введены в Windows XP как способ определения зависимостей для параллельно используемых библиотек DLL и сборок Microsoft .NET Framework. Наличие в манифесте элемента trustInfo (он показан ниже во фрагменте дампа Firewallsettings.exe) означает, что исполняемый файл был написан для Windows Vista и содержит элемент requestedElevationLevel. Атрибут level этого элемента может иметь одно из трех значений: asInvoker, highestAvailable и requireAdministrator.
Исполняемые файлы, не требующие административных прав, (например Notepad.exe), имеют значение атрибута asInvoker. В некоторых исполняемых файлах заложено допущение, что администраторы всегда хотят получить максимальные права. Поэтому в них используется значение highestAvailable. Пользователю, запускающему исполняемый файл с этим значением, предлагается повысить права, только если он работает в режиме AAM или рассматривается как администратор согласно определенным ранее правилам, и в связи с этим должен повысить права для обращения к своим административным привилегиям.
Примерами приложений, для которых используется значение highestAvailable, могут служить программы Regedit.exe, Mmc.exe и Eventvwr.exe. Наконец, значение requireAdministrator всегда инициирует запрос повышения и используется всеми исполняемыми файлами, которым не удастся выполнить свои действия без административных прав.
В приложениях со специальными возможностями атрибуту uiAccess задается значение «true» для управления окном ввода в процессах с повышенными правами. Кроме того, для обеспечения этих возможностей они должны быть подписаны и находиться в одном из нескольких безопасных размещений, включая %SystemRoot% и %ProgramFiles%.
Значения, задаваемые исполняемым файлом, можно легко определить, просмотрев его манифест с помощью служебной программы Sigcheck от Sysinternals. Например: sigcheck –m . При запуске образа, который запрашивает административные права, службе сведений о приложении (известна также как AIS, находится в %SystemRoot%\System32\Appinfo.dll), работающей в процессе Service Host (%SystemRoot%\System32\Svchost.exe), предписывается запустить программу Consent.exe (%SystemRoot%\System32\Consent.exe). Программа Consent создает снимок экрана, применяет к нему эффект затемнения, переключается на рабочий стол, доступный только системной учетной записи, устанавливает затемненный снимок в качестве фона и открывает диалоговое окно повышения прав, содержащее сведения об исполняемом файле. Вывод на отдельном рабочем столе предотвращает изменение этого диалогового окна любой вредоносной программой, работающей под учетной записью пользователя.

Типичная реакция UAC на непонятные действия

Переполнение буфера

Казалось бы, какая связь между переполнением буфера и UAC? Оказывается, таящиеся в Windows баги позволяют обойти ограничения UAC и повысить свои права. Сегодня я покажу на конкретном примере, как при помощи тривиального переполнения буфера можно обойти UAC и добиться администраторских прав.
Есть такая WinAPI — RtlQueryRegistryValues (msdn.microsoft.com), она используется для того, чтобы запрашивать множественные значения из реестра одним своим вызовом, что делается с использованием специальной таблицы RTL_QUERY_REGISTRY_TABLE, которая передается в качестве __in__out параметра.
Самое интересное (и постыдное для разработчиков Microsoft) в этой API то, что существует определенный ключ реестра, который можно изменить при помощи ограниченных пользовательских прав: HKCU\EUDC\[Language]\SystemDefaultEUDCFont. Если сменить тип этого ключа на REG_BINARY, то вызов RtlQueryRegistryValues приведет к переполнению буфера.
Когда ядерная API-функция Win32k.sys!NtGdiEnableEudc запрашивает ключ реестра HKCU\EUDC\[Language]\SystemDefaultEUDCFont, она честно предполагает, что этот ключ реестра имеет тип REG_SZ, так что в буфер передается структура UNICODE_STRING, у которой первое поле является типом ULONG (где представлена длина строки). Но так как мы можем изменить тип этого параметра на REG_BINARY, то систему это ставит в глубокий тупик и она неправильно интерпретирует длину передаваемого буфера, что приводит к переполнению стека.

Ключевой момент эксплойта

Отключение UAC через оснастку

Заключение

Обойти UAC можно. Не скажу, что это легко, ведь разработчики Windows VIsta/W7 постарались на славу, надо отдать им должное. Но все же лазейки остаются. Можно найти одну-две кроличьих дыры, которые способны свести на нет старания команды Windows. Успех в этом случае приходит к тем, кто может работать с отладчиками и дебаггерами типа IDA Pro или WinDBG.
Удачи тебе в твоих стараниях и да пребудет с тобой сила!

image
Журнал Хакер, Июнь (06) 149
Александр Эккерт

Как отключить контроль учётных записей в Windows 10

При работе в Windows 10 невозможно не соблюдать ограничения, накладываемые контролем учётных записей (User Account Control или UAC). Технология безопасности помогает защитить компьютер от вредоносных программ, но в то же время требует частого подтверждения действий со стороны пользователя. Если это раздражает, можно временно отключить функцию, воспользовавшись одним из нескольких методов.

Что такое UAC?

User Account Control в Windows 10 является неотъемлемой частью безопасности ОС. Когда сторонняя утилита пытается внести изменения в компьютер, он вмешивается и запрашивает подтверждение. Принятие позволяет приложению временно действовать с полными правами пользователя, то есть правами Администратора.

Каждый раз, когда нужно открыть или установить софт, в элементе управления UAC будут отображаться следующие сообщения: «Разрешить программе вносить изменения в компьютер?» и «Щелкните «Да», чтобы продолжить».

Безопасно ли отключать UAC?

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

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

Многие предпочитают в целом отключить UAC. Ведь каждый раз, когда нужно выполнить конкретные задачи, постоянно отображаются запросы, что кажется навязчивым. Но делать это следует только в определенных обстоятельствах. Например, если есть учётная запись без прав Администратора и отдельная администраторская для выполнения любых задач по установке или настройке или нужно устранить возникшие неполадки ПО.

Как отключить UAC в Windows 10?

Есть 4 основных метода. Рекомендуется отключать User Account Control через Панель управления, и этот способ стоит использовать в первую очередь, потому что он считается самым простым, а вероятность совершить ошибку в процессе нулевая.

Панель управления

Необходимо выполнить несколько шагов:

  1. Для открытия системного инструмента нажать Win + R, и вписать в поле окна «Выполнить» команду control. Клацнуть по клавише Enter.
  2. Перейти в раздел «Учётные записи пользователей».
  3. Здесь выбрать опцию «Изменить параметры контроля учётных записей».
  4. Можно сразу снизить уровень до минимума, то есть до «Никогда не уведомлять». Нажать кнопку «Ок».
  5. Разрешить этому приложению вносить изменения на устройстве, щелкнув по «Да».
  6. Перезагрузить устройство.

В этом же окне можно вернуть настройки обратно, передвинув ползунок до рекомендуемого уровня и кликнув по «Ок».

Редактор реестра

Опытные пользователи могут отключить UAC через реестр, если по какой-то причине они не хотят использовать Панель управления или доступ к ней ограничен.

  1. Для открытия реестра вызвать диалоговое окно, нажав клавиши Win + R. Вписать в поле поиска команду regedit.exe, а затем кликнуть по «Ок».
  2. Разрешить этому приложению вносить изменения на устройстве, нажав «Да».
  3. В разделе HKEY_LOCAL_MACHINE перейти в папку Software – Microsoft – Windows – CurrentVersion – Policies – System.
  4. В списке справа найти файл под названием EnableLUA. Активировать его открытие, дважды щелкнув по нему левой кнопкой мыши – в новом окне изменить значение параметра на «0». Для сохранения настроек кликнуть по «Ок».
  5. Перезагрузить устройство.

Редактор локальной групповой политики

В Windows 10 для пользователей открыт доступ к gpedit. Здесь все устроено так же, как и в реестре, но более интуитивно-понятный и безопасный интерфейс:

  1. Чтобы открыть Редактор, в диалоговое окно (Win + R) вставить команду msc и нажать Enter.
  2. Перейти в папку «Конфигурация Windows» – «Параметры безопасности» – «Локальные политики» – «Параметры безопасности».
  3. Прокрутить страницу вниз, чтобы найти файл «Контроль учётных записей пользователей: все администраторы работают в режиме одобрения администратором».
  4. Кликнуть по нему дважды левой кнопкой мыши, чтобы активировать открытие.
  5. Переместить переключатель на «Отключен». Нажать «Применить», а затем – «Ок».
  6. Перезагрузить устройство.

Командная строка

Редактирование настроек в Панели управления, но проще и быстрее:

  1. Запустить командную строку от имени Администратора (Win + R – cmd – Ctrl + Shift + Enter).
  2. Разрешить этому приложению вносить изменения на устройстве, клацнув по «Да».
  3. В открывшемся окне в место мигающего курсора вставить следующую команду без кавычек:

«reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f».

  1. Нажать Enter для совершения операции.
  2. Перезагрузить устройство.

Завершив выполняемую задачу, настоятельно рекомендуется снова включить UAC. В последнем случае необходимо заменить значение «0» на «1».

Как автоматически отклонять запросы на повышение уровня UAC?

Эту процедуру можно выполнить через реестр или групповую политику.

В групповой политике нужно перейти по пути «Конфигурация Windows» – «Параметры безопасности» – «Локальные политики» – «Параметры безопасности». В последнем разделе среди файлов справа найти «Контроль учётных записей: поведение запроса на повышение прав для обычных пользователей». Дважды кликнуть по файлу и выбрать вариант автоматического отклонения запросов. Применить изменения, нажать «Ок» и выйти из программы. Обязательно перезагрузить ПК.

В Редакторе реестра следует перейти к разделу System (HKEY_LOCAL_MACHINE – Software – Microsoft – Windows – CurrentVersion – Policies). Справа найти файл ConsentPromptBehaviorUser, дважды щелкнуть по нему и изменить его значение на «0». В конце клацнуть по кнопке «Ок» и перезагрузить ПК.

Как обойти контроль учетных записей пользователей: способы

Lorem ipsum dolor

Потребность в том, чтобы обойти контроль учетных записей администраторов, возникает в современных версиях ОС Windows. UAC (User Account Control) призван предостерегать администратора компьютера о всех трансформациях, которые могут наблюдаться на ПК, и поэтому админу постоянно приходи тся принимать решение: «Разрешить» или «Не разрешить».

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

Но в то же время роль этой функции — обезопасить ваш ПК от самопроизвольной инсталляции программ, влияющих на работоспособность компьютера и вносящих трансформации прямо в систему.

Как обойти контроль учетных записей пользователя Windows

  1. Раскрыть меню «Пуск», потом там вам нужно будет найти «Поиск».
  2. В поисковой стро к е впишите: «UAC». Вам будет предложен URL: «Изменение параметров контроля учетных записей». Жмите на нее.
  3. Вам будет предложено окошко : «Параметры управления учетными записями пользователей».
  4. В открывшемся окошке слева вы найдете ползунок, переместив который можно настроить , какие уведомления об изменениях вам будут приходить. Тут же можно сместить ползунок в самый низ , и никакие оповещения вам приходить не будут.
  5. Выбер и те нужный уровень контроля и нажмите «Ок», чтобы преобразования вступили в силу.

Другие способы обойти контроль учетных записей пользователя

  1. Используя командную строку.Откройте командную строку. И для того , чтобы обойти контроль учетных записей , нужно ввести следующий код: «C:\Windows\System32\cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f». После ввода кода нужно будет перезагрузить компьютер, чтобы преобразования вступили в силу.
  2. Используя реестр. Откройте редактор реестра сочетанием кноп «Windows+R». Далее пройдите по пути: «HKEY_LOCAL_MACHINE\ SOFTWARE\ Microsoft\ Windows\ CurrentVersion\ Policies\ System» . Нужно будет отредактировать три ключа: «PromptOnSecureDes k top», «EnableLUA», «ConsentPromptBehav i orAdmin». Кликайте по ним двойным кликом, чтобы отредактировать. Чтобы обойти UAC , нужно ввести следующее значение: «0-1-0». Как сделаете э то , нужно будет перезагрузить ПК.

Заключение

В нашей статье вы ознакомились с тем , как обойти контроль учетных записей вашего компьютера. Если в этом есть острая необходимость, то этот шаг должен быть сделан осознанно. Ведь обход UAC — это хоть и небольшой, но минус в безопасности системы компьютера. Если в этом нет острой необходимости, то можно остановиться лишь на ограничении уровня контроля.

В любом случае ответственность за состояние вашего компьютера будет лежать только на вас — помните об этом.

Мы будем очень благодарны

если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *