Printable Version of Topic
Click here to view this topic in its original format
Forums > Глюкодром > Проблема с правами пользователя в XP


Posted by: valja on 03-02-2009, 20:33
Начальное состояние компа: два пользователя - Administrator и user (группы "Users", "Network configuration operators"), логин с "welcome screen", т.е. при логине отображаются оба пользвателя.

На днях юзер сообщил, что при логине отображается только Administrator, чтобы загрузиться как user, нужно дважды нажать Ctrl-Alt-Del и входить через обычное окно логина.

Проверил - так и есть, НО, в "Computer Management" видно, что ползователь user только в группе "Administrators" :w00t: После рестарта картина меняется - user не имеет вообще ни одной группы. Попытка добавить его в группу "Administrators" завершается ошибкой - "user is already in group "Administrators"" (реально администраторских прав нет). В другие группы добавляется/удаляется без проблем. Винт в порядке (просканирован), вирусов и заразы не наблюдается.

Налицо несоответствие записей в реестре - у пользователя имеется запись о членстве в группе "Administrators", не позволяющая реально добавить его в эту группу, но не дающая и реальных прав администратора. Вопрос - где эта запись может быть?

Posted by: FiL on 03-02-2009, 20:53
че-то конкретно побилось в реестре. Я при таких заморочках не глядя переставляю винду. Никогда не знаешь где еще что вылезет.

Posted by: mts on 03-02-2009, 21:09
Вроде когда-то было восстановление реестра? Или это было очень давно?

Posted by: valja on 03-02-2009, 21:44
Тут вопрос не в перестановке винды или восстановлении реестра. У нас этих компов мног и есть образ, а из образа видна (со всем дополнительным софтом и настройками) ставится за 30мин. Вопрос тут в том, где "собака порылась" и как. Есть подозрения, что это не произошло "само собой" (железо в порядке, вирусья не наблюдается).

Posted by: FiL on 03-02-2009, 22:47
то что юзера в групп нет, а потом он там есть - это уже слишком глюк, чтоб его как-то искать. Мне так кажется.

Posted by: valja on 04-02-2009, 00:28
QUOTE (FiL @ 03-02-2009, 21:47):
то что юзера в групп нет, а потом он там есть - это уже слишком глюк, чтоб его как-то искать. Мне так кажется.
Приходится искать. Слишком похоже на неудачную попытку юзера получить права адмиеа.

Posted by: Sandro on 04-02-2009, 04:25
Валя, а не может это быть пока не учтенный, только что выпущенный в свет, вирус?
То есть, антивирус или malware его не определяют?

Posted by: Vlady304 on 04-02-2009, 06:48
QUOTE (Sandro2 @ 03-02-2009, 20:25):
Валя, а не может это быть пока не учтенный, только что выпущенный в свет, вирус?
То есть, антивирус или malware его не определяют?
А такое бывает? Все вирусы пишет Касперский :crazy:

Posted by: elina817 on 04-02-2009, 06:57
QUOTE (valja @ 04-02-2009, 00:28):
QUOTE (FiL @ 03-02-2009, 21:47):
то что юзера в групп нет, а потом он там есть - это уже слишком глюк, чтоб его как-то искать. Мне так кажется.
Приходится искать. Слишком похоже на неудачную попытку юзера получить права адмиеа.
Скорее похоже на неудачную попытку другого админа что-то изменить в правах допуска этого юзера :)

Posted by: valja on 04-02-2009, 08:08
QUOTE (elina817 @ 04-02-2009, 05:57):
QUOTE (valja @ 04-02-2009, 00:28):
QUOTE (FiL @ 03-02-2009, 21:47):
то что юзера в групп нет, а потом он там есть - это уже слишком глюк, чтоб его как-то искать. Мне так кажется.
Приходится искать. Слишком похоже на неудачную попытку юзера получить права адмиеа.
Скорее похоже на неудачную попытку другого админа что-то изменить в правах допуска этого юзера :)
Тогда это какой-то подпольный адимн и не из нашей конторы. :nlo: . Комп (лаптоп) был все время у пользователя и у меня (да и у других людей с правами админа) не было никаких причин менять права пользователя.

