Программное обеспечение и инструменты для соответствия PCI DSS

Hacker

Professional
Messages
1,046
Reputation
9
Reaction score
743
Points
113
Стандарт безопасности данных PCI предъявляет несколько требований, при которых у вас в основном нет другого выбора, кроме как использовать определенные типы инструментов для удовлетворения требований. Использование правильно подобранных инструментов может упростить процесс соответствия требованиям PCI DSS. Так какой же инструмент выбран правильно? У каждого будут свои идеи и подход к выбору инструмента.

Содержание
  • 1 Рекомендации по выбору инструмента
    • 1.1 Проблемы с открытым исходным кодом
  • 2 Производство документов
    • 2.1 Схемы чертежей
  • 3 ИТ-операции
    • 3.1 Мониторинг целостности файлов
    • 3.2 Обнаружение вторжений хоста
    • 3.3 Обнаружение сетевых вторжений
    • 3.4 Мониторинг изменений сетевых устройств
    • 3.5 Мониторинг и управление журналами

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

С другой стороны, у вас может не быть реальных внутренних возможностей в этом пространстве. Если вы не хотите вкладывать значительные средства в эту область, вы будете стремиться к вариантам управляемых услуг. Это могут быть облачные решения, соответствующие модели IaaS или SaaS. Здесь вы настраиваете свои системы для взаимодействия с удаленной службой и можете вносить некоторые изменения в конфигурацию через веб-интерфейс и инструменты. Но вы избавлены от конфигурации инфраструктуры. Или, возможно, вы идете по маршруту MSSP (Managed Security Service Provider), где вы платите компании за предоставление набора услуг безопасности от вашего имени. Затем эта компания, вероятно, займется выбором инструментов, которые будут использоваться, возможно, предложив вам меню вариантов по разным ценам.

Любой новый инструмент, который вы внедряете в свою среду, потребует некоторых инвестиций в обучение, чтобы получить от него максимальную отдачу. Исходя из этого, нужно иметь в виду еще пару вещей. Во-первых, с чем у существующих членов команды есть опыт? Если есть инструмент, широко используемый в отрасли, который всем известен, но вы в настоящее время не используете, возможно, лучше выбрать его, если он жизнеспособен. Во-вторых, инструменты, которые выполняют более одной роли, могут быть особенно ценными. Хорошим примером этого является OSSEC, который может выполнять как мониторинг целостности файлов (FIM), так и действовать как агент для включения централизованного ведения журнала, а также предоставлять возможности обнаружения руткитов.

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

Проблемы с открытым исходным кодом
В целом, программное обеспечение с открытым исходным кодом (OSS) - одно из самых важных и значительных достижений в индустрии программного обеспечения за последние 30 лет. Однако вам нужно проявлять осторожность с инструментами с открытым исходным кодом, когда вы имеете дело с соответствием PCI.

Во-первых, если вы рассматриваете инструменты с открытым исходным кодом, важно понимать, как на самом деле работает лицензия с открытым исходным кодом. Инструменты с открытым исходным кодом могут иметь различные ограничения, которые делают их менее идеальными для ведения коммерческого бизнеса:
  • Лицензия может быть более строгой, чем вы думаете. Примером может служить что-либо, имеющее лицензию AGPL. Исходный код программного обеспечения, лицензированного с помощью AGPL, находится в свободном доступе для проверки и даже изменения. Однако, если вы используете программное обеспечение AGPL для работы с коммерческой службой, вы вынуждены сделать выбор: использовать бесплатную (как в пиве) версию AGPL, а также предоставить исходный код всего, что вы связываете с программным обеспечением AGPL. ; или приобретите коммерческую лицензию на программное обеспечение. В области платежей хорошо известным примером этого является анализатор сообщений jPOS ISO 8583.
  • Поставщики программного обеспечения становятся обычным явлением распространять «основные» версии своего программного обеспечения, включая исходный код, под довольно бесплатными лицензиями с открытым исходным кодом. Однако они оставляют многие из своих более ценных функций вне версии с открытым исходным кодом, требуя, чтобы вы приобрели коммерческую версию. Или они предоставляют все функции, но не предлагают инструментов для перехода с одной версии с открытым исходным кодом на другую, оставляя их только коммерческими. Вам нужно остерегаться этих «подводных камней», прежде чем слишком сильно зависеть от этого программного обеспечения.
