SATtva Персональная страница
темы архив все rss xml 2.0
 
 
блог
досье
связь
english
 

Безопасность для параноиков

17.11.2005
мнение

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

К сожалению, невозможно грамотно и полно оценивать меры защиты, не строя модели возможных угроз даже там, где их трудно представить в реальности. Со временем такое поведение всё больше перетекает в повседневную жизнь, и приходится всё чаще сталкиваться с непониманием "обычных" людей, далёких от осознания "прозрачности" электронной почты, незащищённости ПК и других вещей (что делает их сон гораздо крепче). Давно хотелось написать на эту тему статью и выразить в ней всё своё праведное возмущение недальновидностью и близорукостью таких людей, не ставящих ни в грош наши советы. Но раз уж своих мыслей чаще скудоумно и времени мало, затея так и оставалась только в планах.

Впрочем, оказалось, что всё уже сделано за меня. Здесь бы мне хотелось привести статью Марка Барнетта (эксперта, исследователя и консультанта по информационной безопасности), поставившего тонкий вопрос: не может ли даже профессиональной паранойи быть слишком?

Безопасность для параноиков

"Вам никогда не удастся найти приятное спокойное место потому, что таких мест нет. Вы можете решить иначе, но как только туда доберётесь, кто-нибудь обязательно подкрадётся, пока вы не смотрите, и напишет "х**" прямо у вас перед носом", -- Дж. Д. Салингер, американский писатель.

Нечто странное недавно случилось со мной: мой друг сказал, что я слишком параноидален в том, что касается безопасности. Это странно потому, что он оказался третьим человеком за пару недель, заявившим об этом. Разумеется, я ожидаю того, что большинство людей назовёт меня параноиком, однако эти -- мои коллеги по работе в сфере безопасности. Приходит ли время для беспокойства, когда даже специалисты по безопасности считают вас параноиком?

Большая часть моего интернет-трафика проходит по меньшей мере через три файерволла. Не слишком ли это параноично?

Первое, что я сделал -- это попытался понять само слово "паранойя". Просмотрев несколько словарей я выяснил, что так именуют состояние психотического беспорядка, характеризуемое ложным чувством преследования или крайним недоверием. Что есть заблуждение в более широком смысле? Это ложная уверенность, сохраняющася несмотря на доказательство обратного.

Основываются ли экстремальные меры безопасности на ложных угрозах, которых в действительности нет? Кто-то считает некоторые из моих стратегий безопасности некоторой крайностью. Я же называю их тщательной предосторожностью. Конечно, угроза может быть не реальной, и содержимое вашего ПК на самом деле может никому и не понадобиться. Но так ли уж это важно? Должна ли угроза быть явной, чтобы оправдать надёжную защиту?

Иногда я устраиваю "парольный день" и меняю все свои пароли просто на случай, если кому-нибудь удалось один из них раздобыть. Часто я меняю пароли после поездок. Дело не в том, чтобы я считал, что кто-то пытается меня хакнуть, однако я и не думаю, что хакнуть меня не хочет никто. Суть не в этом. Просто нет нужды анализировать возможную угрозу в каждой возможной ситуации. Всегда применяйте надёжную защиту, и у всё у вас будет хорошо.

Я часто вижу, как люди публикуют PGP-подписанные сообщения в дискуссионных листах по безопасности. Вряд ли эти люди боятся, что кто-нибудь отправит от их имени поддельный комментарий на последнюю ошибку в CGI; они просто сделали подписание всей почты, какой бы незамысловатой она ни была, своей повседневной привычкой. Да, они подписывают свои письма, когда это в действительности не очень-то нужно, но я сильно сомневаюсь, что они не подпишут письмо, когда это будет по-настоящему нужно. Если вы постоянно применяете лучшую защиту, вам не придётся заботиться о посредственной.