Posted by: FiL on 04-02-2009, 09:35
QUOTE (elina817 @ 03-02-2009, 22:57):
QUOTE (valja @ 04-02-2009, 00:28):
QUOTE (FiL @ 03-02-2009, 21:47):
то что юзера в групп нет, а потом он там есть - это уже слишком глюк, чтоб его как-то искать. Мне так кажется.
Приходится искать. Слишком похоже на неудачную попытку юзера получить права адмиеа.
Скорее похоже на неудачную попытку другого админа что-то изменить в правах допуска этого юзера :)
а вот не скажи. Попытка редактирования реестра из-под какого-нить ERD или им подобных таки может вылиться в подобную фигню. А админ работает из работающей системы, она не даст себя корраптить. Ну, пока живая :)

Posted by: valja on 04-02-2009, 11:34
QUOTE (FiL @ 04-02-2009, 08:35):
А админ работает из работающей системы, она не даст себя корраптить. Ну, пока живая :)
Во всем остальном вполне живая, никаких других глюков не наблюдается.

Posted by: horton on 04-02-2009, 12:06
QUOTE (valja):
Вопрос - где эта запись может быть?
HKLM\SAM. :)
Вот только дело может быть гораздо хуже, чем реестр...
Возможно ведь ещё что где-то ошибочная запись и в Local Policy "завелась".

Создай на пробу ещё одного "свежего" пользователя. И попробуй поназначать те же права, которые пробовал. Если назначаются и работают - думаю, что дело не в полисях. Хотя...
После этого скопируй профиль от проблемного пользователя. Если проблемы появились - скорее всего (as FiL) кто-то копался в реестре.

QUOTE (valja):
Винт в порядке (просканирован), вирусов и заразы не наблюдается.
Сорри, что с наивными вопросами :) но он "просканирован" нормально? Через Live-CD и с применением нормальных тулзов типа Revealer (http://technet.microsoft.com/en-us/sysinternals/bb897445.aspx?

Кстати, проблемы с отсутствием пользователя на LogonScreen лечатся (иногда) через:
CODE
HKLM\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon\SpecialAccounts\UserList

Склоняюсь к совету FiL: переставлять и ещё раз переставлять. :)
Причин может быть миллион, и неизвестно кто и чем там покопался...

PS : Извини за "поучение", но это УЖОС называть пользователя "user"... :actu:

:hi:

Posted by: valja on 04-02-2009, 13:25
QUOTE (horton @ 04-02-2009, 11:06):
QUOTE (valja):
Вопрос - где эта запись может быть?
HKLM\SAM. :)
Спасибо, глянем.
QUOTE:
Сорри, что с наивными вопросами :) но он "просканирован" нормально? Через Live-CD и с применением нормальных тулзов типа Revealer (http://technet.microsoft.com/en-us/sysinternals/bb897445.aspx?
Под сканированием имелось в виду физическое здоровье диска. А для поиска вирусьев винт подцеплялся к другому компу с кучей софта.
QUOTE:
PS : Извини за "поучение", но это УЖОС называть пользователя "user"... :actu:

:hi:
Имя юзера условное :)

Posted by: horton on 04-02-2009, 13:47
QUOTE (valja):
QUOTE (horton):
HKLM\SAM.
Спасибо, глянем.
По крайней мере, если помнишь, известная детская "ломалка" основана именно на тамошних ключиках "F" и "V".

QUOTE:
Профиль копировать не пробовал, но попробую.
Скорее всего, тоже всё в порядке после этого?

QUOTE:
Для поиска вирусьев винт подцеплялся к другому компу
Имя юзера условное
Тогда два раза - извини. :)

Posted by: valja on 04-02-2009, 14:37
QUOTE (horton):
HKLM\SAM.
Там пусто (вернее, пустая Default запись и еще HKLM\SAM\SAM тоже с пустой Default записью).

QUOTE (horton):
QUOTE:
Профиль копировать не пробовал, но попробую.
Скорее всего, тоже всё в порядке после этого?
Да, со вторым юзером все ОК и после копирования профиля.

Posted by: horton on 04-02-2009, 17:14
QUOTE:
со вторым юзером все ОК и после копирования профиля.
Логично. SAM при копировании (ессно) не трогается.
Видимо, действительно, кто-то пытался "стать" админом вручную...

