Обнаружен способ обхода защиты от перебора пароля на iPhone/iPad. На самом деле — нет

https://www.zdnet.com/article/a-hacker-figured-out-how-to-brute-force-an-iphone-passcode
  • Перевод
image

Атака позволяет злоумышленникам осуществлять любое количество попыток ввода пароля на заблокированном устройстве Apple без риска, что сработает защитный механизм, стирающий все данные.

С тех пор, как в 2014 году была выпущена iOS 8, все айфоны и айпады используют шифрование. Часто защищённые 4- или 6-значным паролем эти устройства становятся практически неуязвимыми для взлома, благодаря сочетанию программных и аппаратных средств безопасности. В случае превышения допустимого числа попыток ввода пароля все данные с устройства удаляются.

Но Мэтью Хики, исследователь безопасности и сооснователь компании Hacker House нашёл способ обойти ограничение в 10 попыток и ввести столько паролей, сколько захочет — даже на iOS 11.3.
Атакующему нужен лишь включенный заблокированный смартфон и Lightning-кабель.
В обычных условиях на айфонах и айпадах ограничено количество попыток ввода пароля в минуту. Последние устройства Apple содержат отдельный чип для защиты от брутфорс-атак, который подсчитывает, сколько попыток ввода пароля было сделано, и замедляет ответную реакцию с каждой новой ошибкой.

Хики сумел обойти эту защиту. Он объяснил, что когда айфон или айпад подключены, и атакующий посылает нажатия клавиш, это вызывает срабатывание прерывания, которое имеет наивысший приоритет на устройстве.
Вместо того, чтобы отправлять пароли по одному и ждать ответа, отправьте их все сразу. Если вы запустите брутфорс-атаку одной длинной строкой, она будет обработана целиком как одна попытка ввода пароля, что позволит избежать обнаружения подбора и удаления данных.

Атакующий может отправить все пароли за один раз, перечислив их в одну строку без пробелов. Из-за того, что это не даёт программному обеспечению перерывов, процесс обработки клавиатурного ввода удерживает более высокий приоритет, не давая запуститься процессу подсчёта попыток ввода и удаления данных с устройства. Это означает, что атака возможна только после загруки устройства, говорит Хики, так как тогда запущено больше программ.

В готовящемся обновлении iOS 12 будет представлен режим ограничения USB, который сделает невозможным использование порта ни для чего, кроме зарядки устройства, если прошло более часа с момента последней разблокировки. Это ограничит возможности эксплуатации найденной уязвимости, так как в ходе брутфорс-атаки на проверку каждого пароля тратится 3-5 секунд, что позволит за час подобрать только четырёхзначный пароль, но не шестизначный.

Хики отправил Apple письмо с описанием уязвимости, но пока не получил ответа.
Найти этот баг было несложно. Думаю, и другие справятся, либо уже сделали это.

UPD 23.06.2018

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

UPD 24.06.2018

Пресс-секретарь Apple Мишель Уаймен заявила, что недавний отчёт о способе обхода защиты на айфоне является ошибкой и результатом некорректного тестирования.

Хики написал позже в своём Твитере, что, похоже, не все передаваемые пароли фактически доходили до устройства:
Пароли не во всех случаях попадали в модуль безопасности. То есть, хотя это выглядело, как будто они были введены, на самом деле они не были проверены устройством на коррректность и не увеличивали счётчик попыток входа.

Хики благодарит Стефана Эссера за помощь.

