Загадки NTFS - админ не имеет прав на локальную папку

Для любителей просто поболтать

Загадки NTFS - админ не имеет прав на локальную папку

Сообщение Сергей Дубров » 03 янв 2011, 14:33

Не стал заводить тему на вендовых ресурсах - заболтают, уже не раз убеждался, решил спросить здесь.

Предыстория: на одной из моих подопечных машин с WinXP Pro rus я запустил CureIt (одноразовую лечилку от Dr.Web). Венда (автономная, не в домене), залогиненный пользователь - обычный, без прав администратора. CureIt запускалась способом 'Run as...' от имени локального администратора. Лечилка (это архив) распаковалась во временную директорию, создав папку со случайным именем. Некоторое время поработала, после чего я решил её "убить". Убил, но папочка осталась. Удаляю - не могу, прав, говорит, не хватает. Ладно, перелогинился локальным админом (всё равно собирался это сделать) ("Workstation only"), иду в C:\TMP, пытаюсь удалить папку - фигвам, "Access denied". Админ я или не админ? Правая кнопка, закладка Security - и тут первая странность: права (галочки) для группы "Администраторы" стоят все, включая "Full control", но все они "засеренные", включая колонку "Deny". Я не могу ни добавить ни удалить пользователя/группу ("Add"/"Remove" неактивны), не могу изменить галочки, даже если выключу наследование:

Изображение

На второй картинке видно, что я не могу поменять наследование и не могу поменять владельца директории:

Изображение

Хотя на третьей картинке видно, что владелец-то - я, в смысле, локальный Администратор этой машины:

Изображение

Перерыл весь инет - не могу найти ответа. Все советы с cacls, icacls, xcacls и т.п. не помогли. Take ownership выдаёт "Access denied", хотя, по идее, я уже и так владелец этой папки. Что не так? Как убить этот фолдер? Я не могу его не только удалить, я не могу его переименовать, также как не могу ни удалить, ни переименовать, ни перезаписать любой файл в этом фолдере. Как это реализовано?

Провёл ещё эксперимент: опять запустил CureIt, снова создалась папка со случайным именем. Дал поработать, потом остановил лечилку нажатием кнопки "Стоп", потом выход - и папочка корректно самоликвидировалась. Т.е., CureIt использует какие-то вендовые механизмы файловой защиты на NTFS, которые я не могу преодолеть, даже будучи админом. КАК?

Боролся с этой машиной локально, сейчас она мне доступна только по сети - не могу забороть проблему. Есть идеи по механизму реализации?
Аватара пользователя
Сергей Дубров
 
Сообщения: 2096
Зарегистрирован: 05 июн 2002, 06:07
Откуда: Новосибирск, ин-т ядерной физики СО РАН

Re: Загадки NTFS - админ не имеет прав на локальную папку

Сообщение Музалёв Николай » 03 янв 2011, 16:29

Хм... Может быть из-за имени папки? "TMP" - уж очень тенденциозное, возможно, совпадающее с сет-переменными, имя.
armoracia rusticana (lat.), "блины" и "фиги" всех видов, а также смайлики - крайне не желательны !
Музалёв Николай
 
Сообщения: 3034
Зарегистрирован: 04 июн 2002, 19:58
Откуда: Беларусь. МИНСК.

Re: Загадки NTFS - админ не имеет прав на локальную папку

Сообщение Сергей Дубров » 03 янв 2011, 16:43

Музалёв Николай писал(а):Хм... Может быть из-за имени папки? "TMP" - уж очень тенденциозное, возможно, совпадающее с сет-переменными, имя.

Нет, дело точно не в этом - я спокойно создаю/удаляю/переименовываю любую папку в этой самой C:\TMP (на неё действительно указываеют переменнные TMP и TEMP). Не поддаётся только вот эта самая 'E3CFD266-4AF622E2-3750B68C-8A9D9CE' (с таким случайным именем её создала CureIt). Я что-то даже не могу сообразить, как вообще можно перекрыть кислород администратору, чтобы он даже не мог сделать take ownership или добавить/удалить опекуна для папки, будучи владельцем этой самой папки. Он даже переименовать её (и любой файл в ней) не может, и новый файл в ней создать невозможно (ReadOnly). Сначала думал, что где-то явный Deny выставлен - но нет ведь.

И, повторю, если завершать работу лечилки CureIt штатно, то она спокойно удаляет за собой директорию, куда распаковывается при запуске. Запускается она из-под админа (с его правами), а админ сам по себе ничего с этой папкой потом поделать не может. Чудеса...
Аватара пользователя
Сергей Дубров
 
Сообщения: 2096
Зарегистрирован: 05 июн 2002, 06:07
Откуда: Новосибирск, ин-т ядерной физики СО РАН

Re: Загадки NTFS - админ не имеет прав на локальную папку

Сообщение Андрей Добров » 04 янв 2011, 00:48

