Супер администратор Windows
, также известный как встроенная учетная запись администратора
или скрытый администратор
, – это учетная запись Windows, которая имеет более высокие административные привилегии. Сравнимые с root в операционных системах Unix. Она присутствует в каждой установке Windows 10, Windows 8.1/8, Windows 7 и Windows Vista.
Супер Администратор
также называется скрытым администратором
, поскольку он не отображается в списке пользователей, принадлежащих к группе администраторов. По умолчанию он отключен во всех операционных системах Microsoft, чтобы обеспечить более высокий уровень безопасности, и для возможности его использования необходимо активировать.
Разница между администратором и супер администратором
Администраторы
имеют полный доступ к ПК и могут редактировать настройки безопасности, устанавливать программное обеспечение и получать доступ ко всем файлам.
Как активировать Windows Super Administrator
Использовать Windows PowerShell
- Откройте Windows PowerShell
(→ что такое Windows PowerShell
) от имени администратора. - В Windows PowerShell введите:
get-localuser -name "administrator" | enable-localuserНажмите клавишу на клавиатуре компьютера.
- Закройте Windows PowerShell
.
Используйте командную строку
- Откройте командную строку
в Windows, как администратор (→ как открыть командную строку с правами администратора
). - В командной строке введите:
net user administrator /active:yesНажмите клавишу на клавиатуре компьютера.
- Закройте командную строку
.
Используйте локальные политики безопасности
- Нажмите комбинацию клавиш (клавиша с логотипом Windows) и . Откроется окно «Выполнить».
- В поле Открыть
: введите secpol.msc
и нажмите кнопку . - Откроется оснастка «Локальная политика безопасности». В дереве консоли (левая панель) откройте папку Локальные политики
. Далее выберите «Параметры безопасности». - На центральной панели найдите и дважды щёлкните элемент Состояния учетной записи Администратор
. - Откроется окно Свойства: Учетные записи: Состояние учетной записи администратора
.
Активируйте пункт .
- Нажмите .
- Закройте локальную политику безопасности
.
Использование настроек локальных пользователей и групп
- Нажмите комбинацию клавиш (клавиша с логотипом Windows) и . Откроется окно «Выполнить».
- В строке Открыть
: введите lusrmgr.msc
и нажмите . - Откроется оснастка «Локальные пользователи и группы».
- В дереве консоли (левая панель) откройте папку «Пользователи».
- На центральной панели дважды щелкните элемент «Администратор»
. - Откроется вкладка Свойства: Администратор
. - Снимите флажок Отключить учетную запись
. - Нажмите ОК.
- Закройте оснастку «Локальные пользователи и группы».
Войдите в систему с помощью Windows Super Administrator
Теперь среди доступных пользователей мы можем выбрать пользователя – администратора
, то есть супер-администратора, которого мы только что активировали.
Важно
: чтобы повысить уровень безопасности, не забудьте создать пароль
для этой учетной записи.

В результате мы запустим проводник с администраторскими привилегиями. Выставляем права и радуемся своей находчивости.
Итак, я нашел два способа побороть эту ситуацию: один правильный и интересный, второй быстрый и забавный. Начнем с первого.
Способ 1. Для любознательных и терпеливых
За разграничение прав проводника отвечает один из COM объектов. А именно — Elevated-Unelevated Explorer Factory
.
Находится это чудо следующим образом:
Запускаете cmd с правами администратора — dcomcnfg
и далее в настройке DCOM ищите параметр Elevated-Unelevated Explorer Factory
.

и там ищите нашего спрятанного зверька:


- значение Interactive User для текущего пользователя
- удаление этого параметра для запускающего пользователя
- имя пользователя для запуска проводника от какого-то конкретного пользователя
А теперь время магии
.
Способ 2. Быстрый и веселый
Запускаем cmd от имени администратора, открываем блокнот, выбираем Открыть и отобразить все файлы и спокойно меняем права на файлы и папки.
Картинка, иллюстрирующая мои глаза в момент этого чудного открытия прилагается:

