보안 연구원이 Google Home Mini를 도청 장치로 바꾸는 방법

click fraud protection

Google Home 기기가 있지만 항상 켜져 있는 마이크가 걱정된다면 걱정은 당연합니다.

집에서 항상 듣는 장치를 갖는 것은 요즘 특히 Amazon의 Echo 장치 라인과 Google Home 시리즈가 확산되면서 매우 흔한 일입니다. 매우 유용한 기술이지만 개인 정보 보호 문제가 없는 것은 아닙니다. 그들은 항상 활성화된 마이크와 인터넷 연결을 가지고 있는데, 어떤 사람들에게는 집에 있기에는 사생활 침해가 너무 심합니다. 보안 연구원인 Matt Kunze는 자신의 Google Home Mini를 본질적으로 도청 장치로 설명할 수 있는 장치로 전환할 수 있었기 때문에 이러한 두려움이 정당할 수 있음을 입증했습니다.

이 취약점은 Google Home Mini에서 발견되어 테스트되었지만 Kunze는 이 공격이 Google의 다른 스마트 스피커 모델에서도 유사하게 작동했을 것이라고 가정합니다.

Google Home Mini의 리버스 엔지니어링

mitmproxy를 통해 식별된 /deviceuserlinksbatch 엔드포인트에 대한 POST 요청입니다.

mitmproxy를 통해 식별된 /deviceuserlinksbatch 엔드포인트에 대한 POST 요청입니다.

Google Home 기기에 계정을 연결하면 기기의 '루틴'을 통해 원격으로 명령을 실행할 수 있어 계정을 더 많이 제어할 수 있습니다. 루틴은 특정 조건에 따라 기능을 미리 정의하는 데 유용하지만 장치에 원격으로 액세스하여 제어할 수 있는 경우 남용될 수 있습니다. 루틴의 예로는 "Hey Google, 좋은 아침"이라고 말하면 조명이 켜지고 그날의 날씨를 알려줍니다.

Kunze는 공격자가 자신의 Google 계정을 다른 사람의 Google Home에 연결할 수 있는지 알아보기 시작했습니다. 이를 통해 본질적으로 그는 계정을 장치에 연결하여 제공되는 제어권을 활용하고 누군가의 네트워크에서 원격으로 명령을 실행하는 데 사용할 수 있습니다.

중간자 프록시(Man-in-the-Middle Proxy)와 같은 도구를 사용합니다.

미트프록시) 그리고 프리다, 그는 스마트폰의 Google Home 애플리케이션과 Google Home 기기 간의 트래픽을 관찰할 수 있었습니다. 거기서 그는 로컬 API를 통해 정보를 가져온 다음 이를 연결하기 위한 정보와 함께 Google 서버에 요청을 보내면 Google 계정을 기기에 연결할 수 있다는 사실을 발견했습니다. Kunze는 Google 자격 증명과 IP 주소를 가져온 다음 Google 계정을 지정된 IP 주소의 장치에 연결하는 Python 스크립트를 작성했습니다.

특정 장치에 대한 제어권을 갖게 되면 그는 어떤 루틴이든 생성하고 연결된 장치에서 활성화할 수 있습니다. 어시스턴트를 호출하여 언제든지 전화번호로 전화를 걸 수 있습니다. 공격을 최대한 은밀하게 만들기 위해 Kunze는 최대 볼륨과 LED 밝기를 줄이는 "야간 모드"도 활성화했습니다. 음악 볼륨은 전혀 영향을 받지 않으므로 사용자가 알아차릴 가능성이 줄어듭니다.

그러나 이 공격이 작동하려면 동일한 Wi-Fi 네트워크에 있을 필요조차 없기 때문에 상황은 더욱 악화됩니다. 장치에 근접하면 됩니다. Google Home 기기에 인증 해제 패킷을 보내면 네트워크가 다운된 것으로 간주합니다. 다시 연결하고 새 Wi-Fi에 맞게 재구성할 수 있도록 Wi-Fi 네트워크를 생성합니다. 회로망. 관리 프레임의 일종인 인증 해제 프레임은 IP 주소를 스니핑하여 전송할 수 있으며 WPA2 네트워크는 관리 프레임을 암호화하지 않기 때문에 보호하기가 어렵습니다.

하지만 같은 방식으로 Google Home 장치의 로컬 API를 악용하여 Google 홈 장치에 연결할 수 있습니다. 동일한 Wi-Fi 네트워크에 있으면 계정 설정 시 연결한 후 동일한 작업을 수행할 수 있습니다. 방법.

Google Home의 마이크를 원격으로 듣기

Kunze는 Google Home Mini를 사용하여 누군가를 감시하는 방법에 대한 자세한 개념 증명을 작성하고 테스트했습니다.

  1. "공격자" Google 계정을 만듭니다.
  2. Google Home에 무선으로 접근할 수 있습니다.
  3. Google Home으로 인증 해제 패킷 전송을 시작합니다.
  4. Google Home의 설정 네트워크에 연결하세요.
  5. Python 스크립트를 실행하여 기기를 공격자 Google 계정에 연결합니다.
  6. 인증 해제 패킷 전송을 중지하고 장치가 인터넷에 연결될 때까지 기다립니다.
  7. 이제 Google Home 기기에서 전화번호로 전화를 거는 등의 명령을 실행할 수 있습니다.

공격자는 장치가 소유자 네트워크 내에서 임의의 HTTP 요청을 보내도록 만들 수도 있습니다. 이로 인해 공격자가 라우터를 포함하여 네트워크의 다른 장치와 인터페이스를 시도할 수 있으므로 공격 표면이 증가합니다.

Google이 문제를 해결했습니다.

긍정적인 측면에서는 Kunze가 2021년 1월 8일에 이 문제를 보고한 후 Google이 결국 문제를 해결했습니다. 이미 연결된 계정의 초대 없이는 더 이상 Google Home 기기에 계정을 연결할 수 없으며 루틴을 통해 더 이상 원격으로 전화번호로 전화를 걸 수 없습니다. 또한 디스플레이가 있는 장치에서 구성을 위해 장치가 생성하는 네트워크는 WPA2로 보호되며 연결하려면 비밀번호가 필요합니다.

이 취약점은 이제서야 공개되고 있지만, 다른 사람이 이를 발견하고 스스로 악용하는 것은 불가능하지 않습니다. 항상 듣는 장치에 대해 걱정하고 있다면 이것이 확실히 그에 대한 정당성입니다. 설사 이것 특정 문제가 해결되었다고 해서 앞으로 더 많은 취약점이 발생하지 않을 것이라는 의미는 아닙니다.


원천: 매트 쿤제