SSH, VPN, PGP, TOR и OTR — Паранойя на марше

Posted: 2013-10-26 in IT, Networks, Security
Метки:

Если вы ещё не чувствуете слежки, и у вас нет паранойи — то это вовсе не значит, что за вами не следят.
Я расскажу пару примеров, а вы сами решайте, согласны со мной или нет. …

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

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

2). Менее безобидно — это когда к вам через какую-либо уязвимость свалится какая-нить исполнимая дрянь — ad-ware программа. Не ведитесь на фразу "not-a-virus" — _весь_ такой софт почти повально — удалённо управляемый, а иногда — и несущий дополнительные уязвимости. Сегодня была одна рекламная программа — а завтра там уже рассадник червей, троянов и руткитов. В этом случае масштаб утечки данных ограничен только фантазией автора.

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

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

5). Слежка со стороны сторонних сервисов. Просто один пример:
http://www.computerra.ru/77677/poisk-v-google-skorovarok-i-ryukzakov-zakonchilsya-dlya-amerikantsa-vizitom-vooruzhyonnyih-politseyskih/
Тут много мути, но дыма без огня не бывает.

6). Копирасты. Эти вообще бандиты редкостные.
http://www.securitylab.ru/news/446256.php
38 млрд. рублей за каких-то 30 сраных фильмов — это цифра даже не с потолка, а вообще из другого слоя реальности. Причем иногда "вымогатели в законе" могут прислать претензии, даже если вы просто что-то поискали в гугле. Доказывать потом свою непричастность — очень муторно. Прецеденты были, причем и в Штатах, и в Европе. А уж про "письма счастья" хостингам и прочим провайдерам и вовсе упоминать нет смысла — шлют не хуже спамеров с ботнетами.

7). А теперь о более серьезном.
https://www.pgpru.com/novosti/2013/anbsshasleditzapoljzovateljamikrupnejjshihtehnologicheskihkompanijj
https://www.pgpru.com/novosti/2013/fsbhochetpoluchitjpolnyjjdostupkdannympoljzovatelejjinterneta
Речь о средствах глобального надзора. Конечно, записать все терабайты траффика нереально, но даже извлеченные метаданные или только часть данных могут осесть там, где это не требуется.
Учитывая, что будущее от нас скрыто, однозначно можно сказать только одно — чем меньше о вас будет собрано всякой инфы, тем лучше.

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

Итак, сперва пара очевидных советов. Хотите надежную защиту — исповедуйте принцип "запрещено всё, кроме того, что разрешено явно". Если же у вас "разрешено всё, кроме явно запрещённого" — это фейл в вашей обороне.
Второе — цена защиты не должна быть запредельной, иначе защита бессмысленна.
Теперь попробую так же по пунктам описать меры защиты, какие могут быть полезны и должны использоваться здравомыслящими людьми =)

1). Для противодействия плотной интернет-слежке нужно сделать всего одну простую вещь — белый список. Разрешите JavaScript, куки, всплывающие окна и особенно — плагины только нескольким доверенным сайтам. Пусть флеш у вас будет доступен только на ютубе, а JS и куки — опять на том же ютубе и на сайте любимой почты.
Сливерлайт и джаву выпилите нахх или выключите по-умолчанию. Первый из них по сути мертв, а вторая нужна на 2,5 кривых веб-интерфейсах. Очень сильная вещь — активация объекта только по щелчку. Всё, все остальные пролетают мимо.
Да, теперь поискав какой-нить туристический рюкзак в гугле, рюкзаки не будут вас преследовать на всех остальных сайтах, где есть баннеры той же рекламной сети. Да, вам будут попадаться сайты, для которых придется прописать исключения — но это стоит того. Тяжело пробить даже уязвимую версию флеша, если флеш-плагин не запускается. 😀
Только после этого имеет смысл делать всё остальное.
Резалки баннеров, несмотря на многомегабитные каналы, по-прежнему эффективны. Во-первых, каждый срезанный запрос — это уменьшение задержки. Во вторых — уменьшение возможности отслеживания. И в третьих — экономия гораздо более ценного ресурса- вашего личного времени и внимания. Я активно призываю их использовать. За рекламную индустрию волноваться не стоит — глобально просвещенное общество с обязательным высшим образованием пока что никакой из стран не грозит.
Ещё хорошая вещь — манипуляции над заголовками в HTTP-запросе. Простое затирание UserAgent вкупе с отключенным по дефолту JS — и подсунуть вам правильный эксплойт-пак автоматически станет крайне затруднительно.
Локально поставленный прокси умеет делать это на ура, и легко может быть использован любым из браузеров или виртуальной машиной.
Автоочистка истории, куков и кэшей при выходе — обязательна.
Если же вам надо ходить по куче сайтов со включенными скриптами, флешем и прочим говном — заведите отдельную виртуальную машину. Против отката к ранее сохраненному снапшоту бессильны даже руткиты.

