Как отследить, что именно использует вашу камеру, микрофон и местоположение в Windows, и как долго

конфиденциальность Windows реестр камера микрофон разрешения neowin.net

Узнайте, как с помощью реестра Windows и PowerShell выявить все приложения, которые использовали вашу камеру, микрофон и геолокацию. Проверьте точное время и продолжительность доступа. Возможно, вы найдёте неожиданные программы. Читайте инструкцию.

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

Если вы не следите постоянно за индикатором в панели задач, легко пропустить момент, когда какое-то оборудование внутри вашего ПК используется. Дополнительную информацию можно получить, перейдя в Параметры > Конфиденциальность и безопасность > Разрешения приложений. Там перечислены все приложения, которые недавно использовали различные компоненты, такие как геолокация, камера, микрофон и т. д. Но даже этот список краток, в большинстве представлений не содержит точного времени и легко упускается из виду.

Если вы действительно хотите увидеть, что происходит, Windows на самом деле хранит гораздо более подробную запись в реестре. Оттуда можно узнать, какое именно приложение использовало вашу камеру или микрофон, секунду начала, секунду окончания и продолжительность работы — ничего из этого никогда не попадает в Параметры.

Запись находится в разделе ConsentStore. Нажмите Win+R и вставьте следующее:

cmd /c reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Applets\Regedit" /v LastKey /d "Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore" /f & regedit

Сначала закройте regedit, если он уже открыт, иначе при выходе он перезапишет этот путь вместо его использования. Выполните команду, и regedit откроется непосредственно в ConsentStore.

Внутри каждая папка представляет собой возможность (capability). Веб-камера, микрофон, геолокация и ещё несколько — в зависимости от того, что использовалось на вашем устройстве. Откройте одну из них, и вы найдёте папку для каждого приложения: либо имя пакета для приложения из Магазина, либо прямой путь к исполняемому файлу, сгруппированный в папке NonPackaged.

Щёлкните по одной из таких папок приложения, и вы увидите значения LastUsedTimeStart, LastUsedTimeStop, LastSetTime и Value. Последнее просто показывает Allow или Deny — то же самое, что управляет переключатель в Параметрах. Три временные метки — это то, что Параметры вообще никогда не показывают.

Чтение значений ConsentStore

Однако один недостаток использования редактора реестра для этой цели заключается в том, что он не показывает точные временные метки в понятном виде. Откройте любое из этих значений временных меток, и в столбце «Данные» вы увидите что-то вроде 0x1dd217e84c2c69a1. Это не дата, по крайней мере, не читаемая. Это значение FILETIME — количество 100-наносекундных интервалов с 1 января 1601 года.

Как отследить, что именно использует вашу камеру, микрофон и местоположение в Windows, и как долго

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

К счастью, можно запустить сценарий PowerShell, который обходит все папки возможностей в ConsentStore, преобразует каждую найденную временную метку и выводит таблицу, показывающую, какое приложение, какое разрешение, когда было предоставлено, когда использовалось в последний раз и как долго.

Вот сценарий:

$root = "HKCU:\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore"$results = Get-ChildItem $root | ForEach-Object { $medium = $_.PSChildName Get-ChildItem $_.PSPath -Recurse | ForEach-Object { $props = Get-ItemProperty $_.PSPath -ErrorAction SilentlyContinue if ($props.LastUsedTimeStart -and $props.LastUsedTimeStop -and $props.LastUsedTimeStart -ne 0) { $start = [datetime]::FromFileTimeUtc($props.LastUsedTimeStart).ToLocalTime() $stop = [datetime]::FromFileTimeUtc($props.LastUsedTimeStop).ToLocalTime() $granted = if ($props.LastSetTime) { [datetime]::FromFileTimeUtc($props.LastSetTime).ToLocalTime() } else { $null } [PSCustomObject]@{ Medium = $medium App = $_.PSChildName PermissionGrantedOn = $granted LastUsedStart = $start LastUsedStop = $stop Duration = $stop - $start } } }}$results | Sort-Object Medium, LastUsedStart -Descending | Format-Table Medium, App, PermissionGrantedOn, LastUsedStart, LastUsedStop, Duration -AutoSize

Вставьте этот сценарий в PowerShell, и он выведет все приложения, сгруппированные по типу доступа, отсортированные по самому последнему обращению. Duration — точная продолжительность последнего сеанса с точностью до секунды.

Два момента, которые стоит знать перед запуском. Windows хранит только самый последний доступ для каждого приложения, а не историю, поэтому, если вы ищете закономерность во времени, этот метод её не даст. И PermissionGrantedOn — это момент, когда приложению было разрешено использовать эту возможность, а не первый раз, когда оно это сделало.

Как отследить, что именно использует вашу камеру, микрофон и местоположение в Windows, и как долго

Кроме того, это касается только вашей учётной записи. Для разрешений, предоставленных на уровне системы, замените путь на HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore и запустите PowerShell от имени администратора.

Вот где начинается самое интересное. Вывод покажет вам каждое приложение или службу, которые использовали вашу камеру, геолокацию, веб-камеру и т. д. И если вы внимательно его изучите, вы можете удивиться тому, что обнаружите. Например, я обнаружил, что EA Sports FC 26 использовал мой микрофон в течение 40 минут, и я не помню, чтобы когда-либо разрешал это или использовал микрофон во время игры. Как будто посредственного геймплея было недостаточно…

Определённо стоит потратить время и просмотреть список. Если вы найдёте что-то подозрительное, вы можете удалить это приложение/программу или отозвать его разрешения. Никогда нельзя быть слишком уверенным, особенно учитывая, сколько ваших данных Windows уже отправляет на внешние серверы.

Если вы попробовали это, не стесняйтесь сообщить нам в комментариях, нашли ли вы приложение, которое не ожидали здесь увидеть.

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

В тренде:


Похожие новости: