Як дослідник безпеки перетворив Google Home Mini на пристрій для прослуховування

Якщо у вас є пристрій Google Home, але ви хвилюєтесь про постійно ввімкнені мікрофони, ваші хвилювання виправдані.

Наявність пристрою, який постійно слухає, у вашому домі є досить поширеним явищем сьогодні, особливо з поширенням лінійки пристроїв Amazon Echo та серії Google Home. Хоча це неймовірно корисні технології, вони не позбавлені проблем щодо конфіденційності. Вони мають постійно активні мікрофони та підключення до Інтернету, що для деяких людей є занадто серйозним втручанням у приватне життя, щоб вони перебували вдома. Дослідник безпеки Мет Кунце довів, що ці побоювання цілком можуть бути виправданими, оскільки він зміг перетворити свій Google Home Mini на те, що по суті можна описати як прослуховування.

Хоча цю вразливість було виявлено та перевірено на Google Home Mini, Кунце каже, що він припускає, що атака спрацювала подібним чином на інших моделях розумних колонок від Google.

Зворотне проектування Google Home Mini

Запит POST до кінцевої точки /deviceuserlinksbatch, визначеної через mitmproxy.

Запит POST до кінцевої точки /deviceuserlinksbatch, визначеної через mitmproxy.

Пов’язування облікового запису з пристроєм Google Home дає вам великий контроль над ним, а «програми» пристрою можуть виконувати команди віддалено. Процедури корисні для попереднього визначення функціональності на основі конкретних умов, але ними можна зловживати, якщо можна отримати віддалений доступ до пристрою та керувати ним. Прикладом розпорядку може бути «Hey Google, доброго ранку», і він увімкне світло та повідомить вам погоду на день.

Кунце мав намір з’ясувати, чи міг зловмисник пов’язати свій власний обліковий запис Google із чиїмсь Google Home. Це, по суті, дозволить йому використовувати контроль, наданий зв’язуванням облікового запису з пристроєм, і використовувати його для віддаленого виконання команд у чиїйсь мережі.

Використання таких інструментів, як проксі-сервер "людина посередині" (mitmproxy) і Фріда, він зміг спостерігати за трафіком між програмою Google Home на смартфоні та пристроєм Google Home. Звідти він виявив, що обліковий запис Google можна зв’язати з пристроєм, отримавши його інформацію через локальний API, а потім надіславши запит на сервери Google із інформацією для зв’язування. Кунце написав сценарій на Python, який отримує облікові дані Google та IP-адресу, а потім пов’язує обліковий запис Google із пристроєм за вказаною IP-адресою.

Отримавши контроль над даним пристроєм, він міг створити будь-яку процедуру та активувати її на підключеному пристрої. Ви можете викликати Помічника, щоб зателефонувати за номером телефону, що він міг зробити в будь-який час. Щоб зробити атаку максимально прихованою, Кунце також увімкнув «нічний режим», який зменшує максимальну гучність і яскравість світлодіода. Гучність музики абсолютно не змінюється, що зменшує ймовірність того, що користувач помітить це.

Однак стає ще гірше, оскільки вам навіть не потрібно бути в одній мережі Wi-Fi, щоб ця атака спрацювала: вам потрібна лише близькість до пристрою. Якщо ви надсилаєте пакети деавтентифікації на пристрій Google Home, він вважає, що мережа не працює і створює мережу Wi-Fi, щоб ви могли знову підключитися до неї та переналаштувати її для нової мережі Wi-Fi мережі. Кадри деавтентифікації (які є типом кадрів керування) можуть надсилатися шляхом аналізу IP-адреси, і їх важко захистити, оскільки мережі WPA2 не шифрують кадри керування.

Однак так само, як ви можете зловживати локальним API пристрою Google Home і зв’язати його з Google обліковий запис, перебуваючи в тій самій мережі Wi-Fi, ви можете зробити те саме, коли підключитесь до нього, коли він налаштований режим.

Дистанційне прослуховування мікрофона Google Home

Кунце написав і перевірив детальний доказ концепції того, як Google Home Mini можна використовувати для шпигування за кимось.

  1. Створіть «зловмисник» обліковий запис Google.
  2. Перебувайте в бездротовій близькості від Google Home.
  3. Почніть надсилати пакети деавтентифікації на Google Home.
  4. Підключіться до мережі налаштування Google Home.
  5. Виконайте сценарій Python, щоб пов’язати пристрій з обліковим записом Google зловмисника.
  6. Припиніть надсилання пакетів деавтентифікації та дочекайтеся підключення пристрою до Інтернету.
  7. Тепер ви можете виконувати команди на пристрої Google Home, зокрема змусити його дзвонити на ваш номер телефону.

Зловмисник також може змусити пристрій надсилати довільні HTTP-запити в мережі власника. Це збільшує поверхню атаки, оскільки зловмисник може спробувати взаємодіяти з іншими пристроями в мережі, включаючи маршрутизатор.

Google вирішив проблему

З іншого боку, після того, як Кунце повідомив про це 8 січня 2021 року, Google зрештою все виправив. Ви більше не можете пов’язати обліковий запис із пристроєм Google Home без запрошення від уже зв’язаного з ним облікового запису, і ви більше не можете зателефонувати на номер телефону віддалено за допомогою процедури. Крім того, на пристроях з дисплеєм мережа, яку пристрій створює для конфігурації, захищена WPA2, і для приєднання потрібен пароль.

Хоча ця вразливість була розкрита лише зараз, цілком можливо, що хтось інший виявив її та зловживав нею. Якщо ви турбуєтеся про пристрої, які постійно прослуховують, то це, безумовно, виправдання. Навіть якщо це конкретну проблему виправлено, це не означає, що вразливостей не буде більше в майбутньому.


Джерело: Метт Кунце