Я использую очень длинны пароли для всех, даже своих самых бестолковых аккаунтов. Я требую от своих детей использовать в нашей домашней сети по меньшей мере 14-значные пароли и думаю о том, чтобы выдать им смарт-карты. Никому, даже моей жене, не известен мой сетевой пароль.

Я не просто выбрасываю измельчённые документы, а рассыпаю клочки в саду, чтобы использовать как мульчу. Я делаю так не из опасений, что кто-нибудь станет рыться в моей урне, чтобы склеить клочки моих исследовательских заметок, а потому, что это -- хорошая безопасность. Я сам стараюсь управлять собственной сетью так же, как советую это делать клиентам.

Является ли это предусмотрительным и предупредительным подходом к безопасности или же это просто форма умственного расстройства? Нужна ли вам угроза, чтобы возводить оборону? Когда-то я предложил своим клиентам установить права к файлам в каталогах с их сетевым содержимым только на чтение. Некоторые посчитали это крайностью и бесполезной работой. Однако, когда случилось пришествия червя Code Red, он не принёс вреда всем тем пользователям, кто последовал моему совету.

Для каждого из своих важный сетевых аккаунтов я использую уникальный секретный почтовый адрес. Я всегда так поступал. Полагаю, что большинство посчитает это паранойей, но когда я получаю электронные письма из банка, могу легко проверить исходящий адрес сообщения, чтобы убедиться, что они отправили его на секретный адрес.

Из всех тех перемен в сторону безопасности, которые Microsoft проделала за последние годы, на мой взгляд, наиболее значимо то, что теперь они защищены от тех угроз, которые большинству казались слишком незначительными или, по их мнению, могли даже не существовать. Разве это безумство и заблуждение с их стороны, чтобы защититься даже от тех угроз, которые ещё никто не придумал? И разве это бессмысленная забота -- защищать внутренние слои вместо того, чтобы просто сосредоточиться на укреплении внешних?

Я держу свои компьютеры развёрнутыми задом наперёд, так что всегда могу заметить, если кто-то установит аппаратный кейлоггер. При перелётах я никогда не сдаю свой багаж. Я работаю в интернете на укреплённой виртуальной машине, не имеющей никаких прав в моей локальной сети. Я пользуюсь terrafly.com, проверяя, что другие могут увидеть о моём собственном доме. Чтобы загрузить мой лаптоп и проверить почту требуется пять паролей, один из которых более 50 знаков. Ещё я удаляю со своих серверов неиспользуемые службы, блокирую незанятые порты и устанавливаю важные исправления в тот же день, когда Microsoft их выпускает.

Генри Киссинжер когда-то сказал, что "даже у параноика могут быть враги". Факт в том, что мы не знаем обо всех сегодняшних и будущих угрозах, так что можем всё рассматривать как серьёзную угрозу. Я поступаю так, но, видимо, я всё же параноик.

Не спешить...

10.03.2005
мысли

С каждым годом ускоряется темп города и жизни. Что будет лет через пять, когда психо-физические потенциалы человека по скорости передвижения и усвоению информации достигнут своих лимитов? А через десять? Что ещё придумает когнетивная инженерия, чтобы помочь разобраться в окружающих стаях пикселей и неоновых огней?

Спешим, заглатывая в себя на каждом шагу гамбургеры информации-ощущений. Не прожевали один – не беда, уже другой ко рту подносим, дабы первый протолкнуть. И что есть проф. болезнь городских жителей – депрессии – как не психологическое несварение?

...Остановиться, прикрыть глаза: воздух наполняет грудь, ритмичный стук сердца отмеряет жизнь, унося всё дальше от плача младенца, пришедшего некогда в мир. Открыть глаза, оглядеться. Зима: обнявшаяся молодая пара в сумеречном сквере, согревают лица друг друга солнечным взглядом и тёплым нашёптыванием слов любви. Лето: поднимаю глаза вверх, подствляя лицо летящим с высоты упругим тяжёлым каплям, спешащим по волосам и шее скатиться под плащ. Осень: завершается цикл, и земля готовится к отдохновению; порыв ветра срывает оранжевые тополиные листья, танцует с ними в вальсе и стелит под ноги ковром.

