Pull to refresh

Forensic resistance 1 или Last-икActivityView. Данные об активности пользователя в Windows 10 и как их удалить

Reading time22 min
Views38K
Доброго времени прочтения, уважаемые читатели Хабра.

Побуждением к изысканиям, опубликованным в данной статье, стало набирающее все большую и большую популярность слово «форензика» и желание разобраться в вопросе — какие данные о цифровой жизнедеятельности рядового пользователя собирает ОС Windows 10, где их хранит и как сделать кнопку — «Удалить все» (Я бы взял частями, но мне нужно сразу (с) Остап Бендер).

А возникновению данного побуждения способствовало то, что, как оказалось, интерес к вопросу «как удалить историю», выдаваемую эпичной LastActivityView, до сих пор будоражит умы



при этом, зачастую, на форумах вопрос остается без ответа. Масла в огонь подливает то, что ванильный CCleaner в случае с LastActivityView не помогает.

Те, кому в основном интересна практическая сторона вопроса, насчет кнопки «Удалить все», могут сразу перейти к концу статьи — там предлагаю варианты решения.

А в статье — хочу поделиться результатами этих изысканий с теми, кого это заинтересует. Речь пойдет о тех данных, которые хранятся ОС Windows 10 локально и к которым можно просто и быстро получить доступ с использованием «бесплатных и общедоступных средств форензики», в том числе и утилит NirSoft. Хотя речь пойдет не о них (почему — смотреть ниже).


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

Целевая операционная система


В данной статье рассматривается ОС Windows 10. Другие выпуски Windows, естественно, так же грешны сбором и хранением данных, но у них ключи реестра, папки, службы и т.п. отличаются.

Содержание


Причем тут форензика
Почему речь не про NirSoft
Какие данные хранятся Windows
Зачем Windows собирает данные и чем чревато их удаление
Где эти данные хранятся?
Так как, в конце-концов, их затереть-то?
Источники

Причем тут форензика


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

Почему речь не про NirSoft


Во «вступлении» я не случайно дал ссылку на LastActivityView на Софт Портале. Там и впрямь только краткое описание функционала данной утилиты, зато на русском. А на офф. страничке своих утилит Нир Софер пишет многабукфф да еще и по-англицки шпрехает. Но, зато, почти для каждой его утилиты там есть описание, откуда она берет данные. Для LastActivityView в самом низу, под заголовком «How to delete the information displayed by LastActivityView».

Надо признать, что я и сам такой же Зоркий Глаз — когда-то, как и он, только через неделю заметил, что «у сарая одной стены нет». Но, правда, сия неделя была несколько раньше, чем LastActivityView стали пугать пользователей или, что вероятнее, когда они добрались до Софт Портала и сами научились ее пугаться.

Хотя утилиты NirSoft, наряду с SysInternals, ИМХО образец профессионализма для программиста и крайне удобны для администрирования. Да и для проведения расследований их и впрямь зачастую рекомендуют. ПруфПример: Хакер №229. Форензика и он далеко не единственный.

Хотя, думаю, подобное направление их использования само собой приходило в голову тем, кто так или иначе имел с ними дело.
А тем, кто не имел, но заинтересовался
Дабы не скачивать их в розницу — можно скачать оптом с бонусом в виде лаунчера NirSoft Launcher (при скачивании обратите внимание, что zip-файл запаролен, пароль есть на этой страничке).

Какие данные хранятся Windows


Хранится все, что связанно с доступом к файлам и папкам и их местоположением, использованием программ (в т.ч. и protable), подключением устройств хранения информации (в том числе и шифрованных файловых контейнеров).
Да, это не во всех случаях, что-то сохраняется только при определенных событиях, а что-то может быть отключено, но лучше, все же, исходить из того, что все и всегда. Что подключали, какие папки-файлы открывали, какие программы использовали.
И еще из того, что с журналами Windows — непредсказуемо, что туда будет записано. В связи хотя бы с тем, что это сильно зависит и от конкретных настроек конкретной ОС и каждой ее подсистемы, и журналы эти доступны для записи в них сообщений сторонними программами.

А причем тут «доступ» и «местоположение»? Сильно утрированный пример: номер банковской карты и ее pin-код так и останутся в файле «D:\МояСуперСекретнаяПапка\CardPin.docx», никуда в Windows не запишутся, а вот факт доступа и «говорящие» имена папки и файла, то, что был использован, например, MS Office 2007 portable, а так же дата-время как минимум последнего (иногда и каждого) доступа\запуска — зафиксируется Windows, причем размазано тонким слоем по всей системе.

