Редактор Хабрахабра
2,0
рейтинг
17 марта 2015 в 22:18

Разработка → Ваш wi-fi расскажет мне, где вы живёте, где работаете и где путешествуете


Москва вайфайная

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

Пробы WiFi


Чтобы соединиться с уже известными сетями, которые не сообщают о своём присутствии, все ваши мобильные устройства отправляют пробные пакеты, чтобы найти известные им сети. Эти пакеты можно перехватить, когда телефон включается, или когда он отсоединяется от сети. Для этого используются обычные инструменты — airodump / tcpdump. Пример:

# airodump-ng -w wifi-dump wlan0
# tcpdump -n -l -e -r wifi-dump.cap |
    grep 'Probe Request ([^)]'


Вывод содержит время, MAC-адрес устройства и имя сети. Пример:

16:32:26.628209 BSSID:ff:ff:ff:ff:ff:ff DA:ff:ff:ff:ff:ff:ff SA:50:ea:d6:aa:bb:cc
    Probe Request (SUBWAY) [1.0 2.0 5.5 11.0 Mbit]


То бишь, устройство 50:ea:d6:aa:bb:cc проверяло, есть ли сеть SUBWAY в пределах доступности.

Ну и что тут плохого?


Ну испускают они эти пакеты с именами сетей. Подумаешь.

Заметим, что у большинства локальных сетей уникальные имена. Конечно, будут попадаться распространённые имена типа SUBWAY. Но во многих домах сети называются либо автоматически созданными именами ProviderNameDEADBEEF, либо заданными пользователями.

То есть, список пробных пакетов содержит примерно такие имена сетей:

домашние: ProviderNameXXXXX, StreetNameWifi, и т.д.
рабочие: Company, CompanyCity, и т.п.
едальни: стандартные
отели: разные уникальные названия, за исключением сетевых гостиниц

Ну и что же такого, если вы вдруг перехватите пробный пакет с именем сети FooProvider123456, BlahProviderABCDEF, ACME-Fooville, CafeAwesome? Конечно, можно догадаться, какой у человека провайдер и где он обедает. Но это всего лишь имена. Никаких BSSID, координат и прочего. Хорошо. Но не очень.

Ибо есть на свете WiGLE!


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


Сети в районе Кремля

[прим. перев.] Крупный масштаб расположения сетей на карте показывается только для зарегистрированных пользователей.

Можно сделать некоторые допущения. Например, если Wigle возвращает больше 3-4 сетей с одинаковыми именами, это, скорее всего, некие стандартные сети, которые можно игнорировать… Если только одна из них не находятся близко к тем уникальным, что мы нашли. Можно отфильтровать те сети, которые не были видны больше года. Если только они не уникальные и не перемещались во временем – в противном случае это будет означать, что точка доступа была перемещена.

Сбор информации


Какую информацию мы можем собрать на основании списка сетей? Посмотрим на карту, которая была создана в автоматическом режиме из результатов поиска Wigle. Они были скачаны при помощи библиотеки wiggle и нанесены на карту:

image

Зелёными я обозначил зашифрованные сети, красными – открытые. Синими – неизвестные. Каждый маркер на деле показывает на какое-то определённое здание. Сразу можно понять, что человек, скорее всего, живёт и работает на восточном побережье США (несколько маркеров), летает в Японию (маркер зашифрованной корпоративной сети) и отдыхает в Таиланде (сети с именами отелей), а также ездит по Новой Зеландии (сети с названиями кемпингов). Из названия корпоративной сети можно вычислить название компании.

Тут вам и социальная инженерия, и поиск конкретного человека, и поиск сотрудников компании Х… А по MAC-адресу можно узнать модель устройства – и таким образом найти этого человека в толпе.

Шеф, что делать??


На linux можно сделать настройку сетей wpa_supplicant и указать scan_ssid=0. Так оно настроено по умолчанию и такая настройка отменяет отсылку пробных пакетов. На других системах – не знаю.