Часто ли мы всё это замечаем, заменяя в спешке третьих-четвёртых мужей и жён, в спешке трахаясь, не ощущая ни в себе, ни рядом бесконечной нежности и тепла, от которых перехватит дыхание, делая в спешке карьеру, чтобы успеть срубить побольше зелени, которой когда-нибудь приправят салат на поминках торопливо усопшего, столь торопливо, что даже зелень не успел с собою прихватить? Галопом спешим в завтра из вчера, не успевая задержаться в сегодня.

– Ты что? Постой, куда спешишь?
– Некогда, старик, не успеваю...

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

Жизнь часто преподносит шансы, за редким исключением проносящиеся незамеченными за окнами экспресса неотличимых друг от друга дней. Шансы, незамечаемые за человеческой близорукостью или из малодушия неиспользуемые.

Вспоминаю минувшую осень, холодный дождь и звук безнадёжности от вбиваемых в крышку гроба гвоздей – поминальный колокол по счастью человека, оборвавшемуся прямой линией на экране кардиомонитора. Жена и ребёнок. А он здесь, и капли скатываются по щекам – дождь: на плач спустя неделю надежды нет больше сил. Почему Жизнь собирает дань жизнями невинных своей крепкой рукою?..

Тогда, стоя с ним рядом, мне представился шанс прикрыть глаза и задуматься, и впервые за долгое время не упустил такую возможность. Задуматься над тем, что будет с ним, когда осознает уход двух дорогих и любимых? О том, сколько минёт дней, прежде чем примет потерю? Спасётся ли от пустоты, поселившейся в его взгляде? Много ли предназначенных ей слов осталось в его сердце невысказанными? И сколько поступков в спешке дней было перенесено на завтра... которому уже никогда не быть? Полгода спустя мне ведомы некоторые ответы, но ему до своего последнего вздоха предстоит их нести.

Уязвимости Skype

08.03.2005
связь

Skype – это набирающая популярность децентрализованная пиринговая сеть интернет-телефонии, поддерживающая сервисы VoIP и IM. Иными словами, это нечто среднее между KaZaa и ICQ, только вместо текстовых сообщений или музыкальных файлов сеть осуществляет передачу телефонных звонков между компьютерами её пользователей. Учитывая объёмы рекламных кампаний Skype по всему миру, мне видится необходимым осветить некоторые тёмные углы в протоколе системы, о которых намеренно умалчивают разработчики.

В начале января Симсон Гарфинкель опубликовал подробное исследование системы безопасности Skype. Поскольку протокол и клиентские приложения Skype являются проприетарными и закрытыми, анализ в основной части основан на эмпирических наблюдениях. Не все из сделанных выводов точны и обоснованы, но к сегодняшнему дню это лучшая работа по данной теме. Впоследствии к ней был высказан ряд замечаний и уточнений.

Разработчики Skype заявляют об абсолютной защищённости всех передаваемых сообщений, благодаря их шифрованию алгоритмом AES. Хотя информация об использовании AES, по-видимому, справедлива (передаваемые данные проявляют свойство псевдослучайности), Skype обладает рядом недостатков, ставящих под угрозу компрометации всю его сеть. Чтобы понять, что является причиной, попробуем в общих чертах рассмотреть, как функционирует Skype.

В отличие от "классических" VoIP-систем, потоки данных между абонентами передаются не через центральные коммутаторы телефонной службы, а проходят напрямую через интернет от одного компьютера к другому (peer-to-peer) либо производятся через специальные узлы. Эти узлы, осуществляющие координацию, адресацию и маршрутизацию потоков, а также трансляцию запросов пользователей к серверу аутентификации, называются "супер-узлами" (super-nodes), при этом каждый пользователь может по своему желанию выполнять функции супер-узла, отметив в своём клиенте соответствующую опцию.

