Disclaimer: информация опубликована исключительно в образовательных целях, а не для применения на практике

Как известно, два месяца назад в iOS обнаружили опасный баг: если поставить дату на 1 января 1970 года, то телефон выходит из строя по неизвестной причине.

Apple исправила уязвимость в версии 9.3.1, так что хакеры получили моральное право публиковать практические руководства по её эксплуатации. Один из способов буквально потрясает своей простотой и вредоносностью. Он позволяет автоматизировать процесс по превращению чужого девайса в кирпич, или даже многих устройств одновременно.

Трюк с массовым поражением окружающих девайсов основан на том, что они постоянно проверяют NTP-сервера для синхронизации своих часов.

Начинаете догадываться?

Специалисты по безопасности Патрик Келли (Patrick Kelly) и Мэтт Хэрриган (Matt Harrigan) провели эксперимент и смогли довольно легко вывести из строя окружающие планшеты на старых версиях iOS (способ прост для iPad, сложнее для iPhone, об этом ниже).

Известно, что устройства под iOS автоматически подключаются к «знакомым» хотспотам Wi-Fi. Под «знакомым» подразумевается тот, название которого есть в памяти устройства. На самом деле, есть довольно много хотспотов с угадываемыми именами. Например, зная название хотспота в каком-то ресторане вы можете направить атаку на посетителей этого ресторана.

А чтобы нанести урон конкретной жертве, достаточно узнать название её домашнего хотспота или точки доступа в том месте (кафе, ресторан), которое она посещает.

Всё что требуется — это установить фальшивый хотспот с заданным идентификатором и перехватить трафик к time.apple.com с помощью программы dnsmasq.



На фото показан фальшивый хотспот Wi-Fi, сделанный на базе Raspberry Pi с антенной Alfa. Общая стоимость оборудования не превышает $120.

Результат? После установки хотспота все уязвимые iPad в радиусе действия начинают тормозить и глючить. Пользователь инициирует перезагрузку, и после этого планшеты начинают быстро нагреваться. Авторы зарегистрировали нагрев iPad в эксперименте до 54°C. Процесс занимает 15-20 минут.

Интересный побочный эффект — почти весь веб-трафик не проходит после смены даты на устройстве, что только стимулирует жертву осуществить перезагрузку iPad.



Способ эффективен для всех 64-битных устройств под iOS 9.3 и младше. Нужно заметить, что в отличие от iPad, телефоны iPhone получают дату через GSM, так что придётся ещё эмулировать сеть GSM с помощью программного обеспечения OpenBTS.

