NFC-телефон незаменим практически в любой ситуации. По задумкам создателей, он должен заменить и кошелек, и кредитную карту, и карту для оплаты поездок в общественном транспорте. NFC-устройству нашлось применение даже в музее. Рядом с экспонатами в музеях, картинных галереях и парках-музеях все чаще располагают специальные метки. Если поднести NFC-телефон к такой метке, то на его экране автоматически откроется браузер, который осуществит поиск в Интернете необходимого описания рассматриваемого экспоната.
И это не единственное преимущество устройств нового поколения. В странах Европы все чаще можно увидеть информационные плакаты на местном языке, внизу которых есть NFC-метка и примечание о том, что любой путешественник, поднеся телефон, может прочитать на его экране перевод данного плаката на родном языке. Действительно, подобные «умные информационные плакаты» позволяют автоматически открыть Web-браузер сотового телефона на той странице всемирной сети Интернет, где находится подробная информация об интересующем вопросе.
Когда-то, основатель Microsoft Билл Гейтс обещал, что проблема спама будет решена. Похоже, что появление этой технологии значительно усложняет задачу. Этот прогноз был сделан еще задолго до появления NFC стандарта.
К сожалению, подобная услуга не всегда безопасна. И даже в центре европейской столицы можно получить вирус на свой телефон простым прикосновением мобильного устройства к плакату. И дело не в потере бдительности, а в том, что технология «умных информационных плакатов» уязвима.
Мы уже рассмотрели формат Smart Poster, который используется для того, чтобы пользователь мог получить быстрый доступ к информационному ресурсу в сети Интернет.
Рассмотрим подробнее, что происходит с мобильным устройством, когда пользователь подносит его к «умному плакату». Сначала NFC-передатчик телефона получает сообщение с метки плаката и приступает к ее анализу. В сообщении с «умного плаката» содержится запись формата Smart Poster, формат Smart Poster подразумевает наличие следующей структуры.
URI |
Text |
Action |
В поле URI хранится ссылка на тот информационный ресурс, где содержится необходимая пользователю информация. В поле Text содержится комментарий к открываемой ссылке. А в поле Action содержится команда вызова того приложения мобильного телефона, которое может открыть ссылку и верно интерпретировать ее. Обычно в поле Action содержится команда, запускающая web-браузер.
Отметим, что поле Text в формате Smart Poster имеет специальное назначение. Дело в том, что именно основываясь на информации, содержащейся в этом поле, пользователь принимает решение о том, стоит ли открывать переданную ссылку. Когда NFC-передатчик мобильного телефона считал сообщение, он отображает на экране содержимое поля Text и собственно ссылку, предлагая пользователю подтвердить или отклонить вызов данной ссылки. На этом праве выбора и построена защита телефона.
К сожалению, существует возможность ввести в заблуждение пользователя мобильного телефона и заставить его открыть совсем не ту ссылку, которую он хотел бы прочитать.
Рассмотрим, как злоумышленник может это сделать. Для этого необходимо подменить NFC-метку на «умном плакате». Другими словами просто наклеить на NFC-метку «умного плаката» свою собственную. Но этого недостаточно.
Необходимо также сформировать такое содержимое NFC-метки, которое покажет пользователю ровно ту же информацию, которая предлагалась бы оригиналом, но при этом переадресует пользователя телефона на страницу с вирусом.
Сделать свою NFC-метку и записать туда собственную информацию достаточно просто. Для этого необходимы специальное устройство NFC-Encoder, которое имеется в свободной продаже, и пустая перезаписываемая метка, которую также можно беспрепятственно купить. Вопрос остается в том, какую информацию надо записать в метку, чтобы пользователь перешел на ложную страницу.
Тут все просто. Дело в том, что для подмены информации можно использовать оплошность, которую допустили создатели NDEF-стандарта сообщений. Мобильный телефон с NFC-передатчиком может отобразить на экране лишь фиксированное количество строк, которые записаны на NFC-метке. Когда количество строк превышает некоторую возможную величину, строки просто не отображаются на экране. Это верно и для сообщения, которое появляется на экране телефона при запросе подтверждения перехода на информационный ресурс в сети Интернет.
Рассмотрим, как подобной ситуацией пользуется злоумышленник. Предположим, объектом атаки является пользователь, который хочет обратиться к информационному плакату агентства по прокату автомобилей за границей. Когда пользователь подносит телефон к обыкновенному плакату, на экране отображается следующее сообщение:
Прокат автомобилей во Франции
httр ://www.auto-in-france.ru
Первая строка сообщения хранится в формате Smart Poster в поле Text, а вторая в поле URI.
А теперь приведем сообщение, которое злоумышленник может поместить в свою собственную NFC-метку.
Прокат автомобилей во Франции\http://www.auto-in-france.ru\r\r\r
http://www.virus2.ru
Символ \r означает перенос каретки, то есть переход на новую строчку. При интерпретации сообщения на экране телефона приведенное сообщение будет выглядеть ровно также, как эталонное сообщение.
Первая строка в данном сообщении — это поле Text, а вторая строка — это поле URI.
Строка поля URI на экране телефона не появится, так как количество строк, которые может отобразить телефон будет превышено. В случае подтверждения перехода, пользователь попадет на страницу http://www.virus2.ru, с которой он немедленно получит вирус на свой телефон. А о том, какими существенными возможностями обладают вирусы мобильных телефонов, мы уже говорили ранее.
ЗАЩИТА ОТ АТАКИ
Защититься от атаки можно, ведь большинство браузеров мобильных телефонов отображают адрес открываемой страницы. Так как скорость мобильного Интернета, как правило, достаточно мала, то переход на страницу злоумышленника можно прервать, вовремя заметив подмену. Таким образом, при пользовании весьма удобными «умными плакатами» необходимо оставаться бдительными, пока разработчики прогрессивной технологии не устранят известные уязвимости.