Защита на дурака

Как известно, на всякую технологию есть контртехнология: против любой атаки — защита, на любую защиту — хак. Нет защиты только от человеческой тупости — но это уже, скорее, из области медицины, а не про компьютеры.

Компьютерная безопасность давно уже стала весьма прибыльным направлением бизнеса, на эту тему много и умно пишут, получают бешеные гранты и защищают диссертации... Со стороны выглядит солидно. Хотя иной раз и закрадывается отвращение к самой необходимости от кого-то защищаться, тратить время и деньги не на удовлетворение насущных потребностей, а на обеспечение эксклюзивности их удовлетворения — по-простому: чтобы другой не ловил кайф за наш счет. В разумно устроенном обществе, казалось бы, польза одному автоматически есть польза и другому, и делиться радостями для разумных существ столь же естественно, как для дикарей — разбивать друг другу черепа.

Но допустим, что наука безопасности для чего-то все же нужна. Тогда логичный вопрос: а защищает ли она на самом деле? Конечно, мы сознаем, что азартные хакеры найдут прокол в любом протоколе, и придется дыры латать. Но это, так сказать, экзистенциальная печаль — тогда как в обыденной жизни хотелось бы, чтобы затраченные усилия имели хоть какой-то смысл, пусть даже временный и минимальный. А то, ведь, защитные меры превращаются часто в гальванические конвульсии — ни уму, ни сердцу.

Например, всем, вероятно, приходилось регистрироваться на разных сайтах, или в иных компьютерных приложениях. Их авторы всерьез полагают, что возможно защититься от дурака, вводя разного рода ограничения на структуру пароля — и это гордо именуется "качеством" или "степенью защищенности"! В качестве популярных мер — запрет коротких паролей, требование обязательного смешения строчных и заглавных букв, букв и цифр, присутствия не буквенно-цифровых символов... Где логика? Общеизвестно, что любое ограничение сокращает количество возможных вариантов — и тем самым задача взломщика только облегчается. И не надо мне про психологию — что, дескать, людям свойственна лень и они чаще выбирают короткие простенькие пароли... Точно так же можно сказать, что злоумышленники легко учитывают существующие ограничения и не заморачиваются проверкой заведомо неподходящих вариантов. А что касается психологии... Легкий пароль и запомнить легко — а трудные приходится записывать, и хранить запись в легко доступном месте (а иначе какой смысл?). Стало быть, и вредителям такие пароли вполне доступны. Получается, что в уродском стремлении защитить дурака от него самого мы лишь даем ему иллюзию защищенности — и толкаем на более раскованное поведение, подставляем под неприятности.

Еще один идиотизм: в старые временя мне частенько приходилось покупать что-то через Интернет. Для этого достаточно было иметь кредитную карту (для того я ее, собственно, и получал). Потом о моей "безопасности" позаботились: вместо прямого платежа, надо еще и вводить одноразовый пароль, так что приходилось дополнительно забивать себе голову и время заблаговременным получением списка таких паролей в банке или в банкомате. Но потом кому-то пришло в голову, что и это недостаточно "безопасно" — и теперь одноразовые пароли можно получить только через SMS-портал банка. Выходит, карта у меня есть — а заплатить я не могу, поскольку для этого нужно еще иметь и мобильный телефон (и не абы какой — а геморройным образом зарегистрированный). А если нет у меня телефона? Ну, не люблю я их, по жизни! Или SMS отключил из-за спама. В офисе у меня всегда есть Интернет — а, вот, телефон почти не ловит, экранируется. В заграничном отеле Интернета сколько угодно — а, допустим, тот самый мобильник я дома забыл. И так далее. Зачем тогда банковская карта, если использовать ее нельзя? Но даже если телефон под рукой, и связь есть, всякий платеж способен превратиться в русскую рулетку, ибо работают SMS-порталы не без кривостей, и у меня бывали случаи, когда код приходил на телефон спустя два часа (!) после запроса (за это время сеанс в платежной системе уже успевает отвалиться — и все надо начинать сначала).

