Издавна люди мечтают о волшебной кнопке, при нажатии на которую происходит чудо и наступает счастье. За последнее столетие мечты стали активнее воплощаться в реальность, и мы с вами увидели немало однокнопочных подвижек в направлении счастья. Оно и неудивительно: технологии и устройства становятся все более сложными, и люди не всегда готовы вникать в их суть. Куда приятней нажать одну кнопку на устройстве и получить желаемый результат, чем ковыряться в потрохах устройства и получить в итоге примерно то же самое. А когда появился особый класс людей под названием маркетологи – упрощение стало касаться даже тех сфер, в которых оно не совсем уместно. В сетевых технологиях такой волшебной кнопкой на рубеже тысячелетий стал DHCP, о котором я бы и хотел поговорить. Нет, это не будет очередным скучным рассказом о какой-то странной ипостаси виртуального мира. Я бы хотел приоткрыть необычные грани того, чем вы пользуетесь ежедневно и ежечасно, возможно, даже и не подозревая об этом, и объяснить, почему нельзя использовать DHCP, не понимая, как он работает.
Для начала позволю себе небольшой экскурс в историю. В прошлом тысячелетии волшебный мир интернета кардинально отличался от виртуального мира сегодняшнего дня. Например, один мегабайт был совершенно немыслимой цифрой. Он измерялся в двух единицах – в минутах и в рублях. На супербыстром модеме 20 века один мегабайт данных выкачивался за две с половиной минуты и стоил около двух рублей. Сейчас даже читаемая вами страница при полном отсутствии рекламы и скромном графическом оформлении тянет на четыре рубля. Понятно, что в прошлом веке использование интернета в развлекательных целях было довольно накладно, а посему не так уж и много людей были онлайн-завсегдатаями. В большинстве своем это были разлученные расстоянием влюбленные, техноманьяки и приближенные к ним люди. И никто тогда не думал о том, как сделать доступ в интернет проще и понятней.
Но прогресс не стоял на месте. Необходимая для дешевого интернета инфраструктура была построена в считанные годы. Интернет стал преподноситься как не слишком затратное развлечение. И, конечно, с ним решили познакомиться люди, которых никак не назовешь техноманьяками. Их не интересовало, как это работает. Им от интернета нужны были в первую очередь развлечения. Изобретение волшебной кнопки было неизбежно – от нее напрямую зависела жизнь провайдеров да и существование интернета в целом. И такое важное изобретение было сделано в далеком 1993 году. Причем оно было настолько тщательно продумано, что не требовало даже нажатия кнопки. Вы просто подключаете сетевое устройство к провайдеру – и оно начинает выпускать вас в интернет.
Как устроена эта волшебная кнопка? Очень просто. Сетевое устройство, увидев подключенный кабель, отправляет в сеть специальное сообщение, смысл которого сводится примерно к следующему: «Дайте мне настройки, чтобы я правильно работало!». Если в той же сети есть устройство, которое понимает такие запросы (DHCP-сервер) – оно отправляет в ответ большое количество настроек, необходимых для правильной работы устройства в этой сети. Как правило операция по настройке занимает долю секунды. В результате на устройстве волшебным образом появляется доступ в интернет без каких-либо лишних телодвижений. Все довольны и счастливы.
Но что может нарушить идиллию и счастье?
DHCP глазами потребителя
Частенько в компьютерные магазины приходят дамы, показывают пальчиком на маршрутизатор и задают консультантам вопрос: «Если я подключу эту коробочку у себя дома – у меня сразу заработает интернет?». Конечно, ответить на этот вопрос без дополнительных наводящих вопросов не представляется возможным. Не совсем честный консультант с меркантильными целями может сказать не всю правду. Далеко не все провайдеры используют DHCP. Но вы вполне можете попасть в число счастливчиков. Если ваш провайдер раздает настройки по DHCP, а компьютер вы только что принесли из магазина – вам не придется беспокоить техническую поддержку провайдера, интернет появится «сам», стоит лишь подключить два проводка. Дело в том, что практически все маршрутизаторы для домашнего применения по умолчанию принимают настройки по DHCP от провайдера и раздают их по DHCP на подключенные компьютеры. Несомненно, это удобно. Вам не требуется вникать в суть сетевых настроек, они производятся незаметно, вы видите результат и он вам нравится.
Когда провайдер использует не совсем стандартные технологии предоставления услуг (PPPoE / PPTP / привязка по MAC / etc) – у клиентов начинают возникать сложности. Конечно, любой провайдер при подключении выдает клиенту конвертик с копией договора и необходимыми настройками. Но многие ли хранят его в доступном месте? По опыту могу сказать, что очень немногие. Конечно, техническая поддержка провайдера придет на помощь. Девочка или мальчик на первой линии техподдержки с удовольствием расскажет о том, что нужно настроить, чтобы получить доступ в интернет. Но и в этом случае клиент будет использовать DHCP, правда только между маршрутизатором и подключенными к нему компьютерами. В противном случае пришлось бы настраивать не только провайдерскую часть маршрутизатора, но и вручную забивать настройки на всех компьютерах в домашней сети. Так что и здесь DHCP приходит на помощь и упрощает жизнь.
DHCP глазами провайдера
Идеальный провайдер стремится предоставить клиентам максимально качественные и стабильные услуги, чтобы клиенты как можно меньше обращались в техническую поддержку. И, конечно, когда рассматривается вопрос о технологиях предоставления услуг, далеко не последнюю роль играет простота поддержки. DHCP вне всяких сомнений — идеальный вариант. Но, к сожалению, провайдерские сети куда сложнее домашних, к ним предъявляются совершенно другие требования. И не всегда схема организации провайдерской сети позволяет легко и просто внедрить раздачу настроек по DHCP. Бывают и тяжелые случаи. Провайдер, желая упростить клиентское подключение, внедряет DHCP на сети, которая для этого не совсем подходит. В результате происходят аварии, дестабилизирующие работу многих клиентов.
Приведу конкретный пример. Девочка приобрела маршрутизатор, чтобы подключить к интернету помимо компьютера телефон, планшет и умный телевизор. Пришла она домой, вынула маршрутизатор из коробки, подключила к сети питания, вставила кабель от провайдера в WAN-порт маршрутизатора, а кабель от компьютера подключила в LAN-порт. Интернет не заработал, поскольку провайдер помимо DHCP использовал привязку по MAC-адресам. «Наверное, я сделала что-то не так!» — подумала девочка, после чего поменяла местами кабели в маршрутизаторе. В результате этой простой и незатейливой операции девочка оставила без интернета клиентов провайдера в нескольких домах.
Почему так произошло? После того, как девочка поменяла местами кабели, в сети провайдера появился DHCP-сервер, предназначенный для домашней сети. И клиенты провайдера начали получать настройки не от «правильного» DHCP-сервера, а от девичьего маршрутизатора. Да и как сетевые устройства могут определить, правильный им ответил сервер или неправильный? Они принимают первый ответ на свой запрос – на этом их функция заканчивается. В данном случае в сложившейся ситуации виноват провайдер, потому что его сетевое оборудование не умеет деактивировать «неправильные» DHCP-серверы.
Многие провайдеры при подключении клиентов к своим услугам предоставляют маршрутизаторы. Их предварительно настраивают с учетом специфики подключения, но одно всегда остается неизменным – в настройках домашней сети обязательно включается (а если быть точнее – остается включенным) DHCP-сервер. Это существенно экономит время при первоначальной настройке маршрутизатора и при настройке домашней сети клиента, а также значительно упрощает работу сотрудникам технической поддержки. Ведь при подключении очередного устройства к домашней сети клиенту уже не придется звонить в техническую поддержку – оно заработает «само», благодаря DHCP.
Снова идиллия и счастье. Но на дворе не 1993 год, поэтому на интернет-сцене присутствуют и другие игроки, чей взгляд на DHCP тоже хотелось бы осветить.
DHCP глазами хакера
Миллионы неофитов интернета не могли остаться незамеченными для преступных элементов. Финансы и личная жизнь любого пользователя сети попадают в прицел хакеров. На первом этапе в ход шли грязные социальные технологии. И благодаря наивности и безалаберности новоиспеченных пользователей сети эти технологии работали. Помню, на рубеже веков было настолько много желающих поглазеть на Анну Курникову в кружевном белье, что многие почтовые серверы просто захлебывались от нагрузки, пересылая миллионы копий этого легендарного трояна.
Постепенно ситуация менялась. Люди стали покупать или воровать антивирусные программы и фаерволы, а девочек в нижнем белье или без оного начали искать на специализированных сайтах. Более того, многие пользователи сети постепенно переходили на операционные системы, отличные от Windows, на которую было ориентировано большинство хакерских атак. И казалось бы задача хакеров по отъему честно заработанных денег у представителей прогрессивной общественности серьезно усложнилась. Ведь приходится иметь дело с целым зоопарком устройств и операционных систем.
Но на самом деле задача хакеров упростилась до предела. Зачем производить атаку на конечные устройства, когда можно взять под контроль маршрутизатор? Ведь весь трафик проходит именно через него. Более того, он отдает всем устройствам «правильные» настройки. Получив доступ к маршрутизатору, можно, например, подменить адреса DNS-серверов на подконтрольные хакеру. Это можно сравнить с передачей ключей от квартиры – вся ваша жизнь в сети становится добычей преступников. Злобные хакеры без особого труда, совершенно незаметно для вас получат доступ к учеткам на всех сайтах, которые вы посещаете (разве что за исключением тех, которые используют дополнительную авторизацию по SMS). Но что самое печальное – никакой антивирус ни на каком устройстве не зафиксирует факт взлома и не сможет отследить его источник. Таким образом, домашний маршрутизатор — просто идеальная мишень для взлома!
Давайте посмотрим, как DHCP может помочь хакерам в решении их задач. Представим, что под прицел хакера попала девушка. Милая. Нежная. Романтичная. И захотелось хакеру узнать, чем она живет в виртуальном мире. При первичном сборе информации узнать удалось совсем немного. У девочки есть почтовый ящик на mail.ru и пальцетыкалка с надписью iPad. Поиск в социальных сетях дал некоторые результаты, однако содержимое страниц оказалось доступно только для друзей. Не густо. Первым делом необходимо узнать, с каких IP-адресов девушка получает доступ в интернет. Поскольку есть ее E-Mail — выяснить это не составит особого труда. Также можно проанализировать заголовок ответного письма или запроса открытой девушкой страницы, чтобы определить, каким устройством она пользуется. Если это будет iPad — можно с вероятностью, близкой к ста процентам, предположить, что выявленный IP-адрес настроен на маршрутизаторе.
Итак, маршрутизатор. Если повезет — то окажется, что на этом сетевом устройстве открыт Web-интерфейс со стандартным паролем. Да, такое явление — не редкость. Но даже если Web-интерфейс закрыт со стороны злого интернета — не беда. Выяснить модель маршрутизатора совсем несложно — можно использовать как технические средства, так и грязные социальные технологии. Когда известна модель — можно легко и незаметно заставить чистую и невинную девушку изменить одну-единственную настройку маршрутизатора, открывающую доступ к его управлению из интернета. Остается лишь попасть на роутер, изменить на нем DNS-сервера и ограничить доступ к Web-интерфейсу. В результате вся личная жизнь милой, нежной и романтичной девушки в сети оказывается под контролем хакера.
Конечно, если бы на маршрутизаторе не использовался DHCP — все было бы не так просто для хакера. Пришлось бы осуществлять атаку на конечные устройства, например, на iPad. А это уже значительно сложнее. Казалось бы, ничто не мешает взять и отказаться от использования DHCP, но увы — маховик простоты и удобства уже запущен маркетологами на полную катушку. Многие представители прогрессивной общественности уже не могут себе представить такой ситуации, когда бы они подключились со своего смартфона или планшета к беспроводной сети — а их бы не выпустили в интернет. Надо ведь настройки IP вручную вбивать, а многие даже не представляют, что это такое и как их найти на своем устройстве. Да и жутко неудобно это. Провайдерам также добавилось бы головняков, если бы пришлось каждый новый смартфон, планшет или телевизор клиента настраивать вручную. И пока люди будут бездумно пользоваться волшебной кнопкой — хакеры с удовольствием будут отбирать их деньги и врываться в их личную жизнь.
Если вас хоть немного интересует ваша безопасность в сети и вам бы не хотелось, чтобы ваша виртуальная жизнь попала в руки преступников — не используйте DHCP.