Во-вторых, для любого программного обеспечения, которое будет обрабатывать данные о держателях карт PCI, вам необходимо понимать, откуда будут поступать обновления для поддержки и безопасности. Это особенно важно для программного обеспечения с открытым исходным кодом, когда у вас может не быть коммерческих отношений с поставщиком услуг поддержки, а автор программного обеспечения может просто прекратить выпуск обновлений. Если инструмент или программное обеспечение критически важны для текущих операций, подготовьте планы действий в чрезвычайных ситуациях.

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

Производство документов
Соответствие PCI означает, что вы будете вести значительный объем документации. Они будут разбиты на следующие области:
  • Политики
  • Процедуры
  • Стандарты конфигурации
Поддерживая их, вы можете иметь диаграммы, показывающие что угодно, от блок-схем до диаграмм физических сетей, иллюстрирующих элементы управления сегментацией.

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

Таким образом, вы можете использовать Wiki и распечатать документ в формате PDF из браузера. Или вы можете сохранить документ в Markdown и сгенерировать хорошо отформатированный PDF-файл для QSA, используя один из многих инструментов. Другие люди используют документы Word, и в наши дни они могут быть созданы с помощью самого Microsoft Word, LibreOffice или одного из облачных офисных пакетов.

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

Схемы чертежей
В дополнение к диаграммам, которые могут быть полезны для понимания вашего собственного бизнеса, PCI DSS версии 3.2.1 предъявляет к вам особые требования по ведению диаграмм:
  • 1.1.2 - Текущая диаграмма, которая идентифицирует все соединения между средой данных о держателях карт и другими сетями, включая любые беспроводные сети.
  • 1.1.3 - Текущая диаграмма, которая показывает все потоки данных о держателях карт в системах и сетях
Было время, когда основным инструментом для создания бизнес-диаграмм был Microsoft Visio. Это по-прежнему отличный инструмент из-за своей универсальности, но это также довольно дорогой инструмент, и он работает только в Microsoft Windows. В результате он больше не имеет прежнего господства.

Один из альтернативных подходов, который, как я вижу, используют многие деловые люди, - это рисование своих диаграмм в Microsoft PowerPoint, а затем встраивание их в любой нужный им документ. Я уверен, что эта тенденция вызвана знакомством с инструментом, уже установленным на вашем рабочем ноутбуке, но мне лично такой подход не нравится. Возможности рисования в PowerPoint несколько ограничены - это не полноценный инструмент для рисования. Он отлично работает, пока вы не выдохнетесь. Затем вам нужно преобразовать диаграмму, чтобы использовать специальный файл.

Некоторые альтернативы перечислены ниже:
  • draw.io - это бесплатный веб-инструмент, работа которого зависит только от современного браузера. Вы можете использовать его на ПК с Windows, Mac, Linux и даже Chromebook. Некоторые люди будут беспокоиться, что, находясь в Интернете, они могут получить доступ к вашим данным. Однако в Условиях очень четко указано, что фактическая диаграмма хранится только на вашем компьютере и в любых облачных сервисах, в которых вы ее сохраняете. Диаграммы никогда не загружаются на серверы draw.io. Это на удивление хороший инструмент для решения основных задач построения сетевых диаграмм.
  • OmniGraffle - коммерческое приложение только для Mac и устройств iOS. Он был очень популярен среди разработчиков Mac, и за эти годы я получил несколько файлов graffle, которые мне пришлось преобразовать в изображения, чтобы я мог их просматривать. Если вы сильно инвестируете в macOS в качестве платформы для настольных ПК и у вас есть пользователи, знакомые с OmniGraffle, то я думаю, что это отличный выбор. Но если вы еще не используете его, я не уверен, что вижу ценность в том, чтобы начать с него по сравнению с одной из сетевых многоплатформенных альтернатив.
  • Lucidchart - это коммерческий веб-инструмент, работа которого зависит только от современного браузера. Он предлагает более полный набор функций, чем draw.io, для тех, кто считает бесплатный инструмент слишком ограничивающим. Lucidchart также предлагает возможность импорта из целого ряда форматов , включая Visio, OmniGraffle и draw.io. Если вы выполняете упражнение по консолидации и рационализации, это может быть хорошим инструментом для переноса устаревших диаграмм в общее место и формат.