Posted by: valja on 04-02-2009, 19:30
QUOTE (horton @ 04-02-2009, 16:14):
QUOTE:
QUOTE:
со вторым юзером все ОК и после копирования профиля.
Логично. SAM при копировании (ессно) не трогается.
Видимо, действительно, кто-то пытался "стать" админом вручную...
Такое подозрение возникло сразу. Возможно, временно подставляли другой SAM файл, но что то не срослось.

Posted by: valja on 04-02-2009, 19:46
QUOTE (Sandro2 @ 04-02-2009, 03:25):
Валя, а не может это быть пока не учтенный, только что выпущенный в свет, вирус?
То есть, антивирус или malware его не определяют?
В принципе возможно, но маловероятно. Если даже так, то странный вирус - его единственное (пока) проявление - права юзера. И тогда тем более копать надо. :)

Posted by: Sandro on 05-02-2009, 01:45
Ну не вирус, это я оговорился, а троян специально заточенный под такую задачу. Тем более если он написан узконаправлено, специально для вашей конторы, то ни один антивирусник или антималвера его не определит. Или просто, "недоделанный" троян. :) Хотя, согласен - маловероятно.

Posted by: valja on 05-02-2009, 12:32
QUOTE (horton @ 04-02-2009, 11:06):
HKLM\SAM. :)
:hi:

В HKLM\SAM\SAM\Domains\Builtin\Aliases в ключе админской группы наблюдается только RID админа, пользователя не видно. Что в общем то и логично - его в группе админов не видно и реальных админских прав у него нет. НО, в конце записи восемь лишних байтов нулей (?). Нормально при добавлении пользователя в админ группу туда его RID и пишется, но при удалении из группы стирается вся дополнительна область - никаких лишних нулей не остается.

В общем, временно подкину туда SAM от нормально работающего клона. Если проблема исчезнет, то собака там и зарыта (т.е. в SAM). Если нет, придется копать в других местах. В любом случае будет полезно посмотреть через RegMon обращения к реестру.

Posted by: valja on 05-02-2009, 20:28
Другой SAM так и не упел подкинуть. Попутно произошел диалектический скачок - после очередного запуска компа юзер проявился в группе админов. Только теперь его удалить из админов не получается - "The specified account name is not a member of the local group". Теперь сижу, разглядываю логи RegMon.

Sandro2, народ молился бы на такой врус, превращяющий юзера в непотопляемого админа. :)

Posted by: Sandro on 05-02-2009, 22:21
Валя, я же говорю - "не вирус", а специальная программулька... если ты говоришь что есть подозрение что юзер пытался взять права админа. Ведь есть же такие программы.

Хотя да, ежели он непотопляем, тогда странно. А в реале нельзя этого юзера выловить и спросить (с пристрастием)?

Posted by: valja on 05-02-2009, 23:00
QUOTE (Sandro2 @ 05-02-2009, 21:21):
Валя, я же говорю - "не вирус", а специальная программулька... если ты говоришь что есть подозрение что юзер пытался взять права админа. Ведь есть же такие программы.
Конечно есть, их даже искать особо не надо.
QUOTE:
Хотя да, ежели он непотопляем, тогда странно. А в реале нельзя этого юзера выловить и спросить (с пристрастием)?
Так его и ловить не надо, он сам комп принес. И говорит, что вот, запустил машину, а тут такое... Для вопросов с пристрастием голых подзрений мало.

Posted by: horton on 05-02-2009, 23:43
QUOTE (valja):
Попутно произошел диалектический скачок - после очередного запуска компа юзер проявился в группе админов. Только теперь его удалить из админов не получается - "The specified account name is not a member of the local group".
valja, такое уже было... В каком-то фильме. По-моему восстание машин называлось. Блокируем все обращения к SAM и изменения допускаются только от имени SYSTEM. По предварительной заявке. Вписанной только в заранее известные понумерованные блоки эмулятора FAT...

А если серьёзно - похоже, что ты уже начал "рикошеты" ловить от некорректного изменения файла.
И не известно что и чем вызвано и что первично...
Надеюсь, хоть ключик hivelist ссылается на правильный файл, а не непойми на что. :)

