В устройствах Apple есть прекрасная функция Airdrop — она сделана для пересылки данных между устройствами. При этом никакой настройки и предварительного сопряжения устройств не требуется, все работает из коробки в два клика. Для передачи данных используется надстройка над Wi-Fi, и поэтому данные передаются с огромными скоростями. При этом используя некоторые трюки, можно не просто пересылать файлы, но и узнать телефонный номер человека, находящегося с тобой в одном вагоне метро.
Последний год я использую эту функцию для интересных знакомств по пути на работу, в общественном транспорте, в общепитах. В среднем за день у меня получается заводить несколько новых знакомств, и иногда я выхожу из метро в компании нового человека.
Под катом я расскажу за всю хурму.
Компания RUVDS.COM не несёт ответственности за повторение действий описанных в данном материале.
Как работает AirDrop
AirDrop это протокол для передачи файлов внутри одноранговой сети. Он может работать как по обычной локальной сети, так и по воздуху между любыми устройствами Apple. Мы будем разбирать последний случай, когда два устройства не подключены в общую сеть, а просто находятся рядом, например два человека c телефонами едут в вагоне метро и не подключены к общему Wi-Fi.
Первый этап передачи через AirDrop — рассылка BLE пакета
Чтобы инициировать передачу данных через AirDrop, телефон инициатора посылает широковещательный BLE-пакет, в котором содержится захешированная информация об iCloud аккаунте и телефонном номере владельца устройств инициатора, с предложением установить подключение через протокол AWDL (Apple Wireless Direct Link), что-то вроде Wi-Fi Direct из мира Android. Структура этого BLE-пакета очень интересна, мы разберем ее дальше.
На стороне получателя AirDrop может быть в трех состояниях:
- Выключен
— не будет обнаруживаться вообще - Только для контактов
— принимать файлы только от контактов из записной книжки. При этом контактом считается номер телефона или email, к которому привязан icloud аккаунт. Здесь работает та же логика привязки аккаунтов, что и с мессенджером iMessages. - Для всех
— телефон будет обнаруживаться для всех
Настройки приватности AirDrop. Состояние по умолчанию установлено «Для контактов».
В зависимости от настроек приватности, телефон либо продолжит установку соединения через AWDL, либо просто проигнорирует BLE-пакет. Если для AirDrop установлена настройка «для всех», то на следующем шаге устройства соединятся друг с другом через AWDL, поднимут между собой IPv6-сеть, внутри которой AirDrop будет работать как обычный прикладной протокол с помощью mDNS через стандартный протокол IP.
Для экспериментов вы можете посмотреть за тем как работает AWDL на макбуке. Весь обмен по этому протоколу происходит через интерфейс awdl0
, который можно легко снифать с помощью Wireshark или tcpdump.
На данном этапе мы знаем три сущности:
Bluetooth LowEnergy (BLE) пакет
— этот пакет содержит данные, на основании которых телефон решает, есть ли инициатор в его списке контактов или нет.
Apple Wireless Direct Link (AWDL)
— фирменная замена Wi-Fi Direct от Apple, включается если общение по BLE прошло успешно.
AirDrop
— прикладной протокол, который работает внутри обычной IP-сети с использованием mDNS, HTTP и т.д. Может работать внутри любой Ethernet-сети.
Как найти эйрдроп?
Есть несколько важнейших источников информации об эйрдропах в интернете:
- Bitcointalk — один из старейших и самых крупных криптовалютных форумов. Обычно именно здесь объявляют о новых проектах, и это отличная площадка, где вы узнаете о новых ICO. На Bitcointalk удобно отслеживать историю проектов.
- Агрегаторы эйрдропов — сайты, которые изучают проекты на предмет законности и платёжеспособности. Примеры хороших агрегаторов: Airdrops.io, Airdropking.io, Airdrop Alert и сабреддиты Airdrops и CryptoAirdrops.
- Специальные платформы, например, Earn.com, позволяют участникам зарегистрироваться, предоставив адреса своих кошельков для участия во множестве эйрдропов. На Tokens Marketplace в категории «Airdrops» вы можете найти список актуальных раздач.
- Специализированные чаты в Slack, Telegram или Discord. Много интересных раздач можно найти в канале #freecoins чата Coinspot.
Структура BLE-пакета
Может показаться, что этот BLE-пакет пролетает только один раз от инициатора к получателю, а дальше обмен происходит только по AWDL. В действительности соединение AWDL живет очень мало, всего несколько минут или меньше. Так что в случае, если получатель файла захочет вам ответить, он так же выступит инициатором и пошлет BLE-пакет.
Как телефон на принимающей стороне понимает, есть ли номер/email инициатора в его списке контактов или нет? Я очень удивился, когда узнал ответ: инициатор шлет свой номер и email в виде хеша sha256
, но не целиком, а только первые 3 байта.
Структура BLE-пакета от инициатора AirDrop. По хешам от телефонного номера и email ответчик понимает, есть ли инициатор в его списке контактов.
Например, если ваш Apple-аккаунт (он же iCloud, он же iMessages) привязан к номеру +79251234567, хеш от него будет считаться так:
echo -n «+79251234567» | shasum -a 256 07de58621e5d274f5844b6663a918a94cfd0502222ec2adee0ae1aed148def36 И в итоге в BLE-пакете улетит значение
07de58
для телефонного номера. Этого кажется мало, но часто этих трех байт достаточно, чтобы узнать реальный номер телефона.
Важно также помнить, что настройка приватности AirDrop не влияет на данные в BLE-пакете. Хеш от телефонного номера будет содержаться в нем, даже если установлена настройка «Для всех». Также BLE-пакет с хешем телефонного номера посылается в случае открытия окна Share (Поделиться) и при вводе пароля к Wi-Fi сети.
Подробный разбор структуры BLE-пакетов и возможных атак на него читайте в исследовании Apple Bleee и русский перевод на Хабре.
В исследовании Apple Bleee опубликованы готовые скрипты на python для автоматизации анализа данных в BLE-пакетах. Я очень рекомендую изучить исследование и попробовать программы, там много чего интересного.
Передать по кабелю
Самый простой и банальный способ передачи данных с iPhone на компьютер. При этом обязательно потребуется подходящий к двум устройствам кабель, а еще придется повозиться с ПО на компьютере.
Что для этого нужно: скопировать фото и видео из галереи получится через приложения Захват изображений (в macOS) или Фото (для Windows). Для передачи данных из сторонних приложений на iPhone придется использовать Finder на Mac или iTunes на Windows-ПК.
Как передать файлы:
? Подключите iPhone к компьютеру при помощи кабеля, разблокируйте смартфон и выдайте разрешение на подключение. ? В используемом на компьютере приложении найдите нужные данные со смартфона и импортируйте их на Mac или Windows-ПК. ? При использовании утилит Захват изображений (в macOS) или Фото (для Windows) перенесите нужные данные из медиатеки на компьютер. ? При переносе данных из сторонних программ найдите раздел Файлы в приложении Finder (для Mac) или iTunes (для Windows).
AWDL (Apple Wireless Direct Link)
AWDL — это такая проприетарная надстройка Apple над обычным Wi-Fi, реализующая что-то вроде Wi-Fi Direct. Я до конца не знаю как она работает, там особый способ анонсирования и согласования каналов, и работает это только на проприетарных драйверах Apple. То есть только макбуки/айфоны могут соединяться через AWDL.
Грустные владельцы телефонов Android пока еще только мечтают о нормально работающей функции Wi-Fi Direct.
Но не так давно ребята из seemoo-lab написали полностью открытую реализацию AWDL и назвали ее Open Wireless Link (OWL). Для запуска OWL, адаптер Wi-Fi должен поддерживать мониторный режим и инъекции пакетов, поэтому запускается не на каждом железе. На сайте есть примеры настройки на raspberry pi. Работает это существенно хуже оригинального AWDL, например время установки подключения растягивается на ~10 секунд вместо пары секунд у оригинала, но работает.
Также эти ребята написали с нуля реализацию протокола AirDrop на питоне, называется OpenDrop. Его можно использовать как в связке с OWL, для запуска AirDrop на линуксе так и с оригинальным AWDL на macOS.
Где отремонтировать Macbook, iMac и iPhone
Чек лист по выбору надежного сервисного центра по ремонту техники Apple
Цены
Справедливые, не завышенные и не заниженные. На сайте Сервиса должны быть цены. Обязательно! без «звездочек», понятно и подробно, где это технически возможно — максимально точные, итоговые.
Сроки
При наличии запчастей до 85% процентов сложных ремонтов можно завершить за 1-2 дня. На модульный ремонт нужно намного меньше времени. На сайте указана примерная продолжительность любого ремонта.
Гарантия и ответственность
Гарантию должны давать на любой ремонт. На сайте и в документах все описано. Гарантия это уверенность в своих силах и уважение к вам. Гарантия в 3-6 месяцев — это хорошо и достаточно. Она нужна для проверки качества и скрытых дефектов, которые нельзя обнаружить сразу. Видите честные и реальные сроки (не 3 года), вы можете быть уверены, что вам помогут.
Склад
Половина успеха в ремонте Apple — это качество и надежность запчастей, поэтому хороший сервис работает с поставщиками на прямую, всегда есть несколько надежных каналов и свой склад с проверенными запчастями актуальных моделей, чтобы вам не пришлось тратить лишнее время.
Бесплатная диагностика
Это очень важно и уже стало правилом хорошего тона для сервисного центра. Диагностика — самая сложная и важная часть ремонта, но вы не должны платить за нее ни копейки, даже если вы не ремонтируете устройство по ее итогам.
Ремонт в сервисе и доставка
Хороший сервис ценит ваше время, поэтому предлагает бесплатную доставку. И по этой же причине ремонт выполняется только в мастерской сервисного центра: правильно и по технологии можно сделать только на подготовленном месте.
Удобный график
Если Сервис работает для вас, а не для себя, то он открыт всегда! абсолютно. График должен быть удобным, чтобы успеть до и после работы. Хороший сервис работает и в выходные, и в праздники. Мы ждем вас и работаем над вашими устройствами каждый день: 9:00 — 21:00
Репутация профессионалов складывается из нескольких пунктов
Возраст и опыт компании
Надежный и опытный сервис знают давно. Если компания на рынке уже много лет, и она успела зарекомендовать себя как эксперта, к ней обращаются, о ней пишут, ее рекомендуют. Мы знаем о чем говорим, так как 98% поступающих устройств в СЦ восстанавливется. Нам доверяют и передают сложные случаи другие сервисные центры.
Сколько мастеров по направлениям
Если вас всегда ждет несколько инженеров по каждому виду техники, можете быть уверены: 1. очереди не будет (или она будет минимальной) — вашим устройством займутся сразу. 2. вы отдаете в ремонт Macbook эксперту именно в области ремонтов Mac. Он знает все секреты этих устройств
Техническая грамотность
Если вы задаете вопрос, специалист должен на него ответить максимально точно. Чтобы вы представляли, что именно вам нужно. Проблему постараются решить. В большинстве случаев по описанию можно понять, что случилось и как устранить неисправность.
Открытость сервиса — это залог взаимного доверия и сотрудничества
Социальные сети
Если для вас стараются организовать удобный сервис, вы обязательно найдете компанию в VK, на Facebook, Instagram, и конечно, на канале Youtube. Здесь всегда можно в неформальной обстановке, посмотреть на жизнь сервиса изнутри, оценить примеры ремонтов, пообщаться со специалистами вживую. Это удобно, и сейчас без социальных сетей просто никак нельзя
Лица компании
Опытные эксперты и инженеры Apple — это супергерои, но они не носят маски. На сайте и в социальных сетях вы всегда можете посмотреть, к кому вы идете, увидеть фото и узнать немного об инженерах и менеджерах сервиса. Можете написать каждому из них, предложить или уточнить что-то у того, с кем уже общались.
Отзывы
По отзывам можно понять многое, если к ним правильно относиться. Общая оценка сервиса должна быть положительная и высокая. Но рейтинг не может быть максимальным. Отзывы могут быть и положительными и отрицательными, главное, что на них отвечают, общаются, принимают решения, помогают, то есть — относятся по-человечески.
Задать вопрос
Статьи
- Функция iOS: резервное копирование, что, зачем, как?
- Как включить AirDrop на iPhone X
- Как закрыть приложение на iPhone X
- Как перезагрузить и выключить iPhone X
- Запись видео экрана iPhone X
- Как сделать скриншот (фото экрана) на iPhone X
- Как сдвинуть экран iPhone X
- Заряд аккумулятора в процентах на iPhone X
- Как включить и настроить iPhone X
- Как установить iOS 12
- Настройка родительского контроля iOS
- iOS 11 скриншоты. Новые функции и возможности
- Как освободить место на iOS-устройстве
- Круглые папки в iOS 9.3
- Белый экран iOS
- Скоро можно будет удалить стандартные приложения iOS
- Заметки с паролем в iOS 9.3
- iOS 9.3.1 — активация без зависаний iPhone и iPad
- Не работает Night Shift
- Night Shift в режиме энергосбережения
- Как понизить яркость iPhone
- Jailbreak iOS 9.1 и tvOS
- Баг iOS 9 отключит анимации SpringBoard
- Запрос Youtube Safari на iOS
- Почему на iOS 7 — 9.2.1 может возникнуть ошибка 53
- Как добавить любую веб-страницу на экран «Домой»
- Управление презентацией keynote с помощью iPhone
- Как удалить любую иконку с окна Home в iOS6 без джейлбрейка
- PassBook в России
- Как вытащить контакты из резервной копии iPhone
- DreamJB — издевка над джейлбрейк сообществом.
- iOS6 — впечатления
Вопрос
Заявка на ремонт
Пресса о нас Отзывы Вакансии Реквизиты Доставка и оплата Сотрудничество Команда
Мы ремонтируем:
- iPhone iPhone 4..5s
- iPhone 6
- iPhone 6s
- iPhone 6 Plus
- iPhone 6s Plus
- iPhone SE
- iPhone 7
- iPhone 7 Plus
- iPhone 8
- iPhone 8 Plus
- iPhone X
- iPhone XS
- iPhone XS Max
- iPhone XR
- iPhone 11
- iPhone 11 Pro
- iPhone 11 Pro Max
- iPhone 12
- iPhone 12 Pro
- iPhone 12 Pro Max
- iPhone 12 mini
- FAQ iPhone
- Обмен iPhone
- iPad 6
- iMac
- MacBook
- Time Capsule
Как подкатывать через AirDrop
Типичная ситуация с подкатыванием через AirDrop
Хватит скучной теории, пора приступать к практике. Итак ты вооружился всем необходимым оборудованием и готов выдвигаться подкатывать шары с помощью высоких технологий.
Для начала нужно запомнить основные моменты
:
- AirDrop сработает только если телефон разблокирован
— лучше всего, если цель непрерывно смотрит в телефон. Чаще всего это происходит в местах где скучно, например в метро. - Нужно время
— обычно, положительная конверсия происходит на 3-5 отправленной картинке, поэтому нужно хотя бы 5 минут спокойного нахождения на одном месте. Положительной конверсий я считаю момент, когда вы договорились через AirDrop продолжить общение в мессенджере. Это сложно реализовать на ходу, потому что не сразу понятно, кто принял твоей пейлоад, и скорее всего вы разминетесь раньше, чем сможете о чем-то договориться. - Персонализированный креатив работает лучше
— я называю пейлоадом тот медиаконтент, который ты отправляешь через AirDrop. Просто картинка с мемом, скорее всего, ни к чему не приведет, контент должен быть релевантным ситуации и иметь понятный call to action.
Сгрузить в “расшаренную” папку
Чтобы организовать быстрый и удобный аналог AirDrop между iPhone и Windows-компьютером, можно воспользоваться стандартным механизмом настольной операционной системы и создать общую папку. Это позволит подключиться к ней не только с iPhone, но и при помощи других компьютеров, планшетов или смартфонов для обмена данными.
Что для этого нужно: компьютер с открытой для общего доступа папкой и несколько настроек на смартфоне, чтобы удобно подключаться к ней. Разумеется, гаджеты должны находиться недалеко друг от друга в пределах одной сети. Создавать “расшаренную” папку с доступом через интернет крайне сложно и небезопасно.
Как передать файлы:
? Создайте новую папку на Windows-компьютере и откройте к ней общий доступ. ? Укажите учетную запись Windows, для которой будет открыт доступ на чтение и запись данных. ? Запомните или запишите сетевой адрес папки, который отобразится на последнем шаге настройки. ? На iPhone в приложении Файлы создайте новое подключение к серверу. ? Укажите записанный ранее сетевой адрес папки. ? Ниже введите логин и пароль учетной записи Windows, для которой выдали доступ к папке.
Так получите подключение к сетевой папке в приложении Файлы, через которое можно передавать большие объемы данных на компьютер или назад. Подробнее о работе этого способа передачи данных можете прочитать в отдельной статье.
Пейлоад
Как я писал выше, уникальный пейлоад работает лучше. В идеале картинка должна обращаться к владелице по имени. Раньше мне приходилось ваять креатив с помощью графического редактора в приложении «заметки» и какого-то огрызка мобильного фотошопа. В итоге, к моменту пока нужная картинка была отрисована, уже нужно было выходить из вагона.
Моя подруга Аня koteeq, специально по моей просьбе, написала Телеграм-бота, который генерирует нужные картинки с подписью на лету: @AirTrollBot. Спасибо ей огромное за то, что я теперь могу подкатывать шары намного технологичней, чем раньше.
Достаточно отправить боту строчку с текстом, и он сгенерирует ее в виде картинки точно подходящей по соотношению сторон для превью в окне AirDrop. Можно выбрать персонажа на картинке нажатием кнопок. Также опционально можно включить добавление вашего Телеграм-логина на картинку в углу.
Payload generator
Самый жир был в том, что картинка показывалась сразу на экране жертвы без каких-либо действий. Не нужно даже было нажимать «принять». Можно было видеть мгновенную реакцию на лице от загрузки пейлоада. К сожалению, с версии iOS 13 картинки от незнакомых контактов больше не показываются на экране. Вот, как это выглядело раньше:
Payload delivered on iOS <=12
Сейчас вместо превью показывается только имя устройства отправителя. Поэтому единственный способ обратиться к жертве с iOS >=13 по имени, это задать его в настройках вашего устройства, например назвать телефон «Юля, привет». Hint: в названии устройства можно использовать эмодзи. Конечно такой способ не настолько яркий, как с картинкой, но сильно повышает шанс нажатия кнопки «принять».
Дальнейшее описание действий выходит за рамки технической статьи и зависит только от вашей фантазии, импровизации и юмора. Могу сказать только, что те, кто вступают в эту игру и начинают отвечать вам картинками или посылать заметки, как правило очень веселые, открытые и интересные люди. Те, кто посмотрев картинку просто не отвечают, или того хуже, просто отклоняют сообщение, обычно скучные снобы и ханжи. Также нередко играет роль фактор страха: хрупкие пугливые люди боятся взаимодействовать с таким наглым анонимным незнакомцем.
Где найти Airdrop на айфоне
Эта технология доступна на большинстве современных iPhone (5, 5 s, SE и других), iPad и Mac устройств. Однако для ее применения она должна быть активирована на устройстве. Сначала нужно посмотреть, имеется ли соответствующая кнопка в «Центре управления» и какой у нее фон. Для этого нужно сделать движение пальцем снизу вверх и небольшое движение у нижнего края экрана.
Где в айфоне загрузки и папка — куда сохраняются файлы
На появившейся странице должна быть кнопка с надписью «Airdrop». Если ее там нет, потребуется зайти в настройки и после этого перейти в раздел «Ограничения». Нужно найти соответствующую строку и активировать стоящий справа переключатель.
Обратите внимание! На недавно приобретенных устройствах технология может быть по умолчанию отключена. В таком случае активацию проводят самостоятельно.
Автоматическая дикпик-машина
Если тебе лень генерировать и рассылать пейлоады вручную, и ты хочешь автоматизировать процесс, можно изготовить автоматическую дикпик-машину, которая в фоне будет рассылать картинки по AirDrop всем, кто находится в радиусе действия. В качестве аппаратной платформы будем использовать raspberry pi zero, но подойдет любой комп с линуксом, главное чтобы Wi-Fi карточка поддерживала мониторный режим и инъекции пакетов.
Рассылатель дикпиков по Airdrop на базе raspberry pi zero w + батарейный шилд UPS Lite
Есть программы AirDrop флудеров для Jailbreak айфонов, они работают стабильнее, чем открытые варианты на raspberry pi
Настройка OWL на raspberry pi подробно описана на сайте проекта, но я предпочитаю использовать сборку Kali Linux для Raspberry Pi Zero, потому что в ней уже установлены патчи nexmon, для активации мониторного режима Wi-Fi на rpi0.
Важно помнить, что Airdrop (вернее AWDL) у пациентов активируется только после получения BLE-пакета. Поэтому мы должны его посылать с интервалом в несколько секунд. Это можно сделать с помощью утилиты py-bluetooth-utils. Используя функцию start_le_advertising(), я посылаю строку данных из примеров apple bleee: 000000000000000001123412341234123400.
После того, как вы получили работающий OWL-демон, дальше можно запускать мой форк opendrop. В репозитории лежит скрипт flooder.py, который рассылает всем картинку kak_dela.jpeg.
По моим наблюдениям raspberry pi zero w работает нестабильно в мониторном режиме. Примерно через 20 минут активной работы флудера, вылетает подсистема Wi-Fi. Проблема описана у автора pwnagotchi, и предположительно вызвана перегревом. Нужно предусмотреть watchdog или использовать более стабильное железо
Цель эйрдропов
Криптовалюты обладают ценностью только потому, что люди верят в них и признают их ценность. Чем больше людей владеют цифровыми валютами, тем выше вероятность того, что их широко примут и их ценность увеличится. Эйрдропы также эффективны благодаря эффекту обладания, или владения. Это такой феномен, при котором люди приписывают ценность вещам только по той причине, что владеют ими.
Одна из основных причин применения Airdrop — в относительно недавно введённых ограничениях по продвижению ICO, которые оказались болезненными. Компании, запускающие токенсейлы, теперь не могут использовать ни Facebook, ни Google для продвижения своих проектов (хотя, кажется, FB снова разрешает такую рекламу). Таким образом, лучшим способом для раскрутки продукта оказался эйрдроп.
Есть множество причин, по которым ICO бесплатно раздают токены, и вот основные из них.
- Популяризация: доставка токенов как можно большему количеству кошельков и людей для того, чтобы создать сильную базу активных пользователей, которые станут настоящими клиентами. Широкое распространение токенов становится важным моментом, так как многие проекты осознанно стремятся к сетевому эффекту.
- Повышение осведомлённости пользователей: обычно материальный интерес к конкретному токену более активно формируется после того, как токен попадает в листинг какой-либо биржи.
- Привлечение капитала: финансирование будущих разработок и расширение проекта.
Режим маньячелло — я знаю твой номер
Если ты хочешь показать себя неадекватным маньяком и навсегда отбить желание продолжать с тобой общение, можно попытаться узнать номер телефона человека, который находится рядом.
Как мы уже узнали ранее, в BLE-пакетах, которые посылает инициатор, содержатся первые три байта от sha256 телефонного номера. Этот хеш можно поймать в момент, когда жертва нажмет кнопку «поделиться» и запустит сканирование airdrop устройств или тапнет в поле ввода Wi-Fi пароля от новой сети (таким образом apple ищет друзей в радиусе действия, у которых можно запросить пароль от сети).
Тебе потребуется каким-либо образом тригернуть посылку хеша от жертвы, и поймать его. Я использую утилиты из репозитория Apple Bleee. Так как Bluetooth MAC-адреса устройств рандомные и постоянно меняются, тебе придется найти другой способ определить нужное устройство в этом списке. Задача упрощается тем, что iOS транслирует текущее состояние телефона вроде: выключен экран, включен экран, lock screen, разблокирован и т.д. Поэтому просто наблюдая за действиями жертвы можно сопоставить текущее состояние устройства с устройством в таблице. Проще всего поймать момент, когда юзер достал телефон из кармана, включил экран и разблокировал телефон пальцем или лицом. Все это будет видно в сниффере.
Значок Х
означает, что пойман пакет с хешами телефона.
Их парсер иногда ломается, но чаще всего работает. Я не буду полностью пересказывать суть уязвимости, так как это подробно разобрано авторами Apple Bleee, опишу лишь свой опыт. Скажу только, что я использую USB Bluetooth-адаптер на чипе CSR 8510, так как у меня он работает сильно стабильнее, чем встроенный в макбук Bluetooth-адаптер, проброшенный в виртуальную машину.
Итак мы поймали хеш от телефона жертвы и получили заветные три байта от хеша номера телефона.
Перехваченный BLE-пакет с хешем номера телефона, с помощью утилиты read_ble_state.py
Мы знаем, что в России все мобильные номера начинаются с кода +79 и, скорее всего, у нашей жертвы телефон имеет такой же код. Получается, мы имеем диапазон номеров от +79000000000 до +79999999999, около миллиарда номеров.
Чтобы сузить диапазон, берем только коды, реально зарегистрированные за каким-либо оператором и выбрасываем остальные. В итоге диапазон становится в два раза меньше, около полумиллиарда номеров.
Дальше генерируем sha256 от всех номеров и сохраняем от каждого хеша только первые 3 байта. Заносим этот список в Sqlite базу, для ускорения поиска строим индекс.
Так выглядят данные в базе:
Все российские телефонные номера и первые три байта хеша
Дальше, имея хеш жертвы, мы можем поискать все совпадения в базе. Обычно на один хеш выходит 15-30 совпадений.
Все номера, совпавшие с хешем жертвы
Очевидно, что не все эти номера реально используются. Мы можем отсечь лишние с помощью HLR-запроса или невидимой SMS. Из 30 номеров в сети оказалось 5.
Результат выполнения HLR-запроса. Зеленым выделены номера в сети.
Я бы мог продолжать просеивать номера, например, добавить их все в Telegram/Whatsapp и посмотреть аватарки, проверить через базы вроде Getcontact и так далее. Но проще оказалось просто позвонить поочередно на все пять номеров и смотреть когда у жертвы зазвонит телефон.
Target located
Todo
- Флудер на raspberry pi очень нестабильный, нужно попробовать другие одноплатники.
- Нативный флудер для iOS будет намного лучше, но я не смог найти работающий на iOS 12-13 даже с джейлбрейком.
- Скрипт flooder.py очень тупой. Наверное, он бы мог генерировать именную картинку, беря имя из имени устройства получателя и вырезая слово iPhone.
- Способ определения номера телефона можно оптимизировать, проверяя только факт привязки номера к iMessage. Скорее всего, это даст близкое к 100% попадание.
Возможные проблемы при использовании AirDrop
Некоторые пользователи сталкиваются с различными проблемами, связанными с самой функцией или ее работой. Чтобы их устранить, воспользуйтесь одной из следующих инструкций.
AirDrop пропал
Если иконка и название приложения пропали из панели быстрого доступа, выполните данные шаги:
- Откройте приложение «Настройки».
Открываем настройки устройства - Перейдите в раздел «Основные».
Переходим в раздел «Основные» - Перейдите к подразделу «Ограничения».
Переходим в раздел «Ограничения»
- В списке «Разрешить» найдите приложение AirDrop и перегоните ползунок напротив так, чтобы он приобрел зеленый цвет.
Выдаем разрешение AirDrop - Перезагрузите устройство.
Перезагружаем устройство
- Быстрый доступ к приложению через центр контроля восстановлен.
Иконка вернулась в панель быстрого доступа