ИТ-операции
Для успешной работы в производственной среде, соответствующей стандарту PCI DSS, вам потребуется больше инструментов, чем перечисленные ниже. В частности, вам понадобится какое-то решение для мониторинга инфраструктуры, чтобы выполнять такие вещи, как проверка работоспособности службы, время отклика и более общие предупреждения и тенденции использования ресурсов.

Однако эти инструменты настоятельно рекомендуются для любой производственной среды и не зависят от соответствия требованиям PCI. Инструменты, перечисленные в этом разделе, соответствуют требованиям PCI DSS, и не во всех средах могут быть развернуты существующие решения. Это инструменты операций по обеспечению безопасности, а также ИТ-операций.

Мониторинг целостности файлов
Несколько разделов текущей версии PCI DSS (3.2.1) требуют развертывания платформы мониторинга целостности файлов (FIM). Цель платформы FIM - обнаруживать несанкционированные изменения файлов - на практике это может означать, что она предупреждает вас об обнаружении изменений в файлах, которые затем необходимо исследовать, чтобы определить, было ли изменение действительно санкционировано.

Разделы стандарта PCI DSS, прямо ссылающиеся на мониторинг целостности файлов или FIM, следующие:
  • 10.5.5 - Используйте программное обеспечение для мониторинга целостности файлов… в журналах, чтобы гарантировать, что существующие данные журнала не могут быть изменены без создания предупреждений.
  • 10.8 - (только для поставщиков услуг) Внедрить процесс своевременного обнаружения отказов критических систем контроля безопасности и сообщения о них, включая, помимо прочего, отказ… FIM
  • 11.5 - Развернуть механизм обнаружения изменений (например, инструменты мониторинга целостности файлов) для предупреждения персонала о несанкционированном изменении критических системных файлов, файлов конфигурации или файлов содержимого; и настройте программное обеспечение для выполнения критических сравнений файлов не реже чем раз в неделю.

Трудно понять, как любой из них может быть помечен как N / A, кроме, возможно, 10.8, если вы не являетесь поставщиком услуг. Таким образом, на практике во всех средах, совместимых с PCI DSS, должна быть развернута и активна платформа FIM. Сейчас существует ряд решений FIM:
  • OSSEC - это бесплатная платформа FIM , HIDS и мониторинга журналов с открытым исходным кодом , доступная как для Linux, так и для Windows. Таким образом, он указан в нескольких разделах этого руководства и является своего рода универсальным магазином для различных требований PCI DSS. Модель развертывания OSSEC использует централизованный сервер управления и агент, работающий на каждом сервере в среде. Сервер управления обрабатывает управление конфигурацией всей среды с помощью файлов XML, выдаваемых клиентам, и действует как приемник событий журнала. Агенты запускаются на каждом сервере в среде, выполняя FIM по запросу и по расписанию.
  • Wazuh - это ответвление OSSEC с открытым исходным кодом, созданное для добавления многих новых функций и технологических обновлений (например, шифрование AES) . В дополнение к основным функциям OSSEC, Wazuh имеет возможность использовать контрольные суммы SHA256 для своего модуля FIM. Он также имеет ряд улучшений масштабируемости для управления большим количеством хостов, таких как многопоточность в серверном процессе, TCP для связи менеджер-агент, а также более старый протокол UDP. Он также использует современное шифрование AES, которое может быть аппаратно ускорено на последних процессорах, вместо менее безопасного устаревшего алгоритма Blowfish.