Про некоторые другие данные — можете почитать ниже по тексту, под заголовком «Прочие источники утечек информации известные мне, но не попадающие под тематику статьи»

Стало быть, коль подключали, запускали, открывали что-то такое, что не хотелось бы, чтоб стало достоянием широкой общественности — не худо бы потом и следы замести.

Совершенно справедливый комментарий от Hanabishi — «Зато тема реального логгирования не затронута вообще никак… не упоминается ничего относящегося к телеметрии и Win10 в частности» — прошу прощения, толком не описал, что речь в статье идет о приватных данных, хранящихся локально, на ПК пользователей. Вопросы слежки, как и вопросы анонимности в сети, все-таки другая, отдельная тема.

Зачем Windows собирает данные и чем чревато их удаление


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

Совершенно справедливый комментарий от Hanabishi — «зачем чистить логи служб, если можно просто отключить эти самые службы?» Не упомянул я об этом. Можно. Как штатными средствами, так и танцами с бубном. Но это опять же означает — раз и навсегда лишиться удобняшек, которые наше все.

Что мне будет от Винды за масштабное выпиливание приватных данных, в том числе, с помощью предложенного тут решения?

Эпик фейлов случиться не должно, особенно если внимательно познакомиться с описанием каждого правила «очистки» и, если что, его отключить. Но и новой шапки, с новой буркой, тоже ждать не приходится.

  • Если предполагаются какие-то «ремонтно-восстановительные» работы, то сотрется важная для этого информация. Но это касается, в основном, стирания журналов Windows
  • Если отображение каких-то папок настраивали под себя, придется настраивать по новой
  • Если задавали каким-либо программам режим совместимости или запуск от имени администратора, задавать придется заново
  • Ввиду затирания данных, необходимых для ускорения доступа к данным, их отображения и запуска программ, следующий, после затирания, доступ\отображение\запуск, немного замедлится
  • Ввиду затирания данных об открытых ранее файлах, искать их придется заново, воспользоваться пунктом меню «ранее открытые файлы» в программах не получится
  • Если выбрать удаление кеша обновлений Windows, деинсталировать потом обновления штатным образом не удастся


Где эти данные хранятся?


После заявленных во вступлении «изысканий» и сверки свежеизысканного с окружающей действительностью у меня сложилось впечатление, что кроме IBM-286 уже успели еще что-то изобрести основные «заповедные места» не поменялись еще со времен XP, разве что местоположение и формат некоторых изменились. И кое-что добавилось, но, вроде бы, немного. Посему поэтому уверен, что Америк не открою, тем более специалистам, но может быть кого-то заинтересует эта подборка, в связи с подъемом интереса к вопросам анонимности и безопасности.

Сразу хочу предупредить — это далеко не все, только самое основное и информативное (в смысле описания не все, стирается в предложенном решении гораздо больше) и не развернуто и «галопом по Eвропам». Для тех, кому данная тема действительно интересна, в конце этой главы — известные мне интересные материалы для самостоятельного изучения + ряд конкретных «заповедных мест» приведены в решениях для их зачистики.

Основные, известные мне, источники утечек информации об активности пользователя

Реестр Windows
  • ShellBags — Bags, BagMRU. Там в том числе хранится и информация о доступе к папкам, включая дату-время, для сохранения и восстановления их с настройками пользователя (размер окна проводника, выбор отображения «список\эскизы» и т.п.).
  • OpenSavePidlMRU. История диалогов «открыть, сохранить».
  • MUICache. История запущенных ранее программ для списка кнопки «Пуск».
  • Uninstall. Хранится информация для деинсталляции инсталлированных программ. Спасибо КЭП — не за что, всегда рад помочь. Удалять ее, понятное дело, нельзя (спасибо еще раз). Содержит и дату-время установки программы.
  • MountedDevices. История смонтированных (в том числе и криптованных) дисков.

Служба Background Activity Moderator (BAM). Очередная нанотехнология от Microsoft — запиленная в Windows 10 начиная, если не ошибаюсь, с версии 1709 для каких-то своих внутренних нужд.

Данная служба ведет логи активности, правда, хранятся эти логи до перезагрузки компьютера (что подтвердилось проверкой), но все же не комильфо.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\bam\UserSettings\<SID пользователя>