2). Противодействие злонамеренному ПО делается ровно тремя вещами: ограничением привилегий (не работать под рутом/админом), политиками безопасности (SELinux/SRP) и средствами изоляции приложений (SELinux/VM). Да, антивирусам тут не место, выкиньте своего касперыча или паутиныча в помойку. Принцип "дать админа, потом ловить вирусню по всем томам" — порочен изначально. Естественно, никакого автозапуска.

3). Обратитите внимание на любую софтину, способную принять внешнее соединение. Если уж у вас запущен тимвьювер или радмин — поставьте туда, блджад, сильные пароли! Не ленитесь отключить то, что вам не нужно, и усилить защиту там, где это не требует адовых усилий. Файервол должен по умолчанию пропускать только то, что вам нужно. А не резать выборочно траффик на два порта давно мертвых бэкдоров.

4). Критичные сервисы _обязаны_ быть изолированы от основной рабочей системы. Банк-клиент — только в отдельной ВМ. Иначе пиздец.

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

5). Если вы постоянно ищете в гугле рюкзаки и скороварки, или просто без палева спрашиваете рецепт изготовления "йадернай б
нбы", то в ряде стран с избыточным количеством боевой демократии будет не лишним использовать средства анонимизации. Ключевая идея тут — ваш траффик должен стать трудно инспектируемым, как вручную, так и с помощью оборудования.
Вообще обеспечение хорошего уровня анонимности — задача гораздо более трудная, чем принято считать. Как минимум тут необходим VPN куда-нить в дальние теплые страны. При усилении паранойи показан к применению настроенный TOR с дополнительными параноидальными правилами файервола, не позволяющими выпустить наружу ни байта в обход тор-сети.
Максимума тут не существует, ибо нет предела совершенству.

6). Советы аналогично (5). Кстати, есть повод задуматься, действительно ли вся эта защищаемая "интеллектуальная собственность" /фраза-то какая омерзительная!/ достойна того, чтобы занимать место на вашем винчестере.

7). Что касается настолько серьезного противника, как спецслужбы — тут сложно давать советы. Даже физическая изоляция машин не панацея. Но не надо наивно думать, что такой противник у вас может быть только в том случае, если вы торгуете тоннами наркоты, продаёте оружие в промышленных масштабах или работаете тройным агентом в двух разных разведках =) Группа TAO в том же АНБ работает не просто так =) Например, любой ИТ-специалист на хоть сколь-нибудь важном инфраструктурном объекте (электростанции, объекты водоочистки/водоподготовки, крупные предприятия металлургии, любое предприятие около-ядерной отрасли, объекты связи) не должен исключать возможности атак со стороны противников такого уровня.
Конечно, вовсе не факт, что против админа и его хозяйства какого-нить СургутПищеРыбЭлектроПрома будет предпринята атака такого же уровня сложности, как против иранского Бушера. Но и думать, что АНБ и им подобные проедает весь свой бюджет впустую, совсем не интересуясь делами в ИТ-системах других стран — верх наивности.
Кроме того, если есть возможность залезть туда, где плохо защищено — хмурые дядьки воспользуются этим с ничуть не меньшим удовольствием, чем обычные мошенники.

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

