Как определить уровень UAC своего процесса
07.08.2022 | Категория: Образ мышления: Assembler | Автор: ManHunter
Как известно, контроль учетных записей (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
Читать статью целиком »
Просмотров: 916 | Комментариев: 6