Особо умилили результаты такого эксперимента: запускаем любимый многими TrueCrypt (protable), монтируем файл-контейнер, запускаем из него LastActivityView.

Видим в реестре запись:



То есть, теоретически, после запуска таких портабельных утилит, надо бы или перезагружаться или затирать.

Пытаться отключить службу BAM — не стоит, словите синий экран.

История «монтирования» дисков MountPoints2 (тоже содержит записи типа «TrueCryptVolumeK»)

HKEY_USERS\<SID пользователя>\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2

Параметр AppCompatCache ключа реестра AppCompatCache, тоже крайне интересен (хранит данные в бинарном виде).



Ключ реестра DiagnosedApplications. Почему-то нигде на форензик-форумах мне потом не встретилось упоминание (возможно, просто плохо искал) ключа реестра:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\RADAR\HeapLeakDetection\DiagnosedApplications




Служебная информация Windows для отладки утечек памяти в программах.

Файловая система
  • Папка Prefetch каталога Windows. Ну, тут лучше Вики вряд ли скажешь. Там же есть еще и базы данных другого оптимизатора — SuperFetch (файлы, типа AgAppLaunch.db). Формат их, как я понял, народу пока не ясен, мне тоже не особо, но при просмотре в hex-редакторе пути к приложениям просматриваются.
  • Файл

    C:\Windows\inf\setupapi.dev.log

    Инофрмация о подключениях устройств, сетевых интерфейсов и не только.
  • Папки проводника со списком переходов (aka Jump list). Данные хранятся по пути типа:

    с:\Users\User\AppData\Roaming\Microsoft\Windows\Recent
  • Папка (см. реестр — AppCompatCache)

    C:\Windows\appcompat\Programs
  • Папка

    C:\Windows\Panther

    Тут хранится информация для отката, если вы обновляли версию Windows


Журналы Windows: ну, тут без комментариев… даже совершенно справедливых.

Есть еще несколько мест в реестре и на диске, но они гораздо менее информативны и не очень интересны (см. в «решениях», ниже). И есть еще море других мест, навроде файлов "*.log" разных служб и даже не всегда Microsoft. Правда, обнадеживает то, что CCleaner на стероидах (см. ниже) затирается почти все.

Прочие источники утечек информации известные мне, но не попадающие под тематику статьи по тем или иным причинам. И тут тоже надо отметить, что почти все затирается CCleaner-ом или имеются другие свободно распространяемые утилиты.

Перечень таковых
1. Все, что связанно с сетью и Интернетом (это не входит в данную статью о «локально» хранимых историях). Но с этим справляются CCleaner и Privazer. Тут же надо отмеить, что у CCleaner-а на стероидах, из решений в конце статьи, способности к этому повышаются в разы.

2. Все, что связанно с историей подключением USB-девайсов. Для ее просмотра и удаления можно использовать, например, Usboblivion.

3. Все, что связанно с файловой системой. «Безвозвратное» удаление файлов и очистка свободного места (то же «безвозвратное удаление», но уже ранее удаленных файлов, оставшихся в дебрях файловой системы). В общем вопросы, связанны с тем, что удаленные файлы можно восстановить. Заодно надо упомянуть и про кэши эскизов изображений Windows, которые имеют свойство хранить эскизы даже уже удаленных изображений. CCleaner и Privazer это тоже умеют все зачищать.

4. Все, что связанно с точками восстановления («теневыми копиями»), в которых сохраняется файлы, в том числе и системный реестр с незатертыми данными. Подключиться, просмотреть и восстановить из них файлы\папки (не делая откаты системы) можно и с помощью утилит NirSoft (так же с их помощь можно и прочитать информацию из файлов реестра оттуда), но, удобнее, на мой взгляд — ShadowExplorer. Удалить точки восстановления можно с помощью CCleaner. А перед созданием точек — можно запускать «зачистку», чтоб выпилить ненужную информацию до ее сохранения.

5. Вот эта ветка реестра.

HKEY_USERS\<SID пользователя>\Software

Сюда пишут свои данные программы, в том числе portable. И они тут и остаются. И если хочется скрыть использование какой-то программы, то неплохо бы проверить эту ветку и, если что, данные удалить.