Надёжность любой распределённой сети строится на доверии участников (узлов) друг другу. Для обеспечения доверия обычно применяются протоколы криптографической аутентификации и авторизации, и именно здесь в Skype находится зияющая дыра. Поскольку клиенты не могут определить, функционирует ли супер-узел на оригинальном немодифицированном ПО, оппонент, который способен произвести реверс-инженеринг клиентского приложения, может создать такой супер-узел, который будет "чуть более функционален", чем должен быть. Подумаем, к каким это может привести последствиям.
  • Поскольку именно супер-узлы отвечают за переадресацию запросов пользователей к серверу авторизации, оппонент, контролирующий модифицированный супер-узел, может перенаправлять эти запросы на такой же подконтрольный сервер и блокировать определённым пользователям доступ к системе (атака на отказ в обслуживании). Помимо этого, с помощью такого подконтрольного сервера оппонент может перехватывать логины/пароли пользователей.
  • Как было отмечено, супер-узлы осуществляют адресацию абонентов, т.е. выполняют поисковые запросы и связывают абонентов между собой. Допустим пользователь Анна желает найти пользователя Бориса, чтобы провести разговор. Её клиент направляет поисковый запрос нескольким супер-узлам, которые должны указать адрес Бориса. Поскольку в Skype отсутствует криптографическая авторизация участников обмена, супер-узел оппонента может ответить, что он и есть Борис либо перенаправить Анну на иной подконтрольный узел. У Анны нет способа проверить правдивость ответа, поскольку её клиент безоговорочно доверяет супер-узлу, а механизмом авторизации Борис не располагает.
  • Кроме того, чтобы выдавать себя непосредственно за Бориса, оппонент может соединить Анну с настоящим Борисом, а поскольку супер-узлы выполняют и функции релеев, если абоненты по тем или иным причинам не могут установить прямого соединения (например, находясь за NAT), оппонент получает возможность записать их разговор. Да, трафик будет зашифрован, но если супер-узлы участвуют и в протоколе согласования шифровальных ключей, это не будет играть никакой роли.
  • Несмотря на то, что установить, участвуют ли они в согласовании ключей, без декомпиляции приложения невозможно, нужно принимать во внимание правило, что если обмен ключом производится с неизвестным (недоверенным) узлом, зашифрованный трафик всё равно не может считаться защищённым. Так, получив поисковый запрос от Анны оппонент может ответить, что он – Борис и произвести согласование ключа, а с противоположной стороны установить такой же шифрованный канал с Борисом от имени Анны. Теперь он может пассивно прослушивать трафик, оставаясь необнаруженным. Это классическая атака "человек в середине".
В то же время, распределённая структура Skype в некоторой мере сглаживает отмеченные недостатки. Поскольку клиент самостоятельно выбирает топологически разнесённые друг от друга супер-узлы (чтобы покрывать меньшим числом запросов большую часть сети), нет гарантии, что тот или иной запрос попадёт на узел оппонента. Чтобы иметь возможно эффективно прослушивать любого целевого (а не случайного) абонента, оппонент должен организовать сивиллову атаку и наводнить сеть множеством подконтрольных узлов. Высказывалось мнение, что при нынешнем размере сети будет гарантированно достаточно нескольких сотен скомпрометированных супер-узлов. Если бюджет оппонента может позволить аренду сотни коллокейшн-серверов в разных частях света, что обойдётся приблизительно в 100-150 тыс. долларов в год, что более, чем реально, для любой крупной компании или государственной разведслужбы, оппонент фактически получает полный контроль над сетью. Это особенно вероятно и опасно в свете того, что многие западные компании переходят на Skype в качестве основного VoIP-провайдера, делая его привлекательной мишенью. Если же оппонент способен провести реверс-инженеринг клиентского приложения и протокола Skype, он с вероятностью может определить алгоритм выбора супер-узлов, что позволит проводить атаку на конкретного пользователя существенно меньшими усилиями.