Сергей Дубров писал(а):
Музалёв Николай писал(а):Хм... Может быть из-за имени папки? "TMP" - уж очень тенденциозное, возможно, совпадающее с сет-переменными, имя.

Нет, дело точно не в этом - я спокойно создаю/удаляю/переименовываю любую папку в этой самой C:\TMP (на неё действительно указываеют переменнные TMP и TEMP). Не поддаётся только вот эта самая 'E3CFD266-4AF622E2-3750B68C-8A9D9CE' (с таким случайным именем её создала CureIt). Я что-то даже не могу сообразить, как вообще можно перекрыть кислород администратору, чтобы он даже не мог сделать take ownership или добавить/удалить опекуна для папки, будучи владельцем этой самой папки. Он даже переименовать её (и любой файл в ней) не может, и новый файл в ней создать невозможно (ReadOnly). Сначала думал, что где-то явный Deny выставлен - но нет ведь.

И, повторю, если завершать работу лечилки CureIt штатно, то она спокойно удаляет за собой директорию, куда распаковывается при запуске. Запускается она из-под админа (с его правами), а админ сам по себе ничего с этой папкой потом поделать не может. Чудеса...


Данная шутка имеется как в рабочем варианте DrWEB с версии 5.хх (производиться защита каталога, где располагается программа) так и для вируса Conflicker.B. Остановка сервиса DrWEB даёт возможность доступа к каталогу. Но и тут может быть засада - сервис нельзя остановить, прав нема. Разбирательства с Conflicker помогли из Symantec, предлагали прогу для лечения и указывали какой кусок реестра надо править.
Андрей Добров
 
Сообщения: 247
Зарегистрирован: 03 авг 2003, 21:27
Откуда: Железнодорожный,Регион 50

Re: Загадки NTFS - админ не имеет прав на локальную папку

Сообщение Иван Иванов » 04 янв 2011, 02:02

Проверил на 7ке и XP. Через диспетчер задач полностью выгрузить дрвэб не дает ни там ни там и в таком полурабочем состоянии с папкой сделать ничего нельзя. После нажатия резета папка нормально удаляется, права правятся..
Иван Иванов
 
Сообщения: 448
Зарегистрирован: 19 апр 2004, 14:02

Re: Загадки NTFS - админ не имеет прав на локальную папку

Сообщение Сергей Дубров » 04 янв 2011, 11:16

Иван Иванов писал(а):Проверил на 7ке и XP. Через диспетчер задач полностью выгрузить дрвэб не дает

Андрей Добров писал(а):Остановка сервиса DrWEB даёт возможность доступа к каталогу... После нажатия резета папка нормально удаляется, права правятся..

Я видел, как защищается Dr.Web и у меня была мысль, что одноразовый CureIt использует схожую технологию - вешает сервис, ограничивающий доступ к каталогу с распакованным сканером. Но:

1. Никаких подозрительных сервисов им.Dr.Web я сейчас в памяти этой машины не наблюдаю. Может, не по глазам?
2. На этой машине делался и простой перелогон и перезагрузка - каталог остался по-прежнему "неубиваемым".
3. Я запускал и корректно останавливал ещё один экземпляр CureIt-а - после этого папочка с распакованными файлами сканера спокойно удалялась.

После праздников попробую посмотреть unlocker-ом, кто блокирует доступ к файлам, сейчас машина далеко, локально к ней не подобраться.

UPD: Чудо, не иначе! Сейчас в тысячаписотый раз попробовал удалить "залипший" каталог. И он... удалился! С 31-го декабря "висел", глаз мозолил. Ещё вчера не поддавался, а сегодня бум - и удалился. Что произошло с машиной - не знаю. Хотя... по логу вроде бы час назад машинку перегружали. Тогда... всё равно непонятно - почему предыдущая перезагрузка не помогала?
Аватара пользователя
Сергей Дубров
 
Сообщения: 2096
Зарегистрирован: 05 июн 2002, 06:07
Откуда: Новосибирск, ин-т ядерной физики СО РАН

Re: Загадки NTFS - админ не имеет прав на локальную папку

Сообщение Иван Иванов » 04 янв 2011, 11:50

Может если перезагрузка корректная то процессик остается а если резетом как делал я то сервис в системе не регистрируется?
Иван Иванов
 
Сообщения: 448
Зарегистрирован: 19 апр 2004, 14:02

Re: Загадки NTFS - админ не имеет прав на локальную папку

Сообщение vGeneral » 05 янв 2011, 02:42

Очень похоже на работу драйвера.
Полагаю, что "висел" драйвер, который отслеживал доступ к папке, откуда он запускался и махинировал с acl.
В %systemroot%\system32\drivers можно было увидеть и скорее всего удалить драйвер.
Также можно было бы убить через sysinternals утилиту pendmoves. (http://technet.microsoft.com/ru-ru/sysi ... s/bb897556)
vGeneral
 
Сообщения: 18
Зарегистрирован: 27 мар 2007, 14:16


Вернуться в Флейм

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14

cron