6. Все, что связанно с установкой нелицензионного ПО и что извлекается на свет Божий полицейской программой Defacto. Есть и «свободный аналог» Lpro (хотя, есть у меня не очень обоснованное предположение, что движок Defacto на ее основе или на ее идее был сделан). Но она, в отличии от Defacto, определяет только, что ПО платное, а не «нарушение авторских и смежных прав».

Выход, ИМХО — не использовать подобное. Кроме всем известного Софт Портала по этой теме могу еще предложить (если что, это не реклама, отношения к данным сайтам я не имею):
GiveAwayOfTheDay. Каждый день раздают одну лицензионную программу (можно подписаться на рассылку).
Бесплатные лицензии на сайте COMSS. Бесплатное (по разным акциям) лицензионное ПО и подписки. Как пример — там есть сейчас акция бесплатного VPN на год. И удобный редактор реестра из Reg Organizer, который я использовал для изысканий. И даже Acronis True Image и криптованное облачное хранилище на 2Тб и еще много чего. «Сколько?» — «Халява, сэр» (с). (можно подписаться на рассылку; не бородатых анекдотов, в смысле, а этого сайта).


Материалы по данной тематике, кроме «источников» в конце статьи

Список материалов



Так как, в конце-концов, их затереть-то?


Предлагаю на рассмотрение и критику следующий вариант: Прокачать CCleaner (что, думаю, и удобнее пользователям и правовернее, ибо исключает изобретение очередного велосипеда) и
использовать bat-файл для затирания журналов windows.

Плюс, ниже — собственное решение, в виде bat-файла, но его, все-таки, использовать даже по-моему, не целесообразно (тем более он затирает только самое основное и в основном для windows 10). Разве что -предлагаю почитать комментарии к коду.

Прокачать CCleaner + добавить ему свои правила + bat-файл для стирания журналов Windows


Для начала, надо скачивать и запустить CCEnhancer, выполнить «обновление» (по инструкции на страничке). Только непременно выбрать и нажать на данный пункт меню (предварительно закрыв CCleaner, если он запустился):



Иначе в файле winapp2.ini окажется 100500 правил, крайне доставляющих своей актуальностью для широких масс, таких, как правила очистки для эмулятора «Заики Спектрума» (может тут кто даже вспомнит такой комп), но при этом сильно тормозящих CCleaner.

Затем надо перейти в ту папку, где установлен CCleaner. Найти там файл winapp2.ini, поздравить его с облегчением и открыть (например, в nodepad++).

Дописать в конце файла следующее:
[All Prefetch]
Section=Windows10
Default=False
FileKey1=%WinDir%\Prefetch|*.pf;*.db;*.fx;*.7db;*.ini;*.ebd;*.bin|RECURSE

[AppCompatFlags Layer]
Section=Windows10
Default=False
RegKey1=HKCU\.DEFAULT\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers

[Explorer RunMRU]
Section=Windows10
Default=True
RegKey1=HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU

[OpenSaveFilesView]
Section=Windows10
Default=True
RegKey1=HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\FirstFolder
RegKey2=HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\FirstFolder
RegKey3=HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedPidlMRULegacy
RegKey4=HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidlMRU

[UserAssist]
Section=Windows10
Default=True
RegKey1=HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist

[DiagnosedApplications]
Section=Windows10
Default=False
RegKey1=HKLM\SOFTWARE\Microsoft\RADAR\HeapLeakDetection\DiagnosedApplications

[BAM]
Section=Windows10
Default=True
RegKey1=HKLM\SYSTEM\CurrentControlSet\Services\bam\UserSettings\.DEFAULT
RegKey2=HKLM\SYSTEM\ControlSet001\Services\bam\UserSettings\.DEFAULT

[MountedDevices]
Section=Windows10
Default=True
RegKey1=HKU\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2

[Panther]
Section=Windows10
Default=True
FileKey1=%WinDir%\Panther|*.*|RECURSE

[Minidump]
Section=Windows10
Default=True
FileKey1=%WinDir%\Minidump|*.*


Сохранить файл.

Созадние bat-файла для очистки всех журналов Windows:
1. Нужно создать на компьютере текстовый файл, например с помощью nodepad++, в кодировке OEM 866 (DOS) (иначе, вместо русских букв, могут быть кракозябры). Скопировать в него текст и сохранить. Переименовать файл, заменив расширение .txt на .bat

2. Запускать его необходимо от имени администратора (иначе выдаст ошибку «Необходимо запустить этот скрипт от имени администратора»).