Конечно, можно удалить сохранённые сети, или выключать wi-fi, когда он вам не нужен. Но это не решение проблемы. Можно назвать свою домашнюю сеть распространённым именем – но проблемы с названиями других сетей, которыми вы пользуетесь, это не решает.
Вячеслав Голованов @SLY_G
карма
248,2
рейтинг 2,0
Редактор Хабрахабра
Реклама помогает поддерживать и развивать наши сервисы

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

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

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

  • +1
    Apple обещала слать probe request со случайных маков, вроде как раз до выхода 8.0
    • +2
      Ага. Сделали. Только они не совсем рандомные, не всегда включаются и вообще — почти не работают. Пруф.
      • 0
        geektimes.ru/post/243599/

        Да, некоторое время назад тоже наткнулся. Тема интересная, но пока, к сожалению, от первоначальных обещаний далеко. И задумалась об этом только одна Apple.
  • +4
    А что делала на Красной площади EkaterinaTurtseva ???
    • 0
      ээээ, гуляла?
      • +1
        Что-то тут не то
      • +9
        Класс! Топик называется «Ваш wi-fi расскажет мне, где вы живёте, где работаете и где путешествуете». Я, фактически, говорю, да, так и есть, вот конкретный скриншот спалил местонахождение конкретного хабраюзера в определенный момент, выдал тип телефона и ssid, а мне минуса
  • +5
    Чем лучше стараешься защититься и лезешь в глубину темы, тем бездна все глубже и глубже оказывается. То по разряду аккумлуятора в смарте координаты определяют. То по одной твоей удачной фотографии «гадалка» компроментирует твой дактелоскопический доступ, а заодно тебя и по базе пробъёт, т.к. пальчики твои уже в засвете из-за получения импортного паспорта нового образца. Кошмар какой-то короче…
    • 0
      На самом деле все просто, придумай новые технологии и ни кому не говори.
      • +15
        Это понятное дело. У меня даже нечто такого кое-где есть. Не скажу что и где =)
        Но просто порой даже удивляешься как технологии выворачивают тебе руки.

        Я вообще так понимаю, что совсем близко то время, когда обычный замок перестанет быть гарантом безопасности в принципе. Т.е. на стоянке вытаскиваешь ключи от машины, тебя снимает камера наблюдения, которая призвана тебя защищать, пока ты доехал до дома за тобой уже следует машина, по ходу дела в которой печатается полимерный ключ-двойник. Сгрузил ты покупки и поехал на работу. А вечером заходишь в пустую квартиру. В этом варианте видится совмещение ключа с флешкой. Т.е. вставил ключ, система опознала его и сняла механическую блокировку механизма замка.

        Но тут возникают неудобства и вопросы. Обычный замок — это замок. Надежный механизм, проверенный временем. Для нового замка нужна энергия. Можно обойтись мелким источником — чисто для снятия мехблокировки механизма замка, а основное усилие по вращению будет производить сам пользователь. Что будет если электричество отключат? Хорошо — есть аккумулятор. А если он за 40 лет износился? Т.е. энергию отключили, аккумулятор прожил 30 минут и сдох. И тут я, такой красивый, подхожу тыкаю ключем… и не могу его провернуть. Чего делать? Сижу на лестнице, жду. Тут подходит сосед, садится рядом и говорит что света не будет 2 дня — пьяный электрик перемкнул фазы и спалил подводку под бетонным полом. Сосед достает бутылку — будешь типа? Ну давай. Приняли. Сидим дальше. Думаем. Чего ж делать-то? И тут я вспоминаю — емнип, у меня ж дома продвинутый робот-пылесос! Достали телефон, начали на нём к роботу подключаться. Роутер у меня запитан от ИБП, поэтому коннект с роботом есть. Так… вот опция ручного управления клешнями! Едем к ящику, цепляемся за него и сдаём назад. Кое как открыли. Вытянули оттуда провод. Потом примостили его в щели двери и с разгона наехали — провод аккуратно защемился в левой контактной площадке для подзарядки. Со вторым проводом все случилось не так, но за 2 часа упорного труда тоже приделали. Молюсь чтобы энергии хватило. Едем к двери, открываем, вернее ломаем, декоративную крышку в нижней правой части и к площадкам подводим клешни с зажатыми проводками. 12 вольт — должно ж хватить! Сосед стоит на стрёме с ключем наперевес и готовится молниеносно его вставить в личинку. Есть контакт! Ключ исчезает в личинке, личинка подсвечивается зеленым, поворот ключа…

        Лежу на кровати. Сосед дрыхнет напротив на диване, иногда дергая ногой. 3 часа ночи. Никак не могу заснуть. Лежу и думаю. Робот-пылесос у меня ж распростраённой модели. Протокол известен. Можно ж ломануть. Этак может любой подключться к нему, подъехать и с помощью диагностического разъема двери снять блокировку изнутри. Кошмар какой-то короче…

        Надо придумать что-то новенькое…
        • 0
          Ключи от машины не вешать на одно кольцо с ключами от двери дома. Тогда при открытии двери машины ключи от дома не будут сняты видеокамерою наблюдения.
          • +2
            Ага. А так же отдельно держать ключи от работы, от гаража, от дачи, от сейфа, от замка велосипеда…

            Идешь на улицу и надеваешь такое пальто с патронташем. А потом подходишь к машине, лезешь в карман и на ощупь понимаешь, что ключ не тот. Ключ не достаешь! Лезешь в следующий кармашек — вообще аншлаг, понимаешь, что это ключ, который должен быть через 3 от ключа от машины. Испарина. Оказывается сегодня что-то кардинально перепутал! На прошлой неделе при укладке ключей произошел просто сдвиг на один кармашек вправо, но последовательность сохранилась. А теперь — где вот его искать в массиве кармашков 4х10 штук… Можно, конечно, применить брутфорс, но придется тогда составлять новую карту хранения ключей, т.к. остальные тоже напутаны наверняка. Эх… надо понедельники отменять, надо. Ну не бездельники же мы!
        • +2
          > Я вообще так понимаю, что совсем близко то время, когда
          > обычный замок перестанет быть гарантом безопасности в принципе.

          А он когда-то был гарантом безопасности? Не было такого на моей памяти никогда. Всегда пытались сделать двух- (и более) факторную авторизацию. Цепочку, домофон, дверной глазок, консьержа в подъезде и охранника у шлагбаума. Но если взлом оправдает силы на него затраченые — он рано или поздно будет.

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

          > Надо придумать что-то новенькое…

          Лучший способ защиты — нападение.
        • НЛО прилетело и опубликовало эту надпись здесь
          • 0
            Верю, ничего не обычного как раз ибо в подвалы попасть очень просто и способов много разных, а главное это незаметно. Недавно новость у себя в одной из сетей постил (VK), так там вообще треш и жесть, настоящие технари пошли на дело!
            Цитата
            В ночь на 14.01.2015г. преступниками был успешно осуществлен взлом банкомата в г.Пермь. Банкомат установлен в магазине «ООО магазин 58» по ул.Целинной д.31/3.

            Здание выполнено в виде одноэтажного пристроя к жилому многоэтажному дому. Магазин охраняется ФГКУ УВО МВД РФ по Пермскому краю. В банкомате был установлен прибор охранной сигнализации, подключенный к Центру мониторинга банка, с использованием основного канала – IP, дублирование – по каналу GPRS. Охрана банкомата по договору с ФГКУ УВО МВД РФ по Пермскому краю (договор на реагирование).

            Преступники проникли к банкомату, установленному в торговом зале магазина через соседнее помещение, пробив железобетонное перекрытие. Внутри магазин с этим помещением разделен остекленной перегородкой с дверьми. Преступники, предположительно накануне, заблокировали магнитоконтактный датчик — СМК на дверях перегородки. Блокировка произведена с использованием мощных магнитов. На стене в углу над дверьми установлен объемный ИК датчик, подключенный к сигнализации магазина. Для его блокировки использовали специально подготовленные конструкции – длинную трубку, на конце которой установлена пластина из оргстекла (не пропускает ИК–излучение). Для того чтобы датчик не сработал, при установке теплового «экрана» на пластину из оргстекла через тонкую прозрачную трубку ПВХ, собранную из медицинских систем для капельницы, поступало охлаждение – предположительно жидкий азот из шприцев, подключенных к системе. Разбив стекло в верхней части перегородки, преступники поднесли конструкцию к ИК–датчику и зафиксировали струбциной. Таким же образом был заблокирован потолочный ИК датчик над банкоматом, конструкция для его блокировки — штанга длиной около 3–х метров.

            Открыв дверь, преступники соорудили вокруг банкомата заранее подготовленный каркас, на который натянули армированную полиэтиленовую пленку, сверху – защитный плотный материал. Края плотно придавили обломками от бетонных плит из вскрытого пола.
            Банкомат был обесточен и отключен от IP–сети банка. У дежурного ЦМ ТСО на пульте в 07:19 час. прошёл сигнал потери связи с прибором «неисправность» без поступления тревоги. Прибор имеет резервный источник питания и контроль перехода на резервное питание. Причины поступления команды «неисправность» на пульте устанавливаются.
            Банкомат вскрывали газовой сваркой с дополнительной подачей кислорода с использованием длинных насадок из медных трубок, создающих при горении высокую температуру. Внутрь собранной «палатки» к банкомату из подвала провели алюминиевый рукав вентиляции, со встроенным насосом. Таким образом, преступники обеспечили дымоудаление во избежание задымления системы пожарной сигнализации магазина. Прорезав газовым инструментом отверстие в двери сейфа, преступники получили доступ к ригелям замка и открыли его.

            Жильцы дома, слышавшие шума в подвале, ориентировочно в 06:30 час. вызвали сотрудников коммунальной службы с претензиями на шум, но работники службы не смогли попасть в подвал, двери которого были закрыты на замки.

            Вскрытый банкомат и проникновение в магазин обнаружили продавцы магазина, придя на работу в 08:55 час. В магазине установлена система видеонаблюдения. Видеоматериалы предварительно просмотрены полицией. Имеются силуэты двух преступников с налобными фонариками. Охранная сигнализация магазина срабатывала вечером 13.01.2015г.

          • 0
            > из подвала насквозь пробили пол ломом\кувалдой
            Пол первого этажа из подвала часто ломают домкратом, наверное это удобнее чем кувалдой над головой махать. Да и тише.
        • 0
          Цифровой ад уже наступил.
          Банки УЖЕ следят за клиентами по LBS.
          Базы различных госслужб, номера машин, прописки, налоговые, таможни — на каждом черном рынке.
          Неделю назад проводил некоторые операции со своим старым предприятием, выводил его из спячки…
          В общем случайно по запаре с помощью хуман-инжинеринга получил все движения по счету на свой имеил в другом отделении, где меня никто не знает, будучи на тот момент к предприятию никак официально не привязанным. У них общая база по банку и любой сотрудник может увидеть движение по любому счету…
          Большинство сайтов уязвимы, большинство устройств не защищены, или защищены плохо, как минимум на персональную атаку пробиваемы, уязвимость соседей (по хостингу, по дому) увеличивает твою уязвимость в разы… Каждый месяц новости о том, что сливают ту или иную большую базу или что-то вроде…
          Мы следим в миллионах мест.

          Так что господа выбор невелик — или chmod 666, и гори оно всё огнем, или полный отказ от цифрового мира и бегство в Африку.
          • 0
            Забыл уточнить про банк. Посмотрел я на это дело и… ничего не сделал. Везде так. А там где не так, проблем тоже хватает, но другие. В общем, шутили мы на тему «поп собака, глаз нет»… дошутились)
    • +7
      Я вам скажу ещё хуже: любой человек, всего лишь взглянув на улицу через окно первого этажа сможет определить одновременно ваше лицо, ваши координаты, вашу скорость, и даже фасон одежды, которая на вас. И всё это, не смотря на выключенный wifi, авиарежим, и даже вынутый аккумулятор из устройства.
      • +2
        Но он же не определит где я бываю каждый день, из какой станции метро я сейчас вышел, как давно покинул квартиру, какие сайты я просматриваю каждый день, что я покупаю и в каких интернет-магазинах.

        Уточнение один: я прохожу мимо этого дома раз в году.
        Уточнение два: в окно смотрит не Шерлок Холмс.
        • 0
          Если он на вас будет смотреть каждый день?

          А если он вас увидит выходящим из метро?

          А если он услышит, что вы сказали другу, но не рассчитывали, что услышит посторонний человек?
          • –1
            Все зависит от критичности информации. Вернее даже не так — от того какой уровень критичности кадый определяет для себя.

            Если меня кто-то постоянно видит проходящим на улице или выходящим из метро в одно и то же время. Да всегда пожалуйста! Для меня это не критично. Для меня критично, что человек может от окна отойти и буквально за 3-5 минут выяснить весь мой маршрут с достаточной точностью установив адрес проживания. Потом он сядет за комп и еще за 5 минут накатает статистику в свой офис и я потом буду раз в неделю читать SMS'ки о том, какой хороший магазин канцтоваров открылся прямо напротив моего дома и как удобно именно мне в него зайти и что первая покупка в магазине интимных товаров рядом с работой со скидкой…
  • +6
    Уже привычка выключать Wi-Fi без надобности, совсем. И включать только когда пользуюсь. Ну и соединение с OpenVPN при подключении автоматически запускается.
    • 0
      Проблема в том что OpenVPN тут не поможет — это инкапсуляция данных. Тут вопрос сохранения метаданных канального уровня и их трансляция в момент осмотра окружения самим телефоном. К сожалению даже выключенный вайфай не дает гарантии этого события — ибо я уже давно замечаю что в последних версиях андроида происходит фоновое сканирование вайфай точек, при этом в интерфейсе пользователя все выключено. И еще больше удручает, что телефон может не просто сканировать, а уже самостоятельно подключатся к сетям, которые знает. Эта самодеятельность удручает, тк я не знаю как посмотреть какая служба этим занимается, а может кто-то из моих 250 приложений периодические дергает вайфай. Если кто посоветует метод или инструмент для анализа — буду благодарен… думаю не только я.
  • +1
    Хм, как я понял, устройства рассылают пробные пакеты даже для сетей, которые итак оповещают о своем присутствии. Вопрос, зачем? Если можно по умолчанию такие пакеты слать только для ниндзя-сетей-невидимок. Что, кстати, также интересно, потому что с такими пакетами фактически в общий доступ попадают имена сетей, которые не хотели быть видимыми по различным причинам.
    • 0
      … и это еще одна причина, по которой нет никакого смысла делать сети «скрытыми».
  • +7
    Комментаторы не просекли фишку.

    Фишка в том что:
    1. Плевать на мак, один и тот же девайс будет искать одни и те же уникальные названия сетей, мало того что сами названия часто уникальны, тут ещё и их комбинация присутствует, поскольку девайс ищет все сети.

    2. Следить за людьми теперь очень просто: нужно просто натыкать по миру девайсов по 500 руб/шт подключённых к инету, вся функциональность которых заключается в ловле таких пакетов и отправке их на сервер.
    Производители роутеров пока этим не занялись, но не удивлюсь если через пару лет появятся роутеры которые бэкапят конфиг на родной сервер, ради «удобства пользователя» а заодно и переодически сливают туда список кто чего искал в эфире.

    Короче конкретная такая фича для слежки в пассивном режиме за кучами народу.
    • 0
      уже лет пять как есть всякие облачные роутеры и тп с панелькой управления на сайте производителя.
      а если понатыкать кучу таких устройст. то можно просто брать с них же инфу где был такой-то мак и в какое время
    • +1
      Зачем? Если есть мобильные сети.
    • +1
      Уже следят. Еще и SMART телевизоры.
  • +1
    Вывод: называйте свою точку доступа как-нибудь совершенно банально. Вряд ли в многоквартирном доме кому-то придет в голову назвать ее, скажем, «McDonalds» :)
    • +1
      Эээ, все свои сети и сети знакомых так называю не первый год.
  • 0
    При таком качестве LTE у Билайна в Москве недоумеваю зачем вообще нужен Wi-Fi
    • 0
      Кстати, через этот LTE VPN работает?
      • 0
        да
    • +2
      Не у всех смартфонов есть поддержка LTE.
    • +1
      Затем, что трафик в lte/3g небесконечный. Раз уж вы вспомнили билайн, там например 1/3гб в хайвей. Улетает на гугл музыка довольно быстро.
  • +1
    На ZeroNights 2013 был отличный доклад на эту тему — http://2013.zeronights.ru/includes/docs/Glenn_Wilkinson_-_The_Machines_that_Betrayed_their_Masters.pdf

    Там, конечно, была ещё и живая демонстрация, но думаю, что по автору можно будет найти.
  • 0
    Проясните пожалуйста, Probe Request осуществляется для сетей к которым устройство подключалось или просто «видело»? (если второй вариант то ужас что получается)
    • +2
      К которым подключалось.
  • +9
    Т.е. люди жалуются на то, что смартфоны быстро разряжаются, но при этом держат wi-fi постоянно включенным. Однако…
    • +4
      Может быть, это разные люди?
    • +3
      Ответ кроется как-раз посередине: т.к. телефоны постоянно спамят сети из памяти — аккумулятор и садится… Не спамил бы — было бы легче.
      Тут сразу и вопрос — может ли телефон не спамить сети wifi? Ведь это нужно только для скрытых ssid'ов, а открытые сами до телефона достучатся. разве не так?
      • 0
        Всё так. Сам не понимаю этой дури с постоянным сканированием со стороны клиента, пустая трата энергии и ничего более. Да даже для скрытых ssid всё равно будет передаваться маяк для синхронизации сети. Так что нет этих скрытых сетей.
        • 0
          Как раз наоборот, экономия: beacon будет неизвестно когда, и слушать-парсить чужие beacon'ы придётся беспрерывно, а так можно быстро включить радио, спросить и быстро выключить, если не повезло.
  • +1
    Kali linux + прямые руки == море новых ощущений… не одна тема для статьи
  • 0
    Pry-Fi эту проблему решает.
    • 0
      только для Android и WM. IOS — нет.
  • 0
    Для владельцев андроида есть еще такая штука maps.google.com/locationhistory/b/0
  • 0
    Ну а как продолжение — зная список сетей пользователя — можно объявить себя с SSID Wi-Fi сети, к которой производилась попытка подключения, и устройства начнут пытаться соединиться с Вашей точкой. Снять дамп, и расшифровать пароли — для WEP-шифрования к примеру с помощью Backtrack Linux и утилит airodump-ng, aireplay-ng, aircrack-ng.
    • 0
      а там есть rogue ap из коробки?
      Можно просто притворяться всеми точками, которые ищут пользователи.
      Даже если узнать пароли от из WiFi не получится, все равно остается много векторов атак на «неподозревающего» пользователя.

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