Интересная новость опубликована на OSZone: Disk Cleanup в Windows 10 позволяет обойти контроль учётных записей.
Она любопытна по нескольким причинам:
• PoC (Proof of Concept) базируется на том, что очистка диска копирует файлы DISM во временную папку. Это поведение я описывал почти три года назад. Такая вот #классика блога :)
• В новости приводится технический совет, который особо ничем не помогает, в связи с чем мне пришлось добавить примечание в конце.
• Уязвимость обнаружена в #UAC, который де-факто не является границей защищенной зоны. Потому Microsoft и не считает такое поведение уязвимостью.
Но да, я не считаю правильным копирование системных файлов в пользовательскую папку для последующего их выполнения 📍 Ведь они лежат в системной папке неспроста - туда нет прав на запись у обычного пользователя, с чьим токеном работает администратор при включенном UAC.
Она любопытна по нескольким причинам:
• PoC (Proof of Concept) базируется на том, что очистка диска копирует файлы DISM во временную папку. Это поведение я описывал почти три года назад. Такая вот #классика блога :)
• В новости приводится технический совет, который особо ничем не помогает, в связи с чем мне пришлось добавить примечание в конце.
• Уязвимость обнаружена в #UAC, который де-факто не является границей защищенной зоны. Потому Microsoft и не считает такое поведение уязвимостью.
Но да, я не считаю правильным копирование системных файлов в пользовательскую папку для последующего их выполнения 📍 Ведь они лежат в системной папке неспроста - туда нет прав на запись у обычного пользователя, с чьим токеном работает администратор при включенном UAC.
www.outsidethebox.ms
WOW! Как грамотно уменьшить размер папки WinSxS в Windows 7 SP1
Буквально вчера участник форума OSZone с громким ником xaker7 убил свою Windows 7 безграмотной очисткой папки WinSxS. Он не знал, что в тот день Microsoft порадовала владельцев Windows 7 новым безопасным способом сокращения размера этой злосчастной папки...
ℹ️ Microsoft не тестирует #Windows10 с отключенным контролем учетных записей
В блоге Криса Джексона (aka App Compat Guy), вчера появился пост, где в частности есть такая цитата (в моем вольном переводе):
Действительно, в этом контексте отключение #UAC никакого смысла не имеет. Напротив, контроль учетных записей может исправить работу старых приложений за счет виртуализации файловой системы и реестра https://www.outsidethebox.ms/10034/#oldapps
В целом же, пост в блоге Криса посвящен запуску программы Desktop App Assure. В ее рамках Microsoft обещает бесплатно исправлять работу приложений, работавших в предыдущей версии Windows, но сломавшихся в последней версии Windows 10. Рекомендую материал к прочтению ИТ-специалистам, планирующим переход на Windows 10 с зоопарком старых LOB-приложений https://ift.tt/2ErGo5o
В блоге Криса Джексона (aka App Compat Guy), вчера появился пост, где в частности есть такая цитата (в моем вольном переводе):
Некоторые клиенты отключали UAC в Windows 7. Это было не лучшей идеей, потому что мы не так уж много тестировали такую конфигурацию [...] Windows 10 абсолютно не тестируется с отключенным UAC, и мы знаем множество ключевых сценариев, которые не будут работать, потому что мы такую конфигурацию не тестируем.Вообще, ничего удивительного, но все-таки надо учитывать контекст публикации. В Microsoft Крис занимается совместимостью приложений, и не исключено, что говорил он только про свою епархию.
Действительно, в этом контексте отключение #UAC никакого смысла не имеет. Напротив, контроль учетных записей может исправить работу старых приложений за счет виртуализации файловой системы и реестра https://www.outsidethebox.ms/10034/#oldapps
В целом же, пост в блоге Криса посвящен запуску программы Desktop App Assure. В ее рамках Microsoft обещает бесплатно исправлять работу приложений, работавших в предыдущей версии Windows, но сломавшихся в последней версии Windows 10. Рекомендую материал к прочтению ИТ-специалистам, планирующим переход на Windows 10 с зоопарком старых LOB-приложений https://ift.tt/2ErGo5o
www.outsidethebox.ms
Так ли страшен контроль учетных записей (UAC)?
В Windows Vista контроль учетных записей стал чуть ли не ругательным словом, и многие пользователи отключали его первым делом. В Windows 7 ситуация изменилась к лучшему, и хотя с запросами UAC вы будете сталкиваться, их количество во многом зависит от вашего…
🔒 Новое в блоге: Нюансы отключения контроля учетных записей (#UAC)
https://www.outsidethebox.ms/19079/
https://www.outsidethebox.ms/19079/
🧩 Решение загадки про переключатели в Параметрах
Первый вопрос был "Из-за чего так сделано?" Ответ: из-за контроля учетных записей!
Если найти страницу, об этом можно легко догадаться, если у вас установлен верхний уровень контроля. Он призван всегда уведомлять, в т.ч. при изменении параметров Windows. В этом случае появляется запрос #UAC.
Со стандартным уровнем UAC это неочевидно, поэтому знание конкретной страницы не сильно помогает. На картинке был раздел Конфиденциальность, и там много страниц с таким же поведением.
️🔒 Напомню, что в Windows Vista в панели управления приходилось одобрять все запросы, а в Windows 7 появились ссылки со щитом для автоматического повышения прав администратору (#классика блога Так ли страшен UAC? раскрывала этот аспект).
В параметрах Windows 8.х и #Windows10 на кнопках и ссылках нет щита, поэтому невозможно сказать заранее, понадобятся ли полные права для изменения той или иной настройки.
Более того, в данном случае у пользователя с обычными правами кнопка неактивна↓ Однако единства в этом вопросе нет. Так, на странице "Активация" при попытке изменить ключ продукта появляется запрос UAC, а на странице "О системе" кнопка переименования ПК отсутствует напрочь 🙉
Второй вопрос был "Почему сделано именно так?" Как я сказал, точный ответ мне неизвестен (например, в руководстве по дизайну UWP его нет).
Я полагаю, что вывод запросов UAC для переключателей не предусмотрен. Наверное, такое решение обусловлено философией UX, поскольку у переключателя нет промежуточного состояния для ожидания одобрения.
✌️
Первый вопрос был "Из-за чего так сделано?" Ответ: из-за контроля учетных записей!
Если найти страницу, об этом можно легко догадаться, если у вас установлен верхний уровень контроля. Он призван всегда уведомлять, в т.ч. при изменении параметров Windows. В этом случае появляется запрос #UAC.
Со стандартным уровнем UAC это неочевидно, поэтому знание конкретной страницы не сильно помогает. На картинке был раздел Конфиденциальность, и там много страниц с таким же поведением.
️🔒 Напомню, что в Windows Vista в панели управления приходилось одобрять все запросы, а в Windows 7 появились ссылки со щитом для автоматического повышения прав администратору (#классика блога Так ли страшен UAC? раскрывала этот аспект).
В параметрах Windows 8.х и #Windows10 на кнопках и ссылках нет щита, поэтому невозможно сказать заранее, понадобятся ли полные права для изменения той или иной настройки.
Более того, в данном случае у пользователя с обычными правами кнопка неактивна↓ Однако единства в этом вопросе нет. Так, на странице "Активация" при попытке изменить ключ продукта появляется запрос UAC, а на странице "О системе" кнопка переименования ПК отсутствует напрочь 🙉
Второй вопрос был "Почему сделано именно так?" Как я сказал, точный ответ мне неизвестен (например, в руководстве по дизайну UWP его нет).
Я полагаю, что вывод запросов UAC для переключателей не предусмотрен. Наверное, такое решение обусловлено философией UX, поскольку у переключателя нет промежуточного состояния для ожидания одобрения.
✌️
🔓 Любопытная и необычная уязвимость в #UAC
Уведомления контроля учетных записей показываются на защищенном рабочем столе в контексте учетной записи SYSTEM. Если удастся запустить из них какой-то процесс, он автоматически получает те же права.
В диалоге UAC есть возможность просмотра сертификата, которым подписан исполняемый файл. Однако кнопка копирования сертификата в файл предусмотрительно заблокирована (иначе открылся бы проводник).
Тем не менее, исследователь выяснил, что в сведениях о сертификате при совпадении ряда условий поле Issued By может отображать гиперссылку на сайт компании, выпустившей сертификат. И эту функцию в контексте UAC отключить забыли! 🤦 Что и демонстрируется на картинке на примере древнего сертификата, которым подписан какой-то исполняемый файл Microsoft. Это позволяет запустить браузер с правами системы.
Поскольку здесь налицо повышение привилегий (EoP), уязвимость исправили в ноябре 2019 года. Но Microsoft не считает уязвимостями большинство способов обхода UAC. А их великое множество, и зачастую виновны различные исполняемые файлы в Windows. Отдельные продуктовые группы постепенно устраняют такие методы обхода, но не так быстро, как это делается в случае с уязвимостями.
ℹ️ Причина в том, что в контексте безопасности контроль учетных записей не является границей защищенной зоны (EN|RU), т.е. при запросе приложения на повышение прав диалог несет информационную нагрузку, а решение остается за пользователем.
Бонус: статьи с меткой UAC в блоге https://www.outsidethebox.ms/tag/uac/
Уведомления контроля учетных записей показываются на защищенном рабочем столе в контексте учетной записи SYSTEM. Если удастся запустить из них какой-то процесс, он автоматически получает те же права.
В диалоге UAC есть возможность просмотра сертификата, которым подписан исполняемый файл. Однако кнопка копирования сертификата в файл предусмотрительно заблокирована (иначе открылся бы проводник).
Тем не менее, исследователь выяснил, что в сведениях о сертификате при совпадении ряда условий поле Issued By может отображать гиперссылку на сайт компании, выпустившей сертификат. И эту функцию в контексте UAC отключить забыли! 🤦 Что и демонстрируется на картинке на примере древнего сертификата, которым подписан какой-то исполняемый файл Microsoft. Это позволяет запустить браузер с правами системы.
Поскольку здесь налицо повышение привилегий (EoP), уязвимость исправили в ноябре 2019 года. Но Microsoft не считает уязвимостями большинство способов обхода UAC. А их великое множество, и зачастую виновны различные исполняемые файлы в Windows. Отдельные продуктовые группы постепенно устраняют такие методы обхода, но не так быстро, как это делается в случае с уязвимостями.
ℹ️ Причина в том, что в контексте безопасности контроль учетных записей не является границей защищенной зоны (EN|RU), т.е. при запросе приложения на повышение прав диалог несет информационную нагрузку, а решение остается за пользователем.
Бонус: статьи с меткой UAC в блоге https://www.outsidethebox.ms/tag/uac/
🕙 Почему некоторые приложения не запускаются автоматически при старте системы и как это обойти
Вопрос не новый, но вчера его внезапно задали аж три разных человека. Происходит это обычно так: в автозагрузку любым способом прописывают программу, перезагружают систему, и... программа не запускается.
В #Windows10 ограничена автозагрузка программ, требующих при запуске права администратора. Я затрудняюсь объяснить причины этого решения†, но могу показать обходной путь.
Этому способу уже 10 лет, и он исторически применяется для запуска программ с полными правами без запроса #UAC через планировщик.
Задача планировщика настраивается на запуск с наивысшими возможными правами для конкретной учетной записи. Обычный аккаунт выше своего потолка прыгнуть не может, поэтому решение подходит только для учетной записи с правами администратора. Впрочем, они все равно нужны для запуска таких программ.
† Решил не разводить в посте, но из чата понял, что выглядит так, будто у меня нет идей:) На самом деле подоплека понятна: запросы UAC от этих программ при старте системы ухудшают UX. Однако UX с тихой блокировкой программ еще хуже, потому что такое поведение вообще непонятно пользователю.
Блокировка появилась вместе с UAC еще в Vista. Однако как напомнил Василий Гусев, тогда в трее появлялось уведомление о блокировке, из которого программу можно было запустить.
Теперь таких программ на порядок меньше, и решили просто тихо блокировать. Хотя ничто не мешало выводить сообщение в центр уведомлений, объясняя поведение системы. Почему это не сделали, я и затрудняюсь объяснить:)
✌️
Вопрос не новый, но вчера его внезапно задали аж три разных человека. Происходит это обычно так: в автозагрузку любым способом прописывают программу, перезагружают систему, и... программа не запускается.
В #Windows10 ограничена автозагрузка программ, требующих при запуске права администратора. Я затрудняюсь объяснить причины этого решения†, но могу показать обходной путь.
Этому способу уже 10 лет, и он исторически применяется для запуска программ с полными правами без запроса #UAC через планировщик.
Задача планировщика настраивается на запуск с наивысшими возможными правами для конкретной учетной записи. Обычный аккаунт выше своего потолка прыгнуть не может, поэтому решение подходит только для учетной записи с правами администратора. Впрочем, они все равно нужны для запуска таких программ.
† Решил не разводить в посте, но из чата понял, что выглядит так, будто у меня нет идей:) На самом деле подоплека понятна: запросы UAC от этих программ при старте системы ухудшают UX. Однако UX с тихой блокировкой программ еще хуже, потому что такое поведение вообще непонятно пользователю.
Блокировка появилась вместе с UAC еще в Vista. Однако как напомнил Василий Гусев, тогда в трее появлялось уведомление о блокировке, из которого программу можно было запустить.
Теперь таких программ на порядок меньше, и решили просто тихо блокировать. Хотя ничто не мешало выводить сообщение в центр уведомлений, объясняя поведение системы. Почему это не сделали, я и затрудняюсь объяснить:)
✌️
👍 Edge Chromium приучает к работе с включенным #UAC
Показанное на картинке сообщение появляется при попытке настроить синхронизацию паролей и прочего с выключенным контролем учётных записей.
Кстати, стабильная версия, в отличие от Dev, без прав администратора не ставится, т.е. установочные файлы не падают в профиль. Что хорошо и правильно!
Соответственно, установка осуществляется в Program Files. Да, в папку x86, несмотря на 64-разрядную версию, но это уже фишка Chromium.
✌️
Показанное на картинке сообщение появляется при попытке настроить синхронизацию паролей и прочего с выключенным контролем учётных записей.
Кстати, стабильная версия, в отличие от Dev, без прав администратора не ставится, т.е. установочные файлы не падают в профиль. Что хорошо и правильно!
Соответственно, установка осуществляется в Program Files. Да, в папку x86, несмотря на 64-разрядную версию, но это уже фишка Chromium.
✌️
▶️ О выполнении команд и запуске приложений с обычными правами
Как выяснилось, без прав админа посмотреть разметку диска можно только в WMI -
🧩 С
👉 Однако даже для оснасток есть способ форсировать ограниченные права. В командной строке с обычными правами выполните:
а затем выполняйте там любые команды и приложения. Все они будут запущены с обычными правами. Потому что делающий это invoker - ваша учетная запись, которой выдан токен обычного пользователя.
Об этом рассказывает другая классика блога со странным названием Зачем программам нужны установщики. Тогда в комментариях Проничкин недоумевал, зачем вообще эта статья появилась на свет. А я с тех пор многократно ссылался на разделы про RunAsInvoker и устранение неполадок MSI в форуме и чате 👌
🛡 Управление дисками совсем не работает с ограниченными правами. Зато диспетчер устройств предупреждает, что трогать ничего нельзя, но можно посмотреть. В свойствах устройства обнаруживаются кнопки со щитом. При традиционном запуске в административном аккаунте их нет из-за автоповышения прав.
Интересно, что на вкладке "Тома" кнопка со щитом перезапускает с полными правами не всю оснастку. От имени администратора запускается только окно свойств оборудования. Да, его можно открыть отдельно:
Кстати, в этом случае диспетчер устройств закрывается, как можно заметить в конце видео. Однако такого не происходит при нажатии на другую кнопку со щитом на вкладке "Общие" 🤔
Щит визуально свидетельствует о том, что компонент запущен без прав администратора. Также можно рассматривать вопрос и под углом уровней целостности. Это уже третья классика блога сегодня. Приятного чтения!
👍 - о, что-то новенькое!
👌 - я все это знаю
Как выяснилось, без прав админа посмотреть разметку диска можно только в WMI -
wmic
, Get-WMIObject
и Get-Disk, который смотрит туда же. Остальным инструментам нужны полные права.🧩 С
diskpart
все просто - в консоли без прав администратора утилита запросит повышение. Интереснее дело обстоит с оснастками MMC - управление дисками (diskmgmt.mmc
) и диспетчер устройств (devmgmt.msc
). Если в административной учетной записи выполнить эти команды, втч в консоли с обычными правами, произойдет тихое автоматическое повышение прав до администратора. #Классика блога про #UAC в помощь: Так ли страшен контроль учетных записей?👉 Однако даже для оснасток есть способ форсировать ограниченные права. В командной строке с обычными правами выполните:
set __COMPAT_LAYER=RunAsInvoker
а затем выполняйте там любые команды и приложения. Все они будут запущены с обычными правами. Потому что делающий это invoker - ваша учетная запись, которой выдан токен обычного пользователя.
Об этом рассказывает другая классика блога со странным названием Зачем программам нужны установщики. Тогда в комментариях Проничкин недоумевал, зачем вообще эта статья появилась на свет. А я с тех пор многократно ссылался на разделы про RunAsInvoker и устранение неполадок MSI в форуме и чате 👌
🛡 Управление дисками совсем не работает с ограниченными правами. Зато диспетчер устройств предупреждает, что трогать ничего нельзя, но можно посмотреть. В свойствах устройства обнаруживаются кнопки со щитом. При традиционном запуске в административном аккаунте их нет из-за автоповышения прав.
Интересно, что на вкладке "Тома" кнопка со щитом перезапускает с полными правами не всю оснастку. От имени администратора запускается только окно свойств оборудования. Да, его можно открыть отдельно:
DeviceProperties.exe "<Device Instance Path>"
Кстати, в этом случае диспетчер устройств закрывается, как можно заметить в конце видео. Однако такого не происходит при нажатии на другую кнопку со щитом на вкладке "Общие" 🤔
Щит визуально свидетельствует о том, что компонент запущен без прав администратора. Также можно рассматривать вопрос и под углом уровней целостности. Это уже третья классика блога сегодня. Приятного чтения!
👍 - о, что-то новенькое!
👌 - я все это знаю