Обнаружение вторжений на хост
Текущая версия PCI DSS (3.2.1) не имеет явных требований к HIDS (Host-based Intrusion Detection Systems). Тем не менее, следующие получают здесь почетные упоминания, потому что они отвечают множеству других требований PCI, а также предлагают некоторые возможности HIDS.
  • OSSEC - это бесплатная платформа FIM, HIDS и мониторинга журналов с открытым исходным кодом, доступная как для Linux, так и для Windows. Таким образом, он указан в нескольких разделах этого руководства и является своего рода универсальным магазином для различных требований PCI DSS. Модель развертывания OSSEC использует централизованный сервер управления и агент, работающий на каждом сервере в среде. Сервер управления обрабатывает управление конфигурацией всей среды с помощью файлов XML, выдаваемых клиентам, и действует как приемник событий журнала. Агенты запускаются на каждом сервере в среде, выполняя компонент HIDS для обнаружения руткитов по расписанию. По умолчанию это происходит каждые два часа, но его можно настроить в соответствии с вашими местными требованиями.
  • Wazuh - это форк OSSEC с открытым исходным кодом, созданный для добавления множества новых функций и технологических обновлений. Помимо выпуска программного обеспечения по лицензии с открытым исходным кодом, они предлагают управляемый облачный серверный компонент как Wazuh Cloud.

Обнаружение сетевых вторжений
Раздел 11.4 текущей версии PCI DSS (3.2.1) прямо требует, чтобы вы «использовали системы обнаружения вторжений и / или методы предотвращения вторжений для обнаружения и / или предотвращения вторжений в сеть. Контролируйте весь трафик по периметру среды данных о держателях карт, а также в критических точках среды данных о держателях карт и предупреждайте персонал о предполагаемых взломах ». Таким образом, вы в принципе не можете быть совместимым с PCI без развернутой сетевой IDS (система обнаружения вторжений) или IPS (система предотвращения вторжений).

В некоторых случаях вы можете эффективно получить это, используя существующие технологии. Требование 1 PCI требует использования межсетевого экрана; многие межсетевые экраны имеют дополнительную доступную возможность IDS / IPS. Если у вас есть такой брандмауэр, включение IDS / IPS часто является правильным решением. Если вы планируете это сделать, внимательно изучите текущее использование ресурсов брандмауэра (особенно% ЦП) и возможные последствия включения функции IDS / IPS. Выполнение дополнительной проверки всех потоков сетевого трафика добавит нагрузку на ваш брандмауэр, и вы не хотите делать это на коробке, которая уже близка к пределу.

Если вы хотите развернуть IDS / IPS, отделенную от ваших брандмауэров, существует несколько программных решений.
  • Snort - это бесплатная сетевая платформа IDS и IPS с открытым исходным кодом, которая доступна для Linux и BSD, но не для Windows. Это была оригинальная широко распространенная платформа IDS с открытым исходным кодом, однако какое-то время она находилась в состоянии стагнации из-за того, что исходный код не был многопоточным и поэтому не мог использовать несколько ядер ЦП. Snort 3 - последняя версия, которая наконец-то стала многопоточной, но на момент написания этой статьи в начале 2020 года она все еще находится в стадии бета-тестирования. Из-за этого Snort трудно рекомендовать для сред с большим объемом трафика в настоящее время.
  • Suricata - это бесплатная сетевая платформа IDS и IPS с открытым исходным кодом, которая имеет широкую поддержку ОС и доступна для Linux, BSD, macOS и Windows. Архитектура Suricata была разработана значительно позже, чем Snort, поэтому она изначально была полностью многопоточной, что позволяет использовать все преимущества современных многоядерных процессоров. В дополнение к собственному механизму правил, который использует язык сценариев Lua, Suricata также может работать с правилами Snort. Это делает путь миграции из Snort более простым, чем он мог бы быть в противном случае.

