Уязвимость в iOS позволяет любому пользователю отправить SMS, скрыв свой номер и показав вместо него любой другой. Дыру обнаружил известный специалист по безопасности Pod2g, о чём опубликовал сообщение в своём блоге. Правда, он отказывается от лавров первооткрывателя и признал, что данная уязвимость, скорее всего, уже известна другим исследователям по безопасности и, возможно, некоторым злоумышленникам. Отправку SMS с поддельных номеров можно использовать для разных атак: для обмана, мошенничества и манипуляций людьми, рассылки спама и проч.

Что интересно, данная уязвимость в протоколе iOS присутствует с самого начала, когда в операционной системе появилась функция отправки SMS, то есть с незапамятных времён. Более того, она не закрыта и в последней версии iOS 6 beta 4. Исследователь обращается к компании Apple с призывом всё-таки исправить ошибку до финального релиза.

Текст SMS содержит небольшое количество байт служебной информации в формате PDU (Protocol Description Unit). Это универсальный формат, который описывает разные типы передаваемых сообщений: SMS, Flash SMS, сообщения о приходе голосовой почты, EMS и др. Спецификации PDU довольно сложны. Например, только для кодирования данных можно использовать различные кодировки: 7-битную, 8-битную, UCS2 (16-битную), с компрессией или без компрессии и т.д.

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

Отправлять SMS можно из любой программы, которая умеет составлять сообщение в формате PDU. Для того же iPhone существует несколько программ. Теперь появилась и ещё одна sendrawpdu, которую Pod2g написал для демонстрации уязвимости и выложил на github. Программа сделана на базе sendmodem от iphone-elite.

Нормальная операционная система показывала бы и номер отправителя, и номер, на который нужно отвечать, но iPhone показывает только секцию reply-to, создавая у получателя впечатление, что сообщение пришло с этого номера, в то время как истинный отправитель скрыт.

Apple уже опубликовала официальный ответ с заявлением, что компания «серьёзно относится к безопасности», и советом использовать фирменное приложение iMessages вместо SMS. Что ж, совет весьма оригинальный.



Оставить мнение