Вывод: владельцам устройств на старых версиях iOS следует обязательно обновиться на 9.3.1.

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


  1. clockworkContraption
    13.04.2016 18:59
    +41

    Скорее, производят кирпичи сами владельцы iPad.
    Не бейте больно, не удержался.


    1. vitalvas
      14.04.2016 19:17
      +1

      А если запускать такое в месте сбора школьников — получим место по производству кирпичей в квадрате. (:))


  1. Celtis
    13.04.2016 19:56

    Подвержены вообще все старые версии iOS или только девятка?


    1. DagothNik
      13.04.2016 21:25

      Пользователей устройств на 64bit (это все выше iPhone 5S) на совсем древних прошивках не так много, смысл сидеть на чем-то ниже девятки, но выше семёрки? Единственное устройство у меня на старой прошивке — iPh 4. Но на нем я даунгрейд делал в приступе ностальгии по старому интерфейсу.


      1. Celtis
        14.04.2016 09:14
        +1

        Самое старое из Эппла у меня — iPad2 на iOS 6. И знаете — ни тормозов, ни багов. В игры на нем я не играю, а для интернета — более, чем.
        Но стоит обновить его до последней iOS и вперед, в магазин за новым.
        Проблема Эппла в том, что для многих нет смысла обновлять железо, т.к старое отлично работает… если вовремя прекратить обновлять прошивку.
        А тут интересно получается: слегка покошмарив пользователей их можно легко согнать со старых iOS и заставить обновить устройства.


        1. DagothNik
          14.04.2016 09:18

          А iPad 2 на 64 битном процессоре работает, да? Какая-то специальная экспериментальная модификация?


          1. Celtis
            14.04.2016 10:05

            Конечно нет. В iPad2 стоит A4, емнип.
            Я привел его лишь в виде иллюстрации того факта, что для ряда случаев имеет смысл не гнаться за обновлениями.
            А если б я его обновлял постепенно, думая что «ну, 7 — чуть-чуть тормознее, чем 6, ничего; 8 чуть медленнее 7 и т.д.» сейчас у меня был бы слаборабочий девайс.
            Вот и сейчас есть ряд устройств, начиная с первого Эйра, которые обновлять до девятки не хотелось бы.


            1. DagothNik
              14.04.2016 10:08

              A5, который двуядерный и с iOS 7.1.2 справляется на ура (у меня iPod touch 5 на этом же проце). Проблемы начались на iOS 8. А я в своём росте писал про устройства на 64 битном A7 и выше.
              И да, у меня есть еще iPhone 5 и iPhone 5S. Которые работают на iOS 9.3.1. И разницы с iPhone 4 на iOS 6.1.2 нет от слова совсем. Мне этого достаточно. На iPad — не знаю, никогда ими не владел.


              1. Big-Boss
                14.04.2016 14:01
                +1

                На кухне в креддле валяется 3GS (6.1.6), хотел метеопрограмму поставить, чтобы какая то польза была… облом. У всех требование 7.х.х и 8.х.х
                Так что разница есть!


                1. DagothNik
                  14.04.2016 14:15

                  Я имел в виду производительность. По производительности (время отклика меню, запуск приложений и прочее, а не попугаи) устройства на A6 и выше (по крайней мере iPhone) на прошивке iOS 9.3.1 превосходят устройства на A5 и ниже на прошивке iOS 6 и ниже. Что как бы не удивительно и разносит в пух и прах теорию о том, что Apple искусственно замедляет старые устройства. Замедление от прошивки к прошивке есть, но оно вызвано постоянным нарастанием разных плюшек, свистелок и прочего, а не злым умыслом Стива Джобса/Тима Кука. Предполагаю, что iOS 9 была последней прошивкой, которая замедлила устройства на совсем уж старых процессорах. C iOS 10 такого быть уже не должно, так как отвалятся (наконец-то) все аппараты на A5 (А это, на минуточку iPhone 4S, iPad 2, iPad 3 (A5X), iPod touch 5, если я ничего не забыл и не напутал, Apple TV я не учитываю, по тому, что там вообще своя ветка оси, и обновлялась она не так радикально), а у устройств на A6 дури — будь здоров. Хотя это все мои размышлизмы и возможно все будет хуже, чем я предполагаю.


  1. Gryphon88
    13.04.2016 20:18

    Немного оффтоп, но поясните, плз, зачем постоянно держать вай-фай включенным? Логично же: если постоянно держать рот открытым, то в итоге туда влетит что-то неудобосказуемое.
    Регулярно публикуются безразличные мне баги с технологиями, которыми я не пользуюсь, а потом непонятные решения. Таким динозавром себя чувствую…


    1. SKolotienko
      13.04.2016 20:23
      +2

      Удобно + оповещения


    1. Hellsy22
      13.04.2016 20:27
      +1

      Это удобно. Есть даже приложения, позволяющие выбрать профиль устройства (дом/работа) при подключении к какой-то сети. Да и проблема не во включенном Wi-Fi, а в подключении к чужим точкам доступа и слепом доверии к ним.


      1. lorc
        13.04.2016 20:35

        Да, тут или что-то умолчали, или устройства от Apple дырявы донельзя. Дело в том, что такое может произойти только если оригинальная сеть была без шифрования. Поэтому, домашние точки доступа автоматически отпадают. Так же отпадают те публичные точки доступа, которые всё-таки работают с авторизацией (например, пароль к WiFi написан в меню или на стене кафе). А подлючаться к сетям без шифрования — себе дороже в любом случае.


        1. DagothNik
          13.04.2016 21:32

          Я тоже не совсем понял. Надо будет на работе создать сеть с тем же именем, что и дома, но без пароля и подождать, подключится iPh или нет.


        1. DagothNik
          14.04.2016 12:07
          +1

          В общем проверил. К открытой точке с названием запароленной не подключается.


          1. S00
            14.04.2016 14:11

            Beeline_wifi_free. Profit.


            1. lorc
              14.04.2016 20:35

              Ну собственно, это ожидаемое поведение. Так и должно быть в целях безопасности.


        1. Fuzzyjammer
          14.04.2016 14:06
          +1

          Во многих кафе работают открытые сети, к которым посетители охотно подключают мобильные устройства. Называешь лжехотспот «Starbucks free wi-fi» и попадаешь в 90% ЦА Apple.


          1. Gryphon88
            14.04.2016 14:54

            Учитывая, что там неподалёку часто лавочки «Ремонт телефонов и техники Apple», хотспот можно запитывать напрямую от их вывески. Главное зону охвата правильно подгадать, чтобы ловилось ча метр-два от двери Старбакса


        1. TimKGS
          15.04.2016 11:03

          Публичные — не отпадают. Пароль же, как вы сказали, написан на стене, или в меню ;)


          1. lorc
            15.04.2016 12:45

            Хм, действительно. Не подумал как-то. Зная пароль нельзя перехватить траффик других участников сети, но создать подделную AP можно.


    1. OnYourLips
      14.04.2016 17:14

      А как иначе? Постоянно доставать устройство и переключать режимы?


  1. Sworfly
    13.04.2016 21:08
    +1

    Интересно, а хватит ли для окирпичивания мощностей ESP8266? Если хватит, то получится убийца iOS за ~300 рублей.


    1. vvzvlad
      13.04.2016 21:14

      Хватит. Только софт надо будет писать


      1. Alex_Gramm
        14.04.2016 11:31
        +1

        Можно покататься в метро с десятком ESP с популярными названиями точек. Эффект будет ошеломляющим.


        1. Celtis
          14.04.2016 12:04

          Когда-то давно заметил странную вещь: iPad(iOS 7) не хотел подключаться к ESP8266. Никак. То же касалось Android 4.0. А вот 4.1 и выше подключались отлично, равно как и полноценные *NIX и Linux.

          С тех пор не проверял. Может, чего изменилось в новых прошивках.


        1. vvzvlad
          14.04.2016 15:20
          +1

          Зачем с десятком? Mosmetro_free же есть.


          1. IRainman
            19.04.2016 06:20
            +1

            Чуть подкорректирую ибо правильное название «MosMetro_Free», а ещё в метро есть «Aura», а на поверхности сеть от наземного транспорта «Mosgortrans_Free». Но полный список ещё несколько шире ибо на поверхности есть ещё WI-FI в парках, общественных местах и сети операторов.

            Сообщение и для Alex_Gramm.


        1. EvgeniD
          14.04.2016 18:25

          Думаю проще сдеать прошивку для смены имени точки раз в N-минут.
          И использовать их более негуманно
          PS: делал виртуальную точку на AR9271, все работало корректно, но подключение
          Ipad (2ой) было проблематично — лаги, разрывы, только на нём.


    1. kAIST
      14.04.2016 16:07

      Еще как хватит. Недавно делал для одного квеста WiFi точку доступа, к которой подключается и вылезает captive portal с подсказкой. То есть работает веб сервер и dns сервер, и все это очень шустро, потребляет всего 40-50 миллиампер.


  1. qrck13
    13.04.2016 21:41

    Немного пугает, что можно так легко подделать WiFi сеть, так что устройство подключится к не той сети. Получается даже домашнему WiFi доверять нельзя в принципе.


    1. Raegdan
      13.04.2016 22:40

      Если злоумышленник не знает пароль от домашнего вайфая — он его никак не подделает.


      1. Foolleren
        14.04.2016 06:35
        -2

        если захочет узнает


      1. qrck13
        14.04.2016 08:00

        Я тогда не очень понял, а как в данной атаке, о которой статья, они фейковую сеть создают и iPad к ней так легко подключается? Там какие-то уязвимости в WiFi-стеке на iOS?


        1. tUUtiKKi13
          14.04.2016 09:04
          +1

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


          1. qrck13
            14.04.2016 09:26

            В статье написано:

            > А чтобы нанести урон конкретной жертве, достаточно узнать название её домашнего хотспота или точки доступа в том месте (кафе, ресторан), которое она посещает.

            Т.е. речь в том числе и о том, что подключение к домашней сети таким образом можно «перехватить»


            1. Virusmater
              14.04.2016 10:40

              Домашний вайфай != вайфай с паролем


          1. GloooM
            14.04.2016 23:38
            +1

            Статья в тему https://habrahabr.ru/post/225059/


        1. pit_art
          14.04.2016 09:38
          +3

          Можно без всяких уязвимостей назвать сеть MosMetro_Free или вроде того.


          1. Bahuser
            14.04.2016 11:24

            Удобнее будет использовать атаку «KARMA».
            (Описание технологии: theta44.org/karma)


            1. pit_art
              14.04.2016 15:44

              Я не совсем понял. В моём понимании включённый wi-fi на мобильном прериодически сканирует сеть вокруг себя и увидев знакомую — подключается. А тут получается что клиент слепо посылает запросы на подключение к знакомым точкам и ждёт ответа. Очевидно же что такое поведение опасно, неужели какая-то современная мобильная ОС позволяет себе такое поведение?


  1. lolipop
    14.04.2016 02:44

    то же самое можно сделать на дешевом китайском роутере(=<10$) с openwrt.


    1. tUUtiKKi13
      14.04.2016 09:10

      Теоретически такое можно сделать с любого рутованого мобильника/планшета под Андроидом


      1. ANTISPY
        14.04.2016 19:56
        +1

        Поискал софтину, называется Shark masq. Только осталось NTP сервер накатить и выставить на нём не правильное время. В теории. Конечно очень забавно, что с Android можно ломать айпады :D


        1. Celtis
          14.04.2016 20:21

          Достаточно BusyBox.


    1. iDm1
      14.04.2016 20:16

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


  1. potan
    14.04.2016 08:28

    Московские (билайновские) и Таллинские соты очень редко отдают время по GSM. Я пытался такие найти, так как лень на старой нокии руками время выставлять.
    Если по GSM время долно не выдается, iPhone попробует использовать NTP?


  1. jaiprakash
    14.04.2016 12:55
    +1

    А если просто отключить автоматическую установку даты/времени?


    1. vvzvlad
      14.04.2016 15:21

      Можно просто обновиться


  1. jaiprakash
    14.04.2016 16:08

    https://geektimes.ru/post/270950/#comment_9019174


  1. redpax
    14.04.2016 17:54

    Интересно, а если на уровне операторов сотовой связи подменили бы NTP-сервера, насколько серьезным был бы коллапс?


  1. pshvetso
    14.04.2016 19:34
    +1

    > На самом деле, есть довольно много хотспотов с угадываемыми именами. Например, зная название хотспота в каком-то ресторане вы можете направить атаку на посетителей этого ресторана.
    На самом деле клиенты раскрывают SSID знакомых точек доступа в так называемых probe пакетах. И угадывать даже ничего не нужно. Достаточно запустить wireshark на адаптере в режиме мониторинга, чтобы увидеть такие пакеты. Ссылка: www.wifipineapple.com


  1. IGHOR
    14.04.2016 20:43

    Я делал исследование в этом же направлении в прошлом году.
    Моей целью было выяснить будет ли работать https на заблокированном устройстве с неверной датой.
    Я написал сервер NTP и сохранял логи всех запросов направив их в свой сервер с помощью DNS.
    И я заметил что iPhone так же синхронизирует время с time.apple.com с сим картой.
    Выяснилось что синхронизация происходит с интервалом больше суток.
    Это означает что после синхронизации времени не будет больше попыток как минимум сутки (на больше терпения не хватило ждать).
    Так что вероятность что ваше устройство синхронизирует время фишинговым NTP сервером мала.