Благодарю за внимание!
UPD
Благодаря пользователю denis_g
и нескольким другим линуксойдам, вспомнил, что давно читал про консольную команду управления правами доступа — CACLS
Раз ссылка на синтаксис
Два ссылка на синтаксис
Получается, добавление пользователя с правами на изменение делается так:
Где переменные: /t — подкаталоги (для папок), /e — edit т.е. изменение существующих прав, /p — изменение пав пользователю (если нет — добавит), С — чтение.
Осторожно, сперва потренируйтесь, ибо можно снести в null все права на папку!
UPD3
от пользователя tachidi
1) Убить в процессах explorer.exe
2) Запустить его от имени адмиинстраторской учеткой
3) Выставить необходимые парва
4) Не забыть вернуть все обратно!

(с) Вася Ложкин.
К сожалению, в работе сисадмина нет-нет да и приходится разрешать пользователям запускать всякий софт с админскими правами. Чаще всего это какие-нибудь странные китайские программы для работы с оборудованием. Но бывают и другие ситуации вроде небезызвестного bnk.exe.
Попробуем разобрать решения, которые позволят и программу запустить, и безопасника с финансистом не обозлить.
Ну, и зачем тебе права?
Программа может запрашивать права администратора условно в двух случаях:
- Когда хочет получить доступ туда, куда «простым смертным» нельзя: например, создавать файлы в системных каталогах.
- Когда программу скомпилировали со специальным флагом «Требовать права администратора».
С первым случаем все понятно: берем в руки замечательную программу Марка Руссиновича Process Monitor
, смотрим, что происходит, и куда программа пытается залезть:

Куда это лезет этот 7Zip?
И по результатам исследования выдаем права пользователю на нужный каталог или ветку реестра.
Сложнее, если случай клинический, и так просто выдать права не получится: например, программа требует сильного вмешательства в работу системы вроде установки драйверов. Тогда придется придумывать всякий колхоз, про который речь пойдет в последнем разделе статьи. Пока подробнее освещу второй случай — когда стоит флажок.
Если сильно упростить, то в специальном манифесте
программы (к слову, установщики — это тоже программы) могут быть три варианта запуска:
- asInvoker
. Программа запускается с теми же правами, что и породивший ее процесс (как правило, это explorer.exe c правами пользователя); - highestAvailable
. Программа попросит максимально доступные пользователю права (у администратора появится окно с запросом повышения UAC, у пользователя — нет); - requireAdministrator
. Программа будет требовать права администратора в любом случае.
Если разработчик твердо решил требовать права администратора, даже если они не нужны, то обойти это можно малой кровью.
Нет, не будет тебе прав
В системе Windows, начиная с Vista, появилась служба UAC, которая помимо прочего отвечает за запросы программ на повышение прав. Не все программы «переваривали» работу с этой службой. Поэтому в системе был доработан механизм совместимости приложений, позволяющий прямо задать программе ее поведение — запрашивать права или нет.
Простейшим вариантом работы с этим механизмом будет использование переменных среды.
Рассмотрим пример с редактором реестра. Действительно, запуская regedit.exe под администратором, мы получаем запрос на повышение прав:

Запрос повышение прав.
Если же мы запустим редактор реестра из консоли, предварительно поменяв значение переменной среды __COMPAT_LAYER
на:
set __COMPAT_LAYER=RUNASINVOKER То запроса UAC не будет, как и административных прав у приложения:

Бесправный редактор реестра.
С конкретным примером такой неприятной программы можно столкнуться при загрузке классификаторов банков из 1С с сайта РБК по ссылке http://cbrates.rbc.ru/bnk/bnk.exe
. Если обновление классификаторов отдается на откуп самим пользователям и нет возможности поменять загрузку на bnk.zip (а современные 1С это поддерживают), то приходится придумывать костыли. Ведь bnk.exe — самораспаковывающийся архив, в котором зачем-то прописано «Требовать права администратора».
Поскольку ярлычками тут обойтись не выйдет, ведь 1С сама скачивает файл и запускает его, то придется применять тяжелую артиллерию — Microsoft Application Compatibility Toolkit.
Документация к ПО, как обычно, доступна на официальном сайте
, загрузить можно как часть Windows Assessment and Deployment Kit
. Сам процесс решения проблемы несложен.

