@Mangalore read-only
Пользователь
2 сентября 2015 в 11:03

Разработка → Уязвимость (?) и слежка в эмуляторе Bluestacks? из песочницы

Прошло два дня этой недели, а крупных скандалов еще нет. Болото стало затягиваться ряской. Давайте поговорим о Bluestacks, эмуляторе Android. Разработчики утверждают, что его установили 90 000 000 человек. Ну давайте я попробую кинуть в Bluestacks грязью.

image

Однажды я искал свой файл с паролями на диске. Ввел пароль, который помнил, и задал поиск в свежих файлах. Нашлось 2 файла: файл паролей и файл в папке “\BlueStacks\Android\Data.sparsefs\”.

Помолившись Афине, чтобы дала мне мудрости и терпения, я приступил к препарированию. Результат: BlueStacks перехватывает и записывает к себе клавиатурные операции, обращенные не к нему.

Я сделал несколько Ctrl+C в Windows-блокноте. Затем нужно закрыть главное окно эмулятора обычным крестиком (иначе эмулятор не запишет результаты перехвата в файл). Затем нужно убить ВСЕ его процессы тасккиллером. Что я нашел в “\BlueStacks\Android\Data.sparsefs\ ”? Правильно. Там же были 20-символьные пароли, которыми я подписываю APK и прочие “Ctrl+C” из прошлого. Может быть там есть не только буфер обмена, но и просто поток с клавиатуры, только зашифрованный? Не знаю как проверить.

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

Сделал видео по теме:
yadi.sk/i/G4mLHmMniptzD

Если копнуть глубже, то вы увидите в BlueStacks перехват страниц и данных из Internet Explorer и Firefox. Вероятно есть метки времени и можно сопоставить буфер обмена и URL.

Хвала Меркурию, богу коммуникаций и воров! Я обнаружил еще одну приятную неожиданность: если в компьютер воткнуть USB флэшку – в файлы BlueStacks запишется ее структура (как минимум имена файлов и папок, а может и даты в бинарном виде).

Компоненты BlueStacks требуют доступ в интернет. И еще Bluestacks запускает процесс “svhost/протокол HTTP SSL/HTTPFilter”. К кому и что утекает? Я не разбираюсь в сетевых протоколах, кто знаком с Fiddler/Wireshark просьба сообщить чего там передается. На поверхности — свежеустановленный эмуль общается с десятком диапазонов IP.

Эмуль может работать с микрофоном и видеокамерой компьютера, как знать, может Bluestacks переплюнет Windows 10 и эта неделя войдет в анналы истории.

image

