Компьютерный портал
| Расширенный
детальное описание пакета и выполняемых им действий
  • Страница 1 из 1
  • 1
Модератор форума: Barmenchik, Drinko, V-Efremov, sander23, MedMeks  
Чем занимается пакет ABSD - Abnormal Shutdown Diagnosis
sysprg
Отредактировано sysprg - 01.01.2017, 09:52
Аватар sysprg

Почетный

Сообщений: 4673

Мне прислали зип архив пакета ABSD, извлеченного из нелегально распространяемой 14997, с тем, чтобы я разобрался в том, что же этот пакет делает. Начну с начала, с имени пакета. Первые две буквы сразу заставили вспомнить с далеких семидесятых хорошо знакомое слово ABEND == Abnormal Termination, Аварийное Завершение. Правлю - соврал, Abnormal Termination это все же ABORT, которые случаются у ПРОГРАММ. А у систем случается Abnormal End == ABEND. Этот термин всегда применялся при внезапных падениях системы и всем системщикам он знаком. Последние две букы, SD, уже гадаю, но предполагаю, что Service Data: служебные данные. Правлю в новом году: пожалуй все же SD - System Data. По СУТИ в трансляции "ABSD", я совершенно прав, поскольку этот пакет, написанный одним из ведущих PShell программистов в команде MS Scripting Team, именно тем и занимается, что собирает большой объем детальной информации о случившейся внезапной перезагрузке или падении системы.

Пакет начинает работу с того, что создает имя лог-директории, в которой далее накапливает кучу отчетов из разных источников. Для того, чтобы на MS-сервере, на который отправляется зип-архив накопленных отчетов, получился УНИКАЛЬНЫЙ идентификатор, имя директории создается равным уникальному идентификатору Вашего компа, равного его серийнику. Вы легко можете его получить, выполнив на PShell консоли команду
Код
(gwmi win32_computersystemproduct).IdentifyingNumber

Ничего страшного, как только Вы стали инсайдером или просто установили десятку с МС-эккаунт, этот уникальный идентификатор стал известен МС и именно к нему привязывается цифровой сертификат.

Далее скрипт подгружает несколько маленьких скриптов, поставляемых вместе с ним в пакете и начинает сбор данных. Данные эти включают извлечение кучи веток из Registry, из системных логов, а также с помощью утилит. О замечательных свойствах одной из них, powercfg.exe, я впервые узнал читая ABSD.ps1. Большинсво из команд сбора данных Вы совершенно безопасно и С ПОЛЬЗОЙ для себя, выполнить самостоятельно на PShell-консоли и тут же увидеть на консоли ответ. К примеру команда
Код
@(Get-WinEvent -ProviderName microsoft-windows-kernel-Power -ErrorAction Ignore)

- на моем ноутбуке вывалила список событий с 8-го декабря по 31 декабря, день выполнения команды. У меня список не очень длиннный и не содержит ничего пугающего.

Очень много информации собирается путем запуска утилит. К примеру с помощью
Код
dism.exe /online /get-drivers

- извлекается список всех установленных драйверов.

Особенно порадовали меня великолепно оформленные в виде HTML-файлов отчеты утилиты POWERCFG.EXE: приведу команды, выполняемые из скрипта ABSD.ps1, поскольку эти команды пригодятся всем владельцам ноутбуков:
Код
powercfg.exe /batteryreport /duration 14 /output batteryreport.html

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

Еще пара команд:
Код
powercfg.exe /sleepstudy /duration 14 /output sleepstudy.html

и
Код
powercfg.exe /systemsleepdiagnostics /output system-sleep-diagnostics.html

- создадут еще два очень красивеньких HTML-отчета.

Но самый впечатляющий по объему и контенту отчет создается командой
Код
powercfg.exe /srumutil /output srumutil.csv

Ну ладно бы он содержал данные о системных процессах, так ведь он включает информацию о всех запущенным мною программах... Вот тут уже репу почешь, стоит ли такой отчет на МС-сервер отправлять.

Но есть и очень симпатичные и ПОЛЕЗНЫЕ МНОГИМ чисто PShell команды извлечения информации из системных логов:
Код
@(get-winevent -ProviderName Chkdsk -ErrorAction Ignore)

- отчет о событиях утилиты ChkDsk, проверяющей наличие ошибок в файловой системе.
Код
@(get-winevent -ProviderName Microsoft-Windows-Ntfs -ErrorAction Ignore | ? id -in (100,55))