Создаем исправление приложения.
Имя и издатель значения не имеют. Имеет значение только расположение файла — тут нужно указать реальный проблемный bnk.exe (где он будет лежать на самом деле — не важно).
Далее необходимо в списке исправлений выбрать RunAsInvoker.
Выбираем нужный фикс.
Все остальное оставляем по умолчанию, сохраняем базу данных. Должно получиться примерно так:

Созданный фикс для bnk.exe.
После этого достаточно будет установить базу данных, щелкнув по ней правой кнопкой и выбрав Install. Теперь пользователи смогут сами грузить классификаторы банков.
Все становится хуже, если приложению действительно нужны права админа. Тогда добавление прав на системные объекты и исправления не помогают.
Ну ладно, держи права
Казалось бы, самым очевидным решением для запуска нашего странного ПО выглядит использование встроенной утилиты Runas. Документация доступна на сайте Microsoft
.
Ну, посмотрим, что из этого выйдет.
runas /savecred /user:Администратор "C:\Program Files\7-Zip\7zFM.exe" Действительно, RunAs запустит 7zip с правами учетной записи «Администратор», спросит пароль и запомнит его. Потом ярлык с такой строкой запуска будет запускать 7zip под Администратором без вопросов.
Есть один существенный недостаток: пароль запоминается на уровне системы, и теперь, используя команду Runas, можно будет запускать абсолютно любую программу. Это мало чем отличается от прямого предоставления админских прав сотрудникам, так что использовать это решение не стоит.
Зато runas может быть полезен, когда сотрудник знает пароль администратора, но работает под ограниченной учетной записью (по идее так должен делать каждый системный администратор).
Если мы начали с консольных команд, то перейдем к более высокоуровневым скриптам. Интересное решение было предложено в статье « Планктонная Windows
», где упомянутый выше Runas обвязывался js-скриптом и пропускался через обфускатор. У решения есть и очевидный минус — скрипт можно раскодировать.
Чуть более интересным методом в 2к20 являются возможности PowerShell и его работа с паролями. Подробнее можно почитать в материале « Защита и шифрование паролей в скриптах PowerShell
».
Если вкратце: в PS работа с паролями производится через специальный тип данных SecureString и объект PSCredential. Например, можно ввести пароль интерактивно:
$Cred = Get-Credential Затем сохранить пароль в зашифрованном виде в файл:
$Cred.Password | ConvertFrom-SecureString | Set-Content c:\pass.txt И теперь использовать этот файл для неинтерактивной работы:
$username = "Domain\Администратор"
$pass = Get-Content C:\pass.txt | ConvertTo-SecureString
$creds = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $username, $pass К сожалению, файл этот можно использовать только на том ПК, на котором его создали. Чтобы этого избежать, можно сделать отдельный ключ шифрования. Например так:
$AESKey = New-Object Byte[] 32
[Security.Cryptography.RNGCryptoServiceProvider]::Create().GetBytes($AESKey)
$AESKey | out-file C:\password_aes.key Теперь при помощи этого ключа пароль можно зашифровать:
$Cred.Password| ConvertFrom-SecureString -Key (get-content C:\password_aes.key
)| Set-Content C:\pass.txt $pass = Get-Content C:\pass.txt | ConvertTo-SecureString -Key (get-content C:\password_aes.key) К сожалению, с безопасностью дела обстоят так же печально: утащить пароль не составляет трудностей, если есть доступ к файлу с ключом шифрования и зашифрованным паролем. Да, можно добавить обфускации и скомпилировать скрипт в .exe вместе с нужными файлами. Но нужно понимать, что это — полумеры.
В свое время я использовал для решения подобных задач свой любимый AutoIt, где компилировал скрипт с командой RunAs
и радовался… До тех пор, пока не узнал, что AutoIt (особенно старых версий) декомпилируется на раз-два.
Другим интересным вариантом может быть применение назначенных заданий — если создать назначенное задание от админского аккаунта, пользователю для работы будет достаточно его запуска. К сожалению, для интерактивной работы с приложением это решение не подходит.
На свете существует несколько сторонних решений, призванных решить задачу. Остановлюсь на парочке из них.
Пожалуй, одна из самых известных утилит — это AdmiLink
, разработанная Алексеем Курякиным для нужд ядерной физики. Программа и принципы ее работы описаны на официальном сайте
. Я, как обычно, позволю себе более краткое описание.
Программа состоит из трех модулей. AdmiLink — это графическое окно, где можно создать ярлык на нужное приложение (в принципе, в ряде случаев достаточно только его).

