
Как определить уровень UAC своего процесса

Как определить уровень UAC своего процесса
Как известно, контроль учетных записей (UAC) является основополагающим компонентом общей концепции безопасности Microsoft. UAC помогает уменьшить воздействие вредоносных программ и защищать данные от несанкционированного доступа. Если для работы ваших приложений понадобится доступ к защищенным объектам, то система выдаст соответствующее предупреждение с запросом о предоставлении таких прав. Особенно это актуально для системы Win10 и выше, где Проводник всегда запускается в контексте безопасности обычного пользователя и, соответственно, все запущенные в нем процессы также будут иметь обычные права. Для повышения прав приложения можно запускать от имени Администратора.
Для того, чтобы определить, как именно было запущено ваше приложение, то есть в нормальном режиме или от имени Администратора, есть специальные функции. Но сперва, как обычно, не известные FASM константы.
Code (Assembler) : Убрать нумерацию
- TOKEN_QUERY_SOURCE = 0x0010
- TOKEN_QUERY = 8h
- TokenElevationType = 18
- TokenElevationTypeDefault = 1
- TokenElevationTypeFull = 2
- TokenElevationTypeLimited = 3
Code (Assembler) : Убрать нумерацию
- invoke GetCurrentProcess
- invoke OpenProcessToken,eax,TOKEN_QUERY,hToken
- invoke GetTokenInformation,[hToken],TokenElevationType,tet,4,dSize
В приложении программа с исходным текстом, которая выводит состояние прав запущенного процесса.
Просмотров: 1233 | Комментариев: 6
Метки: Assembler, безопасность
Внимание! Статья опубликована больше года назад, информация могла устареть!
Комментарии
Отзывы посетителей сайта о статье
Евгений
(09.08.2022 в 13:54):
https://github.com/hackerhouse...pl_bypassUAC
ManHunter
(08.08.2022 в 23:55):
Я имею в виду легальные способы, типа какой-то условной invoke SetUACMode,FALSE. А всякие сплойты, понятно дело, есть и будут.
pawel97
(08.08.2022 в 23:51):
ManHunter, на win7 да, как описали. А вот на win8 и выше или через политику, или реестр EnableLUA с 1 на 0. Потому что там через системные отключится только надоедалка, в остальном uac останется работать. На разных журналах хакерах были статейки про обход uac, через всякие windows update, так что насчёт невозможности программно отключить тоже вопросы
NetZR0ver
(08.08.2022 в 17:00):
Да, именно так. Вопрос был про "программное отключение". О.К. Спасибо)
Просто у меня две "оси": Linux - для сёрфинга, и Windows 7 - в автономном режиме. И постоянно выскакивающее окошко UAC уже давно задолбало.
Просто у меня две "оси": Linux - для сёрфинга, и Windows 7 - в автономном режиме. И постоянно выскакивающее окошко UAC уже давно задолбало.
ManHunter
(08.08.2022 в 16:51):
Конечно можно. Зайти под админом, Пуск - Настройки - Панель управления - Параметры управления учетными записями, а там выкрутить бегунок на минималку. Если вопрос был про программное отключение, то ответ нет, иначе любая малвара отключала бы UAC самостоятельно и никакой пользы от ограничений не было.
NetZR0ver
(08.08.2022 в 16:14):
День добрый. Можно ли вообще отключить этот самый надоедливый UAC?
Добавить комментарий
Заполните форму для добавления комментария
Пример программы с исходным текстом (FASM)

