М.Двач / Программы

15 Кб, 512x512
Восстановление прав разделов реестра Windows 7: New Opera 1 мар, 23:19 3699291 В конец треда | Веб

Нужно восстановить права разделов реестра SYSTEM и SOFTWARE. Проблема в том, что есть некоторые разделы с особыми правами, особенно накладно, когда в каком-то разделе нужны права какой-то службе, а не просто достаточно тех прав, что наследуется от SYSTEM, например, для сервиса SharedAccess нужны права для доступа сервиса MpsSvc и недостаточно даже прав Local Service или Network Service, от которых они обычно запускаются. В SOFTWARE..MMDevices нужны отдельно права для сервиса AuidoSRV и т.д. Самый простой вариант - это дать полный доступ всем, чем полностью убирается система безопасности доступа к реестру. Пробовал утилиту SubInACL в режиме экспорта-импорта на одном ключе для примера, так она не работает, возможно, из-за того, что имена не на английском, а заменять их довольно накладно, если учесть объём всего раздела. Вот когда проблема была в профиле пользователя, то она решалась заменой профиля на новый и добавлением в него экспорта из испорченного профиля. А вот с большими разделами такое не прокатывает, т.к. появляется ошибка о том, что не все разделы были изменены и после добавления данных не хватает около 5% объёма из того, что экспортировался, система при этом не запускалась до конца.

Ответы701729

Windows 7: Chromium based 2 2 мар, 10:35 2 3699360

Я тоже ищу инструмент бэкапа реестра. Делаю экспорт всего реестра через regedit "before.reg". Потом устанавливаю что-либо. Повторно делаю экспорт "after.reg". Имею на выходе 2 REG файла (было>стало). Как теперь получить REG содержащий ТОЛЬКО разницу (изменения) в файле "after.reg" чтобы в нём не было данных "before.reg"? Пробовал regshot но он выдаёт мне текстовый формат "after.txt"

Ответы699398

Windows 7: New Opera 3 2 мар, 14:16 3 3699398

>>3699360
Есть утилиты, которые при надобности отслеживают записи всех ключей при установке, типа как опция установки через revo uninstaller. Другой вариант - делать копию реестра из system32\config, потом восстанавливать, но это неудобно, т.к. нужно загружаться с другой системы, с флешки или диска. Посмотрел на regshot, он походу только разницу изменений показывать может в виде текста.

Ответы699660

Windows 7: Chromium based 4 3 мар, 11:35 4 3699660

>>3699398
>делать копию реестра из system32\config
Анон, распиши поподробней что ты имеешь ввиду. Для меня вариант руками, с загрузкой с флешки наиболее подходящий

Ответы699733

Windows 7: New Opera 5 3 мар, 16:57 5 3699733

>>3699660
До установки приложения загружаешься с флешки/диска, копируешь директорию system32\config куда-то. Устанавливаешь приложение, делаешь новую копию таким же образом. Потом, если нужно удалить все из реестра, что добавлялось при установке приложения - восстанавливаешь реестр из первой копии.

Windows 7: New Opera 6 9 мар, 19:53 6 3701242

Ситуация аналогична этой: https://superuser.com/questions/985461/restore-default-windows-registry-permissions-for-services-section
В ответах предлагали некорректное решение - с помощью SetACL установить одинаковые права для подразделов, что можно сделать и через regedit.
Теоретически можно было сделать через SubInACL: 1) На чистой Windows считываются исходные права реестра: subinacl /noverbose /outputlog=PERMISSIONS.TXT /subkeyreg HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet /display 2) На основной Windows запускается subinacl /playfile PERMISSIONS.TXT , но оказалось, что subinacl не может воспроизвести свой же вывод, возможно из-за того, что в нем есть не только английские буквы. Попробовал на одном ключе и стало понятно, что не прокатит, если не выводить все в SID вместо имен пользователей, может есть какой-то подобный ключ, но не нашел.
Следующий вариант - взять ветки реестра из чистой системы и в них импортировать свои значения, при этом сохраняются изначальные права. Но при этом варианте импортируется около 90-95% данных с ошибкой, что не все импортировалось и критичный раздел - HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control , не может подменить какие-то значения, чтоб запустилась система, прокатывает восстановить большую часть HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services , хоть и тоже с ошибкой импортируется не все, но система запускается и большинство прав восстанавливается. А вот в HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control что-то не восстанавливается импортом, что доходит до загрузки курсора и идет в ребут, если ничего не импортировать, а просто подменить ветки, то в ребут идет с первой же секунды.

Ответы701261

28 Кб, 140x140
Windows 8: Firefox based 7 9 мар, 20:49 7 3701261

>>3701242
Твоя цель всего этого какава? Что ты пытаешься сделать и для чего?

Ответы701273

Windows 7: New Opera 8 9 мар, 21:43 8 3701273

>>3701261
Хочу восстановить изначальные права системных разделов реестра, т.к. может еще что-то не запуститься, как внезапно выяснилось насчет некоторых сервисов.