REM Last-ик ActivityView. Очистка журналов Windows

@ECHO OFF

REM Надеюсь, сохранить файл в кодировке DOS-866 не забыли
CHCP 866

COLOR A

CLS

REM ----------------------------------------------------------------------------------------
REM Проверка на наличие прав администратора 
FOR /F "tokens=1,2*" %%V IN ('bcdedit') DO SET adminTest=%%V
	IF (%adminTest%)==(Отказано) GOTO errNoAdmin
	IF (%adminTest%)==(Access) GOTO errNoAdmin
REM ----------------------------------------------------------------------------------------

ECHO Нажимте 1 для очистки журналов или ENTER для выхода
ECHO.
SET /p doset="Выберите действие: " 
ECHO.
REM ----------------------------------------------------------------------------------------

REM ----------------------------------------------------------------------------------------
REM Проверка выбора пользователя. Если не 1 - выход
IF %doset% NEQ 1 EXIT

REM ------------------------------------------------------------------------------------------
REM Очистка всех журналов Windows. Следует проводить вначале, до запуска CCleaner, чтоб в логах не осталось вызовов wevtutil

ECHO.
ECHO ОЧИСТКА ВСЕХ ЖУРНАЛОВ Windows
FOR /F "tokens=*" %%G in ('wevtutil.exe el') DO (call :do_clear "%%G")
ECHO.
ECHO Выполнено
ECHO.

REM ------------------------------------------------------------------------------------------

PAUSE
EXIT

:do_clear
ECHO Очистка журнала %1
wevtutil.exe cl %1
GOTO :eof

:errNoAdmin
COLOR 4
ECHO Необходимо запустить этот скрипт от имени администратора
ECHO.
PAUSE



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

Можно дополнительно почитать развернутое и понятное описание всех основных правил CCleaner-а и последствий их применения, тут (рус.)

Запустить bat-файл. Дождаться, пока закончит работу.

Открыть ССleaner, перейти в нем в «Очистку».

Выбрать следующие правила
На вкладке «Windows»



На вкладке «Приложения»



Если используете FireFox и Thunderbird, предлагаю использовать следующие правила:



При этом необходимо учесть, что для FireFox — сотрутся сохраненные пароли к сайтам (придется вводить заново, при входе на сайт). Но можно снять галочку с правила «сохраненные пароли».

Выполнить очистку.

2 вариант — Использовать bat-файл


Инструкция
Это альфа-версия и, теоретически, может что-то таки сломать, так что используем на свой страх и риск. Первый раз, перед запуском, сделав точку восстановления системы.

1. Необходимо создать на компьютере текстовый файл, например с помощью nodepad++, в кодировке OEM 866 (DOS) (иначе, вместо русских букв, могут быть кракозябры). Скопировать в него текст и сохранить, переименовав файл, заменив расширение .txt на .bat

2. Внимательно ознакомится с комментариями к его коду (т.к. там описаны и отрицательные моменты, связанные с затиранием)

3. Запустить его от имени администратора (иначе выдаст ошибку «Необходимо запустить этот скрипт от имени администратора»).

4. Если каких-то ключей реестра или папок нет, скрипт должен это действие пропустить.



(это не ошибки, это не найдено и пропущено)

Текст bat-файла
Прощу прощения, подсветки batch-файлов не нашел.


REM Last-ик ActivityView. Версия 1 Alpha

@ECHO OFF

REM Надеюсь, сохранить файл в кодировке DOS-866 не забыли
CHCP 866

REM Зеленый на черном - интригующе... опять же, хакеры и все такое
COLOR A

CLS


REM ----------------------------------------------------------------------------------------
REM Проверка на наличие прав администратора 
FOR /F "tokens=1,2*" %%V IN ('bcdedit') DO SET adminTest=%%V
	IF (%adminTest%)==(Отказано) GOTO errNoAdmin
	IF (%adminTest%)==(Access) GOTO errNoAdmin
REM ----------------------------------------------------------------------------------------


REM !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

REM При выборе пункта 1 ничего особо плохого произойти, для пользователя, не должно.
REM Но будут удалены сохраненные данные о размерах окон папок в проводнике и настройки их вида (список\эскизы и т.д.)

