Вертолёт с linux на борту или Пингвины умеют летать Недавно вошло в моду играть в компьютерные игры, отчасти перенося действие в реальность. Тому пример AR.Drone. Это достаточно дорогая игрушка, которая должна идти в комплекте с известной яблочной продукцией. Некоторые энтузиасты переписали данное приложение под платформу Maemo 5, которая стоит на Nokia N900. Все ссылки я опубликую в конце статьи. Для начала приведу характеристики устройства с официального сайта: Вот с таким чудом технического прогресса мы имеем дело. Его можно приобрести примерно за 13 - 15 тысяч рублей. Как вы уже поняли, устройство имеет беспроводной интерфейс, через который, собственно, оно и общается с пользователем. Вы наверняка найдете большое количество видео на youtube о том, как кто-то играет в эти виртуально-реальные игрушки. Поскольку играть мы явно не собираемся, то давайте рассмотрим саму систему, а именно linux, на которой базируется данная игрушка. После включения устройство поднимает wi-fi точку. Приконнектившись к ней, можно просканировать наше устройство. Nmap показал два открытых порта - 21/tcp open ftp 23/tcp open telnet Это уже что-то. Коннектимся к телнету, и видим первый сюрприз - без необходимости ввода пароля мы попадаем в консоль с правами рута. Для начала убедимся что мы root - # whoami root Теперь взглянем на оборудование: # cat /proc/cpuinfo Processor: ARM926EJ-S rev 5 (v5l) BogoMIPS: 233.47 Features: swp half thumb fastmult edsp java CPU implementer: 0x41 CPU architecture: 5TEJ CPU variant: 0x0 CPU part: 0x926 CPU revision: 5 Cache type: write-back Cache clean: cp15 c7 ops Cache lockdown: format C Cache format: Harvard I size: 32768 I assoc: 4 I line length: 32 I sets: 256 D size: 16384 D assoc: 4 D line length: 32 D sets: 128 Hardware: Mykonos Parrot platform Revision: 0904 Serial: 0000000000000000 Кто бы мог подумать, ARM архитектура на встроенном linux’е! 128 метров - не так уж мало для вертолета с пингвином на борту. Едем дальше. Увидев список запущенных процессов, невозможно не заметить два интересных процесса - # ps -aux ... 960 root 2736 S /bin/sh /bin/check_update.sh 961 root 11824 S /bin/program.elf ... program.elf - Скорее всего, это основной процесс системы, на которой держится вся игровая-лётная система. Так же на целевом устройстве по умолчанию установлен редактор vi. Но чтобы прочитать файл /bin/check_update.sh, я заюзал обычный cat. # cat /bin/check_update.sh | less Даже бросив поверхностный взгляд, можно понять, что данный скрипт проверяет наличие обновлений в домашнем каталоге пользователя. В принципе, ничего интересного, но ведь никто не говорил, что нельзя редактировать скрипты? А эта тема (программирование для Вертолета на linux) требует уже детального разбора, поэтому я не буду здесь описывать весь процесс. Давайте посмотрим сетевые соединения: # netstat -p Далее несложно увидеть, что открыты три UPD порта - 5554, 5555, 5556 и TCP - 5559. Как ни странно, но все они относятся одному процессу - /bin/program.elf. Можно предположить, что два порта служат для передачи потокового видео с передней и задней камеры, еще один - для удалённого управления самим устройством. “Методом тыка” можно разобраться, какой порт к чему относится. Нельзя не отметить, что какая-никакая, а система защиты есть. Если для управления устройством вы используете программу для яблоководов - FreeFlight. В настройках программы можно указать один вариант защиты - чтобы доступ к устройству по wifi был только у вас, а то наверняка найдутся хулиганы, которые тоже захотят попользоваться В заключение этой маленькой статьи я хочу сказать о возможностях упомянутого устройства, которые вы можете реализовать. Никто не мешает прикрутить GPS-логгер и запустить сканирование на предмет беспроводных сетей. Можно прикрутить aircrack и начать операцию “Беспалевный взлом wi-fi сети с вертолёта”. А можно вообще автоматизировать полеты и заставить его прилетать к вам утром и отправлять на icq или e-mail новости it, сграбленные за ночь. Но нельзя упускать из внимания безопасность данного дивайся. Почему бы не поднять на компьютере сканирование wi-fi сети с именем “AR.Drone” и, после ее обнаружения, присоединиться и отослать сигналы управления устройством на UPD порт? Тогда есть шанс утром обнаружить у себя на балконе новенький Вертолет! При операционной системе linux пределу фантазии нет границ. P.S. Обещанные ссылки: официальный сайт Клиент для нокии хороший обзор официальный русский сайт P.S.S. © cyber-punk
Взял у друга на пару дней)) Впечатления - как будто насадил камеру на радиоуправляемую машинку, только она может летать и делать все что угодно. Коплю деньги))
Видел гдето неделю назад презентацию этой хни. Ну типа 2 чуваков с айфонами между собой шпилятся. Прям тоже захотелось)
Хорошая штуковина, хотет. То есть как я понял, если поставить китайский WIFI-адаптер на пару ватт и годную антенну, то километр гарантированного радиуса будет? Учитывая наличие камер, это уже имеет практическую пользу, притом немаленькую.
Мне кажется, что с этой штуковиной можно провернуть всё что угодно, главное скомпилировать драйверы под нужную платформу, и прикрепить целевой модуль правильно. Главное чтоб она взлетела!
Чтобы сделать из игрушки-вертолёта настоящего радиоуправляемого хакера, нужно постораться! А вот автоматизировать его полеты и прикрутить к веб камерам распозновалку предметов и обьектов никто не мешает!
Думаю в будущем сделают так,что я смогу управлять этим вертолетом,например в Японии,сидя дома в России.
Мда, с такими аккумуляторами толку от него немного. Кто-нибудь пробовал прикрутить к девайсу более объемные источники питания ?
прикольная балалайка , (игрался мини бибикой у которой скорость достигала 100 км час) .. а ет смарю по прикольней , видео уже пасмарел на ютюбе