Нужно решить задачу в рамках HiAsm по изменению, удалению неких веток реестра с отсутствующими разрешениями (нет владельца, нет групп и пользователей). Желательно без сторонних утилит типа SetACL, SubinACL и т.д.
Этот топик читают: Гость
Ответов: 34
Рейтинг: 0
|
|||
карма: 1 |
|
Ответов: 1120
Рейтинг: 80
|
|||
карма: 2 |
|
Ответов: 34
Рейтинг: 0
|
|||
tom-it, понятно, что эти утилиты справляются, без них можно обойтись? Может IC...
|
|||
карма: 1 |
|
Ответов: 1120
Рейтинг: 80
|
|||
DSAnd писал(а): эти утилиты справляютсяНе совсем утилиты. PowerShell этакой продвинутый аналог cmd. Команды можно выполнять с помощью Winexec. От Gunta примеров на форуме не мало. |
|||
карма: 2 |
|
Ответов: 34
Рейтинг: 0
|
|||
tom-it, к сожалению powershell ни как не среагировал при Get-Acl на ветку реестра без владельца
|
|||
карма: 1 |
|
Ответов: 1120
Рейтинг: 80
|
|||
Я с powershell очень вежливо, никогда єтой приблудой серьезно не пользовался. Gunta с ним на "ТЫ". Может что подскажет.
DSAnd писал(а): с отсутствующими разрешениями Опишите больше подробностей, каким ключом/веткой необходимо манипулировать, кто создал их и т.д. Беглым взглядом пробежался, все ветки имеют владельца, права доступа. Не проверять же весь реестр в поисках того, чего может и не быть. |
|||
карма: 2 |
|
Ответов: 34
Рейтинг: 0
|
|||
Ключ создаёт приложение HKEY_LOCAL_MACHINE\SECURITY\Цель. При этом у "Цели" начисто отсутствуют необходимые разрешения, в том числе не определён владелец (автор данной программы, как-то читает/изменяет параметры этой ветки). Задача простая - удалить "цель". Через редактор реестра, в рукопашную,
|
|||
карма: 1 |
|
Ответов: 1120
Рейтинг: 80
|
|||
А почему категорически против внешних утилит, а именно на хиасм?
DSAnd писал(а): вновь и вновь создаёт данный ключА если запретить доступ к ветке "Цель"? Первое, что пришло в голову, периодически проверять наличие ключа, с помощью RegIni установить права доступа. А далее reg-ом удалять. Правда Regini принимает файл с параметрами, но временный файл думаю не проблема. |
|||
карма: 2 |
|
Ответов: 34
Рейтинг: 0
|
|||
Я не против сторонних утилит, на данный момент всё работает с помощью SetACL+HiAsm, просто на мой взгляд тема интересная с разрешениями, хотелось красивого решения без "костылей", да, может кому-то из форумчан пригодится. Regini не справился... увы...
|
|||
карма: 1 |
|
Ответов: 1120
Рейтинг: 80
|
|||
DSAnd писал(а): Regini не справился... увы...Случайно права на раздел HKEY_LOCAL_MACHINE\SECURITY\ЦЕЛЬ не устанавливали file.txt HKEY_LOCAL_MACHINE\SECURITY [1 5 17] regini file.txt reg delete HKEY_LOCAL_MACHINE\SECURITY\ЦЕЛЬ /f |
|||
карма: 2 |
|
Ответов: 34
Рейтинг: 0
|
|||
tom-it, где-то читал, что раздел SECURITY защищён от regini и к тому же эта утилита не умеет работать без явного владельца.
REGINI: CreateKey (HKEY_LOCAL_MACHINE\SECURITY\Цель) relative to handle (000000000) failed - 5 REGINI: Failed to load from file '1.txt' (5) П.С.: tom-it писал(а): Случайно права на раздел HKEY_LOCAL_MACHINE\SECURITY\ЦЕЛЬ не устанавливалиРедактировалось 2 раз(а), последний 2025-04-11 16:07:07 |
|||
карма: 1 |
|
Ответов: 1120
Рейтинг: 80
|
|||
Ну что сказать, мне не удалось получить раздел без владельца.
С другой стороны если SetACL может установить права доступа, значит есть winapi функции которые это приложение использует. Тоесть можно из инлайкода тоже использовать эти функции. Но проверить не могу, поскольку не на чем. Нужно воссоздать аналогичные условия, чтобы протестировать. --- Добавлено в 2025-04-11 16:35:03 К примеру можно получить свойства без прав и владельца. Но не потому что их нет, а потому что текущая учетная запись не имеет прав их прочитать. Тоесть владелец есть, но не отображается текущему пользователю, у которого нет доступа к этому ключу. Редактировалось 1 раз(а), последний 2025-04-11 16:35:03 |
|||
карма: 2 |
|
Ответов: 34
Рейтинг: 0
|
|||
Странное дело, не видеть владельца, но при этом иметь возможность сменить его, под администратором. А способов автоматизировать этот процесс не так уж и много, на первый взгляд. Да, я уже упоминал возможность IC, но к сожалению, моё программирование, на данном этапе, ограничивается стандартными компонентами HiAsm. Без крутых парней, с этого форума, не обойтись
![]() |
|||
карма: 1 |
|
Ответов: 1120
Рейтинг: 80
|
|||
DSAnd писал(а): Странное дело, не видеть владельца, но при этом иметь возможность сменить его, под администратором. ![]() На компе жыли-были дед и баба, дед концы отдал. Что теперь неприкосновенный ярлык с рабочего стола удалить никак? Пускай, как картина, в память об откинувшемся деде будет ![]() Создали отдельного пользователя для жены, с женой развелись, пользователя удалили, груз в тонны файлов остался. Все, равелся с женой, разводись и с виндой.(прям поговорка получилась ![]() DSAnd писал(а): упоминал возможность ICСделано уже, только протестировать не на чем. Да и тема довольно обширная чего только стоит https://learn.microsoft.com/ru-ru/windows/win32/secauthz/sid-strings https://learn.microsoft.com/ru-ru/windows/win32/secauthz/ace-strings задолбешся буковки разбирать, а не погрузившись фиг поймешь. |
|||
карма: 2 |
|
Ответов: 34
Рейтинг: 0
|
|||
Картинка в точности описывает условие данной задачи.
|
|||
карма: 1 |
|