REM При выборе п.п. 2-3
REM 1. При первой перезагрузке чуть-чуть замедлится запуск Windows т.е. первый, после нее, запуск некоторых программ (в т.ч. в автозагрузке)
REM    из-за удаления файлов оптимизации запуска Prefetch и SuperFetch
REM 2. Будет удалена информация о запуске программ в режиме совместимости или о запуске от имени администратора
REM    но это - если пользователь такое назначал для чего-то и восстанавливается назначением этого заново
REM    или найдите и уберите из скрипта удаление данных из ...AppCompatFlags\Layers
REM 3. Будет удалена накопленная до этого момента информация о производительности и ошибках
REM    но, если в текущий момент с компом все нормально и его не надо "анализировать и чинить", то тоже ничего страшного

REM !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

REM ----------------------------------------------------------------------------------------
REM Меню выбора пользователя

ECHO.
ECHO Не обязательно!
ECHO но желательно закрыть все программы и данный файл, если он открыт в текстовом редакторе, а после завершения - перезагрузиться
ECHO.
ECHO.

REM Часть информации останется, и будет таки отображаться в утилитах NirSoft
ECHO 1 - Очистка основных логов в реестре

REM Удалить все, что удалось найти. 
REM (почти вся информация из утилит NirSoft пропадет)
REM При этом:
REM 1. Немного замедлится следующая загрузка ПК и первый, после нее, запуск некоторых программ (из-за удаления Perfect и SuperFetch)
REM 2. Удалятся сведения о ранее возникших ошибках (Minidump)
REM 3. В меню "Пуск" очистится список ранее запущенных программ
REM 4. Будет очищен список тех программ, для которых пользователь задал "запускать в режиме совместимости или от имени администратора". 
REM	  (надо будет задавать для них совместимость заново)
ECHO 2 - Очистка всех логов в реестре, файлов Perfect и Minidump

REM См. п.2 + сотрутся ранее записанные данные журналов Windows
ECHO 3 - Очистка всех логов, файлов Perfect и журналов Windows

ECHO или нажмите ENTER для выхода
ECHO.
SET /p doset="Выберите действие: " 
ECHO.
REM ----------------------------------------------------------------------------------------


REM ----------------------------------------------------------------------------------------
REM Проверка выбора пользователя. Если не 1 и не 2 и не 3 - выход
IF %doset% NEQ 1 (
	IF %doset% NEQ 2 (
		IF %doset% NEQ 3 EXIT
	)
)
REM ----------------------------------------------------------------------------------------


REM ------------------------------------------------------------------------------------------
REM Очистка всех журналов Windows, если пользователь выбрал в меню 3. Проводим вначале, чтоб в логах не осталось вызовов wevtutil
REM утилиты NirSoft - LastActivityView
IF %doset% EQU 3 (
	ECHO.
	ECHO ОЧИСТКА ВСЕХ ЖУРНАЛОВ Windows
	FOR /F "tokens=*" %%G in ('wevtutil.exe el') DO (call :do_clear "%%G")
	ECHO.
	ECHO Выполнено
	ECHO.
)
REM ------------------------------------------------------------------------------------------


REM ------------------------------------------------------------------------------------------
REM ShellBag. История запуска приложений и доступа к папкам, связанная с "оболочкой"
REM утилиты NirSoft - LastActivityView, ExecutedProgramsList, ShellBagsView
ECHO.
ECHO ОЧИСТКА ИСТОРИИ ShellBag - реестр
REG DELETE "HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\MuiCache" /va /f
REG DELETE "HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\BagMRU" /f
REG DELETE "HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\Bags" /f
REG DELETE "HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\BagMRU" /f
REG DELETE "HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Bags" /f
ECHO.
REM ------------------------------------------------------------------------------------------


REM ------------------------------------------------------------------------------------------
REM Explorer. История запуска приложений связанная с "Проводником"
ECHO.
ECHO ОЧИСТКА ИСТОРИИ Explorer - реестр
REG DELETE "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU" /va /f
ECHO.
REM ------------------------------------------------------------------------------------------


REM ------------------------------------------------------------------------------------------
REM ComDlg32. История диалогов "открыть\сохранить" и "последних мест посещений"
REM утилиты NirSoft - LastActivityView
ECHO.
ECHO ОЧИСТКА ИСТОРИИ OpenSave и LastVisited - реестр
REG DELETE "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\FirstFolder" /va /f
REG DELETE "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedPidlMRU" /va /f
REG DELETE "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedPidlMRULegacy" /va /f
REM (утилиты NirSoft - OpenSaveFilesView)
REG DELETE "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidlMRU" /f
REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidlMRU"
ECHO.
REM ------------------------------------------------------------------------------------------