Основное окно программы.
Помимо непосредственно создания ярлыка (и да, запрос UAC тоже можно подавлять), есть и дополнительные функции вроде калькулятора, терминала и удобных настроек политик безопасности. Со всеми возможностями программы читателю предлагается разобраться самостоятельно.
Второй модуль называется AdmiRun и представляет из себя консольную утилиту. Она умеет запускать приложения от имени администратора, получив в качестве одного из параметров строку, созданную через AdmiLink. В строке шифруется имя пользователя и пароль, при этом участвует и путь к программе.
На первый взгляд все выглядит безопасно, но, к сожалению, код программ закрыт, и насколько можно доверять разработчику — вопрос.
Третий модуль — AdmiLaunch — отвечает за запуск окон в разных режимах, и он используется для запуска AdmiRun, если создавать ярлык через AdmiLink.
В целом, решение проверено годами и поколениями отечественных системных администраторов. Но добавлю и альтернативу из-за рубежа.
RunAsRob
— довольно интересное ПО за авторством немецкого разработчика Оливера Хессинга (Oliver Hessing). В отличие от AdmiLink, ПО устанавливается как служба, запускаемая под привилегированной учетной записью (администратора или системы). Как следствие, подготовленный ярлык обращается к службе, которая уже в свою очередь запускает заданное ПО.
Особенность программы в том, что есть возможность авторизовать не только программы, но и папки (включая сетевые). А хранение настроек в реестре позволило добавить шаблоны групповых политик, примерно как мы писали в статье « Погружение в шаблоны и приручение GPO Windows
». Благодаря этому при необходимости настройки можно применять прямо из Active Directory.

Основное окно программы.
Программа богато документирована на официальном сайте
.
У этого автора есть еще и программа RunAsSpc
, позволяющая запускать исполняемые файлы под правами другого пользователя, передавая учетные данные через зашифрованный файл.
Мне остается только добавить, что это ПО бесплатно только для личного использования.
Но учтите, что из программы, запущенной под административными правами, можно натворить бед. Например, запустить привилегированную командную консоль через диалог Файл — Открыть.

Запускаем cmd.exe прямо из редактора реестра.
Немного защититься помогут политики запрета контекстного меню и прочих диспетчеров задач, часть из которых может настроить AdmiLink. Но в любом случае следует быть осторожным.
А вам приходилось городить странные костыли? Предлагаю делиться историями в комментариях.
Автор вопроса: Максим Межецкий
Как получить права супер админа?
У нас есть 16
ответов на вопрос Как получить права супер админа?
Скорее всего, этого будет достаточно, чтобы вы получили ответ на ваш вопрос.
Отвечает Никита Мендовский
Как стать супер администратором в Windows 7?
Отвечает Данил Скай
Отвечает Ксения Хохлова
Как получить
(предоставить) права
локального администратора
в Windows 10. Рассмотрены все возможные способы, включая командную строку и powershell.
Отвечает Диляра Гольдбаум
Отвечает Артем Шарипов
Отвечает Павел Имховик
Отвечает Александр Андреев
Отвечает Анастасия Шамина
Отвечает Кирилл Шаукатович
Нужны админские права? Получаем или включаем СУПЕРАДМИНА!

Права администратора в Windows 10

как получить права супер администратора

Как Получит Права Супер Пользователя root | linux ubuntu обзор для начинающих

Как получить права Администратора в Windows 10