Мониторинг изменений сетевых устройств
Раздел 1.2.2 текущей версии PCI DSS (3.2.1) предъявляет несколько требований к управлению конфигурацией сетевых устройств:
  • 1.2.2: Защита и синхронизация файлов конфигурации маршрутизатора
  • 1.2.2.b: проверьте конфигурации маршрутизатора, чтобы убедиться, что они синхронизированы - например, текущая (или активная) конфигурация соответствует начальной конфигурации (используется при загрузке машин).
Это требование можно удовлетворить без каких-либо специальных инструментов, путем ручного резервного копирования конфигурации после каждого изменения и записи выходных данных о состоянии, показывающих, что сохраненная конфигурация новее, чем текущая. Однако это подвержено ошибкам как с точки зрения уверенности в том, что то, что сохраняется, действительно соответствует действующей конфигурации, так и с точки зрения соблюдения дисциплины для правильного выполнения действий. Большинство людей предпочитают использовать какой-либо инструмент для автоматизации процесса.

Вот некоторые бесплатные и недорогие варианты:
  • RANCID (Really Awesome New Cisco ConfIg Differ) - это бесплатный инструмент резервного копирования конфигурации сетевых устройств с открытым исходным кодом, работающий в Linux и macOS. Он существует уже много лет, и у многих людей в отрасли есть опыт работы с ним. Долгое время он поддерживал только резервное копирование конфигурации в репозитории CVS, в то время как мир разработки перешел на git. Похоже, это заставило некоторых людей перейти на использование Oxidized в качестве бесплатного решения, но теперь RANCID также поддерживает git, это больше не является отличительным признаком.
  • Oxidized - это бесплатный инструмент для резервного копирования конфигурации сетевых устройств с открытым исходным кодом, работающий в Linux. Он значительно новее, чем RANCID, и дольше поддерживает git в качестве репозитория конфигурации. Oxidized имеет репутацию сложного в настройке; это может быть не заслужено на данный момент, учитывая количество доступных руководств по быстрому запуску. Он имеет интеграцию с LibreNMS, позволяющую отображать данные конфигурации устройства в интерфейсе LibreNMS, поэтому, если вы уже являетесь магазином LibreNMS, Oxidized будет хорошим вариантом.
  • Kiwi CatTools - это относительно недорогой коммерческий инструмент резервного копирования конфигурации сетевых устройств для Windows. Он существует некоторое время, а в 2009 году был приобретен компанией SolarWinds и с тех пор поддерживается. Функциональность несколько ограничена, предположительно, чтобы избежать конкуренции с более дорогими предложениями SolarWinds. Однако, если все, что вам нужно, - это резервное копирование / восстановление и функция обнаружения изменений, и вам нужно собственное решение для Windows, это хороший выбор.
  • Unimus - это относительно недорогой коммерческий инструмент резервного копирования конфигурации сетевых устройств, работающий в Linux и Windows. В настоящее время они предлагают первые 5 устройств бесплатно, а затем каждое дополнительное устройство стоит 4,50 доллара США в год. Для небольших установок это, вероятно, будет очень привлекательно, учитывая сложность использования RANCID или Oxidized с открытым исходным кодом.