REM ------------------------------------------------------------------------------------------
REM если пользователь выбрал в меню не 1 т.е. 2 или 3
IF %doset% NEQ 1 (	
	REM UserAssist. Очистка списока запущенных программ в меню "Пуск"
	REM утилиты NirSoft - UserAssistView
	ECHO.	
	ECHO ОЧИСТКА ИСТОРИИ UserAssist - реестр
	REG DELETE "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist" /f
	REG ADD "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist"
	ECHO.
)


REM ------------------------------------------------------------------------------------------
REM AppCompatCache
ECHO.
ECHO ОЧИСТКА ИСТОРИИ AppCompatCache - реестр
REG DELETE "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatCache" /va /f
REG DELETE "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\AppCompatCache" /va /f
ECHO.
REM ------------------------------------------------------------------------------------------


REM ------------------------------------------------------------------------------------------
REM DiagnosedApplications. Диагностика утечек памяти в приложении ОС Windows
ECHO.
ECHO ОЧИСТКА ИСТОРИИ DiagnosedApplications - реестр
REG DELETE "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\RADAR\HeapLeakDetection\DiagnosedApplications" /f
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\RADAR\HeapLeakDetection\DiagnosedApplications"
ECHO.
REM ------------------------------------------------------------------------------------------


REM ------------------------------------------------------------------------------------------
REM Получение SID - идентификатор безопасности текущего пользователя 
FOR /F "tokens=2" %%i IN ('whoami /user /fo table /nh') DO SET usersid=%%i
REM ------------------------------------------------------------------------------------------


REM ------------------------------------------------------------------------------------------
REM Search. История поиска 
ECHO.
ECHO ОЧИСТКА ИСТОРИИ Search - реестр
	REG DELETE "HKEY_USERS\%usersid%\Software\Microsoft\Windows\CurrentVersion\Search\RecentApps" /f
	REG ADD "HKEY_USERS\%usersid%\Software\Microsoft\Windows\CurrentVersion\Search\RecentApps"
ECHO.
REM ------------------------------------------------------------------------------------------


REM ------------------------------------------------------------------------------------------
REM BAM. 
REM По идее, при перезагрузке затрется само.  
REM Но можно сделать отдельный bat и запускать, например, после работы с portable-приложениями
ECHO.
ECHO ОЧИСТКА ИСТОРИИ службы Background Activity Moderator - реестр
REG DELETE "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\bam\UserSettings\%usersid%" /va /f
REG DELETE "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\bam\UserSettings\%usersid%" /va /f
ECHO.
REM ------------------------------------------------------------------------------------------


REM ------------------------------------------------------------------------------------------
REM AppCompatFlags
ECHO.
ECHO ОЧИСТКА ИСТОРИИ AppCompatFlags - реестр
REM утилиты NirSoft - ExecutedProgramsList
REG DELETE "HKEY_USERS\%usersid%\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store" /va /f

REM если пользователь выбрал в меню не 1 т.е. 2 или 3
IF %doset% NEQ 1 (
	REM Список программ, для которых задан "режим совместимости" или "запускать от имен администратора"
	REM утилиты NirSoft - AppCompatibilityView
	REG DELETE  "HKEY_USERS\%usersid%\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /va /f
)
ECHO.
REM ------------------------------------------------------------------------------------------


REM ------------------------------------------------------------------------------------------
REM История "монтирования" дисков в т.ч. и TrueCrypt
ECHO.
ECHO ОЧИСТКА ИСТОРИИ MountedDevices - реестр
ECHO.
REG DELETE "HKEY_USERS\%usersid%\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2" /f
REG ADD "HKEY_USERS\%usersid%\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2"
ECHO.
REM ------------------------------------------------------------------------------------------


REM ------------------------------------------------------------------------------------------
REM Очистка списков быстрого перехода
ECHO.
REM утилиты NirSoft - JumpListsView, RecentFilesView
ECHO ОЧИСТКА ИСТОРИИ Recent - файловая система
DEL /f /q %APPDATA%\Microsoft\Windows\Recent\*.*
DEL /f /q %APPDATA%\Microsoft\Windows\Recent\CustomDestinations\*.*
DEL /f /q %APPDATA%\Microsoft\Windows\Recent\AutomaticDestinations\*.*
ECHO Выполнено
ECHO.
REM ------------------------------------------------------------------------------------------

