Еще одна мера предосторожности, которую стоит принять, — смена используемого внутри сети протокола. Поскольку протокол HTTP имеет врожденные пороки, нежелательно, чтобы он работал внутри сети, пройдя внешний экран. В противном случае хакер использует «туннель» НТТР-протокола, чтобы добраться до внутренних серверов. Отрежьте ему путь вперед! Для доступа к службам, находящимся на уровне приложения, можно использовать такие протоколы, как CORBA/IIOP, RMI, сокетные соединения через TCP или DCOM в системе Microsoft Windows NT. Между уровнями приложения и базы данных снова поменяйте протокол на экранах, допуская лишь открытый интерфейс доступа к базам данных (ODBC) для SQL-сервера, «родных» клиентов баз данных (например, OpenClient для Sybase, SQL Net для Oracle и т. д.) и протоколы очередей сообщений, таких как Microsoft MSMQ и IBM MQSeries. Используя принцип трехзвенной архитектуры, можно добавить дополнительные уровни защиты как внутри отдельного звена, так и между ними. Перед внешним экраном используйте систему обнаружения вторжения (IDS), сканирующую и автоматически сигнализирующую о вторжениях в реальном времени (см. главу 5). Использование криптографии, как на уровне передачи данных, так и на прикладном уровне, возможно без переписывания программ. Позднее вы познакомитесь с тем, как протокол защищенных сокетов (SSL) для передачи информации в зашифрованном виде и протокол защищенных электронных транзакций (SET) для передачи информации о кредитных картах — работающие поверх трехзвенной архитектуры — могут помочь превратить ваш коммерческий сайт в настоящую крепость.