среда, 30 апреля 2014 г.

Win8, SLCHook и AVG. Или о вреде пиратского софта.

Прочитав заголовок этой заметки "о вреде пиратского софта" многие наверное подумают, что сейчас я буду нудно и скучно описывать шаблонными фразами описывать преимущества лицензионного ПО над пиратским. И будут неправы. Совсем нет. Я расскажу про один случай в котором пришлось искать выход из нестандартной ситуации ... про применение самого главного инструмента IT'шника, а именно мозга )) и способности ориентироваться в нештатных ситуациях, а также способности находить решение нерешаемых и недиагностируемых проблем. Присказка закончена. Теперь собственно сказка.

Банальный звонок клиента. Windows 8 - не могу зайти в систему. Серия стандартных вопросов, в стиле у вас стационарный компьютер или ноутбук? Как именно вы не можете зайти в систему? Что происходит при включении ПК, что отображается на экране. Из объяснений клиента удалось понять что у него ноутбук с Windows 8, ОС загружается, но после выбора пользователя на welcome screen'е происходит "Выход из системы", рабочий стол не отображается и пользователь опять возвращается к экрану выбора пользователя. На носу праздники (хотя у нас они конечно рабочие, т.е., мы не относимся к тем людям, которые работают "от звонка до звонка" и поскорее спешат уйти домой, мы решаем клиентские проблемы и работаем иногда по 24 часа в сутки, без шуток) ... но тем неменее, мы решили помочь этому клиенту.

По приезду оказалось что у пользователя MacBook Pro. Установлено две ОС, собственно MacOS и Windows 8 Professional. Выбор ОС для загрузки осуществляется удержанием Alt'а на клавиатуре Mac'а после его включения. Выбираем Windows раздел, ОС действительно загружается, но после выбора пользователя тут же происходит "Выход из системы". Ок. Первое что можно попробовать - это восстановление ОС с оригинального MSDN образа Windows 8 ... и тут первый камень преткновения, если бы это был PC, то скорее всего все бы сработало. Но ввиду того что на MAC'е другая схема разделов и т.п., стандартное средство восстановления системы не могло найти установленной копии Windows. Т.е. оно запустилось ... но при выборе восстановления из точки сохранению услужливо предложило выбрать правильную копию Windows (в стиле Microsoft конечно же, предлагают выбрать, но ни одного диалогового окна в котором можно указать раздел с установленной ОС - естественно нет, т.е. выбрать ничего нельзя ;)) и перезагрузиться. Как вы понимаете, после столь заманчивого предложения доступен только reboot ... т.е. выбрать ничего нельзя. Ладно, если гора не идет к Магомету ... то что делает Магомет? Правильно, использует LiveCD ...

MAC, любимый Apple ... стандартный GRUB4DOS на нашем LiveCD не запускается )) SysLinux - тоже ... у нас с собой несколько различных LiveCD для подобных целей. Т.е. ни один загрузочный диск не работает. Думаем ... есть еще UEFI загрузка. Да, у нас есть и такой LiveCD ... UEFI Boot + WinPE на базе Win 7 x64 и Win 8 x 64 ... семерка не стартует, зато WinPE на базе Win8 x64 грузится на ура ... Хорошо, загрузились, что мы имеем? Почему может осуществляться выход из профиля без появления рабочего стола? Повреждение ФС, повреждение профиля, повреждение реестра? Проверяем все последовательно ... chkdsk c: /f ... раздел BootCamp проверяется, ошибки исправляются ... ситуация та же - при входе тут же происходит выход. Восстановление реестра из RegBack и создание нештатными средствами нового пользователя в системе - тоже ни к чему не приводят. Если под двумя пользователями поведение системы одинаково, т.е. происходит выход в welcome screen без появления рабочего стола - значит проблема явно не в профиле конкретного пользователя. Казалось бы тупик ... но думаем дальше.

