Проблема взаимодействия и универсальных стандартов
Даже если сознательно об этом никто не думает, совместимость является высшим приоритетом для потребителей технологий: люди ожидают, что их устройства, приложения, системы и программное обеспечение будут без проблем работать с новыми и старыми версиями и на разных платформах, а также будут взаимозаменяемыми с другими марками и моделями. Международная организация по стандартизации (International Electrotechnical Commission, ISO), Международная электротехническая комиссия (International Organization for Standardization, IEC), Инженерный совет интернета (Internet Engineering Task Force, IETF), Общество интернета (Internet Society, ISOC) и другие руководящие органы установили согласованные стандарты того, как технологии должны разрабатываться, функционировать и интегрироваться.
В результате появилось много стандартов ISO, запросов на комментарии (Request for Comments, RFC) и других протоколов взаимодействия, которые делают компьютеры более доступными, не говоря уже о том, что стало легче их создавать, диагностировать, ремонтировать, программировать, подключать к сети и запускать, а также управлять ими. Ярким примером является стандарт Plug and Play (PnP), представленный в 1995 году, который предписывает хост-системе обнаруживать и принимать любое постороннее устройство, подключенное к ней через USB, PCI, PCMCIA, PCIe, FireWire, Thunderbolt или другие средства, а затем автоматически настраивать его и настраивать интерфейс.
К сожалению, когда во главу угла ставится функциональность и работоспособность, безопасность почти никогда не оказывается приоритетом. Фактически стандарт PnP, который способствует доверию и принятию незнакомых сущностей, являет собой полную противоположность ксенофобскому стандарту безопасности, которого придерживались средневековые японцы. Например, незнакомая система может подключиться к сети, запросить IP-адрес из протокола динамической конфигурации хоста (Dynamic Host Configuration Protocol, DHCP), направление от локального маршрутизатора, полномочный DNS-сервер и имена других устройств и получать локальную информацию из протокола разрешения адресов (Address Resolution Protocol, ARP), блока сообщений сервера (Server Message Block, SMB), автоматического обнаружения веб-прокси (Web Proxy Auto Discovery, WPAD) и других протоколов, обеспечивающих совместимость. Вы подключаете систему к сети, и она работает, демонстрируя именно то поведение, которого пользователи от нее ожидают.
Чтобы выявить слабые места, связанные с доступностью протокола PnP, были введены средства управления безопасностью, такие как контроль доступа к сети (Network Access Control, NAC) и объекты групповой политики (Group Policy Objects, GPO). В хост-системах эти технологии защищают от потенциально вредоносных посторонних устройств, которые физически подключаются к внутренним сетям или системам.
NAC обычно блокируют DHCP, определяя неопознанные компьютеры в гостевые IP-подсети или непривилегированные VLAN. Это позволяет посторонним системам подключаться к интернету, но отделяет их от заслуживающей доверия части сети. Такое поведение полезно для конференц-залов и вестибюлей, в которых посторонние деловые партнеры и поставщики могут работать, не подвергая сеть угрозам.
GPO на локальных хостах определяет, какие типы устройств — внешние жесткие диски, USB-накопители, устройства чтения мультимедиа и т. д. — могут подключаться к системе. GPO может даже занести в белый список известные в организации приложения, блокируя загрузку или установку всего незнакомого программного обеспечения в хост-системе.
Однако эти меры безопасности — скорее исключение. Большая часть технологий, от разъемов RJ45 Ethernet с использованием стандартов EIA/TIA-561 и Yost до пакетных сетей с применением стандартов IEEE 802, построены на прозрачных, широко известных стандартах, обеспечивающих быстрое и легкое использование в разных системах и сетях, что делает их уязвимыми для систем злоумышленников, которые могут обнаруживать сеть и выполнять разведку, анализ и связь.