Коллектив Авторов - Цифровой журнал «Компьютерра» № 214
К оглавлению
Технологии
Слишком умные вещи: вирус для роутеров и потребитель в роли сисадмина
Евгений Золотов
Опубликовано 27 февраля 2014
Большие проблемы в компьютерном мире всегда возникают неожиданно: никто их не планирует и не желает! Ну, можно ли было вообразить ещё десять лет назад, что наглухо изолированная Java однажды станет чуть ли не самым опасным инструментом на персоналке? А «интернет вещей» — холодильники, телевизоры, термостаты — превратится в рассадник цифровой заразы? Впрочем, первое в прошлом, второе пока ещё в будущем, а пунктик на сегодня, на сейчас, для каждого пользователя дома и в офисе: роутеры. Они же маршрутизаторы, они же для большинства — просто «точки беспроводного доступа в интернет». Ещё недавно бывшие заслоном от внешних угроз, теперь они сами становятся главной причиной головной боли.
Началась эта печальная история не вчера: вот уже несколько лет о роутерах говорят на хакерских конференциях и в security-рассылках. Но, откровенно, всё равно, с какого эпизода начинать рассказ, потому что выводы в конце концов оказываются теми же самыми. Так что не будем далеко ходить, оттолкнёмся от вируса TheMoon, обнаруженного в первой половине февраля и до сих пор гуляющего по Сети.
Используя недосмотр в системном софте, TheMoon получает полномочия администратора, скачивает и запускает свою копию, после чего начинает поиск следующих жертв. Стандартный алгоритм для компьютерного «червя», да вот только «компьютерным» TheMoon можно назвать лишь с большой натяжкой: он использует уязвимость не в операционной системе ПК, а в маршрутизаторах Belkin/Linksys (нескольких серий, в частности E и Wireless-N) — и соответственно исполняется тоже в маршрутизаторе. Компьютер ему не нужен. И это объясняет, почему эпидемия в общем-то тривиального с точки зрения тактики вируса вызвала такую шумиху. TheMoon стал первым (а если не первым, то самым массовым) вирусом для роутеров.
Рано или поздно это должно было случиться. Ведь маршрутизаторы изнутри суть обыкновенные компьютеры. Да, аппаратная часть у них порой экзотическая: скажем, Linksys строятся на процессорах архитектуры MIPS. Но экзотика замаскирована от пользователя операционной системой, в качестве которой используются хорошо знакомые компьютерной общественности наработки, включая Linux.
Поэтому формально пенять владельцам инфицированных устройств нужно только на себя. В конце концов, на дворе не восьмидесятые, и каждый сетянин должен знать базовые правила цифровой гигиены: придумать хороший пароль, регулярно обновляться, не оставлять включенными ненужные программы/сервисы. К роутерам эти правила применимы на сто процентов, и Linksys, например, утверждает, что тем, кто отключил удалённое администрирование на своём маршрутизаторе и обновлял прошивку, TheMoon не страшен. Той же позиции придерживаются и другие производители.
Роутеры обладают особой привлекательностью для взломщиков: это важный элемент коммуникационной инфраструктуры дома и офиса, на который завязаны многие конечные устройства. Установив контроль над ним, контролируешь все информационные потоки в периметре. При этом — спасибо стандартным ОС — эксплуатировать «дыры» здесь в состоянии даже пресловутые скрипт-кидди. Вот почему список инцидентов с маршрутизаторами постоянно пополняется новыми именами и датами. До истории с Linksys был скандал с польскими хакерами и прошивкой ZyXEL. До того в киберкриминальной хронике отметились продукты Cisco, Netgear, Trendnet, D-Link. А буквально на днях кем-тоуличили Asus'ы: к подключенным к ним USB-накопителям может обращаться всякий желающий извне, потому что доступ по умолчанию предоставляется без пароля. Короче говоря, если вспомнить всё, что случилось с конца «нулевых», сделанная оценка — 80% домашних и офисных роутеров имеют те или иные уязвимости — не будет казаться завышенной.
Плотность роутеров (сверху) коррелирует с плотностью населения (снизу), но ещё лучше — с уровнем жизни: чем лучше живётся в конкретном регионе, тем больше там маршрутизаторов.
Так о чём спорить? Вендоры правы. Пусть рядовой юзер исходит из предположения «роутер = компьютер» и действует соответственно. Проблема, однако, в том, что юзер роутер компьютером не считает. И даже не собирается!
Это поразительная дилемма наступающей эпохи «интернета вещей»: вещи стремительно умнеют и уже достигли сложности, сопоставимой с персональным компьютером, — но их пользователь продолжает считать себя не пользователем, а потребителем. Привычка! Бытовая электроника во все времена просто работала. Она не требовала настройки. Утюг включается в розетку, стиральная машина загружается бельём, чайник заливается водой — и делают то, для чего предназначены. Потребительский подход к роутеру совершенно тот же самый: включить — и пусть раздает интернет домашним устройствам. Пытаться переложить вину за взлом роутера на пользователя (как сделала, например, Asus: объясняясь по вышеупомянутому поводу, она прозрачно намекнула, что пользователи сами виноваты — ведь обновлённая прошивка давно уже выпущена) — это всё равно что утверждать: «стиралка» вышла из строя, потому что владелец ленился периодически лазить в её нутро и следить за состоянием нагревательного элемента!
А ведь даже обновление прошивки маршрутизатора — задача нетривиальная (пользоваться функцией проверки, встроенной в веб-интерфейс самого роутера, не рекомендуется: нужно идти на сайт производителя и искать), что говорить про другие мелочи (не все сервисы выключены по умолчанию; дефолтовый пароль может вернуться после перезагрузки устройства, и т. д., и т. п.). Иначе говоря, у каждой «умной» бытовой железки есть и будут свои особенности, которые необходимо знать, чтобы правильно ею управлять. А следовательно, потребитель должен стать даже не просто пользователем, а администратором. Кошмар наяву: в ответ на обычное «Ты мужик или что?» хозяин дома берётся за мануалы и тратит выходные на усмирение взбесившихся «умных» вещей...
Понятное дело, сценарий этот никогда, ни при каких условиях не будет реализован. Потребитель останется потребителем. И в роутерах будут водиться «черви», холодильники — рассылать спам, термостаты — следить за передвижениями хозяев. Вопрос, на который предстоит дать ответ: смогут ли производители как-то сгладить этот недостаток? Специалисты утверждают, что единственным практически полезным и применимым решением пока остаётся автоматическое обновление «умных» устройств, включенное по умолчанию, но с возможностью отключения. И даже так проблему полностью не устранить (в новых прошивках случаются глюки и несовместимости, старые модели быстро замещаться новыми на конвейере, но не в домах, и т. д.). Но все прочие варианты либо утопичны, либо просто смешны — вроде функции плановой перезагрузки, которую в Belkin гордо называют «самоизлечением»...
Сильно помочь, как ни странно, могут те, на кого надежда давно потеряна, — разработчики антивирусов. Пока ещё антивирусные программы не умеют инспектировать маршрутизаторы, но никаких технических препятствий для реализации этой функции не видно. Для обывателя же это будет идеальный вариант: к антивирусам он привычен, принцип их действия понимает и в случае возникновения проблем всегда сможет воспользоваться знакомым инструментом.
В статье использованы иллюстрации Matt Newman, Sean MacEntee, csiv.
К оглавлению
Весомое доказательство: доверять ли компьютеру, если человек не в силах проверить его решения?
Андрей Васильков
Опубликовано 25 февраля 2014
Мощный резонанс в СМИ вызвала недавняя работа математиков Алексея Лисицы и Бориса Конева, выполненная в Ливерпульском университете. Многие сочли её появление знаковым событием и даже усмотрели в нём признак приближающегося превосходства искусственного интеллекта над человеческим. Что же послужило причиной таких выводов?
Ещё в тридцатых годах прошлого века венгерский математик Пал Эрдёш предположил, что для любого натурального числа C в бесконечной последовательности (x_n), состоящей только из чисел «1» и «-1», существует субпоследовательность x_d, x_{2d}, ... , x_{kd} с некоторыми положительными целыми числами k и d. Такими, что |x_d + x_{2d} + ... + x_{kd}|> C.
Гипотеза получила известность под названием задачи несоответствия Эрдёша. Её доказательство стало одной из основных проблем в комбинаторной теории чисел.