Пошли дальше. Попробуйте разумно объяснить, почему, открывая страницу HTML с локального диска, я не могу использовать управление объектами Flash через JavaScript. Если страница открывается с сервера — пожалуйста. А без Интернета — черта с два. Дело тут не в лени программиста — я всегда могу поднять на локале виртуальный Web-сервер и отлаживать сайты сколько угодно. Но если само приложение рассчитано на то, чтобы люди скачивали страницы (или раздел сайта) на диск и смотрели, когда им удобно, не заморачиваясь выходом в Сеть? И надо, чтобы это было красиво. И чтобы музыка играла уместная, и только тогда, когда требуется. Не загонять же всех на виртуальные машины! Писать полностью на флэшах — тот еще геморрой, у них есть свои ограничения. Вот и выходит, что для локальной и сетевой версий приходится, по сути, писать разные приложения, совмещая их на одной странице. Реакции типа "используйте HTML 5" не принимаются; это из серии: "зачем вы вообще в этой Вселенной? родились бы в какой-нибудь другой..."

Коммерческий характер современных технологий "безопасности" очевиден на примере зашифрованной электронной почты. Если Вы заходите на сайт по HTTPS, и Ваш браузер по каким-то причинам сомневается в предложенных с той стороны сертификатах, в большинстве (правильно сконфигурированных) систем Вы получите уведомление и предложение выбрать между продолжением на свой страх и риск — и отказом от дальнейших контактов; как правило, можно добавить сертификат в локальный список надежных и в дальнейшем работать без недоразумений. Но когда речь идет об электронной почте, такой непосредственный контроль уже невозможен, и Ваш почтовый ящик обороняют роботы, принимая или отвергая сообщения в зависимости от встроенного в них интеллекта. И вот тут начинается чехарда... Мало того, что популярные системы спамообороны используют сетевые черные списки (в которые каждый желающий может поместить любой адрес — и создать кому-то букет неприятностей); мало того, что почту они фильтруют, исходя из абстрактных правил без учета специфики адресата и часто даже не давая ему вмешаться, — но они, ведь, еще и сертификаты принимают не всякие, а только из доверенного списка! Если у меня корпоративная почтовая система шифрует трафик с использованием своих собственных сертификатов — при попытке контакта с внешним адресатом я могу получить в ответ все, что угодно, если тамошние админы (как это часто бывает) не позаботились о корректном формировании сообщений об ошибках (и приходится долго догадываться об истинной причине отлупа). Казалось бы, какая разница? Почему почту нельзя шифровать незнакомым ключом? Риски при этом минимальны. В конце концов, можно при сомнениях автоматически перенаправлять почту в нешифрованный канал (желательно, с формированием соответствующего уведомления). Но нет! — надо заставить людей платить официально признанным игрокам на рынке сертификатов, или хотя бы регистрировать свои сертификаты в чьих-то системах, тоже не бесплатно.

Старая присказка гласит: если надо надежно защитить компьютер — следует привязать его к атомной бомбе и сбросить в глубокую шахту, а потом все хорошенько забетонировать. Но и тут остается риск, что объявится потом благодетель, ради вашего душевного спокойствия успевший сделать полный бэкап. И в этом изначальная ущербность технологий защиты. Намагниченный диск (или распределение заряда в полупроводнике) — это еще не информация. Информацией оно становится при передаче от одного человека к другому. Компьютеры лишь обслуживают наше общение (хотя когда-нибудь они, вероятно, смогут общаться и без нас). Если я что-то знаю — это еще не знание; надо, чтобы и кто-то другой это знал. Но если есть потенциальная возможность передачи — есть и возможность перехвата. Чисто физически, процесс передачи неизбежно распадается на несколько этапов — и если мы защитим один из них, всегда остается риск вмешательства на какой-то другой стадии. Даже прямая передача из мозга в мозг не гарантирует интима, ибо встроенная аппаратура кодирования и передачи — это все равно физический прибор, который возможно обнаружить извне, да и сама работа мозга связана с поддающимися регистрации физическими процессами. Будем мы использовать сверхдлинные ключи или квантовое шифрование — совершенно без разницы. То, что доступно одному, может быть доступно и другому.

Смешно смотреть, как строители Интернет-сайтов пытаются обезопасить их от взлома и копирования. Они используют защищенный код, многослойный дизайн и защитные скрипты... Но в конечном итоге на экране все равно должна появиться картинка. И дальше с этим кто угодно может делать что угодно. В частности, можно скопировать дизайн и данные, и создать независимый сайт по образу и подобию, совершенно неотличимый от исходного по функционалу. Чем, кстати, и пользуются преступники, подставляя пользователям липовые сайты вместо настоящих с целью хищения личных данных (прежде всего финансовых). Копировать сайты могут и роботы — достаточно вместо тупых запросов смоделировать человекообразное поведение; и если одна программа умеет генерировать кэпчу — другая всегда сможет ее распознать и ввести правильный код.