- отчет о сбоях ф файловой системе,
Код
@(Get-WinEvent -ProviderName Microsoft-Windows-WER-SystemErrorReporting -ErrorAction Ignore)
@(get-winevent -ProviderName Microsoft-Windows-Startuprepair -ErrorAction Ignore)
@(Get-WinEvent -ProviderName microsoft-windows-kernel-Power -ErrorAction Ignore)

Смело выполняйте эти команды на консоли PShell: в нормально работающей системе ответы этих команд будут очень коротенькими.

Естественно, что и утилита BCDEDIT:
Код
bcdedit.exe /enum all

- привлекается для создания полного лога о всех элементах BCD.

Я упомянул не все используемые утилиты и PShell-команды, но Вы сами легко найдете их в тексте ..\Windows\System32\absd\ABSD.ps1. Некоторые из используемых утилит у меня просто отсутствуют в силу возраста моего ноутбука и аналогично некоторые из команд применимы лишь к современным компам, осначенным UEFI BIOS.

По завершении сбора данных, создается зип-архив всех отчетов. Кстати, о включении в PShell пакета для работы с Zip-архивами я узнал совсем недавно из блогов разработчиков и еще сам ни разу не использовал. И потому меня порадовал реальный пример использования этого пакета. После создания архива, как Вы правильно понимаете, этот архив отправляется на MS-сервер, а вся временно созданная директория со всеми отчетами и их зип-архивом, удаляются. Но как пишет автор кода с непроизносимым именем Vijaybalaji (vijaybal@microsoft.com) в первых строках, достаточно употребить при запуске absd.ps1 параметр -LeaveLogDir и директория останется целехонькой и Вы сможете ознакомиться со всем, что о Вас думает Microsoft.
netWanderer
Отредактировано netWanderer - 31.12.2016, 21:31
Аватар netWanderer

Администратор

Сообщений: 4890

sysprg, Позвольте мне вас поздравить с первыми изысканиями. И пожелать Вам успехов в этом Новом Году!
Drinko
Аватар Drinko

DG Win&Soft
Администратор

Сообщений: 11628

sysprg, эх.. ну невозможно же такую простыню на одном дыхании читать - необходимо делить на абзацы. И код в соответствующий тег обрамлять: [code][/code] - кнопка в форме ответа.
-------
Во имя ALTа, CTRLа и святого DELETE
Enter
-------
База знаний по Windows 8.1 | Качаем Драйвера
sysprg
Отредактировано sysprg - 01.01.2017, 09:49
Аватар sysprg

Автор темы
Почетный

Сообщений: 4673

Меня бы убили родственники, если бы я в самые напряженные часы перед встречей Нового года еще и правкой текста занимался. Сегодня постараюсь поправить и ДОБАВИТЬ, так как многие детали ОПУСТИЛ в этом описании.
netWanderer
Аватар netWanderer

Администратор

Сообщений: 4890

Цитата sysprg ()
Сегодня постараюсь поправить и ДОБАВИТЬ

sysprg, ждем, интересно все-таки, что вы там еще накопали.
sysprg
Отредактировано sysprg - 01.01.2017, 15:05
Аватар sysprg

Автор темы
Почетный

Сообщений: 4673

Цитата netWanderer ()
ждем, интересно все-таки, что вы там еще накопали.


Накопал и что-то из накопанного мне не понравилось, вот линк на полный отчет в виде Word документа, https://1drv.ms/w/s!Alc6r9K6meXyhetgIdkrygaYqweVEQ

P.S: полные дампы памяти считаюся документами повышенной конфиденциальности и специалисты по анализу дампов обычно дают подписку о неразглашении, не передаче в чужие руки и так далее.
netWanderer
Отредактировано netWanderer - 01.01.2017, 15:17
Аватар netWanderer

Администратор

Сообщений: 4890

sysprg,
Олег, очень интересно. Похоже майки полностью имеют инфу по каждому инсайдеру (в смысле его железа и юзанья им различных прог)...
Я благодарен вам за ваши изыскания.
sysprg
Аватар sysprg

Автор темы
Почетный

Сообщений: 4673

Цитата netWanderer ()
Похоже майки полностью имеют инфу по каждому инсайдеру (в смысле его железа и юзанья им различными прогами)...
Ну это в принципе стало известно сразу, еще в 2014, когда вступая в инсайдеры надо было согласиться на "обнюхивание" Вашего компа и системы и отсылку в MS нужных ей отчетов. Но я уверен, что они бы ЗАХЛЕБНУЛИСЬ в этой информации, если бы читали все подряд, включая дампы. Кроме того, НАДЕЮСЬ на то, что общепринятые правила ограничения круга лиц, имеющих доступ к полным дампам, соблюдаются и сами дамп-файлы уничтожаются немедленно по завершении анализа.
netWanderer
Аватар netWanderer