Я вернулся к повторной проверке кода и процесса тестирования. Когда я отправлял пароли на смартфон, казалось, что 20 и более из них были введены, но на самом деле для проверки в устройство отправлялись лишь 4-5 паролей.
Поделиться публикацией
Комментарии 25
    +3
    В случае превышения допустимого числа попыток ввода пароля все данные с устройства удаляются.


    Если эта опция включена.

    Атакующему нужен лишь включенный заблокированный смартфон и Lightning-кабель.


    Про компьютер и софтину для посылки паролей изящно промолчали.

    Здесь прям чувствуется школа Ализара.
      +1
      Если бы это было вашим источником дохода, стали бы вы это разглашать?
        0
        Если бы это было бы источником заработка, то Мэтью вряд ли бы отправил репорт в Apple об уязвимости.
          0
          В статье явно указан вектор атаки и некоторые детали её реализации.
          Меньше всего хотелось бы появление скрипт-кидди в этой отрасли и явных последствий с этим связанных.
            +7
            Да при чем тут скрипт-кидди, автор пишет:

            Атакующему нужен лишь включенный заблокированный смартфон и Lightning-кабель.


            еще ДО описания самой атаки. Можно, например, подумать, что для обхода блокировки достаточно втыкать-вынимать кабель с частотой 4 герца, сводя с ума телефон. Автор не написал, что нужен еще и ПК с софтом. Не написал намеренно, зато получилось «громко» и кликбейтово.
            И желтушно.
              –4
              В чем желтушность?
              Из статьи понятно, что пароли отправляются по кабелю, а не вводятся с эурана вручную. Очевидно, что для этого нужен какой-то софт.
                +4
                В том, что «нужен только lighting-кабель» звучит лучше, чем «нужен lighting-кабель, компьютер и специальное ПО». Это усиливает эмоции от новости без видимых на то причин (lighting-кабель является самой доступной и примитивной частью всей атаки, явно всё не вокруг него крутится).
                  0
                  Я не знаю кому могло прийти в голову, что атака с помощью кабеля возможна без непосредственного применения кабеля по назначению (передача данных между двумя устройствами), что для меня делает необходимость подключения телефона к какому-либо иному устройству (например ПК) очевидной и при этом дает понимание того, что речь идет об атаке именно телефона, а не забэкапленного образа. К тому же это не заголовок статьи, который ради кликбейтности часто делают желтушным. Статья вполне содержательна, а эта одна фраза в середине статьи явно не способна серьезно увеличить количество просмотров.
                  Но как минимум 4 человека считают иначе. Ну и ладно, поэтому мы все разные
                    0
                    «Атакующему нужен лишь включенный заблокированный смартфон и Lightning-кабель.»
                    Не поленился и полез в словарь. Наиболее подходящим по контексту значенем слова «лишь» является «ничего другого, кроме указанного». Каким образом можно превратить «ничего другого, кроме смартфона и Lightning-кабеля» в «нужен смартфон, lighting-кабель, компьютер и специальное ПО» мне непонятно
                      0
                      Я не знаю кому могло прийти в голову, что атака с помощью кабеля возможна без непосредственного применения кабеля по назначению (передача данных между двумя устройствами)

                      Мне, например. Из-за безграмотного (технически) содержания статьи, я подумал, что подключение кабеля позволяет набрать пароли прямо на самом телефоне, всем скопом, и недоумевал — каким образом 1) телефон различит где кончается один пароль и начинается другой; 2) как это всё набирать на телефоне в достаточном количестве, и 3) о каких блин прерываниях при нажатиях на какие блин кнопки идёт речь, если у айфона всего одна кнопка (ну, плюс кнопки громкости) а всё остальное сенсорный экран.
                      Лишь чтение комментариев расставило точки над и.
                        0
                        Я не знаю кому могло прийти в голову, что атака с помощью кабеля возможна без непосредственного применения кабеля по назначению (передача данных между двумя устройствами)


                        Да придушить кабелем хозяина телефона аккуратненько — разблокирует как миленький или выдаст код.
          +3
          Из-за того, что это не даёт программному обеспечению перерывов, процесс обработки клавиатурного ввода удерживает более высокий приоритет, не давая запуститься процессу подсчёта попыток ввода и удаления данных с устройства.
          Это же чушь собачья.
            0
            да вроде что то логичное есть.
            попытки приходят пачкой и обрабатываются. а пауза включается отдельным механизмом, который тормозит.
            как то так.
            хотя ученый, похоже, немного изнасиловал журналиста
            +4
            Можно, пожалуйста, мнение технического специалиста в студию?

            У меня, человека далекого от технологий, сложилось впечатление, что в одну кучу смешали теплое с мягким.
              0
              Интересно, сколько максимально можно передать «одной строкой» и что под этой строкой подразумевается. Наверняка есть максимальный размер буфера. Но судя по тому, что подбираются шестизначные цифровые пароли, то как минимум семимегабайтную строку передать можно, если на один символ тратится один байт.
                0
                Предполагаю, что автор на втором конце кабеля имитирует клавиатуру и засылает в айфон длинную строку, как будто пользователь ввёл пароль длиной не 4 символа, а 4.000 символов. Уязвимость в том, что смартфон бьёт эту строку на куски по 4 символа и каждый из них воспринимает как отдельный пароль. При этом не происходит увеличения счётчика попыток ввода пароля, как при использовании тач-скрина.
                Не думаю, что при этом есть какое-то ограничение на «размер буфера». Но сам Мэтью признаётся, что не пробовал передать полный набор 6-значных паролей.
                +2
                В готовящемся обновлении iOS 12 будет представлен режим ограничения USB, который сделает невозможным использование порта ни для чего, кроме зарядки устройства, если прошло более часа с момента последней разблокировки.

                Экий изящный костыль :)
                  0

                  +1, а так как ios 12 доступна на тех же устройствах, что и ios 11, то статья актуальна только для ближайших трёх месяцев и для айфона 5 и старее.

                    +1
                    На самом деле — весьма полезная фича. Видел подобное в некоторых кастомных прошивках на Android (в OmniROM, например) — порт пригоден только для зарядки, если устройство заблокировано. Можно даже кардинальнее — отрубить через build.prop передачу данных через порт совсем.

                    Таким образом, у спецслужб остаётся намного меньше времени, чтобы попытаться взломать устройство без помощи владельца. Сейчас они могут этот айфон держать у себя на подзарядке хоть неделями, ожидая судебного разрешения. А так у них только час, а потом уже придётся выбивать из владельца пароль (если владелец жив).
                      0
                      Ну по-хорошему и USB-доступ не должен давать возможности взламывать, но лишним защита не будет. Я USB на айфоне никогда не использую. Раз в год какое-нибудь приложение напишу, для отладки использую, но там он разлочен, да и для такого дела мне не лень будет в настройках выключить-включить. Если будет такая настройка — отключу однозначно. Даже не за спецслужбы переживаю, а то, что стырят айфон да разблокируют таким девайсом через какую-нибудь уязвимость, а без них смысл воровать айфон уже уменьшается до стоимости запчастей.
                        0
                        На моём ЛЖ настройка по дефолту такая: «только зарядка». При включении чего-то другого, например режима передачи файлов (МТР), можно выбрать: навсегда или только на время текущего подключения. По-моему, это на голову выше, чем тупой запрет ЮСБ соединения накорню.
                          0
                          Просто я параноик. А файлы мне всё равно удобнее перекидывать через «облако».
                            0
                            параноик

                            «облако»

                            В кавычках потому что своё и шифрованное?
                              0
                              Не своё, но всё, что я не готов показать, разумеется, шифруется.
                      +1
                      Уже опровергли. Расходимся.

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

                      Самое читаемое