Пожалуй, лучший облачный хостинг в России
15,90
рейтинг
16 ноября 2012 в 11:29

Разработка → Как мы получали доступ к базе реестра запрещенных ресурсов

Приветствуем тебя, хабрасообщество.

Самой обсуждаемой новостью текущей недели в рунете, безусловно, является принятие закона №139-ФЗ и его последствий. В силу того, что наша компания предоставляет услуги хостинга, нам понадобился доступ к полной базе реестра, чтобы своевременно реагировать на добавление ресурсов наших клиентов в базу. Это связано с тем, что нам необходимо информировать клиентов о блокировке их ресурсов, ведь в случае, например, блокировки по ip сервера веб-хостинга, могут пострадать и остальные, ни в чем не виноватые, клиенты. К сожалению, получение такого доступа оказалось делом не самым очевидным, поэтому мы хотели бы поделиться результатом прохождения данного квеста.



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


В настоящий момент доступ к единому реестру запрещенных ресурсов предполагается двух видов:

  1. Для всех пользователей интернета в виде формы поиска на главной странице реестра. Каждый запрос требует ввода капчи, кроме того, форма, по сути, решает задачу получения информации о блокировке конкретного ресурса, известного заранее, т.к. если сайт забанен по url, то ввод в форму имени домена не даст никакого результата. Пример: ww.xapka.com — пусто, http://www.xapka.com/ — информация о блокировке.
  2. В виде полного дампа базы запрещенных ресурсов в разделе «операторам связи». Есть возможность доступа либо через веб-форму с необходимостью ввода капчи, либо через SOAP-сервис. Адрес WSDL: www.zapret-info.gov.ru/services/OperatorRequest/?wsdl.

Во втором случае каждый запрос на выгрузку базы необходимо подписывать ЭЦП, в формате PKCS#7 и передавать отвязанную подпись вместе с запросом. В идеале мы представляли себе примерно такой порядок действий: покупаем ЭЦП, берем привычный нам Debian, ставим туда соответствующее ПО для автоматической подписи запросов, пишем скрипт, который общаясь с сервером zapret-info через SOAP формирует запрос, подписывает его, скачивает дамп и рядом эвристических методов проверяет, не относятся ли к нам какие-либо ресурсы из списка.

Казалось бы, все просто, но на деле оказалось несколько сложней и дольше.

ЭЦП


Сервер zapret-info не предоставляет никакой «песочницы», в которой можно было бы протестировать работу скрипта без наличия валидной ЭЦП, поэтому самым первым делом надо озаботиться ее приобретением.

Купить сертификат для создания квалифицированной электронной подписи можно в доверенном удостоверяющем центре. По умолчанию все УЦ для подписывания документов предлагают пользоваться программами из семейства КриптоПРО (КриптоАРМ, cryptcp). К сожалению, пользование этим многообразием программных продуктов омрачает несколько фактов:

  • Если в состав комплекта ЭЦП входит лицензия КриптоПРО — то скорее всего, она предназначена для Windows.
  • Сама КриптоПРО ничего не умеет подписывать, а инструменты, которые умеют — требуют отдельной лицензии и покупки.
  • Возникают еще вопросы про лицензирование (то ли нам нужна лицензия на 1 рабочее место, то ли на 1 сервер).

Поэтому быстрый поиск в интернете навел нас на информацию о том, что с помощью несложных действий с Рутокеном можно научить работать привычный нам OpenSSL. Краткий бриф наших действий такой:

  1. Экспортировать ключ в формате PKCS#12 из криптоконтейнера в Windows с помощью утилиты P12FromGostCSP
  2. Преобразовать его в PEM
  3. Прописать в конфиге openssl.conf параметры
    В самом начале, до секций:
    openssl_conf = openssl_def
    

    В конце новые секции:
    [openssl_def]
    engines=engine_section
    
    [engine_section]
    gost=gost_section
    
    [gost_section]
    engine_id=gost
    default_algorithms=ALL
    
  4. Все готово, теперь можно попробовать создать любой файл и подписать его:
    $ echo "Test" > document.txt
    $ openssl smime -sign -binary -signer ~/sign/gost.crt -inkey ~/sign/gost_nopass.key -outform PEM -in document.txt -out document.txt.sign
    

и проверить его через форму на госуслугах (раздел «отсоединенная, в формате PKCS#7»). Если подпись проходит проверку — можно двигаться дальше.

Формируем запрос


Тут тоже оказалось не все так гладко, как хотелось бы. Все дело в том, что на любую проблему выдается малоинформативное сообщение вида: «Ошибка! Файл запроса не соответствует требуемому формату». Но методом проб и ошибок были выяснены следующие требования к файлу запроса:

  • Важен точный порядок следования элементов XML-документа, как в примере.
  • Кодировка xml-документа исключительно windows-1251.
  • XML declaration string должен полностью соответствовать примеру (т.е. нельзя ни порядок аттрибутов менять, ни лишнего пробела между аттрибутами добавлять, ни двойные кавычки на одинарные поменять).

После формирования запроса подписываем его и получаем подпись. Дальше либо отправляем их через метод SOAP sendRequest(), изначально закодировав в base64 содержание файлов запроса и файла подписи, либо отправляем их через форму. Получаем идентификатор запроса, ждем около минуты и проверяем результат обработки запроса (метод getResult(), либо вторая форма на странице запроса).
Кстати, и тут у нас с первого раза не все прошло так гладко. На странице появилась еще одна надпись:
Ошибка! неверный формат ЭП (информация по обратной связи для разрешения проблем приведена в Памятке оператору связи в разделе www.zapret-info.gov.ru/tooperators)


Тут уже наши догадки закончились и мы написали на почту поддержки: support@rsoc.ru, откуда через несколько часов пришел ответ, что в алгоритм проверки ЭЦП были внесены корректировки и нам нужно попробовать еще раз. Со второго раза проверка прошла успешно и нам был выдан zip-архив, в котором находились дамп реестра и его ЭЦП.

Автоматизация


После всех описанных действий, никаких проблем с автоматизацией у нас не возникло. Алгоритм работы примерно такой:
1. проверяем, не изменился ли таймстамп базы;
2. если изменился — формируем запрос, генерируем подпись, отправляем запрос;
3. периодически опрашиваем сервис на предмет готовности результата;
4. если результат есть — получаем архив дампа, разархивируем его и проверяем список ресурсов на принадлежность нашим клиентам.

Пара советов:


  • Для питона самой удобной реализацией SOAP-клиента оказался модуль suds
  • lxml.builder ставит одиночные кавычки в xml declaration string, поэтому у нас генерация xml запроса выглядит как-то так:
    from datetime import datetime
    from dateutil.tz import tzlocal
    from lxml import etree
    from lxml.builder import E
    
    request_xml = E.request(
        E.requestTime(datetime.now(tzlocal()).isoformat()),
        E.operatorName(settings.NETANGELS_OPERATOR_NAME),
        E.inn(settings.NETANGELS_INN),
        E.ogrn(settings.NETANGELS_OGRN),
        E.email(settings.NETANGELS_EMAIL),
    )
    # Роскомнадзор не умеют работать с одиночными кавычками и utf-8 :-(
    request_str = etree.tostring(request_xml, xml_declaration=True, encoding='windows-1251').replace("'", '"')
    

Выводы


  • При словах linux в контексте вопроса: «Каким ПО мы можем подписать документ из скрипта?» все удостоверяющие центры впадают в ступор и предлагают ознакомиться с решениями для Windows :-)
  • Мониторинг реестра запрещенных ресурсов можно и нужно автоматизировать, если ваша деятельность связана с хостингом.
  • При запуске любых сервисов необходимо предоставлять разработчикам «песочницу», где можно проверить базовую интеграцию с ними.
  • Иногда задача, связанная с работой с государственными структурами, может заступориться в совершенно неожиданном месте.
Автор: @NetAngels
NetAngels
рейтинг 15,90
Пожалуй, лучший облачный хостинг в России

