- Любовные романы
- Фантастика и фэнтези
- Ненаучная фантастика
- Ироническое фэнтези
- Научная Фантастика
- Фэнтези
- Ужасы и Мистика
- Боевая фантастика
- Альтернативная история
- Космическая фантастика
- Попаданцы
- Юмористическая фантастика
- Героическая фантастика
- Детективная фантастика
- Социально-психологическая
- Боевое фэнтези
- Русское фэнтези
- Киберпанк
- Романтическая фантастика
- Городская фантастика
- Технофэнтези
- Мистика
- Разная фантастика
- Иностранное фэнтези
- Историческое фэнтези
- LitRPG
- Эпическая фантастика
- Зарубежная фантастика
- Городское фентези
- Космоопера
- Разное фэнтези
- Книги магов
- Любовное фэнтези
- Постапокалипсис
- Бизнес
- Историческая фантастика
- Социально-философская фантастика
- Сказочная фантастика
- Стимпанк
- Романтическое фэнтези
- Ироническая фантастика
- Детективы и Триллеры
- Проза
- Юмор
- Феерия
- Новелла
- Русская классическая проза
- Современная проза
- Повести
- Контркультура
- Русская современная проза
- Историческая проза
- Проза
- Классическая проза
- Советская классическая проза
- О войне
- Зарубежная современная проза
- Рассказы
- Зарубежная классика
- Очерки
- Антисоветская литература
- Магический реализм
- Разное
- Сентиментальная проза
- Афоризмы
- Эссе
- Эпистолярная проза
- Семейный роман/Семейная сага
- Поэзия, Драматургия
- Приключения
- Детская литература
- Загадки
- Книга-игра
- Детская проза
- Детские приключения
- Сказка
- Прочая детская литература
- Детская фантастика
- Детские стихи
- Детская образовательная литература
- Детские остросюжетные
- Учебная литература
- Зарубежные детские книги
- Детский фольклор
- Буквари
- Книги для подростков
- Школьные учебники
- Внеклассное чтение
- Книги для дошкольников
- Детская познавательная и развивающая литература
- Детские детективы
- Домоводство, Дом и семья
- Юмор
- Документальные книги
- Бизнес
- Работа с клиентами
- Тайм-менеджмент
- Кадровый менеджмент
- Экономика
- Менеджмент и кадры
- Управление, подбор персонала
- О бизнесе популярно
- Интернет-бизнес
- Личные финансы
- Делопроизводство, офис
- Маркетинг, PR, реклама
- Поиск работы
- Бизнес
- Банковское дело
- Малый бизнес
- Ценные бумаги и инвестиции
- Краткое содержание
- Бухучет и аудит
- Ораторское искусство / риторика
- Корпоративная культура, бизнес
- Финансы
- Государственное и муниципальное управление
- Менеджмент
- Зарубежная деловая литература
- Продажи
- Переговоры
- Личная эффективность
- Торговля
- Научные и научно-популярные книги
- Биофизика
- География
- Экология
- Биохимия
- Рефераты
- Культурология
- Техническая литература
- История
- Психология
- Медицина
- Прочая научная литература
- Юриспруденция
- Биология
- Политика
- Литературоведение
- Религиоведение
- Научпоп
- Психология, личное
- Математика
- Психотерапия
- Социология
- Воспитание детей, педагогика
- Языкознание
- Беременность, ожидание детей
- Транспорт, военная техника
- Детская психология
- Науки: разное
- Педагогика
- Зарубежная психология
- Иностранные языки
- Филология
- Радиотехника
- Деловая литература
- Физика
- Альтернативная медицина
- Химия
- Государство и право
- Обществознание
- Образовательная литература
- Учебники
- Зоология
- Архитектура
- Науки о космосе
- Ботаника
- Астрология
- Ветеринария
- История Европы
- География
- Зарубежная публицистика
- О животных
- Шпаргалки
- Разная литература
- Зарубежная литература о культуре и искусстве
- Пословицы, поговорки
- Боевые искусства
- Прочее
- Периодические издания
- Фанфик
- Военное
- Цитаты из афоризмов
- Гиды, путеводители
- Литература 19 века
- Зарубежная образовательная литература
- Военная история
- Кино
- Современная литература
- Военная техника, оружие
- Культура и искусство
- Музыка, музыканты
- Газеты и журналы
- Современная зарубежная литература
- Визуальные искусства
- Отраслевые издания
- Шахматы
- Недвижимость
- Великолепные истории
- Музыка, танцы
- Авто и ПДД
- Изобразительное искусство, фотография
- Истории из жизни
- Готические новеллы
- Начинающие авторы
- Спецслужбы
- Подростковая литература
- Зарубежная прикладная литература
- Религия и духовность
- Старинная литература
- Справочная литература
- Компьютеры и Интернет
- Блог
Секреты и ложь. Безопасность данных в цифровом мире - Брюс Шнайер
Шрифт:
Интервал:
Закладка:
Сложные веб-сайты имеют динамическое устройство. На веб-сайтах розничной торговли есть «корзины», с которыми вы перемещаетесь при просмотре сайта. На информационных сайтах с платным доступом имя пользователя и пароль требуется вводить при переходе со страницы на страницу. (На мой взгляд, утомительно набирать имя пользователя и пароль каждый раз, когда я хочу посмотреть еще одну статью на веб-сайте New York Times.) Cookies дают возможность управиться с этим.
Отправляя браузеру cookies, а затем запрашивая их обратно, сервер как бы вспоминает, кто вы. «А, конечно, вы – пользователь 12467, вот ваша корзина». Cookies позволяют браузеру добавлять возможность идентификации к протоколам Интернета. Это выглядит, как огромная рассредоточенная база данных, фрагменты которой хранятся в миллионах браузеров.
До сих пор я рассказывал о пользе cookies. Они, главным образом, полезны, если сервер, их разместивший, играет по правилам. Сервер устанавливает, сколько времени действителен cookie: хорошее значение – несколько дней. Сервер может установить ограничения на доступ к cookie. Сервер может ограничивать доступ к другим серверам в том же домене; это значит, что если ваш cookie пришел с inchoate-merchant com, то только inchoate-merchant com может иметь к нему доступ.
Проблемы возникают при нарушении правил игры. Некоторые серверы используют cookies, чтобы прослеживать пользователя от сайта к сайту, а некоторые с помощью cookies идентифицируют пользователя. Вот простой пример: компании занимаются перепродажей места для размещения рекламы на популярных сайтах. Одна из таких компаний – DoubleClick; именно через нее размещены многие объявления, которые вы видите на коммерческих сайтах. Если вы будете просматривать sex-site com, вы увидите часть того окна, которое пришло с DoubleClick com. DoubleClick com предоставляет вам cookie. Позже (в этот же день или, может быть, в другой) вы будете просматривать CDnow com, на котором DoubleClick разместила другую рекламу. DoubleClick может запросить cookie вашего браузера и установить, что он был создан в то время, когда вы посещали секс-сайт, после чего вам будет отправлена целевая реклама, хотя вы интересуетесь CDnow. Поскольку DoubleClick сотрудничает с целым рядом коммерческих сайтов, по ее cookies можно проследить пользователя на всех этих сайтах.
Еще более серьезные проблемы вас ожидают, если вы оставите свой электронный адрес на каком-то из этих сайтов, а они отошлют эту информацию в DoubleClick. Все, что от вас требуется – один раз набрать этот адрес, заказать одну-единственную вещь, и он останется у них навечно. (Или до окончания срока cookies, что может затянуться на годы.)
Такие действия не являются большим секретом. DoubleClick открыто признает, что собирает данные и использует их, чтобы направлять рекламу определенным пользователям. До 2000 года они отрицали создание идентификационных баз данных, но в конце концов признали это после сообщения в USA Today. С тех пор они отступили от идеи связывать cookies с именами и адресами. (Хотя, возможно, выплывут новые факты в результате какой-нибудь публикации.)
Идем дальше. Сайты способны послать вам по электронной почте cookie, при помощи которого они могут вас идентифицировать, если вы позже посетите этот сайт. Вот как это работает: сайт посылает вам сообщение в формате HTML. (Это предполагает, что вы пользуетесь программами для электронной почты, поддерживающими сообщения HTML; среди таких программ – Microsoft Outlook и Outlook Express, Netscape Messenger и Eudora.) Сообщение содержит уникальный URL, скрытый графикой, который сайт может использовать, чтобы послать вам cookie. Если URL имеет вид www gotcha com/[email protected] com/pixels gif, значит, у них в cookie – ваш адрес электронной почты. Тогда, если вы просматриваете сайт в какой-то последующий день, сайт может по cookie определить ваш адрес электронной почты и отследить ваши перемещения в Интернете.
Сами cookies не умеют осуществлять активных действий. Они не могут похитить информацию из вашего компьютера. Cookies – это просто некоторые данные, которые сервер сообщает браузеру, а браузер позже возвращает. Cookies не могут украсть у вас пароли или файлы. (ActiveX, Java и JavaScript в этом отношении гораздо более опасны.) Cookies не в силах похитить номера ваших кредитных карт, но может оказаться так, что «глупые» сайты включат в cookie номер вашей кредитной карты.
Из всего вышесказанного можно сделать вывод, что cookies – по своей сути полезный инструмент, но при неумелом обращении они могут работать на злоумышленников. Это простейший способ, позволяющий веб-программистам контролировать взаимосвязи. Большинство браузеров допускают полное отключение cookies, можно купить дополнительные программы, позволяющие лучше управляться с ними. Хотя некоторые сайты – например, Hotmail и Schwab Online – не соединяются с браузерами, не принимающими cookies.
Веб – сценарииМишенью всех атак, рассмотренных выше, является компьютер пользователя, а сейчас речь пойдет об атаке, направленной на сервер.
Общий шлюзовый интерфейс (Common Gateway Interface, CGI) – это стандартный способ, которым веб-сервер передает запрос клиента размещенным на нем приложениям и отсылает ответ пользователю. Если вы посылаете поисковый запрос на веб-сайт – например, на сайт розничной электронной торговли, – веб-сервер передает запрос в приложение базы данных и затем форматирует ответ перед тем, как предоставить его пользователю. Или если посетитель заполняет анкету на веб-странице, то эта информация передается в соответствующее приложение для последующей обработки. Иногда вы можете видеть команды CGI в адресной строке браузера – это непонятные значки и цифры в конце URL; в других случаях они не видны пользователю. Это часть HTTP, все ею пользуются. Сценарии CGI – это небольшие программы на веб-сервере, которые работают с данными. Например, они задают принцип обработки анкет на веб-страницах.
Сложности при работе со сценариями CGI в том, что каждый из них – потенциальная прореха в системе безопасности. Манипулируя сценариями CGI, можно совершать самые неожиданные веши. Вот ряд примеров (все они действительно имели место): загрузка файла с веб-сервера, просмотр всего содержимого базы данных, загрузка списка покупателей и их персональных записей, кража денег у клиентов электронного банка, торговля чужими контрольными пакетами акций и просмотр системных журналов веб-сервера, в которых записаны договоры клиентов.
Другие похожие атаки проводятся путем помещения исполняемого кода (обычно сценарии Perl или код JavaScript) в текстовые поля. Таким путем можно заставить веб-сервер внести изменения в домашнюю страницу, показать секретный ключ SSL или доставить другие неприятности, о которых сказано в предыдущем абзаце. Этот метод также позволяет использовать переполнение буфера и другие ошибки программирования (см. главу 13), чтобы вызвать поломку веб-сервера или, что еще лучше, захватить этот сервер в свои руки.
Один пример: в 1998 году в результате атаки против Hotmail стало возможным увидеть учетные записи электронной почты других людей. eBay также подвергся атаке; злоумышленники поместили троянского коня, написанного на JavaScript, в поле описания товара. Это поле видел любой, кто просматривал товары, выставленные на продажу, и в результате злоумышленники получали информацию о тысячах учетных записей.
Один недостаток CGI позволил злоумышленникам загружать секретную персональную информацию с различных сайтов. Другие сценарии CGI использовались, чтобы взломать веб-сервер. В конце 1999 года были предприняты две атаки – атака Poison Null («отравленный» нуль), позволившая хакерам просматривать и изменять файлы на веб-сервере, и атака Upload Bombing (бомбежка при пересылке), наводнившая веб-серверы бесполезными файлами, которые очень быстро превращались в атаки-сценарии, так что любой мог при желании их использовать[35].
Включения на стороне сервера (Server Side Includes, SSI) – это указания для вебсерверов, встроенных в HTML-страницы. Непосредственно перед отправкой страницы браузеру веб-сервер выполняет все SSI, содержащиеся на странице, и помещает на нее результаты своей работы. Атаковать SSI так же выгодно, как и все остальное.
Можно атаковать уязвимые места в стороннем программном обеспечении: на специфических веб-серверах, в их приложениях. Сюда относятся приложения для баз данных, программы «корзины», сервер транзакций и другие. Эти атаки зависят не от того, как сайт использует приложение, а от самого приложения (СУБД Oracle, например). Злоумышленники могли бы загрузить исходную программу с веб-сервера, разрушить сервер, получить привилегии доступа на уровне администратора для входа на сервер, запустить на сервере произвольную программу и т. п. В отличие от прорех безопасности, вызванных сценариями CGI, установление уязвимых мест в дополнительных приложениях не находится под контролем сайта; это обязанность поставщиков стороннего программного обеспечения.
Существует множество похожих атак. Внося изменения в скрытые поля на некоторых веб-страницах (эти поля можно увидеть при просмотре начала страницы), есть шанс взломать сценарии CGI и заставить некоторые программы «корзин» изменить цены предлагаемых товаров. (Вплоть до «назовите свою цену».) Некоторые атаки направлены на cookies: порча cookie. Злоумышленники входят на сервер и вручную меняют свои аутентификационные cookies на cookies других пользователей. Иногда эти cookies зашифрованы, но часто не очень надежно.