Из сказанного можно сделать два основных вывода. Хотя распределённая структура Скайп повышает планку затрат на "вхождение" оппонента (трудно, не обладая крупным бюджетом, перехватить или не доставить звонок целевого абонента), его децентрализованность делает сеть слишком подверженной сивилловым атакам и тотальному мониторингу заинтересованными организациями.

Бесплатная альтернатива небесплатному PGP

12.02.2005
pgp

Как и любому вебмастеру, мне приходится периодически просматривать статистику сайта: посещаемость, популярность страниц и тому подобные сведения. И всякий раз в статистике поисковых запросов обращаю внимание на стабильность позиций поиска пиратских лицензионных номеров для PGP. Столь же стабильны обращения с таким вопросом по icq и email. Однако, тут запрос уже не обезличен, и у меня есть возможность, со своей стороны, поинтересоваться, зачем человеку коммерческая версия программы. Примерно двум третям респондентов нужен PGPdisk, другие же ищут большего комфорта от использования почтовых плагинов.

Оставим в стороне моральный и правовой аспекты проблемы – у каждого человека свои убеждения, мотивы и отношения с совестью. Вместо этого я бы хотел поделиться с искателями более чистым во всех отношениях решением. Ведь PGP, в конце концов, основан на интероперативном стандарте OpenPGP, так почему бы не заменить программу и все её компоненты альтернативными продуктами, почти ничем не уступающими PGP? Конечно, это предложение прежде всего обращено к частным пользователям – в корпоративной среде альтернативы зачастую невозможны.

Итак, из каких основных кирпичиков-функций "состоит" коммерческая версия PGP? Прежде всего, это криптографическое ядро. С ним всё понятно, и его в полной мере может заменить GnuPG. В то же время, консоль GnuPG неудобна пользователям, привыкшим к графическим интерфейсам. Значит, нам нужен графический интерфейс. Загляните сюда и выберите тот, который больше придётся по вкусу. Я сам предпочитаю WinPT, который ближе по духу к PGPtray/PGPkeys, к тому же предоставляет такие функции, как уничтожение файлов, очистка свободного пространства дисков и вычисление контрольных сумм (и то, что он распространяется в исходных текстах, тоже не будет лишним). Чтобы шифровать файлы из Проводника, не забудьте про GPG Shell Extensions.

Итак, у нас уже есть полный функциональный аналог PGP Freeware, но самого главного всё ещё не хватает. PGPdisk вам заменит свободная программа TrueCrypt, по ряду параметров превосходящая даже решение от PGP Corporation. Например, с его помощью можно вместо создания криптоконтейнернов зашифровывать логические разделы жёстких дисков и других накопителей целиком. А ещё он умеет создавать "скрытые" и "переносные" контейнеры, что для кого-то может оказаться очень ценной возможностью.

Остались почтовые плагины. Пользователи Outlook могут воспользоваться плагином G-DATA, доступным со страницы расширений GnuPG. Но если вы ищите настоящего удобства и комфорта от использования GnuPG, взгляните на связку Thunderbird-Enigmail-GnuPG (на той же странице приведена подробная инструкция по установке GnuPG). Enigmail обладает собственным весьма развитым менеджером ключей, поддерживает PGP/MIME, и после некоторой предварительной настройки делает защиту переписки совершенно необременительной и даже незаметной для пользователя.

Кто-то может плюнуть на всё это и продолжать пользоваться пиратской версией PGP, когда в этом, по большому счёту, нет особой потребности. Кому-то изложенное решение вопроса может показаться весьма элегантным. Думайте сами, решайте сами. А если возникнут вопросы, всегда будем рады помочь и на все ответить.