В связи с этим — о безопасности в Интернете. Когда-то все начиналось с простой идеи: нужна такая организация сетей, чтобы частичное их разрушение не приводило к параличу, чтобы возможность общения сохранялась всегда. Потом запаниковали: живучесть "правильной" циркуляции данных оказалась неотделима от гомеостаза несанкционированных трансакций — криминальные сети восстанавливаются после любых ограничений и запретов. Технологии шифрования работают против своего клиента, ибо они защищают злоумышленника столь же успешно, повышают уровень его анонимности. Блокируя одни каналы, мы оставляем миллионы других, а перестройка информационных потоков — вопрос времени.

Оказывается, что любое централизованное вмешательство в работу сетей больше мешает людям, чем ограждает их от злоумышленников. Начальство занято главным образом защитой коммерческих интересов богатых спонсоров — на простых смертных ему глубоко наплевать. Тогда населению приходится брать дело своей защиты в собственные руки — и появляются прокси-сервера (к сожалению, не всегда бесплатные), анонимайзеры, шифрованные и пиринговые сети. Даже в рамках существующей инфраструктуры все это успешно ограничивает возможности централизованного (коммерческого) контроля — хотя (как и любая технология) может быть использовано во вред.

Но Интернет — предприятие не из дешевых. Требуется развитие и поддержка глобальной сети, включая спутниковые средства связи, магистральные линии передачи, разрешение имен... Следовательно, всегда сохраняется давление грубой силы: неугодных властям могут попросту обесточить. В частности, любую закрытую сеть можно вывести из строя по указанию сверху, перекрыть каналы связи, конфисковать ключевые сервера. Разумеется, при наличии резервных копий все можно восстановить на других узлах и в других сетях — но придется заново связывать отдельные устройства в единую систему, а это иногда требует значительных усилий и времени. По-настоящему устойчивые коммуникационные сети нуждаются в технических решениях, освобождающих связь от централизованного воздействия. Надо уметь соединяться с другими устройствами независимо от доступности тех или иных средств связи; если не удается одним способом — автоматически искать другой. Такое обобщение P2P следует строить не поверх обычных сетей, а как альтернативное решение, не требующее ни обязательной регистрации, ни правительственной поддержки. Каналом передачи становится все окружающая среда — и никакими армейскими акциями вычистить это нельзя. Единственный метод — истребление человечества целиком. Вопрос, следовательно, стоит не о том, как защититься друг от друга, а о том, как преодолеть любые барьеры, облегчить контакты, а не затруднить их.

По сути, в такой сети уже не требуется шифрование. Да, она уязвима, в нее легко могут проникнуть вредители и диверсанты. Но там, где нет центра, никакие локальные разрушения не выведут из строя систему в целом. Там, где нет лидерства — никакие политические убийства не изменят общественный строй. Будущее надо строить на единстве, а не на разобщенности.

Индустрия компьютерной безопасности усложняет технологии — а значит, снижает их надежность, создает лишнюю нагрузку на пользователей, связывает их, встраивает в систему. Получается, что мы сначала изобретаем что-то, способное облегчить труд человека, — а потом ограничиваем доступ настолько, что этим уже почти невозможно пользоваться. Точно так же, мы сначала строим хорошие дороги — а потом укладываем на них "лежачих полицейских", чтобы не дать людям возможности нормально по хорошим дорогам ездить. Лихачей это не остановит — а порядочным водителям (и их пассажирам) сплошные неприятности.

Неуемная пропаганда технологических решений способна (или кому-то нужна, чтобы) отодвинуть в тень вопрос о разумном переустройстве человеческой жизни. Людям говорят: не надо думать — за вас подумают; не надо ни о чем заботиться — за вас позаботятся. У нас умные машины, они умнее вас. Вот и получается, что защищаем-то мы не данные или технологии — мы защищаем дурака от всякого интеллекта, позволяем ему вариться в собственной дурости.

Безопасность — это экономическая и социальная проблема, и любые технологии играют здесь сугубо вспомогательную роль, обеспечивают деятельность, а не направляют ее. Если экономика работает для общего блага, а не ради богатой верхушки, — нет смысла воровать. Если люди привыкли уважать друг друга — не нужно ни за кем-то подглядывать, никого контролировать или подталкивать. А пока навороченные средства защиты разрабатывают лишь для того, чтобы продать их именно тем, кто грабит народ, чтобы сколотить себе кругленький капитал, — когда только воры против воров, — никто не может быть уверен в собственной безопасности.


[Компьютеры] [Наука] [Унизм]