Ответы пользователя по тегу Информационная безопасность
  • Есть ли возможность вытащить информацию о владельце сертификата из файла с расширением.sig?

    @polarnik
    Тестировщик
    Раз говорите о КриптоАРМ, то полагаю, речь об алгоритме ГОСТ. Если будете использовать OpenSSL, как советуют выше, то ищите OpenSSL с поддержкой ГОСТ. Вот соответствующая сборка: www.cryptocom.ru/opensource

    Те файлы sig, с которыми сталкивался, использовались при сдаче отчётности в электронном виде. Пара счёт-фактура + подпись, также в комплекте шел набор CRL-файлов со списками отзыва на момент подписания. Сама же подпись шла в формате, близком к формату CAdES-C (Electronic Signature with Complete Data References). Отсоединённая подпись.

    В такой подписи есть:
    • сертификат подписанта
    • сама подпись
    • штамп времени
    • цепочка сертификатов (от сертификата подписанта до сертификата головного УЦ)

    Проверить корректность подписи, проверить состояние сертификата по списку отзыва на текущий момент и получить цепочку сертификатов можно нехитрым кодом на C#:
    using System.Security.Cryptography.X509Certificates;
    using System.Security.Cryptography.Pkcs;
    public class SignChecker
    {
        public X509Certificate2Collection CheckDetachedSignatureAndGetChain
            (byte[] data, byte[] sign)
        {
            var contentInfo = new ContentInfo(data);
            //    true => DetachedSignature
            var signedCms = new SignedCms(contentInfo, true);
            signedCms.Decode(sign);
            //http://msdn.microsoft.com/ru-ru/library/aedbc064%28v=vs.110%29.aspx
            //    false => verifySignature + verifyChain
            signedCms.CheckSignature(false);
            return signedCms.Certificates;
        }
    }

    Метод проверит подпись и отозванность сертификатов и вернёт сертификаты вам для дальнейшей проверки.

    При правильной проверке следует помнить о штампе времени в подписи. Даже если сертификат отозван (был отозван вчера, например), а штамп времени говорит, что подпись была поставлена два года назад и штамп достоверен. То следует проверять состояние сертификата по списку отзыва на момент двухлетней давности.

    КриптоАРМ так и проверяет. Если же будете делать свой механизм проверки, проверяя сертификаты отдельно от подписи и штампа времени в ней, то методы CryptoAPI вернут состояние сертификатов на текущий момент времени. И сертификаты из исторических подписей, которые сегодня отозваны, но были действительны два года назад, сломают цепочку, проверка завершится неудачно.

    Перед вызовом проверки (signedCms.CheckSignature(false)), убедитесь, что у программы будет возможность работы с Интернет. Так как если возможности работы с Интернет нет (прокси, например, не настроен), то списки отзыва не загрузятся. И проверка без актуальных списков отзыва о OCSP-ответов будет всегда завершаться успешно. Даже если некоторые сертификаты уже отозваны.

    OCSP-ответы и списки отзыва кешируются. Поэтому не удивляйтесь, если они вдруг перестанут загружаться. Проверка по ним работает. Очистить кеш можно командами:
    • certutil urlcache crl delete
    • certutil urlcache ocsp delete


    Удачной отладки.
    Ответ написан
    Комментировать
  • Кто занимался информационной безопасностью?

    @polarnik
    Тестировщик
    Раз PKI и Java, то изучите предметную область по этой теме (когда начнёте отличать сертификат от закрытого ключа и от подписи - уже прониклись темой, начало положено), также BouncyCastle изучите и OpenSSL.

    Не повредит заглянуть внутрь ASN.1, посмотреть что внутри CMS-контейнера, OCSP-запроса и ответа, подписи, штампа времени, ...
    www.codeproject.com/Articles/4910/ASN-Editor - нормальный продукт, но не дружит с кириллицей и юникодом.
    lapo.it/asn1js - инструмент получше, как научить его видеть недостающие OID-ы легко разберётесь.

    Поработайте с конкретными реализациями инструментов, что сертифицированы в нашей стране. Разверните/перенастройте/удалите УЦ от КриптоПро раз пять. И вы будете по опыту в PKI на пол головы выше остальных. Сделайте тоже самое на базе Microsoft Server, поймёте в чем отличия. Попробуйте сделать так, чтобы оболочка была от Microsoft Server, а криптопровайдер от КриптоПро, или ЛИССИ, или VipNET.

    Очень интересная тема - работа клиентской части инфраструктуры PKI на Android, спрос есть.

    Считаю, что чтобы начать грамотно разбираться в PKI для Linux и Android надо сначала заложить основы, работая под Windows.
    Ответ написан
  • В ОС семейства MS Windows список отзыва сертификатов (CRL) применяется автоматически?

    @polarnik
    Тестировщик
    Да. CRL-файл запрашивается всегда, за исключением случаев:
    - CRL уже хранится в кеше и с момента последнего обновления прошло меньше времени, чем указано в сроке жизни файла;
    - CRL хранится в хранилище списка отзыва (локальный список отзыва), и также пока не устарел.
    Отображение содержимого кеша:
    certutil -urlcache crl

    А вот OCSP-запросы могут не выполняться из-за настроек Windows. В Internet Explorer есть опция, проверять действительность сертификата издателя (как-то так). И если там указано, что проверять не надо, то OCSP-запросы посылаться не будут при автоматической проверке. Но, конечно, можно послать OCSP-запрос явно.

    OCSP-ответы также кешируются.
    Очистить кеш можно аналогично кешу CRL:
    certutil -urlcache ocsp delete
    Ответ написан
    Комментировать
  • Что должен уметь junior специалист по информационной безопасности и как им стать?

    @polarnik
    Тестировщик
    Инфобез большой. Это и бумажная безопасность. И техническая. И разработка защищённых приложений. И тестирование. И пентест. И аналитика.

    Расскажу историю. Хотел стать специалистом по инфобезу. Опыта не было. Предложили стать инженером по тестированию. Согласился. И стал специалистом по тестированию защищенности, также обучаю разработчиков разработке защищённых приложений, работаю с администраторами, техподдержкой.

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

    Минусы. При начальном позиционировании как инженер по тестированию или веб-разботчик средней руки относительно меньший уровень авторитета и заработка, чем если номинально заниматься информационной безопасностью. Авансом не выдадут. И очевидный минус - есть ряд обязанностей, не связанных с тем, чем хотелось бы заняться.

    Возможно, ваш уровень в ИБ уже выше моего, мой уровень недо-junior. Некоторые из тех, кто считает себя экспертами, таковыми не являются. Это эксперты в узких областях, но не эксперты в ИБ. А вы лишь хотите стать junior-ом, очевидно, понимая размер ИБ. Для начала выберите более узкое направление в ИБ.
    Ответ написан
    Комментировать
  • Какие лабораторные работы дать студентам по информационной безопасности?

    @polarnik
    Тестировщик
    Они же экономисты, не надо им криптографию. Если бы предмет назывался Криптография и защита информации - то тогда ладно, шифр Цезаря. Они слушать будут, но не поймут.

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

    Когда давали занятия не в компьютерном классе, то делал к каждому занятию mind-карту (в FreeMind). Там можно нарисовать:
    - виды электронной подписи (во версии нашего законодательства - простая, усиленная, квалифицированная, неквалифицированная)
    - виды шифров
    - виды защищаемых активов
    - методы защиты (физическая, орг. меры, технические меры, ...)
    если распечатать 4-5 экземпляров карт, и дать студентам, то можно особо не рисовать на доске.
    Рассказывать, опираясь на схемы. На упражнениях (не на лекциях) по защите, которые надо проводить в кабинете без какого-либо оборудования, приносил свой ноут.
    Можно было настроить шифрование, защищённый обмен, рассказать про сети.
    Ещё можно просто выбрать двух студентов и эту пару работать с ними. Следующую пару двух других выбрать. Спрашивать всех по чуть-чуть неэффективно, хоть один да даёт слабину, не слушает, не отвечает, а после такого уже всем остальным можно не слушать и не отвечать. А если выбирать конкретных везунчиков - то задача такого упражнения, научить их, остальные просто голдят, советуют им что-то.

    Пример бумажного задания для экономистов. Распечатать таблицы студентам:
    1. Активы (название, описание, условная стоимость).
    2. Защитные меры (название, описание, начальная стоимость, стоимость в год).
    Угрозы (по разным методологиям и классификациям, выделяют разное).
    Задача - сообразить какая опасность каким активам грозит, и какие защитные меры надо применить. Расставить приоритеты для защитных мер. Провести оценку в рублях.
    Мера 1 - 10000 р.
    + мера 2 - 40000 р.
    + мера 3 - ....
    Вполне экономическая задача. Но подготовки требует. Это по части упражнений.

    А по лабам можно такое задание на подписи:
    1. Студент присылает email.
    2. В ответ высылается файл. Студент подписывает файл. И отсылает назад.
    3. Проверка того, что подписал как надо.

    4. Студенту посылается 10 подписанных файлов (из них у одного подпись неверная, один имеет устаревший сертификат, а на подписи нет штампа времени, один сертификат отозван, один сертификат выдан не на имя преподавателя, остальные подписи - хорошие)
    5. Студент проверяет подписи и сообщает всё ли в порядке с подписями.
    6. Проверка того, что умеет проверять подпись, срок действия сертификатов, подписанта, ...

    Задание плёвое. Но тут надо методичку готовить. И поэтому даже простое задание но для 10-20-ти студентов превращается в подготовку сложной работы.
    Ответ написан
    Комментировать
  • Книги и ресурсы по информационной безопасности

    @polarnik
    Тестировщик
    Защищённый код (Дэвид Лебланк). Есть несколько редакций книги. Книга от Microsoft, читается легче, чем труды Шнайера (да и книгу Шнайера купить сложнее). Хотя обе книги устарели по меркам ИБ, минимум половина их содержания будет актуальна ещё несколько десятков лет.

    Известная книга от Криса Касперски "Техника и философия хакерских атак". Описание книг можно посмотреть тут: kpnc.opennet.ru/allkpnc.updated.zip
    Примеры книг там же. Например, "Техника сетевых атак": kpnc.opennet.ru/tpna.full.zip

    Также советую сайт https://www.owasp.org.
    И площадки для взлома, есть несколько хороших прощадок, где можно потренироваться. Наиболее документированная площадка - OWASP WebGoat: https://www.owasp.org/index.php/WebGoat. Подсказки к прохождению есть на самом сайте-площадке. А также есть видео-версия прохождения.

    Для выстраивания знаний в структуру посмотрите cwe.mitre.org. Рассмотрите TOP 25 (эти узлы наиболее полно расписаны). Далее обратите внимание на остальные сотни возможных недостатков в ПО и вариантов защиты от них.

    Если понравится смотреть видео для OWASP WebGoat, то зайдите на securitytube.net.

    Крайне полезный проект: www.pentest-standard.org/. Какое то время занимался переводом на русский материалов этого проекта. Многому научился при этом. Основа - mind-карта. И добротное описание к узлам. Позволяет выстроить в голове план пен-теста, защиты. Тут многое предусмотрено, ни в одной книге такого не читал. Но подробной пошаговой инструкции тоже нет, надо будет домысливать.
    Ответ написан
    1 комментарий
  • Как создать памятку по методике работы с информацией с целью улучшения информационной безопасности?

    @polarnik
    Тестировщик
    Простая памятка имеет большие шансы на выполнение (ведь суровые законы компенсируются необязательностью их выполнения).

    Блокировать компьютер.
    Пользоваться ПО из указанного списка (пользоваться другим ПО нежелательно), сделать узел с разрешенным ПО и сетевой каталог.
    Для мобильных устройств использовать подключение к сетям 1, 2, 3 (подключаться через другие точки доступа запрещено, при появлении других точек сообщить).
    ...
    Если возможно, сделать пользователей не админами - сделать их не админами. Указать куда надо складывать данные, для которых будет осуществляться автоматическое резервное копирование. Указать как и кто может восстановить эти данные.
    ...
    Рассказать что делать, если прокси говорит пользователю, что узел не найден или заблокирован. И закрыть лишнее. Сделать узел с ответами на частые вопросы - как что настроить, что делать если что-о заблокировано (такие детали не надо писать в памятке).
    ...
    Разделить информацию по грифам/категориям. Данные клиентов, учётные документы - одна категория (доступ только у трёх человек, всё зашифровано). Данные для внутреннего использования. Данные, которые можно сообщать.

    В работе есть такие памятки. Разнесены по нескольким документам. Но их можно объединить в один небольшой.
    Ответ написан
    Комментировать