Конечно, призывать всех к использованию TOR или приватных VPN через сервера в теплых странах будет с моей стороны немного наивно. Но вполне можно принять ряд других мер. Например, завести себе таки PGP и прикрутить её к почте. Для чатов прикрутить OTR. Защита почты и IM-чатов шифрованием — гораздо более простая задача, чем обеспечение анонимности. Просто сделайте это. Но при использовании PGP никогда не забывайте, что она не только шифрует, но и подписывает. Эту особенность иногда надо учитывать.

И ещё важный момент. Криптография, защищающая ваши данные, переписку или чаты, имеет смысл только тогда, когда у вас есть полный контроль над ключами и возможность их сверки. Если ваш собеседник на другом конце мира — не поленитесь позвонить ему (пусть даже в скайп!) и попросить продиктовать отпечаток открытого ключа! Именно поэтому PGP и OTR защищают ваши данные, а "типо зашЫфрованная" переписка в скайпе или iMessage — нет.
Когда я в новостях читаю, как очередной журнаглист удивляется тому факту, что яббл оказывается может читать переписку через очередную яблохрень типа iMessage — это фейспалмищще. Запомните эту истину — если используемые ключи вы не контролируете — их, очевидно, контролирует кто-то другой.

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

P.S.S. Забавно, но одна из наиболее подробных и простых инструкций по настройке подобного крипто-хозяйства под виндовс обнаружилась на сайте, целиком внесённом в "черный список" за продажу всяких подозрительных субстанций.

Да пребудет с вами истина =)