QUOTE (valja):
Теперь сижу, разглядываю логи RegMon.
Показывает? А как ты его под SYSTEM запустил?
Через service_any?

Posted by: valja on 06-02-2009, 10:47
QUOTE (horton @ 05-02-2009, 22:43):
Надеюсь, хоть ключик hivelist ссылается на правильный файл, а не непойми на что. :)
Там их два, оба в порядке (идентичны ключам на нормальной системе). Вообще говоря, весьма удобно держать рядом аналогичный нормальный комп (с того же имиджа) и сравнивать ключи. :)

QUOTE (valja):
Теперь сижу, разглядываю логи RegMon.
Показывает? А как ты его под SYSTEM запустил?
Через service_any?
Похоже, он сам так запускается (скачал свежую версию с майкрософта (http://technet.microsoft.com/en-us/sysinternals/bb896652.aspx). По крайней мере в логах все видно. Вот кусочек лога при попытке удалить "непотопляемого" админа:
CODE
228 16:20:13 lsass.exe:1076 QueryValue HKLM\SAM\SAM\C SUCCESS 07 00 01 00 00 00 00 00 ...
229 16:20:13 lsass.exe:1076 QueryValue HKLM\SAM\SAM\Domains\Account\V SUCCESS 00 00 00 00 E0 00 00 00 ...
230 16:20:13 lsass.exe:1076 QueryValue HKLM\SAM\SAM\Domains\Builtin\V SUCCESS 00 00 00 00 98 00 00 00 ...
231 16:20:13 lsass.exe:1076 OpenKey HKLM\SAM\SAM\DOMAINS\Account\Groups\Names\user NOT FOUND
232 16:20:13 lsass.exe:1076 OpenKey HKLM\SAM\SAM\DOMAINS\Account\Aliases\Names\user NOT FOUND
233 16:20:13 lsass.exe:1076 OpenKey HKLM\SAM\SAM\DOMAINS\Account\Users\Names\user SUCCESS Access: 0x20019
234 16:20:13 lsass.exe:1076 QueryValue HKLM\SAM\SAM\DOMAINS\Account\Users\Names\user\(Default) SUCCESS UNKNOWN TYPE: 1005
235 16:20:13 lsass.exe:1076 CloseKey HKLM\SAM\SAM\DOMAINS\Account\Users\Names\user SUCCESS
236 16:20:13 lsass.exe:1076 OpenKey HKLM\SAM\SAM\DOMAINS\Account\Users\000003ED SUCCESS Access: 0x2001F
237 16:20:13 lsass.exe:1076 QueryValue HKLM\SAM\SAM\DOMAINS\Account\Users\000003ED\V SUCCESS 00 00 00 00 D4 00 00 00 ...
238 16:20:13 lsass.exe:1076 QueryValue HKLM\SAM\SAM\DOMAINS\Account\Users\000003ED\F SUCCESS 02 00 01 00 00 00 00 00 ...
239 16:20:13 lsass.exe:1076 QueryValue HKLM\SAM\SAM\DOMAINS\Account\Users\000003ED\V SUCCESS 00 00 00 00 D4 00 00 00 ...
240 16:20:13 lsass.exe:1076 QueryValue HKLM\SAM\SAM\DOMAINS\Account\Users\000003ED\V SUCCESS 00 00 00 00 D4 00 00 00 ...
241 16:20:13 lsass.exe:1076 CloseKey HKLM\SAM\SAM\DOMAINS\Account\Users\000003ED SUCCESS
А вообще под SYSTEM можно запускать через PsExec (http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx - например
psexec -s -i regedit.exe

Posted by: valja on 06-02-2009, 13:37
Круг поисков сужается. Подставил нормальный SAM, все работает. Т.е. копать нужно в SAM - сравнивать SAMы (и соответствующие логи).

Posted by: valja on 07-02-2009, 14:45
Коротко кртина следующая:

Есть изменеия в ключе HKLM\SAM\SAM\Domains\F

Изменен ключ HKLM\SAM\SAM\Domains\Account\Aliases\000003EC\C (это группа дебагеров) - в конце дописан администратор (RID 1f4). Computer Management показывает наличие администратора в этой группе, удалить из нее не удается.

К ключу [HKLMACHINE\SAM\SAM\Domains\Account\Aliases\Members\S-1-5-21-..... добавлен подключ \000001F4]

У ключа [HKLM\SAM\SAM\Domains\Account\Users\000001F4] (1f4 это RID администратора) изменены оба F и V.

У ключа [HKLM\SAM\SAM\Domains\Account\Users\000003ED] (3ED это RID юзера) изменен F.

У ключа [HKLM\SAM\SAM\Domains\Builtin] изменен F.

Изменен [HKLM\SAM\SAM\Domains\Builtin\Aliases\00000220] (это описание группы администраторов). Число членов группы увеличено с 1 до 2, увеличена длина записи с 0x1c на 0x24. НО, в конце присутствуют только данные администратора (1f4), дополненные в конце восемью нулевыми байтами, данных про второго пользователя нет.

У ключа [HKLM\SAM\SAM\Domains\Builtin\Aliases\Members\S-1-5-21-...\000003ED] в начале добавлено hex:20,02,00,00 - т.е. принадлежность к группе администраторов 0220 (нормально там стоит hex:21,02,00,00 - принадлежность к группе users 0221)

Эти две записи конфликтуют - у юзера прописано, что он в группе админов, а в описании группы администраторов есть данные только администратора.

В общем, похоже, что была попытка добавить юзера в группу администраторов, но что то не срослось при записи на диск и в результате получился некорректный SAM.

Posted by: FiL on 07-02-2009, 16:51
спасибо за детективную историю.

Posted by: valja on 07-02-2009, 17:56
Ну, история еще не совсем закончена. Тут есть еще один неясный момент - самопроизвольное изменение состояния юзера. При первом запуске компа юзер был только в группе админов, после выключения и следующего включения вообще без групп (но в админы добавить не удавалось). Через несколько дней админская группа "проявилась" - неудаляемая. К сожалению я только тогда сообразил записать SAM и сравнить его с нормальным. Но в любом случае ненормальность SAM налицо.

Posted by: Set on 07-02-2009, 20:32
На руткиты не проверял?

Posted by: valja on 07-02-2009, 21:06
QUOTE (Set @ 07-02-2009, 19:32):
На руткиты не проверял?
Проверял (винт был подключен к другому компу с кучей софта), ничего не нашел.

Posted by: valja on 10-02-2009, 22:29
Ситуация заметно прояснилась. Похоже, что удалось найти софт, которым пытались получить права администратора - на контрольном лаптопе удалось полностью воспроизвести данную ситуацию. Уже в самой программе отмечно, что данная функция экспериментальная и после ее применения могут быть глюки с группами.

После первого старта появляется только логин юзера (что есть нормально - если есть другие администраторы, штатного администратора не показывают), юзер только в группе админов (предыдущие группы сбрасываются). После рестарта картина меняется - появляется только логин администратора. У юзера нет видимых групп, но в администраторыы добавить нельзя - сообщается, что юзер уже в группе администраторов. Именно в этом состоянии комп принесли ко мне. Далее начинается самое интересное. При последующих запусках комп запускается в одно из двух описанных выше состояний - появляется либо логин администратора (тогда юзер не имеет группы и ему нельзя присвоить права администратора) либо логин юзера (тогда юзер в группе администраторов и его нельзя из нее удалить). То есть, один к одному повтор ситуации с проблемным компьютером. И не только в поведении компа, но и с содержимым SAM. Вывод однозначен.

Осталась последняя невыясненная деталь, но это скорее для общего образования. На основе чего комп при стартапе решает, какая из двух ситуаций реализуется? Этот выбор делается до логина, так как соответсвенно появляется либо логин только юзера либо логин только админа. Какой либо закономерности я (пока) не заметил. Я попробовал сравнить SAM обоих ситуаций - разница только в ключе [HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\RID\F
Выглядит несколько непонятно, но с другой стороны, проблема именно в SAM (при подстановке начального SAM все работает нормально).

Posted by: FiL on 11-02-2009, 00:06
А что за софтинка-то?

Posted by: valja on 11-02-2009, 08:02
QUOTE (FiL @ 10-02-2009, 23:06):
А что за софтинка-то?
Линуксовый бут-диск с утилитами (тут (http://home.eunet.no/%7Epnordahl/ntpasswd/).

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)