Знаковый символ: iOS denial of service

    image

    В операционной системе iOS обнаружен необычный баг, приводящий к перезагрузке устройства. Достаточно прислать на iPhone специальный знак из алфавита индийского языка телугу జ్ఞా («знак»), после чего устройство автоматически перезагружается.

    Один из символов языка телугу, которым пользуются в некоторых штатах Индии, приводит к перезагрузке iPhone. Если вставить этот символ в текст сообщения и открыть, то это приедет к перезагрузке устройства. Применение этого символа сработает с Facebook Messenger, iMessage, WhatsApp, Gmail, Outlook.

    Исходная последовательность U + 0C1C U + 0C4D U + 0C1E U + 200C U + 0C3E, которая является последовательностью символов телугу приводит к перезагрузке системы, будучи введена в любое системное текстовое поле. Особенность изменения символов, приводящая к краху системы кроется в особенностях языка телуги и бенгали (и возможно других диалектов). К краху приводит преобразование суффикс-соединительных согласных — когда второе согласное присоединяется к первому для объединения без значительного изменения его формы.

    image

    Это не первый случай, когда iOS крашится из-за странных символов, URL-адресов или даже видео. В прошлом месяце одна ссылка могла заморозить iPhone (chaiOS bug), эта проблема была устранена с выпуском iOS 11.2.5. В 2015 году схожая уязвимость в iMessage приводила к перезагрузке устройства. Также, в 2016 году 5-секундное видео приводило к «зависанию» устройства.

    Обработка специфичных символов или их последовательностей относится к так называемым «sms of death».

    Такого плана уязвимости периодически обнаруживаются как на различных платформах, так и в конкретных приложениях. Они могут приводить к перезагрузке устройства, зависанию, «окирпичиванию» либо к неверной трактовке контекста исполнения текста (как недавний RLO-баг в telegram).

    Эти уязвимости появились задолго до эры современных смартфонов: такого рода баги были в телефонах Nokia (TP-UD пейлоад в т.н. флеш-смс), классическая уязвимость "%English" в телефонах Siemens и многие другие, менее известные.

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



    Бонус для лингво-хакеров: разбор синтаксического фаззинга диалекта бенгали, приводящего к подобной проблеме по ссылке (англ.).
    Pentestit 56,78
    Информационная безопасность
    Поделиться публикацией
    Комментарии 18
    • +4
      В 2015 году схожая уязвимость в iMessage приводила к перезагрузке устройства.
      Кажется, здесь стоит говорить об уязвимости в ОС, если прикладной софт способен нарушить ее работу, разве нет?
      • 0
        Скорее в компоненте ОС, если рассматривать iOS как единую систему.
      • +1
        Этот символ приводит к краху приложений на Mac OS X (по крайней мере 10.13.3).
        Что пришло в голову и сразу проверил:
        1. Браузеры.
        Проверено на сафари и хроме. Для воспроизведения нужно выделить символ и открыть контекстное меню. На хроме первый раз удалось даже открыть страницу гугла с поиском по этому символу.
        2. Консоль.
        Скачал страницу и вывел ее в консоль через cat. В результате терминал крашнулся.

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

        P.S. Можно не пытаться скопировать символ со статьи — он неполный.
        • 0
          На скриншоте полный символьный набор. В статье — защита «от дурака» + есть символьная последовательность.
        • +1
          > Эти уязвимости появились задолго до эры современных смартфонов

          Даже задолго до смартфонов вообще. «Правоспособность-способность лица иметь права и нести гражданские обязанности» и «Яр-Тур.~».
          • +3
            «Никогда такого не было, и вот опять.»
            • 0

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

              • 0

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

              • +3
                специальный знак из алфавита индийского языка телугу


                Древнеиндусский код? Вот это я понимаю, многовековые традиции кодинга и поиска уязвимостей.
                • 0
                  Скорее древнее заклинание разрушения.
                • 0
                  11.3 beta2 админ сегодня пошутить решил — не получилось, не работает этот баг
                  • 0
                    На 11.3 баг не воспроизводится.
                  • +1

                    На iOS 10.3 и MacOS 10.11.6 не воспроизводится.

                    • +2
                      А кто-то может сказать почему такие баги с символами вообще происходят? Насколько я знаю символ состоит из глифов, глиф из сплайнов а те из кривых Безье и правила наложения глифов друг на друга четко описаны в форматах TrueType или OpenType. Где тут могут быть баги, неужели нельзя просто написать не глючный движок рендера набора кривых Безье?
                      • 0
                        Почитайте статью по ссылке.
                        • +2
                          Статья о том, когда и как, а не о том почему.
                        • 0
                          Можно, но «не все программисты одинаково полезны». p.s. Тем, кто попал на символ в сафари поможет, например, открытие через закладки по форстачу.
                        • +1

                          Помню ещё в прошлом веке в ранние версии форумов ikonboard вставляли [img]file:///c:/con/con[/img], роняя ОС бедолагам с Windows 98, которые заходили в тему. Ничего в мире не меняется...

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

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