Ответы701281

Windows 8: Firefox based 9 9 мар, 22:14 9 3701281

>>3701273
Не хочешь общаться - не надо. Пока.

Windows 10: Firefox based 10 11 мар, 15:57 10 3701729

>>3699291 (OP)
> я засунул лом в работающий двигатель, теперь надо как-то быстренько его восстановить, очень важно, чтобы вы мне помогли, пнятненько?

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

На практике ты бы уже это сделал, если бы мог, а так переустановить винду у тебя займёт меньше времени.

Ответы701791

Windows 7: New Opera 11 11 мар, 19:54 11 3701791

>>3701729
Сейчас нет критичных проблем, но могут внезапно проявиться, не собирался переустанавливать, даже если и будут какие-то проблемы, но хотелось бы их решить. Несложно находить заблоченный раздел при помощи Process Monitor, но лучше бы решить проблему сразу со всеми разделами.
> сравнить права в свежеустановленной системе и твоей
Ну так я и спрашиваю здесь, как это сделать? За этот метод я изначально спрашивал и даже пытался начать сделать подобное через subinacl, но утилита не понимает неанглийских названий, а как указать, чтоб вместо названий были SID - не знаю. Есть старые утилиты, типа regini и regdmp, но от них толку еще меньше, т.к. экспортировать может только полные значения, а не только права. Похоже, что придется как-то делать через PowerShell get-acl - set-acl.

Ответы701883

Windows 10: Firefox based 12 12 мар, 06:09 12 3701883

>>3701791
Вопрос не в том, как это сделать. Есть Powershell, есть .NET (компилятор в комплекте, для простенькой программы даже ставить ничего не надо).
https://powertoe.wordpress.com/2010/08/28/controlling-registry-acl-permissions-with-powershell/
https://medium.com/r3d-buck3t/abuse-service-registry-acls-windows-privesc-f88079140509

Дело в другом. Ты представь, сколько в реестре ключей, и у каждого по несколько произвольных правил доступа. Какие-то наследуются, какие-то нет. Какие-то SID заданы по умолчанию и совпадают на двух разных установленных системах, какие-то нет, но значат одно и то же (например, нужную тебе пользовательскую учётную запись). Если ты всё это выведешь в столбик, отсортировав по ключам, то получишь текстовые файлы на сотни мегабайт, и даже после diff у тебя останется бесконечный список, в котором для каждого сравнения нужно прочесть несколько строк свойств. Глазами ты этого никогда не сделаешь. Именно для этого надо уметь программировать и перед сравнением добавлять всё новые и новые условия игнорирования в зависимости от того, что у тебя творится. Например, разрешения для системы можно не учитывать. Или в каком-то разделе заведомо только администраторы должны иметь доступ, и можно вывести только случаи, где это не так. Или можно не сравнивать унаследованные и явно заданные разрешения, если они по факту одинаковы. Или где-то проще написать кусок кода, который всей ветке удаляет разрешения и задаёт одинаково правильные для корня. Так ты потихоньку отфильтруешь незначимое.

Кроме того, если у тебя с разрешениями всё плохо, и ты даже не знаешь, как именно, то и защиты от плохо ведущих себя программ у тебя никакой. Смотри список литературы по второй ссылке. Это как машину после аварии монтажной пеной восстановить и уверять себя, что в погнутой раме ничего страшного нет.

Можешь подрубиться по сети к реестру в нормальной системе (в виртуалке, например) и сравнивать, по каким принципам там сделано, и что у тебя.
https://helgeklein.com/setacl-studio/

Ответы702053702089

Windows 7: New Opera 13 12 мар, 19:47 13 3702053

>>3701883
> то и защиты от плохо ведущих себя программ у тебя никакой
Сейчас основная проблема в том, что у какой-то службы не оказывается доступа к реестру и её нужно добавлять к разделу. На самом деле, там изначально было все унаследовано, только в некоторых разделах есть дополнительные права, так что единственное, что плохого может быть в поведении программ - это отсутствие доступа к какому-то разделу.

Windows 7: New Opera 14 12 мар, 21:07 14 3702089

>>3701883
> Если ты всё это выведешь в столбик, отсортировав по ключам, то получишь текстовые файлы на сотни мегабайт
Где-то на сотню, если нужны только имена разделов с правами, без параметров в них. Вот сейчас Software занимает около 100 мб, примерно столько же будет занимать экспорт в reg файл. Вот я брал реестр SYSTEM из чистой системы, подключал его через regedit и пытался импортировать reg файл из рабочей системы - большая часть восстановилась, но все равно куда-то не записалось из-за отсутствия прав. Software импортировался около 20 минут, с его импортом система запустилась, как и с импортом services в System, а вот в control из system не импортируется. На вид проблема примитивная просто нужна какая-то утилита для редактирования реестра с импортом-экспортом прав, но как-то не находится подобное.

Обновить тред
« /s/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Скачать тред только с превьюс превью и прикрепленными файлами

Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах.Подробнее

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion