Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/northpolesec/santa
Аутентификация и авторизацияОборонительные ИнструментыАнализ Бинарных ФайловОбнаружение ВторженийРеагирование на Инциденты
GitHubnorthpolesec/santa

santa

Система авторизации доступа к бинарным и обычным файлам для macOS.

РепозиторийСайт
7225631 день назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Santa

license CI latest release latest release date downloads

Иконка Santa

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

Она названа Santa, потому что отслеживает бинарные файлы, которые ведут себя непослушно или хорошо.

Документация

Документация Santa хранится в каталоге Docs и публикуется на https://northpole.dev.

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

Получить помощь

Если у вас есть вопросы или вам нужна помощь с началом работы, канал #santa в Slack сообщества macadmins — отличное место для старта.

Если вы считаете, что нашли ошибку, смело сообщайте о проблеме, и мы ответим, как только сможем.

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

Возможности

  • Несколько режимов: В режиме MONITOR по умолчанию всем бинарным файлам, кроме помеченных как заблокированные, разрешён запуск, при этом они регистрируются и записываются в базу данных событий. В режиме LOCKDOWN разрешён запуск только перечисленных бинарных файлов.

  • Журналирование событий: Когда системное расширение загружено, все запуски бинарных файлов регистрируются. В любом из режимов все неизвестные или запрещённые бинарные файлы сохраняются в базе данных для последующей агрегации.

  • Правила на основе подписи кода с уровнями переопределения: Вместо того чтобы полагаться на хеш (или «отпечаток») бинарного файла, исполняемые файлы можно разрешать/блокировать по их подписи кода (через правила CDHash, Certificate, TeamID или SigningID). Вы можете разрешать/блокировать все бинарные файлы, подписанные издателем, или все версии подписанного бинарного файла. Правила применяются в порядке от наиболее конкретного к наименее конкретному, что позволяет вам разрешать все бинарные файлы данного издателя, блокируя при этом один конкретный signing ID или бинарный файл (или наоборот).

  • Правила на основе путей (через NSRegularExpression/ICU): Это предоставляет функцию, аналогичную той, что есть в Managed Client (предшественнике профилей конфигурации, который использовал тот же механизм реализации), — ограничения запуска приложений через бинарный файл mcxalr. Эта реализация имеет дополнительное преимущество: она настраивается через regex и не полагается на LaunchServices. Как подробно описано в вики, при оценке правил этот тип имеет самый низкий приоритет.

  • Отказоустойчивые правила сертификатов: Нельзя добавить запрещающее правило, которое заблокирует сертификат, используемый для подписи launchd (также известного как pid 1), и, следовательно, всех компонентов, используемых в macOS. Бинарные файлы из каждого обновления ОС (а в некоторых случаях и целые новые версии) автоматически разрешаются. Это не затрагивает бинарные файлы из App Store от Apple, которые используют различные сертификаты, регулярно меняющиеся для обычных приложений. Также нельзя заблокировать сам Santa.

  • Компоненты пользовательского пространства проверяют друг друга: каждый из компонентов пользовательского пространства (демон, GUI-агент и утилита командной строки) взаимодействует друг с другом через XPC и проверяет, что их сертификаты подписи идентичны, прежде чем какое-либо взаимодействие будет принято.

  • Кэширование: разрешённые бинарные файлы кэшируются, поэтому обработка, необходимая для выполнения запроса, выполняется только в том случае, если бинарный файл ещё не кэширован.

Намерения и ожидания

Ни одна отдельная система или процесс не остановит все атаки и не обеспечит 100% безопасности. Santa написан с целью помочь защитить пользователей от самих себя. Люди часто загружают вредоносное ПО и доверяют ему, передавая вредоносу учётные данные или позволяя неизвестному программному обеспечению выводить больше данных о вашей системе. Как централизованно управляемый компонент, Santa может помочь остановить распространение вредоносного ПО среди большого парка машин. Независимо, Santa может помочь в анализе того, что запущено на вашем компьютере.

Santa является частью стратегии многоуровневой защиты (defense-in-depth), и вам следует продолжать защищать хосты любыми другими способами, которые вы считаете подходящими.

Известные проблемы

  • Santa блокирует только выполнение (execve и варианты), он не защищает от динамических библиотек, загружаемых через dlopen, библиотек на диске, которые были заменены, или библиотек, загружаемых с помощью DYLD_INSERT_LIBRARIES. Другие части macOS обычно защищают от этих путей, если включена SIP.

  • Скрипты: Santa в настоящее время написан так, чтобы игнорировать любое выполнение, которое не является бинарным файлом. Это связано с тем, что после взвешивания стоимости администрирования и выгоды мы пришли к выводу, что это не стоит того. Кроме того, ряд приложений использует временные генерируемые скрипты, которые мы не можем включить в белый список, а если не сделать этого, могут возникнуть проблемы. Мы готовы вернуться к этому вопросу (или по крайней мере сделать это опцией), если это будет полезно другим.

Серверы синхронизации

  • Santa может синхронизировать свои настройки и политики с сервером управления, что позволяет очень быстро менять конфигурацию.

    Доступно несколько коммерческих серверов и серверов с открытым исходным кодом:

    • Workshop — Workshop — это официальный сервер синхронизации, предлагаемый North Pole Security. Он полнофункционален, быстр, масштабируем и готов к корпоративному использованию.
    • Moroz — простой сервер на Go, который отдаёт жёстко заданные правила из простых файлов конфигурации.
    • Rudolph — серверless-сервис синхронизации на базе AWS, построенный в основном на компонентах API GW, DynamoDB и Lambda для снижения операционной нагрузки. Rudolph спроектирован как быстрый, простой в использовании и экономичный.
    • Zentral — централизованный сервис, который получает данные из нескольких источников и разворачивает конфигурации в нескольких сервисах.
  • В качестве альтернативы правила можно настраивать локально, используя либо ключ конфигурации StaticRules, либо команду santactl rule.

Скриншоты

Такой инструмент, как Santa, не очень-то подходит для скриншотов, поэтому вместо них вот видео.

Видео о блокировке Santa

Участие в разработке

Патчи к этому проекту очень приветствуются. Пожалуйста, ознакомьтесь с документом CONTRIBUTING.

Отказ от ответственности

North Pole Security и North Pole Security Santa не связаны с Google.

Скачать инструмент