- комментарии
  1. tomber-bis:

    Спасибо. Кое-что поправил. 🙂

  2. anonymous:

    sinister writes:Актуальный материал, спасибо.Интересно, что автор думает про криптоконтейнеры, зашифрованные разделы в целом, и про truecrypt в частности?

  3. Aminux:

    Криптоконтейнеры являются обязательным средством при работе с приватными ключами для PGP и SSH, даже если на ключах стоят отдельные пароли. С ними просто работать, их легко бэкапить и переносить. Под красноглазиксом можно немного поскриптить для большего удобства.Простейший пример их полезности — у вас сдох жесткий диск, и вы его вернули по гарантии. Использование криптоконтейнера даже только для ключей не позволит недобросовестному ремонтнику из сервиса (а это может оказаться вообще кто угодно) спиздить ключи и подвергнуть опасности ваши сервера и проекты. Хранение паролей, шифровальных ключей, адресных книжек, медицинских документов и договоров внутри криптоконтейнера — однозначно хорошая практика.Зашифрованные разделы — идея конечно мощная, но несколько сложнее в применении, чем контейнеры в файлах. Там несколько сложнее организовать бэкап, да и скорость доступа все-таки заметно меньше. Их использование под нагрузкой (файловые сервера, базы данных) на мой взгляд можно обосновать лишь при наличии очень сильного противника. Домашнее их использование тоже одобряется. Хотя если за вами гоняются всякие разведки и Джеймсы Бонды — то конечно да, шифровать надо весь диск.Про труЪ-криптЪ ничего особого не скажу, не пользовался. В настоящий момент планируется большой аудит кода этого самого труЪ-крипта в связи с откровениями мистера Эдварда. Из особо интересных фишек — отрицаемое шифрование (скрытый контейнер).В стандартной админской практике двойной контейнер не требуется в 99.9% случаев, ибо паранойя в этом случае уже запредельна. Также может быть полезен тем, что является кроссплатформенным решением, если конечно кто-то доверяет виндовс настолько, чтобы открывать на нём документы, за которыми охотятся разведки 😆

  4. anonymous:

    sinister writes:Спасибо за подробный ответ.Спрашивал как раз в виду аудита truecrypt.Сам пользуюсь им достаточно давно, удобна как раз кроссплатформенность,один и тот же контейнер открывается и под виндой, и в линуксе и под андроидом на смартфоне.И чтобы полностью закрыть тему, можно еще про двухфакторную авторизацию пару слов.К примеру можно тот же google authenticator через PAM привязать к SSH демону и помимо ключа будет еще и одноразновый код.Насколько такой способ действенный?

  5. Aminux:

    Про труЪ-криптЪ на ведроиде — не знал, спасибо за инфу.SSH — вещь довольно важная, через него управление ходит.Привязать РАМ можно, но оставьте возможность входа и просто по ключу на какой-нибудь учетке, чтобы в случае аварии на гугло-аутентификаторе не лишиться доступа начисто и совсем.Способ настолько действенный, насколько вы доверяете гуглу 😀 Кстати, одноразовые пароли можно и без гугля сделать.Вообще одноразовые пароли — штука неплохая, особенно в таких вещах, как банк-клиенты и прочие дорогостоящие сервисы. Защищать SSH таким макаром — в большинстве случаев всё-таки перебор. Хотя если у вас АБС или аццкая телефония — то имеет смысл в качестве второго фактора.Повторюсь, что на 99% серверов ключей и уведомления о логине как правило достаточно.

  6. anonymous:

    makkarpov writes:Ну гугль только приложение написал и (в некоторой степени) популяризовал идею. Одноразовый пароль там формируется как хеш от секретного ключа и текущего времени. Сошлись хеши — супер, пускаем. И именно секретный ключ в виде QR-кода предлагают сосканировать при настройки. И гуглевое приложение, кажется, с открытыми исходниками. Если уж совсем паранойя замучала — то можно найти альтернативу или написать свое, благо алгоритм там несложный. PAM может использовать гугль-аутх, как свой модуль, но (!) при аутентификации через ключ SSHD не использует PAM. На хабре предлагалось решение через какие-то хитрые конфиги самого SSHD.И да, хоть это должно быть всем понятно, но на всякий случай напишу. Наличие криптоконтейнера не освобождает от обязанности иметь пароль на ключе.

  7. Aminux:

    К сожалению, сделать такое можно не везде. Например, ряд сетевых железок не умеют SSH в принципе, некоторые умеют "или/или" — либо только телнет, либо только SSH (д-линк DES), либо в SSH нет авторизации по ключам (старые Cisco IOS), либо есть, но работает черех жеппу (древние перво-фряхи)либо ещё какая-то муть. Опять же, надо смотреть, что мы защищаем.Я, например, морально не готов прикручивать одноразовые пароли для всяких серверов с говносайтами, игрушками и дц-хабами.На мой взгляд, такие меры имет смысл там, где ущерб от взлома крайне критичен по деньгам — это прежде все банковские / платежные системы и ip-телефония.У меня есть опыт прикручивания одноразовых паролей к промышленной учетной системе, но реально сложность обслуживания оказалась приличной, и в итоге одноразовые пароли оставили только для учеток с высокими привилегиями в системе.И кстати, интересное видео в догонку: http://www.securitylab.ru/blog/personal/aguryanov/33789.php

  8. anonymous:

    sinister writes:Вдогонку про паранойю и про вирусов-шифровальщиков.Относительно недавно появилась утилита CryptoPrevent. Суть в том, что она создает правила групповыx политик, которые блочат возможность запуска exe, com и scr файлов из %appdata% и других мест откуда обычно малварь и запускается.Что-то в этом есть.

  9. Aminux:

    Отдельная "утилита" — уже фу. Есть у вас виндовс "Professional"-редакции и выше — там есть штатный механизм для настройки политик SRP, настраиваемый совершенно незатейливо и после включения изумительно работающий. Это основы.А если же виндовс "Home" — то там с политиками швах, и приходится вот так вот извращаться. Хотя получить на обрезанной хомке что-то приличное — странная хотелка.И вообще, если у поциэнта запускается всё подряд, нет бэкапов и он ещё боится вирусов-шифровальщиков — то текущая статья немного не про него. Тема у нас — про шифрование и анонимность, а при наличии бардака и пиздеца на локальной машине озадачиваться такими высокими материями немного неоправданно.P.S. Подразумевается, что перед прочтением такой статьи локальный порядок на компе наведён, учётки запаролены, политики применены, наиболее сомнительный софт выброшен в мусор или качественно изолирован, а ценные данные забэкаплены.