2854

Flipper Zero — Тамагочи для хакеров

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


Внутри я расскажу как мы к этому пришли.


Я люблю ковырять все вокруг и постоянно таскаю с собой разные железки для этого. У меня в рюкзаке: WiFi–адаптер, NFC–ридер, SDR, Proxmark3, HydraNFC, Raspberry Pi Zero (из–за этого бывают проблемы в аэропорту).Я мечтал об устройстве, которое бы реализовывало типичные сценарии атак, было всегда в боевой готовности и при этом не представляло из себя пачку разваливающихся плат, смотанных изолентой.

После того как была опубликована открытая реализация протокола AirDrop owlink.org и исследование от ребят из HexWay об уязвимостях iOS Apple–Bleee, я стал развлекаться новым для себя способом: знакомиться с людьми в метро, рассылая им картинки через AirDrop и собирая их номера телефонов. Потом я захотел автоматизировать этот процесс и сделал автономную дик–пик машину из Raspberry Pi Zero W и батарейки. Все бы хорошо, но этот девайс было крайне неудобно носить с собой, его нельзя было положить в карман, потому что острые капли припоя рвали ткань штанов. Я попробовал напечатать корпус на 3d–принтере, но результат мне не понравился.

Потом я увидел потрясающий проект pwnagotchi. Это как тамагочи, только в качестве еды он ест WPA–хендшейки и PMKID от Wi–Fi сетей, которые потом можно брутить на GPU–фермах. Мне так понравился этот проект, что я несколько дней ходил со своим pwnagotchi по улицам и смотрел как он радуется новой добыче. Но у него были все те же проблемы: нельзя нормально положить в карман, нет органов управления, поэтому любой пользовательский ввод возможен только с телефона или компьютера.

И тогда я наконец понял, каким вижу идеальный мультитул, которого мне не хватало. Я написал об этом в твиттер и идея понравилась моим друзьям промдизайнерам, которые делают серьезные электронные штуки. Они предложили сделать полноценный девайс, вместо наколенной DIY–поделки. С настоящим фабричным производством и качественно подогнанными деталями. Мы приступили к поиску концепции дизайна.

Первые пробы дизайна

Первые прототипы напечатанные на 3д–принтере

Я решил использовать олдскульный монохромный LCD–дисплей с разрешением 126х64px как на старых телефонах Siemens. Во первых это просто круто, монохромный экранчик с оранжевой подсветкой вызывает у меня неописуемый восторг, эдакий ретро–милитари–киберпанк. Его прекрасно видно на ярком солнце и у него очень низкое энергопотребление, около 400uA с выключенной подсветкой. Поэтому его можно держать в Always–On режиме и всегда выводить изображение. Подсветка будет включаться только при нажатии на клавиши. Такие экраны до сих пор выпускают для всяких промышленных устройств и кассовых аппаратов.

Так выглядят первые девборды на плате Nucleo STM32.

Первые прототипы корпуса мы печатали на 3д-принтере и так выглядели отладочные платы

Изначально все было построено вокруг Raspberry Pi Zero, но потом мы решили выбросить его и делать свою плату с нуля на чипе i.MX6 ULZ. Я лично обожаю Raspberry Pi, но в процессе разработки оказалось, что он просасывает по многим причинам. Самая банальная — его тупо нельзя купить. Даже большие дистрибьютеры имеют в наличии не более пары сотен штук rpi0, а магазины вроде Adafruit и Sparkfun продают не более 1 штуки в руки. Да, есть несколько заводов, которые производят rpi0 по лицензии от Raspberry Pi Foundation, но они тоже не могут отгрузить партии по 3–5 тысяч штук. Выглядит это так, что rpi0 продается по цене на грани себестоимости и больше направлен на популяризацию платформы.

Кроме того что ее нельзя купить, rpi0 имеет много других проблем:

* Мало интерфейсов.

* Старый процессор BCM2835, который использовался еще в первой версии rpi. Горячий и не очень энергоэффективный.

* Нет управления питанием, нельзя отправить плату в сон.

* Устаревший встроенный WiFi которые крашится под нагрузкой в мониторном режиме

и много других причин.

Одна из огромных проблем это как раз поиск современного WiFi чипа который поддерживает мониторый режим и инъекции пакетов и при этом не устарел на 15 лет. Можешь почитать об этом здесь.