Ликбез для жертв ЕГЭ: “Я кончил” – формула окончания речи древнеримских сенаторов. А не то, что вы подумали. Как же испохабился русский язык за эти 15 лет!
@Mangalore
карма
15,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (51)

  • +4
    Bluestacks лоханулись, им надо отправлять все данные напрямую на сервера не записывая в локальную папку.
    Если так, никто не просечёт, кроме тех кто «разбирается в сетевых протоколах… и знаком с Fiddler/Wireshark»
    • 0
      Ну или хотя бы проксорить данные.
  • 0
    Рядом с записанными данными есть тег standalone='yes'. Возможно это тег, что данные не были отправлены сразу.
    • +2
      Это часть стандарта XML, и означает что в документе не используются никакие внешние определения «сущностей».
  • +1
    К сожалению, это один из способов монетизации для бесплатных приложений. Пока вы пользуетесь чем то бесплатно — ваш компьютер используют для майнинга, крадут пароли от почтовых ящиков, соц. сетей и сайтов. Несколько пугает то, что от такого сложно защититься, если приложению требуется доступ в интернет.
    • 0
      Отдельно стоящая виртуалка для подобных экспериментов. Идеологию докер — в массы!
      • 0
        Вот майкрософт и несёт.
  • 0
    У меня в папке “\BlueStacks\Android\Data.sparsefs\” 2 файла:
    1. Map — 513 Кб
    2. Store — 918 Мб

    Своих паролей я там не нашел.
    • 0
      Аналогично.
      • +1
        Использую Bluestacks версии 0.8.х.
        Не может быть, чтобы я один был Д'Артаньяном!
        Пока не прибьете процессы эмулятора — к содержимому файла Store нет доступа. Тупо попробуйте нажать F3 для его просмотра.
        В конце файла (на 99%) найдете строки:

        text=TEXTFROMBUFFER

        в окружении нулей. Не используйте кириллицу для копируемого текста, может там ASCII а может UTF, я пробовал только латиницу.
        • +4
          Проверил у себя 4 «образа» блюстака 0.9+, в трех обнаружились строки из буфера обмена и похоже запросы к гуглу. Так что вы не один.
        • –1
          Ничего не нашел,
          а что за папка “\BlueStacks\Android\Data.sparsefs\"? Какой полный путь?
  • +6
    На самом деле «dixi» переводится, как «я сказал».
    • 0
      Да ради бога/богов!

      dic.academic.ru/dic.nsf/dic_fwords/52154/dixi
      • –2
        Google.Translate: Dixi. Без пунктуации неверно переводит.
        • +3
          В спорах лучше не приводить в качестве аргумента гугл транслейт. И википедию.
          • +2
            Согласен, был не прав. Исправляюсь: dico 1, dico 2.
  • +1
    Статью надо переводить на английский и куда-то типа Медмума. Иначе болото не сдвинется.
    • НЛО прилетело и опубликовало эту надпись здесь
  • НЛО прилетело и опубликовало эту надпись здесь
    • +4
      Какая разница где и что хранить, если работает кейлогёр, который перехватывает ещё и буфер обмена?
      Только виртуалка для подобного «софта» :)
      • НЛО прилетело и опубликовало эту надпись здесь
    • +3
      А что плохого в том, чтобы хранить пароли на диске, если это пароли от сервисов «зайти раз в полгода, т.к. без входа хотя бы в пустой аккаунт не просмотреть вложения» и аналогичных по важности?
  • +1
    Сделал видео по теме:
    yadi.sk/i/G4mLHmMniptzD
    • 0
      На youtube обязательно залей! И с английским комментариями (хотя бы субтитрами).
      • +1
        Залейте кто-нибудь на youtube со ссылкой на хабр.
        Mangalore — мой мусорный аккаунт на почте.ру. Не хочу светить основной gmail на ютубе.
  • 0
    Только позавчера установил себе эмуль а тут такое.
    Проверка показала что буффер обмена оно пишет когда запущена основная программа.
    Т.е. если ее закрыть а остальное не убивать из процессов буфер не пишется.
    Скорее это таки бага.
    • 0
      Если закрыть основную программу, остальные процессы держат файл Store открытым, не давая заглянуть в него.
      Да еще перехват вебтрафика и флэшки…

      Давайте дружно позовем фотку Д. Киселева со знаменитым «Совпадение? Не думаю!»
      • НЛО прилетело и опубликовало эту надпись здесь
        • +5
          это действительно может оказаться особенностью реализации/багом/фичей/чем угодно

          Если Вы вернувшись домой обнаружили, что в Вашей запертой квартире шарится по ящикам и полкам какой-то незнакомый Вам мужик, то весьма вероятно, что он просто ошибся домом и квартирой — «Иронию судьбы» ведь все смотрели.
          • НЛО прилетело и опубликовало эту надпись здесь
            • +2
              Почему же? Отличная параллель: покуда мужик не сможет доказать что он с друзьями парился в бане, у вас все основания считать его вором/грабителем.
              • НЛО прилетело и опубликовало эту надпись здесь
                • 0
                  Потому что производитель хочет формально находиться в рамках закона, и все объяснить ошибкой или быдлокодом.
                  Если данные шифровать то это будет однозначным доказательством намерения.
                  • НЛО прилетело и опубликовало эту надпись здесь
                    • 0
                      эффективность сбора? тем более та же причина
                      Тем более объяснить зачем приложению с окном буфер обмена легко, а зачем тоже самое приложению в фоне — другое.
                      • НЛО прилетело и опубликовало эту надпись здесь
    • 0
      Даже если и баг, либо фича типа копирования данных внутрь эмулятора, то нафига он собирает и хранит всю историю буфера обмена? Нашел по фразе «text=» с конца файла до фига данных ну никак не связанных с эмулятором.
  • 0
    Обязательно напишите статью на английском.
  • 0
    Получается так что не зря Bitdefender считает эту программу зловредом? У самого производителя написанно что программа не может быть установленна с этим антивирусом.
  • 0
    У себя по адресу C:\Program Files (x86)\BluesStacks\BlueStacks\Logs\Core.log в файле нашел такие строки:
    2015-09-01 11:41:06.066000 HD-SharedFolder( 1152:  824): Opened log file
    2015-09-01 11:41:06.067000 HD-SharedFolder( 1152:  824): Starting shared folder helper process
    2015-09-01 11:41:06.067000 HD-SharedFolder( 1152:  824): Configuring shared folders:
    2015-09-01 11:41:06.068000 HD-SharedFolder( 1152:  824):      0 BstSharedFolder -> C:\Program Files (x86)\BluesStacks\BlueStacks\UserData\SharedFolder\ - 1
    2015-09-01 11:41:06.068000 HD-SharedFolder( 1152:  824):      1 Pictures -> C:\Users\<username>\Pictures - 1
    2015-09-01 11:41:06.068000 HD-SharedFolder( 1152:  824):      2 PublicPictures -> C:\Users\Public\Pictures - 1
    2015-09-01 11:41:06.068000 HD-SharedFolder( 1152:  824):      3 Documents -> C:\Users\<username>\Documents - 1
    2015-09-01 11:41:06.068000 HD-SharedFolder( 1152:  824):      4 PublicDocuments -> C:\Users\Public\Documents - 1
    2015-09-01 11:41:06.068000 HD-SharedFolder( 1152:  824):      5 InputMapper -> C:\Program Files (x86)\BluesStacks\BlueStacks\UserData\InputMapper\ - 1
    

    Это что получается, блустакс расшаривает владельца и общие изображения и картинки?
    • 0
      Да, между хост-системой и эмулируемым андроидом.
  • 0
    Bluestacks компания, которая делает очень веселые вещи со своим эмулятором. Например ботов. Очень прибыльное занятие
  • 0
    А чем заменить? Какие есть хорошие эмуляторы? Такие, чтобы не стопицот баксов стоили.
    • 0
      В Android Studio входит виртуалка.
    • 0
      Смотря что с ним делать. Бесплатной версии Genymotion хватает для большинства задач, и работает оно попроворней эмуляторов из Android SDK. Ну правда «For personal use only», да.
      • 0
        Для игр интересует.
        • 0
          С 3D-ускорением там конечно все не очень радужно, а без 3D все довольно хорошо там. Если еще ARM-трансляцию от Intel прикрутить, так даже игры без поддержки x86 будут работать некоторые. Правда в образах Android 4.4+ ей уже никто не занимался, и оно, к сожалению, отвалилось.
  • 0
    а может быть так что пароли в эту папку пишет другое приложение? тут не все кто пользуется этим приложением обнаружили свои пароли.
  • 0
    Написал им в саппорт неделю назад. Пришел стандартный ответ типа укажите пошагово как воспроизвести проблему.
    Расписал — в ответ тишина.
    Может мало обращений что б они обратили внимание на явный косяк? Запустить бы это хотя б в реддит чтоб поштормило.
  • +1
    Сегодня вот обновка прилетела. Сама, причём. Интересно, спрятали хотя бы слежку или нет.

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