REM ------------------------------------------------------------------------------------------
ECHO.
ECHO ОЧИСТКА ИСТОРИИ Panther - файловая система
DEL /f /q %systemroot%\Panther\*.*
ECHO Выполнено
ECHO.
REM ------------------------------------------------------------------------------------------

REM ------------------------------------------------------------------------------------------
ECHO.
ECHO ОЧИСТКА ИСТОРИИ AppCompat - файловая система
DEL /f /q %systemroot%\appcompat\Programs\*.txt
DEL /f /q %systemroot%\appcompat\Programs\*.xml
DEL /f /q %systemroot%\appcompat\Programs\Install\*.txt
DEL /f /q %systemroot%\appcompat\Programs\Install\*.xml
ECHO Выполнено
ECHO.
REM ----


REM ------------------------------------------------------------------------------------------
IF %doset% NEQ 1 (
	ECHO.
	REM Prefetch. Удаление файлов, оптимизирующих запуск приложений. Windows в следующий раз загрузится медленнее
	REM утилиты NirSoft - LastActivityView, ExecutedProgramsList
	ECHO ОЧИСТКА ИСТОРИИ Prefetch - файловая система
	DEL /f /q %systemroot%\Prefetch\*.pf
	DEL /f /q %systemroot%\Prefetch\*.ini
	DEL /f /q %systemroot%\Prefetch\*.7db
	DEL /f /q %systemroot%\Prefetch\*.ebd
	DEL /f /q %systemroot%\Prefetch\*.bin
	REM SuperFetch. Удаление баз оптимизации SuperFetch
	DEL /f /q %systemroot%\Prefetch\*.db
	REM Trace. Удаление файлов трассировки
	DEL /f /q %systemroot%\Prefetch\ReadyBoot\*.fx
	ECHO Выполнено
	ECHO.

	ECHO.
	ECHO ОЧИСТКА ИСТОРИИ Minidump - файловая система
	REM Удаление дампов ошибок
	REM утилиты NirSoft - LastActivityView
	DEL /f /q %systemroot%\Minidump\*.*
	ECHO Выполнено
)
ECHO.
REM ------------------------------------------------------------------------------------------


PAUSE
EXIT

:do_clear
ECHO Очистка журнала %1
wevtutil.exe cl %1
GOTO :eof

:errNoAdmin
COLOR 4
ECHO Необходимо запустить этот скрипт от имени администратора
ECHO.
PAUSE


Финал

После использования первого или второго варианта можно запустить утилиты NirSoft, для того, чтоб посмотреть, достигли ли мы желаемого эффекта.



Профит… Теперь, главное, покормить собак и ничего не трогать. А то она опять начнет оперу писать…

Возможные сценарии использования решений bat и CCleaner

  1. Использовать по отдельности. Тем более, что затирать журналы имеет смысл уж совсем в «приватных случаях»
  2. Сделать единый bat-файл, который сначала затирает журналы, а вместо всего остального — вызывает CCleaner, то есть, после стирания журналов, поставить вызов: «C:\Program Files\CCleaner\CCleaner64.exe» /AUTOS
  3. Поставить этот bat-файл в автозагрузку (что, вероятно, заодно решит проблему с запуском CCleaner на Windows 10)
  4. Поставить bat-файл на момент завершения работы Windows, что правильнее в смысле «заметания следов». Через редактор групповых политик gpedit.msc — «Конфигурация компьютера» — «Конфигурация Windows» — «Сценарии (запуск/завершение)» — параметр «Завершение работы».

Источники


  1. Утилита Procmon из состава SysinternalsSuite имени Марка Руссиновича, c которой нередко все тайное — становится явным… В том числе и куда обращаются утилиты NirSoft. Его блог на тему использования утилит (рус.).
  2. Статьи Windows registry and forensics: часть 1 и часть 2. (анг.)
  3. Статьи блога Компьютерная криминалистика (форензика) сайта CodeBy. Цикл статей Forensics Windows Registry (рус.).
  4. Статья Очистка журналов Windows (анл.).
  5. Статья Cоздание собственных правил CCleaner (анг.).


Кстати, а почему Forensic resistance 1?

Сие станет понятно, если дело когда-нибудь дойдет до 2.
Tags:
Hubs:
+22
Comments13

Articles