Мониторинг и управление журналами
Один поток, проходящий через PCI DSS, - это необходимость иметь возможность создавать контрольные журналы для того, что происходит в системах, которые находятся в области действия, и предупреждать, если происходят определенные события. Это поддерживают несколько требований, в том числе:
  • 5.2: Убедитесь, что все антивирусные механизмы поддерживаются следующим образом: Создание журналов аудита, которые сохраняются в соответствии с требованием 10.7 PCI DSS.
  • 10.2: Внедрение автоматизированных контрольных журналов для всех компонентов системы для восстановления следующих событий:…
  • 10.3: Запишите как минимум следующие записи журнала аудита для всех компонентов системы для каждого события:…
  • 10.5: Защищайте контрольные журналы, чтобы их нельзя было изменить.
  • 10.6. Просмотрите журналы и события безопасности для всех компонентов системы, чтобы выявить аномалии или подозрительную активность. Примечание. Для выполнения этого Требования могут использоваться инструменты сбора, анализа и оповещения журналов.
  • 10.7: Хранить историю контрольного журнала не менее одного года, при этом как минимум три месяца сразу же доступны для анализа.
  • 12.11: Только SP Выполняйте проверки не реже одного раза в квартал, чтобы подтвердить, что персонал соблюдает политику безопасности и рабочие процедуры. Проверки должны охватывать следующие процессы: ежедневные проверки журналов,…
С учетом требований как предупреждать об определенных событиях, так и сохранять контрольные журналы в течение значительного количества времени, инструменты управления журналами важны для соответствия стандарту PCI DSS. Фактически, PCI SSC считает мониторинг журналов настолько важным, что они фактически опубликовали отдельный 43-страничный руководящий документ по этой единственной теме!

Вот некоторые варианты централизованного управления журналами и предупреждениями:
  • OSSEC - это бесплатная платформа FIM , HIDS и мониторинга журналов с открытым исходным кодом , доступная как для Linux, так и для Windows. Таким образом, он указан в нескольких разделах этого руководства и является своего рода универсальным магазином для различных требований PCI DSS. Модель развертывания OSSEC использует централизованный сервер управления и агент, работающий на каждом сервере в среде. Сервер управления обрабатывает управление конфигурацией среды и действует как приемник событий журнала. OSSEC может также анализировать журналы с различных сетевых устройств в дополнение к своим собственным агентам, и могут быть созданы триггеры для отправки предупреждений на основе получения определенных сообщений журнала.
  • Wazuh - это форк OSSEC с открытым исходным кодом, созданный для добавления многих новых функций и технологических обновлений (например, шифрование AES). В дополнение к основным функциям OSSEC для мониторинга журналов он добавляет облачную интеграцию с AWS Cloudtrail и Cloudwatch, а также Microsoft Azure, а также добавляет возможность декодировать сообщения в формате JSON в исходном виде. Теперь он может обрабатывать гораздо большие отдельные сообщения журнала.
  • ELK не один продукт, а услуга , питание от комбинации трех отдельных инструментов с открытым исходным кодом: Elasticsearch, Logstash и Kibana. Комбинация этих инструментов обеспечивает стек, который может принимать журналы и сохранять их (Logstash), выполнять поиск в сохраненных журналах (Elasticsearch) и визуализировать результаты (Kibana). Вы можете использовать эти инструменты для развертывания собственного решения для управления журналами или для того, чтобы различные компании, включая Elastic и Amazon AWS, предоставили готовые размещенные и управляемые реализации.
  • Splunk - это коммерческий инструмент для управления журналами, доступный как для локального хостинга, так и в виде облачной службы. В течение ряда лет Splunk был бесспорным королем в мире аналитики журналов, прежде чем его успех привел к усилению конкуренции. Splunk - очень мощное решение, но оно имеет репутацию одного из самых дорогих доступных вариантов. Я консультировался в нескольких организациях, где был активный проект по минимизации объема журналов, отправляемых в Splunk, исключительно для того, чтобы избежать покупки дополнительных лицензий.
Кроме того, теперь необходимо рассмотреть ряд облачных сервисов управления журналами .

Предупреждение: существует ряд облачных решений для управления журналами. Похоже, что они обычно указывают цены на 30 дней хранения, а в некоторых случаях даже не предлагают более высокие уровни удержания в своих «стандартных» планах. Стандарт PCI DSS требует хранения не менее 90 дней в легко доступном формате и год в холодном хранилище, поэтому эти 30 дней хранения по умолчанию просто не соответствуют требованиям.
 

Similar threads

Top