Решил для себя и для тех, кому будет полезно, собрать все что знаю, но не помню по теме, в этой статье. Делитесь советами. Основным источником этой статьи является эта
.
Я вольно перевел и добавил немного от себя, того, что насобирал и узнал из других источников.
В общем, тут представлены способы, которые помогут нам достигнуть цели повышения привилегий.
Отправной точкой для этой небольшой статьи является непривилегированная оболочка (учетная запись). Возможно, мы использовали эксплойт или провели атаку и получили эту оболочку.
В принципе, в начальный момент времени мы не понимаем машину: что она делает, к чему она подключена, какой уровень привилегий у нас есть или даже какая это операционная система.
Сначала нам нужно получить нужную нам информацию, чтобы понять, где мы вообще находимся и что имеем:
systeminfo | findstr /B /C:"Название ОС" /C:"Версия ОС" Эта команда позволяет определить, как из нее видно, Название и версию ОС. Можно выполнить ее и без параметров, тогда вывод команды будет более полным, но нам достаточно и этого.
Далее важно узнать имя машины и имя пользователя, под которым мы подключились.
- hostname — имя пользователя.
- echo %username% — имя пользователя.
- net users — другие пользователи
- net user user1 — детальная информация по пользователю, где user1 — имя вашего пользователя.
Получив информацию об учетке, посмотрим информацию о сетевом взаимодействии данного хоста.
Сначала глянем на имеющиеся интерфейсы и таблицу маршрутизации.
- ipconfig /all — информация об имеющихся интерфейсах.
- route print — таблица маршрутизации
- arp -A — таблица arp записей
Далее посмотрим активные сетевые подключения и правила брандмауэра.
- netstat -ano — активные сетевые подключения.
-a — запуск с данным параметром выведет на экран все активные подключения TCP, а также порты TCP и UDP, прослушиваемые системой;
-n — параметр позволяет показать активные подключения TCP с адресами и номерами портов;
-o — так же, как и предыдущий ключ, выводит активные TCP подключения, но в статистику добавлены коды процессов, по ним уже можно точно определить, какое именно приложение использует подключение.
- netsh firewall show state — статус брандмауэра
- netsh firewall show config — конфигурация брандмауэра
Наконец, мы кратко рассмотрим, что работает на скомпрометированном хосте: запланированные задачи, запущенные процессы, запущенные службы и установленные драйверы.
schtasks /query /fo LIST /v где
/query — Вывод данных о всех запланированных задачах,
/fo LIST — Вывод в список.
/v — Вывод подробных сведений о задании.
Следующая команда связывает запущенные процессы с запущенными службами.
tasklist /SVC где,
/SVC — Отображение служб для каждого процесса.
Также посмотрим список запущенных служб Windows.
net start Полезно также посмотреть информацию о драйверах скомпрометированной системы.
DRIVERQUERY Далее хочется упомянуть о, наверное, самой полезной команде Windows — wmic. Команда WMIC (Windows Management Instrumentation Command) используется для получения сведений об оборудовании и системе, управления процессами и их компонентами, а также изменения настроек с использованием возможностей инструментария управления Windows (Windows Management Instrumentation или WMI). Хорошее описание
.
К сожалению, некоторые конфигурации Windows по умолчанию не разрешают доступ к WMIC, если пользователь не входит в группу Администраторов (что действительно хорошая идея). Любая версия XP не позволяла доступ к WMIC с непривилегированной учетной записи.
Напротив, Windows 7 Professional и Windows 8 Enterprise по умолчанию позволяли пользователям с низкими привилегиями использовать WMIC.
По обычаю — параметры программы:
wmic /? Хороший скрипт по сбору инфы через wmic.
Прежде чем идти дальше стоит пробежаться по собранной информации. Также стоит обратить внимание на установленные в системе патчи, так как любая информация о дырах в системе даст нам дополнительную опору для повышения своих привилегий. По номеру HotFix можно поискать уязвимости по повышению привилегий.
Далее мы рассмотрим автоматическую установку. Если существует необходимость установки и настройки большого парка машин, то как правило, технический персонал не будет перемещаться от машины к машине для настройки персонального каждой. Существует несколько решений для автоматической установки. Для нас не так важно, что это за методы и как они работают, а важно то, что они оставляют конфигурационные файлы, которые используются для процесса установки, содержащие много конфиденциальной информации, такой как ключ продукта операционной системы и пароль администратора. Что нас больше всего интересует, так это пароль администратора, который мы можем использовать для повышения наших привилегий.
Как правило, это следующие каталоги:
- c:\sysprep.inf
- c:\sysprep\sysprep.xml
- %WINDIR%\Panther\Unattend\Unattended.xml
- %WINDIR%\Panther\Unattended.xml
Но стоит проверить и всю систему.
Данные файлы содержат пароли в открытом виде или кодировке BASE64.
Примеры:
Sysprep.inf — пароль в открытом виде.
Sysprep.xml — пароль в кодировке base64.
Unattended.xml — пароль в кодировке base64.