Администратор

Сообщений: 4890

Цитата sysprg ()
они бы ЗАХЛЕБНУЛИСЬ в этой информации, если бы читали все подряд, включая дампы.

Вы знаете - как сказать. Если они имеют полную информацию - то могут проявить интерес к определенному человеку. То что у них пишется массово - это одно. Но то что они - имеют эту информацию - это другое. Я не исключаю и тот вариант - что они получают эту информацию и на обычных инсайдерских сборках, единственное, что команды PowerShell исполняются на невидимом/в фоне для обычного пользователя уровне.
sysprg
Отредактировано sysprg - 01.01.2017, 16:01
Аватар sysprg

Автор темы
Почетный

Сообщений: 4673

Цитата netWanderer ()
команды PowerShell исполняются на невидимом/в фоне для обычного пользователя уровне.
Я очень обрадовался именно тому, что ВПЕРВЫЕ увидел сборщик информации, реализованный в виде PShell-скрипта, а не EXE-файла, поскольку скрипт можно прочитать и руками исполнить покомандно на своем компе, увидев, что именно собирается. ВОЗМОЖНО, что и раньше подобные скрипты исполнялись, НО ИЗ ВРЕМЕННО СОЗДАННЫХ файлов во время Setup и всегда удалялись к моменту завершения Setup. К сожалению при обновлении 14971->14986 стали удаляться даже ВСЕ файлы из $Windows.~BT\Sources\Panther, среди которых были два очень полезных текстовых лога, setuperr.log и setupact.log.
ptizz
Отредактировано ptizz - 01.01.2017, 20:44
Аватар ptizz

Почетный

Сообщений: 3049

К тому, что накопал Уважаемый sysprg, немного информации от winaero.com (eng).
Они обозвали данную функцию 14997: Abnormal Shutdown Diagnosis (ABSD).

От себя (столкнулся с этим где-то с год назад, причем не я один):
подобные сценарии создают отчеты *html в директории C:\Windows\System32.
При попытке открыть подобный отчет возникают ошибки, типа "файл не найден, путь не найден, невозможно отобразить страницу...". На разных сборках поведение было разное, иногда помогало просто "открыть с помощью Edge" (сам пользуюсь Chrome).
Ну, я сильно не заморачивался с поисками решения вопроса, поэтому, у кого подобный *html файл напрямую из директории C:\Windows\System32 не открывается, то скопируйте его в любую директорию, например, на рабочий стол, и открывайте простым кликом ЛКМ.
sysprg
Отредактировано sysprg - 02.01.2017, 00:05
Аватар sysprg

Автор темы
Почетный

Сообщений: 4673

Цитата ptizz ()
немного информации от
Большое спасибо за ссылку, прочитал. По большому счету ДОПОЛНЯЕТ то, о чем я написал РЕАЛЬНЫМИ испытаниями в среде 14997. У меня такой системы нет и поэтому мне это недоступно. Ну и трансляцию ABSD в ABnormal Shutdown Diagnosys безусловно принимаю.
olegVK
Отредактировано olegVK - 12.01.2017, 21:56
Аватар olegVK

Почетный

Сообщений: 1390

На моем ПК (14986_32_pro_ru) извлекаются неуникальные идентификаторы:
sysprg
Аватар sysprg

Автор темы
Почетный

Сообщений: 4673

Цитата olegVK ()
To Be Filled By O.E.M
Я видел такие тексты, которыми особенно грешат производители RAM, но вот чтобы ВСЮДУ в системе были зашиты такие тексты, включая BIOS, вижу ПЕРВЫЙ РАЗ. Повезло Вам :). Но у Вас ведь десятки компов доступны, неужели все они такие же "самостроки'?
  • Страница 1 из 1
  • 1
Поиск:
В связи с введением в действие Постановления Правительства Российской Федерации от 14.11.2023 № 1905 т.н. "о запрете популяризации VPN" с 1 марта 2024 года - любое обсуждение способов обхода блокировок и VPN на портале запрещено!
Windows 11
Windows 10
Windows 8.1
Популярное
Опрос
Нравятся ли вам изменения произошедшие в Windows 10?
Всего ответов: 8506

Статистика Форума
Последние обновления тем
Популярные темы
Новые пользователи
14.11.2024|22:05
14.11.2024|17:30
14.11.2024|03:18
13.11.2024|21:16
13.11.2024|18:15
13.11.2024|14:36
13.11.2024|13:27
13.11.2024|09:18
12.11.2024|16:50
12.11.2024|10:40