Комментарии (176)

  • 0
    А кто нибудь делал ЭП в формате «отсоединенная, в формате PKCS#7», из Рутокена, с КриптроПро? Вроде выгрузил, подписал файл, а проверку не проходит.
    • +1
      Вы имеете ввиду «как получить открепленную ЭП в PKCS#7 из Рутокена» или «как получить открепленную ЭП в PKCS#7 из Рутокена с помощью КриптоПро»? Если первое, то ответ на этот вопрос в пункте 1 статьи, там где краткий бриф наших действий.
      • 0
        Ключ от госуслуг пойдет?
      • 0
        с Rutoken S данная схема не работает, openssl не видит токена просто. Задолбался уже с этим реестром, все никак подписать запрос не могу…
    • 0
      Опять же, по словам ребят из СКБ Контура, они пользовались КриптоАРМом и у них подпись прошла проверку. В любом случае, рекомендую написать на support@rsoc.ru, т.к. у нас подпись в какой-то момент не прошла проверку без объяснимых причин.
    • 0
      Да, делали. Тредик на наге почитайте, там отзывы есть.
    • 0
      С Помощью P12FromGostCSP получаю р12

      пытаюсь сконвертировать в PEM — получаю
      Error outputting keys and certificates
      3073636552:error:0606F090:digital envelope routines:EVP_PKCS82PKEY:method not supported:evp_pkey.c:101:

  • +1
    Несколько практических вопросов, если позволите

    А как они проверяют, что я есть провайдер/хостер? Надо просто им сказать и они на слово поверят? Или лицензию какую надобно?

    Если хостер предоставляет VPS, то он ясное дело не знает URL'ы, которые у него хостятся. Так как провайдеры тупо все банят по IP, то опять же как быть?
    • +1
      Полагаю, что у них есть список ИННов провайдеров и хостеров, ибо деятельность-то лицензируется.
      • 0
        Т.е. к примеру интегратор не может предоставлять услуги блокировки ресурсов из запрещенного списка? Бред :)
        • 0
          Думаю что может. У роскомнадзора специальное мыло есть, куда можно отписаться о том, что вы что-то хостите и хотите доступ к реестру получить.
    • 0
      А как они проверяют, что я есть провайдер/хостер? Надо просто им сказать и они на слово поверят? Или лицензию какую надобно?


      ЭЦП и запрос жестко привязаны к ИНН и ОГРН организации, т.е. грубо говоря, когда Вы делаете запрос — то сервер однозначно знает, что это за организация спрашивает.

      На слово не поверят, нужна лицензия ТМС (телеметрических систем) или ПД (передачи данных).

      Если хостер предоставляет VPS, то он ясное дело не знает URL'ы, которые у него хостятся. Так как провайдеры тупо все банят по IP, то опять же как быть?


      Ну, у провайдеров есть целый ряд способов бана, и кто как решает. А что касается хостеров — ну мы же знаем, кому какие айпишники выдаем — поэтому банальный dig просто включен в «ряд эвристических методов» проверки ресурсов.
      • –4
        Короче, всем дешевым реселлерам всяких Hetzner'ов и Leaseweb'ов большой привет. Только лицензии, только ГОСТ, только хардкор =)

        Deep Package Inspection очевидным образом противоречит статье 23 Конституции РФ.

        Так что остаётся только банить всё IP, а хостерам изголяться и выискивать нет ли на их серверах чего-то там непойми чего. Эх…
        • +4
          > Deep Package Inspection очевидным образом противоречит статье 23 Конституции РФ.
          Не противоречит, провайдер выступает в качестве канала связи, а не занимается сбором и публикацией того, какие ресурсы вы посещаете.
          • +2
            Статья предусматривает тайну сообщения, при чём там публикация?

            Часть URL за именем хоста является содержанием HTTP запроса. HTTP запрос содержит личные данные (посиковый запрос в гугле, например). HTTP запрос является сообщением в терминах статьи 23, поэтому никто своим носом туда лезть не имеет права, а уж тем более автоматическим что-то там обрабатывать.

            Это примерно как приходишь на почту, там твоё письмо вскрывают, почтальонша прочитывает на предмет запрещенных слов и такая говорит, что слово варенье у нас сегодня запрещено и бабушке в деревню отправить письмо ну никак нельзя.
            • 0
              Тайна сообщений считается нарушена, если она придается огласке, не важно, публичной или например путем занесения в личное дело.
              • +1
                То есть тётенька почтальонша типа не нарушает :)
                • 0
                  Тётенька нарушает, но ваша аналогия с ней не верна, ибо какая-нибудь SoniсOS занимаясь DPI не является такой тётенькой, личное персональное дело на вас она не заводит, жене на лавочке вашу переписку с любовницей не рассказывает.
                  • 0
                    Ну а почём я знаю рассказывает или не рассказывает? Одного анализа и принятия решения исходя из информации в личном сообщении уже достаточно, чтобы нарушать тайну.
                    • –1
                      Если рассказывает, то на это есть УК.
                      • +2
                        Если уж говорить об УК, то вы путаете статьи 137 «Нарушение неприкосновенности частной жизни» это как раз «рассказал жене» и 138 «Нарушение тайны переписки, телефонных переговоров, почтовых, телеграфных или иных сообщений» это «прочитал письмо».

                        Действительно в специальных случаях допускается ознакомление с сообщением, но когда этого требует техническая необходимость для пересылки сообщения, например телеграф. DPI не является технической необходимостью для передачи запроса HTTP.

                        • –2
                          При DPI никто, кроме автоматики, не ознакомляется с вашим сообщением (да и то, условно) и никому ничего не рассказывает.

                          Это вы путаете DPI с ситуациями, когда например сотрудник гугла читал чужую почту, или их машины для непонятных целей сохраняли трафик wifi сетей.
                          • 0
                            Ни УК ни Конституция не делают различие между средствами ознакомления автоматическим или не автоматическим.

                            Кстати, прослушивание трафика WiFi сетей это отличный пример. Это абсолютно тоже самое. И гугл был серьёзно оштрафован за это дело. Его не за сохранение оштрафовали, которое ещё и доказать надо, а просто за анализ этого трафика.
                            • 0
                              Однако разница есть и на этот вопрос я ответил в первом своем комментарии. Но вы можете обратится в Конституционный суд за разъяснением, если для вас не очевидно, что слова в конституции не буквальны (и не могут таковыми быть, иначе это фарс). Например еще можно попытаться оспорить запрет переходить дорогу в неположенном месте как нарушение 27 статьи, а запрет на несанкционированные митинги нарушением 31 статьи, а запрет…

                              В последнем отчете FCC говорилось как раз об том, что и сохраняли, и передавали в свой орегонский центр хранения. Еще и противодействовали публичной огласке: www.wired.com/threatlevel/2012/05/google-wifi-fcc-investigation/
                              • +2
                                Думаю, что обращения в КС не за горами. Однако с нашим замечательным КС любой бредовый закон будет OK.

                                Переход дороги в неположенном месте создаст опасность для других граждан и регулируется отдельным законом — ПДД РФ. ПДД действует только на части территории повышенной опасности — дорогах. Запретить передвигаться может только суд или чрезвычайные обстоятельства, четко обозначенные. В чем опасность или чрезвычайность вебсерфинга?

                                Митинги у нас никто не разрешает, у нас уведомительный характер массовых мероприятий. Другое дело как это всё исполняется, но формально всё OK.
                                • 0
                                  Скорее наоборот, говорить будут много, а на деле никто не пойдет, ведь никто не сможет доказать факта нарушения тайны. Тайна как была, так и остается таковой. Иначе можно вообще обвинить принтер к примеру в нарушении конституции, ведь он может в своем буфере вашу тайну сохранить. А еще он анализирует что вы печатаете, и даже может заблокировать например печать купюр.

                                  Вы вольны серфить что угодно, что не запрещено — например ресурсы сепаратистов или террористов, ибо они и их идеи представляют опасность для общества, отдельных граждан и страны в целом.

                                  Митинги все же должны санкционировать власти (для некоторых это как раз и есть спорный вопрос), а лишь уведомить можно об групповом пикете.
                            • 0
                              DPI-системы не могут ознакомиться с содержимым сетевого пакета. Ознакомиться может только разумное существо, т. е. человек, который и несет ответственность за свои действия согласно законодательству.

                              > Кстати, прослушивание трафика WiFi сетей это отличный пример. Это абсолютно тоже самое. И гугл был серьёзно оштрафован за это дело.

                              Тут другая правовая система, совершенно другая ситуация и наказание по другому основанию.
            • +2
              Ну вообще нет. Тетенька не вскрывает ваш конверт (не читает html), она смотрит только на сам конверт (HTTP запрос) снаружи и читает адрес получателя и его индекс (в данном случае URL и IP). Причем ей совершенно необходимо это делать по техническим причинам.
              DPI может быть использован для нарушения тайны переписки, но в данном конкретном случае всё законно, DPI технически необходим для точного исполнения закона (потому что запрет по айпи с баном невиновных, вообще говоря, нарушает правила лицензии на передачу данных, и теоретически можно жаловаться на провайдера без DPI в прокуратуру). Это как в случае с топором: им можно зарубить старушку, но есть и мирные применения.
              • +2
                Вы структуру HTTP запроса видели? Провайдеру абсолютно почхать на URL, он передаёт пакеты на уровне IP. Внутри HTTP запроса и хост и ресурс и параметры и тело все идут одним текстом, это собственно и есть payload (сообщение) находящееся внутри «конверта» TCP пакета¸ на котором указан «адрес» IP и порт. Ясное дело, что HTTP является одним из многих способов передачи данных и опять же какой хочу протокол, такой и использую. Например вот такой: dgl.cx/wikipedia-dns. Посмотрим как его будут блокировать.

                > DPI может быть использован для нарушения тайны переписки
                Нормативный актик не подскажите?

                Отличная идея, на одном IP разместить два сайта, один из них «добавть» с чёрный список и написать сразу две жалобы, одну на ограничение доступа к информации, а другой на нарушение тайны. И змея сожрёт сама себя.

                Мне вот интересно, г-жа Мизулина хоть что-то понимает из первого абзаца? :)
                • 0
                  Забудьте вы про IP, его может вообще не быть ни в одном месте цепочки сайт-браузер ( IPv6 + L2TP, например).
                  Самое главное, адрес подлежащей бану страницы задаётся урлом, а не айпишником, а урл появляется только на уровне HTTP.
                  Так что времена, когда провайдер мог передавать пакеты на уровне IP, прошли. Sud lex, dura lex.
                  Главное, чтобы они не узнали про https…
                  • +2
                    IPv6 пока в России отсутствует вообще.

                    Причём тут L2TP то вообще? Это костыли которые наоборот оборачивают пакеты ещё одним слоем, а не разворачивают их.

                    Про HTTPS это вообще лол. Вот про это им не рассказавайте www.eff.org/https-everywhere
                    • 0
                      L2TP при том, что он by design может ходить поверх IPv6 и вообще чего угодно. Просто пример привел.
                      И да, массовый переход на IPv6 — это вопрос пары лет, начиная с того момента, как минсвязи примет соответствующее решение. Рано или поздно примет.
                      Ну в общем мы не о том спорим.
                    • 0
                      Ну про «IPv6 пока в России отсутствует вообще» загнули от души.
                • 0
                  Да, насчет «DPI может быть использован» следует понимать как «существует техническая возможность использовать DPI», далее по тексту.
                • 0
                  «Мне вот интересно, г-жа Мизулина хоть что-то понимает из первого абзаца? :) „

                  “Запрос», «конверт», «адрес», «протокол» — что тут не понять? Вы же очевидно про почту России и официальную переписку. ;-)
                  • 0
                    А порт это вообще в ведение ВМФ :)
          • +3
            Закон регулирует отношения между людьми, а не машинами. Если человек просматривает чужие HTTP-запросы без разрешения, то он нарушает тайну связи (ст. 23 Конституции РФ). Если это делает машина, то никакого нарушения нет. Фильтрация спама тоже не нарушает тайну переписки до тех пор, пока ее не начинает осуществлять администратор электронной почты :-)
            • 0
              Рекомендую почитать вот это: dlp-expert.ru/materials/faq (если кто-то хочет разобраться в правовых аспектах использования DPI).
              • +3
                Таким образом пуля ничего не нарушает, он ж не живая. А человек всего навсего на курок нажал. В автоматической режиме. Понятно, что система не может нарушить закон, нарушает тот кто её использует в противоправных целях.

                А противоправная цель тут очевидна — ознакомление и анализ чужой информации.
                • 0
                  Пуля не нарушает, да. А человек нажимает не на курок, а на спусковой крючок. И в определенных случаях это нажатие приведет к нарушению закона (убийству). Ну или не приведет (убийство при необходимой самообороне). DPI-системы, применяемые для чтения чужой переписки (без разрешения) и в других корыстных целях, используются для нарушения закона. Но! Блокировка веб-страниц, содержащих информацию, наносящую вред детям, согласно внесенным и вступившим в силу поправкам, осуществляется по IP-адресам, доменным именам и URL. Заблокировать URL без DPI невозможно, если оператор сервера, на котором этот URL находится, не хочет сотрудничать.
                  • +2
                    Конституция имеет главенствующее значение перед статьёй ФЗ, поэтому если нельзя выполнить то, что предписывает ФЗ без нарушения Конституции, то применяются нормы Конституции.
                    • +2
                      Да, но автоматизированная блокировка URL из реестра посредством DPI не нарушает никаких прав. Она только позволяет в полной мере выполнить требования ФЗ.
                      • –1
                        Она нарушает право человека тайно(!) передать сообщение из узла A в узел Б, так как URL является частью сообщения.

                        Даже если сама блокировка делается автоматикой, то реестр то составляется людьми без решения суда. Таким образом, кто-то взял и ограничил мои права, потому что ему что-то там на каком-то URL померещилось.
                        • 0
                          Ага, а ретрансляторы сетевых адресов и портов (NAPT), модифицирующие данные FTP-команд, также приводят к безусловному нарушению чужих прав. Правильно? :-D

                          Если серьезно, то URL может являться частью сообщения, которое охраняется законом, а может и не являться. Зависит от ситуации. Но в любом случае блокирование HTTP-запроса не является нарушением Вашей тайны связи, ведь никто не ведет список нарушителей, пытавшихся обратиться к запрещенным ресурсам. И, в любом случае, попытайтесь пролоббировать возбуждение уголовного дела в отношении Mail.Ru, Google и пр. за нарушение тайны связи путем фильтрации спама ;-)
                          • 0
                            > Ага, а ретрансляторы сетевых адресов и портов (NAPT), модифицирующие данные FTP-команд, также приводят к безусловному нарушению чужих прав. Правильно? :-D

                            ну без разрешения такое делать — свинство ещё

                            >Если серьезно, то URL может являться частью сообщения, которое охраняется законом, а может и не являться

                            Короче всё как всегда, закон приняли, а теперь будем думать как его применить. Параметры поиска в гугле передаются через GET, а значит значения переменных идут в URLе. Понятно, что мой запрос гуглу является сообщением и вроде как должен охраняется.

                            Фильтрация спама осуществляется в рамках соглашения на обработку писем же. А если фильтрация идёт на уровне соединений, то пусть спамерыв суд обращаются :))
                            • +2
                              > ну без разрешения такое делать — свинство ещё

                              Значит RFC 3022 написали свиньи.

                              >…

                              Вы не правы, проконсультируйтесь с любым юристом, специализирующимся на ИТ.

                              Да, ваш поисковый GET-запрос охраняется как тайна связи. Но блокирование этого запроса не нарушает права на _тайну_ связи. А охраняемого Конституцией права на гарантированную доставку GET-запроса у Вас нет. А блокировка производится в соответствии с положениями ФЗ.
                              • +1
                                Причём тут RFC? Возможность есть такая и что? Другое дело как её применить.

                                Блокировка не нарушает, а вот анализ нарушает. Чтобы заблокировать надо сначала прочитать, ведь так?

                                • –1
                                  1. Сведения о наличии запрещенного контента в сети Интернет получаются не в результате анализа Вашего трафика другим человеком, а в результате самостоятельного веб-серфинга и обработки жалоб.
                                  2. Анализ Вашего сетевого трафика машиной (DPI-системой с возможностью блокировки сетевых пакетов, DLP-системой и т. п.) и только ей Ваших прав не нарушает, т. к. машина не имеет разума и не является субъектом права. Внедрение такой машины в сеть также не нарушает Ваших прав.
                                  • 0
                                    Тут можно спорить до посинения, действительно, видимо КС должен дать свои комментарии по этому вопросу.

                                    Ну а по делу, надо налаживать vpn (пусть анализируют, мне не жалко), либо двигать в сторону юрисдикции, где гугл штрафуют.
                                    • 0
                                      КС тут ничего давать не нужно – по поводу законности анализа трафика машиной у юристов мнение единое (есть судебная практика + отсутствие уголовных дел за внедрение ретрансляторов сетевых адресов или прозрачных прокси-серверов). А вот про тайну переписки на рабочем месте – разные, но это к нашей проблеме не относится :-)
                                      • 0
                                        К слову, прозрачные прокси-серверы меняют порядок следования заголовков или регистр параметров заголовков интернет-браузера :-)
                                        • +1
                                          Ну а никто не говорит, что это законно, кстати. Ещё некоторые прокси рекламу в HTML внедряют. «Всё для вашей безопасности, исключительно!»
                                          • +1
                                            Если бы это было незаконно, то сейчас бы мы с Вами не общались, т. к.:
                                            1. Прозрачные прокси-серверы меняют передаваемые данные (пусть даже незначительно).
                                            2. NAPT подменяет данные в FTP-сессиях и в полезной нагрузке ICMP-ответов о невозможности доставки TCP/UDP-пакета (предусмотрено RFC, см. выше).
                                            3. Хабр меняет мои кавычки на кавычки-«елочки».
                                            4. И еще много-много всего.

                                            Внедрение прокси-серверами рекламы незаконно, но соответствующая норма права прописана не в Конституции, не в УК, а кое-где еще.
                                            • +1
                                              Ну пусть закон тогда примут, что вот это можно, а вот это нельзя.

                                              Хабр, не меняй "", пожалуйста
                                              • 0
                                                Нельзя написать такой закон, который описывает абсолютно все детали определенной сферы человеческой деятельности. Законы создаются и применяются людьми, поэтому часть неопределенности, вносимая особенностями человеческого мышления и языка, всегда остается. Иными словами, из закона нельзя сделать абсолютный алгоритм (именно поэтому судят людей люди, а не машины Тьюринга).
                                                • 0
                                                  Ну понятно, что абсолютного алгоритма не придумать. Но обратной ситуации «закон, что дышло» тоже нельзя допускать.

                                                  Сейчас ФЗ «о вреде для детей» как раз такое дышло, которым всё что угодно можно оправдать.
                        • +1
                          > Даже если сама блокировка делается автоматикой, то реестр то составляется людьми без решения суда. Таким образом, кто-то взял и ограничил мои права, потому что ему что-то там на каком-то URL померещилось.

                          Ч. 3 ст. 55 Конституции смотрите. А ФЗ уже есть.
                          • –2
                            ст 55 четко описывает сферы, в которых права могут быть ограничены. В первую очередь это безопасность личности и государства. Сама по себе информация никак не может представлять угрозу безопасности, только её использование, например, производство наркотиков или доведение до самоубийства. Но за это уже есть наказания, предусмотренные УК.

                            Но там есть ещё одно свободно толкуемое слово как «нравственность», за которое можно уцепится. Допустим, действительно можно какую-то информацию признать опасной для нравственности и блокировать её распространение.

                            Так как у нас в стране практикуется свобода совести, то блокировать надо именно распространение «ненравственной» информации, а не запросы на такую информацию. Употребление наркотиков не является преступлением, а вот распространение является.

                            А вот фильтрация по контенту действует в таких замечательных странах как ОАЭ, Иран, Китай и тп.
                            • 0
                              Преступлением признается незаконный оборот наркотиков, т. е., согласно закону, незаконные разработка, производство, изготовление, переработка, хранение, перевозка, пересылка, отпуск, реализация, распределение, приобретение, использование, ввоз на территорию Российской Федерации, вывоз с территории Российской Федерации, уничтожение наркотических средств, психотропных веществ (ст. 1 ФЗ «О наркотических средствах и психотропных веществах»). А т. к. употребление (использование) невозможно без приобретения, то вывод делайте соответствующий.

                              > распространение «ненравственной» информации, а не запросы на такую информацию

                              Если блокировать HTTP-ответ, а не соответствующий ему HTTP-запрос, то ситуация, с точки зрения техники или закона, не меняется.
            • 0
              Ах, блин, запутался, надо было ответить на коммент ivlis выше Вашего ;-)
          • +1
            > Deep Package Inspection очевидным образом противоречит статье 23 Конституции РФ.

            Насчет нарушения Конституции, там все глобальнее, чем DPI – сам реестр своим существованием нарушает Конституцию, статью о том, что запрещена цензура массовой информации.

            У меня был пост на эту тему habrahabr.ru/post/152941/
            • –2
              Не согласен. Сама по себе идея фильтрации запрещенного контента не несет ничего противозаконного. С другой стороны, при наличии соответствующих законов и технических возможностей грань между дозволенной блокировкой и цензурой становится все менее очевидной, отсюда возможны злоупотребления, действительно квалифицируемые как цензура. Особенно в этой стране :-)
              • +1
                >Сама по себе идея фильтрации запрещенного контента не несет ничего противозаконного.

                В закон о СМИ все четко написано

                Статья 3. Недопустимость цензуры
                Цензура массовой информации, то есть [...], а равно наложение запрета на распространение сообщений и материалов, их отдельных частей, — не допускается.

                Фильтрация это и есть «наложение запрета на распространение сообщений и материалов» и она запрещена.
                За незаконный контент можно лишить статуса СМИ, закрыть сайт, посадить владельца итп.
                Но фильтрация запрещена.
                • –1
                  Я сомневаюсь, что кто-то будет просто так вносить в реестр сайты, официально зарегистрированные как СМИ (в цитате из ФЗ «О СМИ» речь идет только про СМИ). Ведь это пахнет уголовным делом в отношении лица, принявшего решение внести такой сайт в реестр (ст. 144 УК РФ). Поэтому блокировка контента СМИ должна осуществляться только по решению суда.
                  • 0
                    Ну вот, а статус СМИ может получить практически любой сайт, даже твиттер-аккаунт.
                    • –1
                      Да, но сайт с CP такой статус не получит. А если и получит, то его деятельность будет нарушать ст. 4 ФЗ «О СМИ», что приведет к лишению такого статуса с последующей возможностью внесудебной блокировки.
                      • –1
                        Так речь не идет про сайты с CP, а о том как обезопасить свой бизнес от запрещенного контента, который может добавить пользователь, в комментарии например, на вашем сайте.

                        Или даже просто от ошибок реестра.
                        • –1
                          Злоупотребления, ошибки, неправомерные действия всегда возможны в любой сфере деятельности. От них никто не застрахован.
                          • +1
                            >Злоупотребления, ошибки, неправомерные действия всегда возможны в любой сфере деятельности.

                            О том и речь, реестр действует как ковбой, сначала стреляет, а потом разбираются (через суд) что там было на самом деле и надо было ли вас блокировать или как с Евой речь шла только про наркотики в онлайн игре.

                            Поэтому лучше иметь статус СМИ, чем рисковать, что ваш бизнес могут заблокировать в любой момент.
                            • –1
                              В законе прописано: сначала уведомить, потом подождать, потом проверить и только если все плохо – заблокировать. Любые отклонения от этой последовательности есть нарушение закона.
                              • +1
                                Да, вам даются целые сутки, чтобы удалить, что вам сказали, какие они щедрые :)
                                А предупреждение шлют не вам, а на деревню дедушке (на емейл, указный у хостера в RIPE, которые не все проверяют, тем более чтобы мониторить постоянно)

                                При том, что этот контент может быть вполне законным, как было у Евы например, но вы оспорить это не можете, вы обязаны удалить, не важно ошибся реестр или нет.
                                Вы можете подать в суд потом, когда вас уже заблокировали.
                                • –1
                                  Сутки, ИМХО, – нормальный срок. Spamhaus при внесении в SBL дает примерно столько же :-) И шлет е-мейлы туда же.

                                  > При том, что этот контент может быть вполне законным, как было у Евы например, но вы оспорить это не можете, вы обязаны удалить, не важно ошибся реестр или нет.

                                  Это у правоприменителей серьезный косяк. Его им нужно исправить.
                                  • 0
                                    >Сутки, ИМХО, – нормальный срок. Spamhaus при внесении в SBL дает примерно столько же :-) И шлет е-мейлы туда же.

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

                                    Spamhaus тут вообще не причем. Они ваш сайт не блокируют.
                                    • –1
                                      Они заносят его в свой запрещенный список. И в результате электронная почта с Вашего сервера уже никуда не придет (почти все спам-фильтры используют их списки).
                                      • 0
                                        Я в курсе чем они занимаются, только с какой стати они стали примером, как надо себя вести при блокировании сайта, вот этого не понимаю.
                                      • 0
                                        Это я к тому, что Спамхаусу плевать на местное законодательство, их черные списки имеют большой вес в Интернете. А провайдеры рано или поздно научились реагировать на автоабузы Спамхауса в короткий срок (как правило, в течение суток).
                                        • 0
                                          А какой-то хакер может дефейснуть ваш сайт вообще не спрашивая разрешения.

                                          Причем тут это и блокирование сайта по законам РФ?

                                          • –1
                                            Я говорю про то, что интернет-провайдеры научились рассматривать большинство поступающих жалоб в короткие сроки (спасибо Спамхаусу). В контексте ветки дискуссии о разумности предоставляемых сроков реакции перед блокировкой.
                                            • 0
                                              Рутрекер писали, что они получили предупреждение (но у них своя AS и письмо было отправлено сразу к ним), другие писали, что не получали, так что спамхаус их не особо приучил к чему-то.

                                              У моего хостера в RIPE вообще написан адрес не основного хостера, а другого, у кого они арендуют площадку и каналы, сомневаюсь, что до меня за сутки успеют отправить уведомление, скорее сначала заблочат.

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

          Вопрос на засыпку: имею ли я право на домашнем WiFi-роутере запустить `tcpdump -i wlan0`, если доступ к WiFi незапаролен и открыт для всех? Или я потенциально являюсь злостным нарушителем ст. 23 Конституции РФ?

          Хуже Пономарёва и Мизулиной, ей-Богу.
          • 0
            А свой WiFi роутер открытый зарегистрировали как узел связи уже? И лицензию получили?

            Вообще, если вы дампите чужой трафик, то очевидно нарушаете.
            • 0
              А при чём тут узел связи? Конституция разве только на узлы связи распространяется?

              Усложним задачу. Вот тут я задавал другому пользователю вопросы о 23 статье, но ответа не получил. Продублирую вам:
              Вот, предположим, я для своих институтских однокурсников поднял форум на phpBB и его админю, а однокурсники в нём переписываются, в том числе в личных сообщениях. Вдруг, представим, в phpBB находят уязвимость, благодаря которой личные сообщения кого угодно может читать кто угодно, даже без аккаунта на форуме. Что теперь, всё, мне сидеть как злостному нарушителю конституции, обнародовавшему личную переписку 500 человек?

              Другой пример: подходит ко мне Марк Цукерберг и просит отвезти его другу в Ереван письмо, в котором написано, как заработать миллиард долларов за день. Сам Марк в Ереван ехать боится, почте не доверяет, а вот мне почему-то поверил. Я в принципе ехать не боюсь, но и не то чтобы хочу, поэтому выдвигаю условие: я вскрываю конверт, читаю письмо, зарабатываю миллиард и потом еду в Ереван. В этот момент, согласно вашей трактовке закона, Марк бежит в Конституционный суд и выигрывает дело. Очевидно, что это абсурд, правда?
              • 0
                «Сидеть как нарушитель Конституции». И тут кто-то про доморощенных юристов говорит :) Чтобы вас привлекли по уголовной статье 138 должен быть доказан умысел. Так как умысла нет, ну и статьи нет. Тем более при регистрации на формуме наверняка есть соглашение, что типа ни за что не отвечаем и тд и тп.

                Про Марка пример явно бредовый, ну договорились вы, что вы на таких условиях конверт везете. Можете договориться, что Марк каждый день вам кофе приносить будет. Если отправитель даёт согласие на обработку, то какие претензии?
                • +1
                  > И тут кто-то про доморощенных юристов говорит

                  Я как раз ни в коем случае не претендую на поиск «очевидных противоречий статьям Конституции» :-) Я лишь знаю ряд распространённых юридических ловушек, не более того.

                  > Чтобы вас привлекли по уголовной статье 138 должен быть доказан умысел

                  Здесь я усматриваю явное противоречие тезису «если вы дампите чужой трафик, то очевидно нарушаете». Я ведь дампил это неумышленно — лишь пытался понять, почему (например) у меня обрывается соединение с почтовым сервером. И думать не думал, что к моей открытой точке присосётся пять прохожих!

                  > Про Марка пример явно бредовый, ну договорились вы, что вы на
                  > таких условиях конверт везете.

                  Постойте, но я ведь не могу заключать соглашения, противоречащие Конституции РФ! Соответственно, не могу в договоре требовать от другой стороны раскрывать тайну своей переписки. Верно?
                  • 0
                    1. Ну отключите точку, пока ремонтируете что-то.

                    2. Требовать вы не можете, Марк может послать вас куда подальше и найти другого гонца. В вашем примере у письма два получателя, все согласны и счастливы.
                    • 0
                      1а. Так как я пойму, в чём у меня проблема с почтовым сервером gmail.com, если я себе доступ к Интернету отключу?
                      1б. А почему я вообще должен отключать собственную точку доступа из-за каких-то проходимцев, которые к ней подключаются? Т. е. это как — каждый прохожий имеет какие-то права на мою собственность, пользоваться которой я никому не предлагаю?

                      2. Ну так ровно так же вас с вашими конституционными претензиями к DPI может послать хостер. Идите, мол, ищите другого гонца, который DPI не использует.
                      • 0
                        1. Приостановите оказывать услуги связи, например паролем :)

                        2. Скорее всего так и будет, провайдеры добавят строчку в соглашение мелким шрифтом, типа что все на всё согласны и всё.
                        • +1
                          1. Так я их и так не оказываю — денег не беру, лицензии у меня нет, договоров на оказание услуг тоже нет.

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

                          В целом нужно заметить, что Мизулина и Пономарёв, на самом деле, совершают одну-единственную ошибку — лезут со своими понятиями в область, в которой ничего не понимают, считая, что в этой области «всё и так очевидно и понятно». Ту же ошибку совершает IT-шник, пытающийся вольно трактовать законы. Так не будем же, о братья, уподобляться депутатам Госдумы!
            • +2
              Оказание услуг связи на безвозмездной основе не требует получения лицензии (ст. 29 ФЗ «О связи») либо регистрации беспроводной точки доступа стандартной конфигурации.

              Само копирование чужого трафика, в т. ч. и в pcap-файл с параметром "-s 0", не нарушает чужие права. Их может нарушить человек, когда совершит неразрешенные действия по ознакомлению со сведениями, составляющими чужую тайну, охраняемую законом (например, тайну связи).
              • –1
                > Само копирование чужого трафика, в т. ч. и в pcap-файл с параметром "-s 0", не нарушает чужие права.

                Расскажите это Гуглу www.mediapost.com/publications/article/153434/google-can-be-sued-for-wifi-interceptions.html
                • +2
                  Зачем мне это рассказывать Гуглу, если я живу в РФ? У нас это не запрещено. Хотя, безусловно, тотальный сбор данных можно расценивать как злоупотребление правом с последующими санкциями, но к нарушению прав, охраняемых законом, в т. ч. и права связи, это отношения не имеет.
                  • 0
                    > права на тайну связи

                    Fixed.
          • +2
            > Как же уже, однако, набили оскомину всякие доморощенные юристы, которые берутся, однако, трактовать законы, совершенно не имея соответствующей подготовки и образования.

            Что плохого в трактовании законов не юристами? Законы пишут для юристов или для граждан страны?
            Граждане обязаны знать и понимать законы.
            • +1
              К большому сожалению (без иронии), в нынешнем мире законы пишут для юристов, а не для граждан. Особенно в этом продвинулось американское прецедентное право — обычный гражданин просто не в состоянии за обозримое время объять все релевантные прецеденты. Но и Россия со всеми её поправками, разъяснениями ВС РФ и правоприменительными практиками успешно движется в том же направлении.
              • 0
                Что законы пишут плохо это одна проблема.

                Но законы не станут лучше от того, если говорить и считать, что надо быть юристом чтобы их понимать, а обычные люди без профильного образования не могут этого делать.
                Законы должен понимать и толковать тот, кто по ним отвечает, юристы могут только советовать и тоже могут ошибаться.
                • 0
                  > Но законы не станут лучше от того, если говорить и считать,
                  > что надо быть юристом чтобы их понимать

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

                  > юристы могут только советовать и тоже могут ошибаться.

                  Здесь, как и в подавляющем большинстве случаев, важна не возможность, а вероятность. Не советую вам, будучи обвиняемым в суде (не дай вам Бог, конечно!), руководствоваться тем соображением, что юристы тоже могут ошибаться и проку от них мало.
                  • 0
                    >Так или иначе, в данный момент юриспруденция устроена именно так, как я написал выше.

                    Вовсе нет, она и сейчас устроенна так, что понимать и трактовать закон должен тот, кто отвечает по этому закону.
                    Если вы на суде скажете, что ваш юрист вам сказал, что вас не посадят, это вас не спасет :)
                    • 0
                      Формально да, она устроена так. А в реальности юриспруденция ориентирована на обычных граждан не более, чем сайт госзакупок.
                      • 0
                        И формально и реально понимать обязаны вы и никто другой.

                        Что законы сложны для понимания я согласен, но это ничего не меняет.
                        • 0
                          Вот если думать так, то мир точно лучше не станет.

                          Тривиальный пример: рядом с моим домом есть «слепой» поворот, за которым находится пешеходный переход. На этом переходе часто гибнут люди. В вашем понимании в их гибели виноваты водители (они обязаны знать и учитывать законы, знаки и дорожную ситуацию), а в моём — чиновники, которые отказываются перенести переход на 30 метров в сторону или сделать его подземным.

                          Я считаю, что, если руководствоваться моей логикой, то люди будут гибнуть реже. А если руководствоваться вашей, то больше народу будет сидеть, вот и всё.

                          <..>

                          В общем случае, если каждый закон должен быть доступен для понимания каждому гражданину, то каждый закон должен проходить соответствующее ревью на понимаемость обывателем. Отсутствие этого ревью говорит о том, что законодательная система ориентирована на юристов. C'est la vie.
                          • 0
                            Это уже демагогия, я же согласился, что законы лучше писать понятнее, но их сложность не освобождает от ответственности, ни формально, ни реально, ни как-то еще.

                            Юристы могут только помочь, но в конечном счете именно вы отвечаете за его толкование.
                            • 0
                              Да понятно, что я за это отвечаю. Мой point в том, что, трактуя законы самостоятельно (без привлечения юристов), вы обрекаете себя на всяческие лишения, от насмешек в интернетах до уголовного преследования. И не нужно совершать эту ошибку.
                              • 0
                                Ну вот, руководствуясь вашей логикой жизнь станет только хуже, потому что вы соглашаетесь с такой системой, что только юрист должен трактовать закон.

                                И не пытаетесь это изменить, а насмехаетесь над теми, кто пытается разобраться в законах.

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

                                  Хотите биться головой о бетонную стену — бейтесь, но я буду над вами смеяться :-)
                                  • 0
                                    > Как же уже, однако, набили оскомину всякие доморощенные юристы, которые берутся, однако, трактовать законы, совершенно не имея соответствующей подготовки и образования.

                                    Как-то это не вяжется с тем, что вы хотите что-то изменить. Я тут вижу только насмешку над человеком, которые пытается понять то, что он обязан понимать.
                                    • 0
                                      Вот вам: habrahabr.ru/post/158891/#comment_5443501

                                      Я, с вашего позволения, самоустранюсь на некоторое время и потом почитаю, сейчас надо бежать.
                • 0
                  Считайте, что законы это код для судебной системы и пишут их специальные программисты, которых называют законодатели, а трактуют типа интерпретаторы — судьи и юристы (которые, как и айтишные аналоги именют баги на всех уровнях, вплоть до железного и бывают совершенно несовместимыми, хотя казалось бы код должен быть переносимым, как Java). По этой аналогии понимать код должен каждый обыватель, хотя это очевидно не так. Так и с законами — даже если все слова знакомые, трактовки могут быть разными (всегда бывают разночтения), а когда этого пытаются избежать получаются громоздкие бюрократические конструкции, которые неспециалисту понять ещё труднее. Плюс к этому в юриспруденции есть свои «фреймворки», типа конституции и основных кодексов, на базе которых пишутся более мелкие законы, и т.д.
                  • 0
                    >Считайте, что законы это код для судебной системы

                    УК и АК это «код» для людей. Код для судебной системы это УПК.
              • НЛО прилетело и опубликовало эту надпись здесь
                • 0
                  Давайте я вас сведу с DonkeyHot, и вы с ним поспорите. А то у меня уже времени нет.
                  • НЛО прилетело и опубликовало эту надпись здесь
                    • 0
                      Нет-нет, no offence meant. Я как раз с вами в чём-то согласен.
        • 0
          >Deep Package Inspection

          вообще-то, deep packet inspection.
        • 0
          Очевидно, что субьектом права могут являться только люди. DPI не может нарушать конституцию по определению — нет субьекта, нет и нарушения.
      • 0
        Только ТМС — это не телеметрические системы, а телематические службы :)
  • –3
    Спасибо за windows-1251, могли бы и koi8-r сделать.
    А вообще все эти проблемы — наследие DotNet.
    • +2
      Нафига Koi8-r? Если все будут использовать UTF-8, жить станет легче.
      • 0
        Конечно легче, но я знаю ряд гос. учереждений, где до сих пор используют koi8-r
    • +1
      Хм, а причем здесь .Net? Он UTF-8 предпочитает.
      • –4
        Потому, что windows-1251 — это на платформе Windows, а Dot.Net на платформе Windows.
        • 0
          Ну если только такие абстрактные связи выстраивать. А фактически ни одной ошибки именно от Net я не увидел, только адски кривую реализацию на ГК и костылях.
      • 0
        Тот же Eclipse (Windows), если специально не настроить, использует windows-1251 по умолчанию.
        • 0
          MS VStudio, как и потоковые методы по умолчанию работают именно с UTF. По этой причине для использования Win-1251 приходится принудительно указывать формат.
  • +13
    Они XML что, регулярками разбирают?..
    • +7
      Какие нафиг регулярки? Это писал какой-нибудь школьник. Только strpos и substr!
    • +8
      Если честно, сложилось ощущение, что да. Причем declaration string на уровне:

      if x.splitlines()[0] != '<?xml version="1.0"  encoding="windows-1251"?>':
          raise ValidationError()
      
    • +3
      Полно таких талантливых. И формируют XML, как текст, вообще не проверяя валидность.
    • +10
      stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags

      MY FACE MY FACE ᵒh god no NO NOO̼O​O NΘ stop the an​*̶͑̾̾​̅ͫ͏̙̤g͇̫͛͆̾ͫ̑͆l͖͉̗̩̳̟̍ͫͥͨe̠̅s ͎a̧͈͖r̽̾̈́͒͑e n​ot rè̑ͧ̌aͨl̘̝̙̃ͤ͂̾̆ ZA̡͊͠͝LGΌ ISͮ̂҉̯͈͕̹̘̱ TO͇̹̺ͅƝ̴ȳ̳ TH̘Ë͖́̉ ͠P̯͍̭O̚​N̐Y̡ H̸̡̪̯ͨ͊̽̅̾̎Ȩ̬̩̾͛ͪ̈́̀́͘ ̶̧̨̱̹̭̯ͧ̾ͬC̷̙̲̝͖ͭ̏ͥͮ͟Oͮ͏̮̪̝͍M̲̖͊̒ͪͩͬ̚̚͜Ȇ̴̟̟͙̞ͩ͌͝S̨̥̫͎̭ͯ̿̔̀ͅ
      • +1
        Извините за оффтоп, но кто-нибудь знает как делают подобный текст? (H̸̡̪̯ͨ͊̽̅̾̎Ȩ̬̩̾͛ͪ̈́̀́͘ ̶̧̨̱̹̭̯ͧ̾ͬC̷̙̲̝͖ͭ̏ͥͮ͟Oͮ͏̮̪̝͍M̲̖͊̒ͪͩͬ̚̚͜Ȇ̴̟̟͙̞ͩ͌͝S̨̥̫͎̭ͯ̿̔̀ͅ)
        Всегда интересно было.
        • 0
          Если я правильно понимаю, это просто нагромождение диакритических знаков к обычному латинскому шрифту. Если в блокнот или другой простой текстовый редактор это вставить — будет понятно.
        • +4
          Мне тут в скайп(!) прислали коммент от рид-онли:
          «Я на хабре коментить не могу, поэтому прошу ответить на этот комент: habrahabr.ru/post/158891/#comment_5441351 Этот текст можно сделать например тут: textozor.com/zalgo-text/ Ну а почитать про это тут: lurkmore.to/Zalgo»
        • +3
          lurkmore.to/Zalgo

          ох, меня уже опередили — прошу прощения
  • 0
    Кстати, на данный момент вовсе необязательно заново подписывать каждый запрос. Я пользую подписанный файлик от 1 ноября.
  • +2
    А сделайте может доброе дело — сделайте маленький сервис удобным интерфесом (списком и скачкой этого списка) для широкой общественности?
    • 0
      на pastebin регулярно анонимно выкладывают этот дамп
      • –2
        подскажите как искать
    • –1
      Думаю это чревато баном от всех российских провайдеров минимум и гарантированным лишением лицензий если вычислят.
      • 0
        Лишение лицензии на каком основании?
      • +3
        А есть какие то правила, по которым этот список является секретным?
    • 0
      Есть ощущение, что в таком случае «компетентные органы» могут счесть такой поступок распространением запретной информации. Уже ведь 100 раз шутили на тему заблокировать zapret-info.gov.ru, как самый большой рассадник порочного списка. В конце концов, не случайно они сами же вот так резко ограничили доступ к этому списку.
    • +3
      Видимо нужен анонимный сервис на который:
      — имеющие доступ к реестру смогут автоматически и анонимно заливать свежие версии списка;
      — не имеющие доступ к реестру получат свой удобный интерфейс;
      — владелец будет вне зоны досягаемости как юридически, так и технически.
      • 0
        Проблема может быть только с первым пунктом, ибо анонимным заливающий будет только до той поры, пока роскомнадзор это позволит.
        • +1
          Вы думаете эти люди (роскомнадзор) смогут придумать что-то, что сможет идентифицировать выкладывающего список?

          Даже, если он будет в каком-то бинарном виде (pdf etc), то распознается в txt.

          Наличие «контрольных» ссылок, делающих разные копии разными, решается сравнением двух копий разных провайдеров перед выкладыванием.
          • 0
            Я думаю, легко, даже используя существующий формат. Чтобы точно узнать, есть там контрольные данные или нет, нужно сравнить копии всех провайдеров, что нереально. Фактически, можно сделать для начала две контрольные версии, подождать, какая из них утечет, сделать из нее еще две версии, отдав тем же провайдерам, что и в первый раз, и продолжать так до упора.
            Здесь же не нужно, собственно, найти всех, кто сливает налево. Достаточно показательно нагнуть хотя бы одного, все остальные сразу прекратят слив. Да, сейчас нет явного указания на то, что разглашение реестра ведет за собой отзыв лицензии, но тут, в общем-то, стоит роскомнадзору захотеть, как мигом появятся новые основания =)
            • 0
              Почему сравнить нереально? Пусть этот сервис сам и сравнивает.
              • 0
                Потому что для этого нужно чтобы все провайдеры/хостеры России постоянно сливали свои дампы для сравнения друг с другом, чего не будет в принципе никогда. Если у двух произвольных провайдеров файлики одинаковые, это вовсе не означает, что они одинаковые вообще у всех.
                • 0
                  Если у двух произвольных провайдеров файлики одинаковые, то круг подозреваемых сужается до этих двух провайдеров. Но кто именно, это ещё доказать надо. Понятно что лучше у всех собрать. Но с десятка вполне неплохо. Всё упирается в реализацию анонимности передачи информации.
                  • 0
                    А где говориться, что оператор не может передать этот список кому-то?
                    Претензии будут скорее к сайту кто его вывешивает, а не к тем, кто их снабжает инфой. Ну добавят такой сайт в реестр, ну будут ходить на сайт через TOR.
        • 0
          Учитывая, что половина хостеров не получает предупреждение или игнорируют его, можно сделать сервисы, которые имея доступ к реестру будут заниматься предупреждением клиентов.

          Их клиенты будут регистрироваться на сайте сервиса, заливать список доменов / IP, который им нужно мониторить, а сервис их будет извещать по емейлу, смс, итд в случае появления этих доменов / IP в реестре.

          Все легально, никаких нарушений, все довольны.
          Кто возьмется сделать?
  • +4
    — Кодировка xml-документа исключительно windows-1251.
    Это не шутка?
    • +1
      Увы, нет.
      Запросы принимаются и отдаются исключительно в windows-1251. Все пробы подсунуть юникод приводили к сообщению: «Ошибка! Файл запроса не соответствует требуемому формату».
    • +8
      «XML» и «1251» в одном предложении вызывают у меня забег мурашек по спине, тоже подавился читая это.
      • 0
        Вся налоговая отчетность в электронном виде именно так и подается — xml и 1251.
    • 0
      «Но мы всё правильно сдвинули, чтобы запутать иностранцев и сбить с толку остальных.» Жванецкий М.М.
  • 0
    Файл запроса подписываю с помощью КриптоПРО через «C:\Program Files\Crypto Pro\CSP\csptest.exe -sfsign -sign -detached -add -in request.xml -out request.xml.sign -my my@email.ru»
    Автоматизацию сделал через скрипт на Java — всё работает. Файл реестра получает, разархивирует, потом шлёт его через sftp на сервер.
    • +1
      Проблема в том, что нам гораздо привычней и удобней Debian и OpenSSL, а заводить отдельный сервер для Windows только для 1 периодической задачи + это решение потом поддерживать — нам оказалось не очень интересно. Хотя, конечно, как запасной вариант — подходит.
      • –1
        КриптоПРО есть и под Linux, юзайте.
        • 0
          Да, есть. Разумеется мы изначально рассматривали и такой вариант, но, повторюсь:
          * Линуксовая версия КриптоПРО требует отдельной лицензии (которую никто из УЦ нам предложить не смог — только Windows)
          * У КриптоПРО очень не очевидна схема лицензирования нам нужна лицензия на 1 рабочее место, то ли на 1 сервер (1800 руб. vs 25000 руб.)
          * Мы не знаем, насколько у них эта версия работоспособна. А OpenSSL нам хорошо знаком и много где используется

          И, в общем, в настоящий момент OpenSSL отлично работает и не требует дополнительного вмешательства, так что спасибо, но нет :-)
          • –2
            Конечно, лучше бы вам в ТП КриптоПРО обратиться, но мне кажется, что на сервер, это для Apache (Web), здесь же скорее клиентская лицензия. Если у вас всё работает, то и не парьтесь =)
    • 0
      Java не скриптовый язык. Что вы имеете в виду?
  • +1
    Сама КриптоПРО ничего не умеет подписывать, а инструменты, которые умеют — требуют отдельной лицензии и покупки.

    Есть утилита командной строки cryptcp, которая это умеет. В комплекте с Криптопро (во всяком случае серверным линуксовым) она идёт.
    Вот пример из мануала:
    cryptcp -signf -dir \signs -uMyCerts -dn "Иванов Петр,ivanov@bank.ru" d:\*.doc -sdhttp://cryptopro.ru/tsp/tsp.srf
    
    Подписать все файлы с расширением "doc" из корневой папки диска "d:", используя закры-
    тый ключ, связанный с сертификатом хранилища "MyCerts" текущего пользователя, содержа-
    щим в поле "Субъект" ("Subject") подстроки "Иванов Петр" и "ivanov@bank.ru", полученные
    подписи сохранить в папке “signs” в корне текущего диска. Кроме этого, получить штампы
    времени на каждый подписываемый файл и вложить их в соответствующие подписи.
    • +1
      Это мы знаем. Вообще, описанная здесь история в реальности заняла больше недели. Изначально опыта работы с Российскими ЭЦП у нас не было. Мы обратились в несколько удостоверяющих центров с вопросом: нам надо чтобы у нас была ЭЦП и чтобы мы могли автоматизированно подписывать ей документы, причем желательно под linux. Выяснилось, что все без исключения УЦ продают Рутокены с установленной на них обрезанной версией КриптоПро под Windows. Хотите подписывать документы — покупайте еще КриптоАРМ, тоже под Windows. Линуксовую версию не продаем. Дальнейшее выяснение свелось к тому, что как-то вроде бы можно из этой Крипто Про под Win выковырять ключ лицензии, у производителей взять версию под Linux и использовать этот ключ с ней (со слов УЦ). К тому моменту сама ЭЦП с РуТокеном была готова, а вопрос с подписыванием документов все еще висел в воздухе. Получив Рутокен мы поначалу попытались через openssl прочитать с него ключи (это не удалось), потом нашли P12FromGostCSP и на этом вопрос у нас закрылся. Как нам все таки получить cryptcp под linux на тот момент нам так никто и не ответил, а позже стало не надо. И именно потому, что квест оказался совершенно нетривиальным (для нас), мы и написали эту статью.
      Для тех, кто работал с ЭЦП и ранее, скорее всего никаких проблем не возникло в принципе, это понятно.
    • 0
      А да, изначально стоило написать, что КриптоПро под Win ничего подписывать не умеет, версия под linux этим не страдает.
      • 0
        Вообще-то в примере винды
        • 0
          Отлично, но в имеющейся у нас версии КриптоПро, поставляемой с Рутокеном, этой утилиты нет. Под винду она покупается отдельно. В линуксе входит в состав серверной КриптоПро, как Вы и написали.
        • +1
          Вот тут написано:

          Лицензирование

          Для ОС семейства Windows приложение командной строки cryptcp требует отдельной лицензии, отличной от лицензии на КриптоПро CSP для Windows. Для приобретения лицензии на приложение командной строки cryptcp для Windows обращайтесь на страницу приобретение.

          Для ОС семейства Unix приложение командной строки cryptcp входит в состав КриптоПро CSP версий 3.0 и 3.6 и не требует отдельной лицензии.
  • НЛО прилетело и опубликовало эту надпись здесь
    • 0
      Итальянская забастовка хорошо действует, когда ее поддерживают другие компании тоже. Нам начиная с 5 ноября почти ежедневно стали присылать факсы и звонили голосом из местного Роскомнадзора и тон был все более требовательным. В конце концов была прислана бумага, что мы обязаны либо до 12 часов 15 ноября все настроить и отчитаться об этом, либо написать мотивированный отказ.
      Сейчас, возможно, уже поздно бороться с этим со стороны провайдеров (не факт, конечно). Бороться надо было пока закон обсуждался и пока он е вступил в силу. И мы это делали по мере возможностей.
  • 0
    Извините, я отвечу тут, ибо выше было несколько однотипных вопросов, а каждому не получится в комментарий ответить.
    По поводу того ответственности за разглашение реестра. На самом деле, все циркулирующие сейчас дампы уже весьма и весьма отличаются от оригинала. Да, действительно, нигде прямо не написана ответственность за это, но есть одно но. Как бы так объяснить поточнее… В общем, роскомнадзор это такая контора, которая может испортить жизнь любому провайдеру, причем абсолютно в рамках закона. Ни один провайдер никогда не станет как-то бодаться с ними, ну если только прямо совсем тупиковая ситуация. Роскомнадзор явно и не очень дал понять, что он очень не хочет, чтобы реестр стал публичным (и я его, на самом деле, понимаю, ибо если отбросить в сторону все прочее, это список ссылок в том числе на ЦП). Доступ к реестру обычно есть только у руководителя подразделения ISP или около того. А теперь просто подумайте, станет ли кто-нибудь в здравом уме регулярно сливать налево реестр, если есть шанс спалиться и известно, что сначала прилетит от своего руководства, а потом от роскомнадзора и еще неизвестно, что хуже?
    • 0
      А как же Пиратская партия, которая обещала предоставить доступ?
      • 0
        У самой пиратской партии неоткуда взяться доступу к реестру, если вы об этом.
  • 0
    Прокомментирую относительно продуктов КРИПТО-ПРО:
    -для решения указанной задачи достаточно клиентской лицензии. Для последних версий (CSP 3.6 R3 — в текущий момент переданы на сертификацию) лицензии для Windows и Linux одинаковы, странно, что УЦ не может продать версию для linux;
    -cryptcp для *nix систем входит в состав дистрибутива и не требует дополнительной лицензии;
    -простейшую подпись можно сделать и csptestом — входит в дистрибутив для всех систем.
    -постараемся в нашем блоге в ближайшее время сделать статью по этой теме.
  • 0
    Рутокены, етокены, криптопро и криптоармы хотя и нужны для того, чтобы получить с вас денег, НО, вместе с этим дают вам возможность защитить ваши ключи электронной подписи от кражи. Ведь ключи вы скорее всего получали на свое имя, а значит в случае кражи этими ключами можно будет подписать любые документы от вашего имени. При этом вы скорее всего будете не в курсе.

    Утилита P12FromGostCSP предназначена для того, чтобы достать ключи из проприетарного формата контейнера КриптоПро и перенести их в формат контейнера, совместимого с криптопровайдерами других вендоров, а не для того, чтобы потом складывать ключи из защищенного носителя в файловую систему :)

    КриптоАрм и КриптоПро CSP, кроме всего прочего, дают возможность защищаться в суде, предъявляя документы с ЭП в качестве доказательств, т.к. являются сертифицированными ФСБ средствами. Хотя судья вряд-ли сможет отличить подпись, сформированную КриптоАрм и ОпенССЛ.

    В общем если потенциальные риски кражи ваших ЛИЧНЫХ ключей и тп вы оцениваете дешевле, чем стоимость КриптоПро под линукс (что-то около единиц тысяч рублей, наверное), то ваш способ отлично работает, и статья — отличная.
    • 0
      Надеятся что ключи в рутокене находятся в «самом безопасном месте» — самая большая проблема в вашей логике.
    • 0
      Ваша логика работает, если считать, что ключ хранится у директора в портфеле и достается при необходимости что-то подписать. Но в данном случае ключи хранятся на сервере, а сервер стоит в коммерческом ДЦ (хоть и в закрытой стойке, но без замка). Все таки вероятность украсть сам рутокен, выдернув его из сервера, несколько больше вероятности взломать виртуалку, о которой даже из сотрудников почти никто не знает, где хранятся изъятые из рутокена ключи.
  • 0
    >>После формирования запроса подписываем его и получаем подпись
    Вот после этого и нельзя менять файл запроса — кавычки там менять, пробельчики лишние ставить. Файл то подписан, и изменению не подлежит

    Кстати, его достаточно один раз подписать, и юзать на постоянку.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Самое читаемое Разработка