Берем и устанавливаем Windows Locksmith ... т.е. чтобы при нажатии Win + U вместо специальных возможностей можно было запустить любое приложение. Чем мы и воспользовались и запустили cmd.exe c правами системы. Что это нам дает? Да ровным счетом ничего, зато мы можем запустить любое (ну или практически любое приложение, в том числе и средства для диагностики) на УЖЕ работающей системе, а не из под LiveCD. control.exe не запускается с правами системы, зато запускается mmc и regedit ... к сожалению из оснастки консоли управления прочитать журнал событий было нельзя, т.к. mmc повисала и крашилась. Ну да ладно ... Анализ реестра тоже ничего не дал ... И тут мы запускаем диспетчер задач. Который падает уже с конкретной ошибкой, отсутствует библиотека SLCHook.dll ... Большинству эникейщиков это ничего не скажет. Однако мы знаем что такое SLC и SPP в Windows (кто не знает может погуглить) ... подсистема защиты если вкратце, одной из функций которой является выполнение активации ОС (!) ... О! Вот оно ... а файла SLCHook.dll в оригинальной поставке ОС нет ... в этом можно убедиться открыв дистрибутивный install.wim (кстати версию ОС, x86 или x64 можно определить из консоли запустив systeminfo ... если в типе системы будет написано x64-based PC значит система - x64) ... но мораль не в этом. Мораль в том что файла SLCHook.dll в системе нет, и в дистрибутиве его нет, а система считает что он должен быть ;) Откуда? Еше немного времени и мы находим следы активатора Windows ... )) Который заменяет кучу системных файлов, в том числе и прописывает в System32 этот хук ... т.е. это часть кривого пиратского активатора (!) ... Странно, но ведь пусть он и кривой, но система уже была активирована им и работала. Как же так? А файла нет ... Хм ... запускаем AVG (с правами системы ;) и смотрим журнал ... так и есть ... он узрел в SLCHook.dll HackTool и удалил его ))) После чего система не может инициализировать подсистему защиты, и ничего не работает. Восстанавливаем файл SLCHook.dll, благо на ПК он сохранился в других местах, добавляем его в доверенные для AVG 2013 ... ребут ... вуаля ... рабочий стол сверкает "сиськами" ... )) Т.е. картинкой на рабочем столе. Работоспособность ОС восстановлена.

Мораль: не используйте кривых активаторов подменяющих системные файлы. Чуть что (обновление ОС или т.п. вещи) может слететь не только активация, но и вообще может нарушиться работоспособность ОС ... к тому же - нет никаких гарантий, что установленный у вас антивирус завтра не занесет файлы активатора в разряд вредоносных и не будет автоматически удалять или помещать в карантин, как произошло в данном случае. В результате вы просто можете остаться у "разбитого корыта" ... т.е. с ОС, которая не загружается. И разбираться в этом вы будете очень долго ... в конце-концов переустановив ее и потеряв время на переустановку всего необходимого вам ПО (говорить про то, что это ПО может быть весьма специфично, бухгалтерское ПО, клиент-банки и т.п. и его переустановка может быть чревата - я пожалуй не буду. те, кто менял железо или пытался перенести на другое железо тот же Сбербанк-Клиент знают какой это гемор ... Т.е. вроде бы ничего сложного, позвонил в ТП, распечатал документы, отвез в банк, дождался повторной активации на новом оборудовании ... но в наших реалиях это может растягиваться до двух недель ... а платежи ждать не будут ) ... Вот такие вот пирожки с котятами ...

Теперь, вы знаете что AVG 2013 удаляет SLCHook.dll от активатора Windows 8 и ОС после этого не грузится ... может быть чуть позже я найду этот активатор и обязательно допишу здесь его название, чтобы все знали чем пользоваться не стоит ... На этом всё! Хороших вам выходных! ;)

p.s. Активатор, использованный в описанном случае называется Windows 8 Activator K.J_121026 - не используйте его!

4 комментария :

  1. Уважаемый так как ты фаил восстановил??????

    ОтветитьУдалить
    Ответы
    1. В посте сказано как "восстанавливаем файл SLCHook.dll, благо на ПК он сохранился в других местах", т.е. на данном ПК был сохранен "дистрибутив" активатора. Достаточно было загрузиться с LiveCD, восстановить файл, а потом удалить этот активатор целиком.

      Удалить
  2. Восстановил так: - При надписи добро пожаловать наживал ctrl+alt+del, и выбирал блокировку. т.к. винда вылетает, потом захожу обратно на рабочий стол, потом снова блокировка. Т.К. снова вылетает... на третий раз открываю рабочий стол - ПУСК- ОТКРЫВАЮ ПАПКУ с АКТИВАТОРОМ ВИНДЫ))) и ставлю! перезагружается и все огонь! не нужно восстановления!

    ОтветитьУдалить
  3. Спасибо за статью, помогли найти решение проблемы.

    ОтветитьУдалить