Также для хостов, подключенных к домену можно поискать файл Group.xml, который содержит зашифрованный AES256 пароль, но который можно расшифровать, т.к. ключ выложен на msdn (https://msdn.microsoft.com/en-us/library/cc422924.aspx) и других источниках. Но это в случае, если используется политика создания локальных пользователей на хостах или, например, задании пароля локальному Администратору.
Например, у меня лежит тут:

Открыв его, ищем параметр “cpassword”.

Далее нужно расшифровать данную последовательность. Используем, например, CrypTool
. Сначала раскодируем Base64.
Особенности Base64 в том, что его длина должна быть кратна 4. Поэтому считаем блоки по 4, и если в последнем блоке не хватает символов, то недостающие дописываем символами «=».
У меня вышло 2 «=».

Далее расшифруем. Применяя тот ключ, что выше.

Убираем лишние точки, разделяющие знаки и получаем пароль.
В дополнение к Group.xml вот несколько других файлов предпочтений политики, которые могут иметь дополнительный набор атрибутов «cPassword”:
- Services\Services.xml
- ScheduledTasks\ScheduledTasks.xml
- Printers\Printers.xml
- Drives\Drives.xml
- DataSources\DataSources.xml
Однако мы все любим автоматизированные решения, поэтому мы можем добраться до финиша как можно быстрее. Здесь есть два основных варианта, в зависимости от типа оболочки/доступа, который у нас есть. Существует модуль metasploit, который может быть выполнен через установленную сессию (https://www.rapid7.com/db/modules/post/windows/gather/credentials/gpp) или Вы можете использовать Get-GPPPassword, который является частью PowerSploit
.
Ладно, дальше. Будем искать странный параметр реестра „AlwaysInstallElevated“. Данный параметр разрешает непривилегированным пользователям устанавливать .msi файлы из-под NT AUTHORITY\SYSTEM.
Для того, чтобы иметь возможность использовать это, мы должны проверить, что оба раздела реестра установлены, и если это так, мы можем получить SYSTEM shell. Проверим:
reg query HKLM\SOFTWARE\Policies\Microsoft\Windows\Installer\AlwaysInstallElevated reg query HKCU\SOFTWARE\Policies\Microsoft\Windows\Installer\AlwaysInstallElevated В состав Metasploit входит специальный модуль exploit/windows/local/always_install_elevated, который создает MSI-файл со встроенным в него специальным исполняемым файлом, который извлекается и выполняется установщиком с привилегиями системы. После его выполнения msi-файл прекращает установку, чтобы предотвратить регистрацию действия в системе. К тому же если запустить установку с ключом /quiet, то даже не выведется ошибка.
Ну и немного полезных команд по поиску по системе:
Команда ниже будет искать в файловой системе имена файлов, содержащие определенные ключевые слова. Вы можете указать любое количество ключевых слов.
dir /s *pass* == *cred* == *vnc* == *.config* Поиск определенных типов файлов по ключевому слову, эта команда может генерировать много выходных данных.
findstr /si password *.xml *.ini *.txt Аналогично две команды ниже могут быть использованы для grep реестра по ключевым словам, в данном случае „password“.
reg query HKLM /f password /t REG_SZ /s reg query HKCU /f password /t REG_SZ /s На данный момент у нас уже есть достаточно, чтобы получить системный шел. Но есть еще пара направленbй атаки для получения желаемого результата: мы рассмотрим службы Windows и разрешения для файлов и папок. Наша цель здесь — использовать слабые разрешения для повышения привилегий сеанса.
Мы будем проверять много прав доступа, в этом нам поможет accesschk.exe, который является инструментом от Microsoft Sysinternals Suite. Microsoft Sysinternals содержит много отличных инструментов. Пакет можно загрузить с сайта Microsoft technet (https://docs.microsoft.com/ru-ru/sysinternals/downloads/sysinternals-suite).
Мы можем проверить необходимый уровень привилегий для каждой службы с помощью accesschk.
Мы можем видеть разрешения, которые имеет каждый уровень пользователя.

Accesschk может автоматически проверять, есть ли у нас доступ на запись к службе Windows с определенным уровнем пользователя. Как правило, как пользователь с низкими привилегиями, мы хотим проверить „Пользователей“. Удостоверьтесь, что проверили, к каким группам пользователей вы принадлежите.
-c В качестве имени указана служба Windows, например ssdpsrv (укажите “*” для вывода на экран всех служб)
-d Обрабатывать только каталоги
-e Выводить только явным образом заданные уровни целостности (только для ОС Windows Vista)
-k В качестве имени указан раздел реестра, например hklm\software
-n Выводить только объекты, не имеющие правил доступа
-p В качестве имени указано имя или идентификатор процесса (PID), например cmd.exe (укажите в качестве имени “*”, чтобы вывести на экран все процессы)
-q Опустить заголовок
-r Выводить только объекты, к которым есть право доступа на чтение
-s Рекурсивная обработка
-v Выводить подробную информацию
-w Выводить только объекты, к которым есть право доступа на запись

Также есть еще одна интересная команда:
autorunsc.exe -a | findstr /n /R "File\ not\ found" Позволяет найти запись в реестре о файле, который запускался автоматически, но сейчас уже отсутствует в системе. Запись могла остаться, если например, сервис был неправильно удален. При каждом запуске система безуспешно пытается запустить этот файл. Этой ситуацией также можно воспользоваться для расширения своих полномочий. Просто на место этого файла можно подставить наш.
Далее рассмотрим две уязвимости:
Первая: реплицируем результаты поста, написанного Parvez из GreyHatHacker; „Elevating privileges by exploiting weak folder permissions“ (http://www.greyhathacker.net/?p=738).
Этот пример является частным случаем угона dll. Программы обычно не могут функционировать сами по себе, у них есть много ресурсов, которые им нужно подключить (в основном dll, но и собственные файлы). Если программа или служба загружает файл из каталога, к которому у нас есть доступ на запись, мы можем злоупотребить этим, чтобы запустить оболочку с привилегиями, под которыми работает программа.
Как правило, приложение Windows будет использовать предопределенные пути поиска, чтобы найти dll, и он будет проверять эти пути в определенном порядке. Dll угон обычно происходит путем размещения вредоносных dll по одному из этих путей. Эта проблема может быть устранена путем указания приложению абсолютных путей к необходимой dll.
Порядок поиска dll:
- Директория с которой запущено приложение
- 32-bit System directory (C:\Windows\System32)
- 16-bit System directory (C:\Windows\System)
- Windows directory (C:\Windows)
- Действующая рабочая директория (CWD)
- Directories in the PATH environment variable (system then user)
Иногда приложения пытаются загрузить dll файлы, отсутствующие на машине. Это может произойти по нескольким причинам, например, если библиотека dll требуется только для определенных подключаемых модулей или компонентов, которые не установлены. В этом случае Parvez обнаружил, что некоторые службы Windows пытаются загрузить библиотеки dll, которые не существуют в установках по умолчанию.
Так как dll не существует, мы в конечном итоге прохождения всех путей поиска. Как пользователь с низким уровнем привилегий у нас немного шансов положить вредоносный dll в п. 1-4, 5. Но если у нас есть доступ на запись в любой из каталогов, то наши шансы на победу велики.
Давайте посмотрим, как это работает на практике, для нашего примера мы будем использовать IKEEXT (модули ключей IPSec IKE и AuthIP) сервис, который пытается загрузить wlbsctrl.dll.
Любой каталог в „C:\“ даст доступ на запись для аутентифицированных пользователей, это дает нам шанс.
C:\Users\user1\Desktop> accesschk.exe -dqv "C:\Python27" C:\Python27 Medium Mandatory Level (Default) [No-Write-Up] RW BUILTIN\Administrators FILE_ALL_ACCESS RW NT AUTHORITY\SYSTEM FILE_ALL_ACCESS R BUILTIN\Users FILE_LIST_DIRECTORY FILE_READ_ATTRIBUTES FILE_READ_EA FILE_TRAVERSE SYNCHRONIZE READ_CONTROL RW NT AUTHORITY\Authenticated Users FILE_ADD_FILE FILE_ADD_SUBDIRECTORY FILE_LIST_DIRECTORY FILE_READ_ATTRIBUTES FILE_READ_EA FILE_TRAVERSE FILE_WRITE_ATTRIBUTES FILE_WRITE_EA DELETE SYNCHRONIZE READ_CONTROL C:\Users\user1\Desktop> icacls "C:\Python27" C:\Python27 BUILTIN\Administrators:(ID)F BUILTIN\Administrators:(OI)(CI)(IO)(ID)F NT AUTHORITY\SYSTEM:(ID)F NT AUTHORITY\SYSTEM:(OI)(CI)(IO)(ID)F BUILTIN\Users:(OI)(CI)(ID)R NT AUTHORITY\Authenticated Users:(ID)C NT AUTHORITY\Authenticated Users:(OI)(CI)(IO)(ID)C F — полный доступ.
(OI) — наследование объектами.
(CI) — наследование контейнерами.
(IO) — только наследование.
(NP) — запрет на распространение наследования.
(I)- наследование разрешений от родительского контейнера.
sc qc IKEEXT [SC] QueryServiceConfig SUCCESS
SERVICE_NAME: IKEEXT TYPE : 20 WIN32_SHARE_PROCESS START_TYPE : 2 AUTO_START ERROR_CONTROL : 1 NORMAL BINARY_PATH_NAME : C:\Windows\system32\svchost.exe -k netsvcs LOAD_ORDER_GROUP : TAG : 0 DISPLAY_NAME : IKE and AuthIP IPsec Keying Modules DEPENDENCIES : BFE SERVICE_START_NAME : LocalSystem Теперь мы знаем, что у нас есть необходимые условия, и мы можем создать вредоносную dll и перехвата оболочки!
Используем Metasploit -> msfvenom, это например.

После передачи evil.dll на наш целевой компьютер все, что нам нужно сделать, это переименовать его в wlbsctrl.dll и переместить в „C:\Python27“. Как только это будет сделано, нам нужно терпеливо ждать перезагрузки машины (или мы можем попытаться принудительно перезагрузить), и мы получим системную оболочку.
copy evil.dll C:\Python27\wlbsctrl.dll После этого осталось только дождаться перезагрузки системы.
Для нашего последнего примера мы рассмотрим запланированные задачи. Опишу принцип, т.к. у всех могут быть разные случаи.
Находим процесс, службу, приложение запускаемое планировщиком задач от SYSTEM.
Проверяем права доступа на папку, где находится наша цель.
accesschk.exe -dqv "путь_к_цели" Ясно, что это серьезная проблема конфигурации, но еще хуже тот факт, что любой прошедший проверку Пользователь (аутентифицированный пользователь) имеет доступ на запись в эту папку. В этом примере мы можем просто перезаписать двоичный исполняемый файл файлом, сгенерированным в metasploit.
Можно закодировать дополнительно.

Теперь остается только загрузить вредоносный исполняемый файл и перезаписать его в папку выполняемого файла. Как только это будет сделано, мы можем спокойно идти спать и рано с утра получить системный шел.
Эти два примера должны дать нам представление об уязвимостях, которые необходимо искать при рассмотрении разрешений для файлов и папок. Потребуется время, чтобы изучить все пути binpath для служб windows, запланированные задачи и задачи автозапуска.
Напоследок пара советов по использованию accesschk.exe.
Найти все слабые разрешения для папок на диске.
accesschk.exe -uwdqs Users c:\
accesschk.exe -uwdqs "Authenticated Users" c:\ Найти все слабые разрешения для файлов на диске.
accesschk.exe -uwqs Users c:\*.*
accesschk.exe -uwqs "Authenticated Users" c:\*.*