Процессор который мы выбрали  (i.mx6 ulz) намного энергоэффективней и современнее.


Так выглядели прототипы флиппера вместе с линуксовой платой

Пока мы работали над линуксовой частью флиппера, у нас в руках был почти готовый модуль на STM32, который управлял периферией, экраном, кнопками. Без линукса он умел 433MHz радио, домофонные ключи и RFID карты. Чем не готовый девайс – подумал я. Так мы решили сделать из него отдельное устройство. Теперь флипперов два — Zero и One.


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


Прежде всего это тамагочи

Все действия выполняемые на Флиппере комментирует дерзкий дельфин. В режиме простоя он ведет себя как тамагочи, живет своей жизнью и заигрывает с вами. С ним можно поиграть.

Персонаж дельфина списан с появляющегося в конце фильма Джони Мнемоник кибер-дельфина-хакера, который взламывал мозги.

В версии Zero есть один порт USB Type-C для зарядки, гребенка GPIO, глазок инфракрасного порта, отверстия под ремешок

В новых версиях мы переработали джойстик, он стал почти в два раза больше чем в прототипах.

Если будет интересно, я расскажу подробнее о проекте в комментариях.

Вы смотрите срез комментариев. Показать все
4
Автор поста оценил этот комментарий

Я не технарь совсем и у меня вопросы:
1) Меня заинтересовал сей девайс, особенно ик порт для управления техникой. Будет ли дружелюбный для нетехнарей интерфейс и какие-нибудь мануалы? Или это рассчитано исключительно на закоренелых гиков?
2) Сможет ли человек без тех образования использовать остальной функционал? Ну например сохранить ключи от домофона на устройство? Или там можно запутаться в цифровых дебрях?

раскрыть ветку (14)
4
Автор поста оценил этот комментарий

ик для управления техникой базово идет в куче телефонов, redmi 4 например. Просто к слову, вдруг поможет.

раскрыть ветку (3)
0
Автор поста оценил этот комментарий

Я кстати слабо себе представляю 6 кнопочный пульт от телека, вернее удобство его использования.

раскрыть ветку (2)
3
Автор поста оценил этот комментарий
Чувак у меня 6 кнопочный пульт на сяоми тв, полет нормальный
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

У тебя на Сяоми тв центральный кружок сенсорный, это грубо говоря трекпад, совсем разные сценарии использования могут быть. Плюс выделенные кнопки для важных функций, здесь же по сути стандартая крестовина и назад. Представь для примера процесс переключения с режима собственно телека, на режим монитора, у тебя я полагаю это 2-3 клика, а может даже один, тут же - вопрос

3
Автор поста оценил этот комментарий

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


Другое дело, если вы захотите самостоятельно модифицировать прошивку или заливать свои программы, тогда нужно будет обладать базовыми знаниями программирования.

раскрыть ветку (9)
0
Автор поста оценил этот комментарий

будет ли faq на русском?

раскрыть ветку (3)
1
Автор поста оценил этот комментарий

Да, инструкция на русском будет когда финализируем прошивку и можно будет делать актуальные скриншоты интерфейса и пунктов меню.

раскрыть ветку (2)
0
Автор поста оценил этот комментарий

когда будет готово творение?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Если нас не убьет коронавирус, то надеюсь осенью начнем отправлять.

0
Автор поста оценил этот комментарий
Будет ли продуман, функционал управления с телефона?
раскрыть ветку (4)
0
Автор поста оценил этот комментарий

Пока приложение писать не собираемся. Bluetooth в версии Zero тоже под вопросом. Но на версии One точно можно будет управлять через веб-интерфейс.

раскрыть ветку (3)
0
Автор поста оценил этот комментарий
Ну не вы напишите, я напишу. Огромная просьба, чтоб возможность была. Я так понимаю на крайний случай телефон можно будет через Type -C подцепить?
раскрыть ветку (2)
0
Автор поста оценил этот комментарий

По usb можно, да. Только протокол для управления придется изобретать.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Ну придется, а куда деваться, всеровно же на до будет отправлять на GPU ферму на декодирование, с голубазубиком ещё придется прикручивать продвинутое шифрование, а по USB можно будет принебречь, по началу хотя бы.
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества