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

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

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

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

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

Категории

Все категории
Loading categories
ciso-assistant-community — Платформа GRC для управления рисками, соответствия требованиям и аудита с более чем 200 фреймворками, автоматическим сопоставлением контролей, управлением уязвимостями и рабочими процессами реагирования на инциденты. | Kitploit
Инструменты/GitHubGitHub/intuitem/ciso-assistant-community
Оборонительные ИнструментыАнализ уязвимостейАудит конфигурацииКонфиденциальностьРазведка угрозУправление идентификацией и доступом (IAM)Реагирование на Инциденты
GitHubintuitem/ciso-assistant-community

Популярное

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

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

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

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

Смотреть все инструменты →

ciso-assistant-community

Платформа GRC для управления рисками, соответствия требованиям и аудита с более чем 200 фреймворками, автоматическим сопоставлением контролей, управлением уязвимостями и рабочими процессами реагирования на инциденты.

РепозиторийСайт
4.4k83741 день назадПроверено Kitploit
Поделиться

Поставьте звезду проекту 🌟, чтобы получать уведомления о релизах и помочь росту сообщества!

intuitem%2Fciso-assistant-community | Trendshift
intuitem.com · Бесплатная пробная версия SaaS · Дорожная карта · Документация · Языки · Discord · Фреймворки

GitHub Release GitHub contributors GitHub Repo stars GitHub forks Discord

CISO Assistant предлагает свежий взгляд на управление кибербезопасностью и практики GRC (Governance, Risk, and Compliance — управление, риски и соответствие требованиям):

  • Разработан как центральный узел для объединения множества концепций кибербезопасности с интеллектуальным связыванием объектов,
  • Создан как мультипарадигмальный инструмент, адаптирующийся к разным подходам, методологиям и ожиданиям,
  • Явно разделяет соответствие требованиям и средства контроля кибербезопасности, обеспечивая их повторное использование на всей платформе,
  • Продвигает повторное использование и взаимосвязывание вместо дублирующей работы,
  • Разработан с подходом API-first для поддержки как взаимодействия через UI, так и внешней автоматизации,
  • Поставляется с широким набором встроенных стандартов, средств контроля безопасности и библиотек угроз,
  • Предлагает открытый формат для настройки и повторного использования собственных объектов и фреймворков,
  • Включает встроенные рабочие процессы оценки рисков и отслеживания устранения,
  • Поддерживает пользовательские фреймворки через простой синтаксис и гибкие инструменты,
  • Предоставляет богатые возможности импорта/экспорта через различные каналы и форматы (UI, CLI, Kafka, отчёты и т. д.).

Single Hub

Наше видение — создать универсальное решение для управления кибербезопасностью, модернизируя GRC через упрощение и совместимость.

Как практики, работающие со специалистами по кибербезопасности и ИТ, мы сталкивались с теми же проблемами: фрагментация инструментов, дублирование данных и отсутствие интуитивных интегрированных решений. CISO Assistant родился из этих уроков, и мы строим сообщество вокруг прагматичных принципов здравого смысла.

Мы постоянно развиваемся с учётом мнений пользователей и клиентов. Как осьминог 🐙, CISO Assistant отращивает всё новые щупальца — принося ясность, автоматизацию и продуктивность командам по кибербезопасности, снижая усилия на ввод и вывод данных.

CodeFactor API Tests Functional Tests FOSSA Status Plumber Score


Быстрый старт 🚀

[!TIP] Самый простой способ начать — воспользоваться бесплатной пробной версией облачного экземпляра, доступной здесь.

Либо, если у вас установлены Docker и Docker-compose, на вашей рабочей станции или сервере:

клонируйте репозиторий:```sh git clone --single-branch -b main https://github.com/intuitem/ciso-assistant-community.git

root@kitploit:~
и запустите стартовый скрипт```sh
./docker-compose.sh     # Linux/MacOS
./docker-compose.ps1    # Windows

Если вы ищете другие варианты установки для самостоятельного хостинга, ознакомьтесь с конструктором конфигурации и документацией.

[!NOTE] Скрипт docker-compose использует предварительно собранные образы Docker, поддерживающие большинство стандартных аппаратных архитектур. Если вы используете Windows, убедитесь, что у вас установлен Docker Desktop с WSL2, и запустите скрипт PowerShell. Он настроит Docker Desktop от вашего имени.

Файл docker compose можно скорректировать для передачи дополнительных параметров в соответствии с вашей конфигурацией (например, настроек почтового сервиса).

[!WARNING] Если вы получаете предупреждения или ошибки о несоответствии платформы образа платформе хоста, создайте issue с подробностями, и мы добавим её в ближайшее время. Вы также можете использовать docker-compose-build.sh (см. ниже) для сборки под вашу конкретную архитектуру.

[!CAUTION] Не используйте код ветки main напрямую в production, так как это ветка слияния upstream и в ней могут быть критические изменения в процессе нашей разработки. Используйте либо tags для стабильных версий, либо предварительно собранные образы.


Возможности

Текущие возможности

📋 Полный список возможностей — нажмите, чтобы развернуть (с поиском, 59 возможностей)

Соответствие требованиям и фреймворки

  • Управление аудитами и кампаниями
  • Автоматическое сопоставление
  • Проводник сопоставлений
  • Поддержка пользовательских фреймворков
  • Включено более 200 фреймворков
  • Управление политиками
  • Управление документами
  • Управление доказательствами

Управление рисками

  • Оценка рисков и реестры
  • Модуль EBIOS RM
  • Процессы принятия рисков
  • Анализ влияния на бизнес
  • Количественная оценка киберрисков
  • Управление уязвимостями
  • Обогащение данных об уязвимостях

Риски третьих сторон

  • Управление рисками третьих сторон

Операции и устранение последствий

  • Отслеживание и приоритизация плана действий
  • Отслеживание находок
  • Движок рекомендаций
  • План контроля
  • Управление задачами
  • Канбан-доски
  • Периодические проверки
  • Управление технической позицией
  • Отслеживание исключений
  • Управление инцидентами
  • Процессы валидации и утверждения
  • Напоминания по электронной почте

Отчётность и аналитика

  • Аналитика и дашборды
  • Генерация отчётов
  • Автоматические проверки качества
  • Расширенная аналитика
  • Отслеживание пользовательских метрик

Совместная работа и продуктивность

  • Назначения и режим респондента
  • Комментарии и совместная работа
  • Универсальный поиск
  • Палитра команд

Автоматизация и интеграции

  • Комплексный REST API
  • CLI для автоматизации
  • Мастер импорта данных
  • Интеграция с Kafka
  • Поддержка MCP
  • Исходящие вебхуки
  • Интеграции с Jira и ServiceNow
  • Возможности для консультантов (например, экспорт/импорт одного домена)

Безопасность и доступ

  • Гибкий RBAC
  • SSO с SAML или OIDC
  • MFA с TOTP и ключами безопасности
  • Провизioning через SCIM
  • Журнал аудита

Конфиденциальность

  • Обработки GDPR

Управление программами

  • Управление проектами
  • Матрицы ответственности

Платформа

  • Портал и центр доверия
  • Пользовательские поля
  • Многоуровневые домены
  • Развёртывание в Kubernetes (Helm)
  • Открытый исходный код
  • Доступно на более чем 26 языках

Планируемые возможности перечислены в дорожной карте.

CISO Assistant разрабатывается и поддерживается компанией Intuitem, специализирующейся на кибербезопасности, облачных технологиях и данных/ИИ.


Основные концепции

Ниже приведена выдержка из некоторых строительных блоков CISO Assistant, иллюстрирующая концепцию разделения, которая способствует повторному использованию:

Основные объекты

Полные сведения см. в документации по модели данных.


Концепция разделения

В основе CISO Assistant лежит принцип разделения, который обеспечивает мощные сценарии использования и значительную экономию времени:

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

Ниже приведена иллюстрация принципа разделения и его преимуществ:

https://github.com/user-attachments/assets/87bd4497-5cc2-4221-aeff-396f6b6ebe62

Архитектура системы

Документация для конечных пользователей

Ознакомьтесь с онлайн-документацией на https://intuitem.gitbook.io/ciso-assistant.

Настройка локального AI-движка

Подробнее здесь: AI-движок

Поддерживаемые фреймворки 🐙

  1. ISO 27001:2013 и 27001:2022 🌐
  2. NIST Cyber Security Framework (CSF) v1.1 🇺🇸
  3. NIST Cyber Security Framework (CSF) v2.0 🇺🇸
  4. NIS2 🇪🇺
  5. SOC2 🇺🇸
  6. PCI DSS 4.0.1 💳
  7. CMMC v2 🇺🇸
  8. PSPF 🇦🇺
  9. General Data Protection Regulation (GDPR): полный текст и чек-лист от GDPR.EU 🇪🇺
  10. Essential Eight 🇦🇺
  11. NYDFS 500 с поправками от 2023-11 🇺🇸
  12. DORA (Act, RTS, ITS и GL) 🇪🇺
  13. NIST AI Risk Management Framework 🇺🇸🤖
  14. NIST SP 800-53 rev5 🇺🇸
  15. Règles OIV - Secteur « Activités civiles de l'Etat » (2019) 🇫🇷
  16. CCB CyberFundamentals Framework 🇧🇪
  17. NIST SP-800-66 (HIPAA) 🏥
  18. HDS/HDH 🇫🇷
  19. OWASP Application Security Verification Standard (ASVS) 4 🐝🖥️
  20. RGS v2.0 🇫🇷
  21. AirCyber ✈️🌐
  22. Cyber Resilience Act (CRA) 🇪🇺
  23. TIBER-EU 🇪🇺
  24. NIST Privacy Framework 🇺🇸
  25. TISAX (VDA ISA) v5.1, v6.0 и v2027 🚘
  26. ANSSI hygiene guide 🇫🇷
  27. Essential Cybersecurity Controls (ECC) 🇸🇦
  28. CIS Controls v8* 🌐
  29. CSA CCM (Cloud Controls Matrix)* ☁️
  30. FADP (Federal Act on Data Protection) 🇨🇭
  31. NIST SP 800-171 rev2 (2021) 🇺🇸
  32. ANSSI : Recommandations de sécurité pour un système d'IA générative (v1.0) 🇫🇷🤖
  33. NIST SP 800-218: Secure Software Development Framework (SSDF) 🖥️
  34. GSA FedRAMP rev5 ☁️🇺🇸
  35. Cadre Conformité Cyber France (3CF) v1 (2021) ✈️🇫🇷
  36. ANSSI : SecNumCloud ☁️🇫🇷
  37. Cadre Conformité Cyber France (3CF) v2 (2024) ✈️🇫🇷
  38. ANSSI : outil d’autoévaluation de gestion de crise cyber 💥🇫🇷
  39. BSI: IT-Grundschutz-Kompendium 🇩🇪
  40. NIST SP 800-171 rev3 (2024) 🇺🇸
  41. ENISA: 5G Security Controls Matrix 🇪🇺
  42. OWASP Mobile Application Security Verification Standard (MASVS) 🐝📱
  43. Agile Security Framework (ASF) - baseline - by intuitem 🤗
  44. ISO 27001:2013 🌐 (для устаревших версий и миграции)
  45. EU AI Act 🇪🇺🤖
  46. FBI CJIS 🇺🇸👮
  47. Operational Technology Cybersecurity Controls (OTCC) 🇸🇦
  48. Secure Controls Framework (SCF) 🇺🇸🌐
  49. NCSC - Cyber Assessment Framework (CAF) v3.2 🇬🇧
  50. California Consumer Privacy Act (CCPA) 🇺🇸
  51. California Consumer Privacy Act Regulations 🇺🇸
  52. NCSC Cyber Essentials 🇬🇧
  53. Directive Nationale de la Sécurité des Systèmes d'Information (DNSSI) Maroc 🇲🇦
  54. Part-IS (Consolidated 16-10-2025) ✈️🇪🇺
  55. ENS Esquema Nacional de seguridad 🇪🇸
  56. Korea ISA ISMS-P 🇰🇷
  57. Swiss ICT minimum standard 🇨🇭
  58. Adobe Common Controls Framework (CCF) v5 🌐
  59. BSI Cloud Computing Compliance Criteria Catalogue (C5) 🇩🇪
  60. Référentiel d’Audit de la Sécurité des Systèmes d’Information, ANCS Tunisie 🇹🇳
  61. ECB Cyber resilience oversight expectations for financial market infrastructures 🇪🇺
  62. Mindeststandard-des-BSI-zur-Nutzung-externer-Cloud-Dienste (Version 2.1) 🇩🇪
  63. Formulaire d'évaluation de la maturité - niveau fondamental (DGA) 🇫🇷
  64. NIS2 technical and methodological requirements 2024/2690 🇪🇺
  65. Saudi Arabian Monetary Authority (SAMA) Cybersecurity Framework 🇸🇦
  66. Guide de sécurité des données (CNIL) 🇫🇷
  67. International Traffic in Arms Regulations (ITAR) 🇺🇸
  68. Federal Trade Commission (FTC) Standards for Safeguarding Customer Information 🇺🇸
  69. OWASP's checklist for LLM governance and security 🌐
  70. ANSSI : Recommandations pour les architectures des systèmes d’information sensibles ou à diffusion restreinte (v1.2) 🇫🇷
  71. CIS Benchmarks — Kubernetes (v1.10, v2.0.1), AWS, Azure, GCP, Microsoft 365, Google Workspace, GitHub, GitLab, Debian 12/13, Ubuntu 24.04 LTS, Windows 11 🌐
  72. De tekniske minimumskrav for statslige myndigheder 🇩🇰
  73. Google SAIF framework 🤖
  74. ANSSI : Recommandations relatives à l'administration sécurisée des SI (v3.0) 🇫🇷
  75. Prudential Standard CPS 230 - Operational Risk Management (APRA) 🇦🇺
  76. Prudential Standard CPS 234 - Information Security (APRA) 🇦🇺
  77. Vehicle Cyber Security Audit (VCSA) v1.1 🚘
  78. Cisco Cloud Controls Framework (CCF) v3.0 ☁️🌐
  79. FINMA - Circular 2023/01 - Operational risks and resilience - Banks 🇨🇭
  80. Post-Quantum Cryptography (PQC) Migration Roadmap (May 2025) 🔐
  81. Cloud Sovereignty Framework - 1.2.1 - Oct 2025 🇪🇺
  82. ISO 22301:2019 outline - Business continuity management systems 🌐
  83. CCB CyberFundamentals Framework 2025 🇧🇪
  84. Prestataires de détection des incidents de sécurité (PDIS) - Référentiel d’exigences 🇫🇷
  85. Vendor Due Diligence - simple baseline - intuitem 🌐
  86. ANSSI : Points de contrôle Active Directory (AD) (Avril 2026) 🇫🇷
  87. ISO 42001:2023 outline - Artificial Intelligence Management System, including Annex A 🤖🌐
  88. India's Digital Personal Data Protection Act (DPDPA) - 2023 🇮🇳
  89. E-ITS (Estonia's national cyber security standard) - 2024 🇪🇪
  90. Microsoft cloud security benchmark v1 - ☁️🌐
  91. Baseline informatiebeveiliging Overheid 2 (BIO2) 🇳🇱
  92. ANSSI : Questionnaire MonAideCyber 🇫🇷
  93. ITSP.10.171 - Protecting specified information in non-Government of Canada systems and organizations 🇨🇦
  94. CISA Vendor Supply Chain Risk Management (SCRM) Template 🇺🇸
  95. European Sustainability Reporting Standards (ESRS) 🇪🇺
  96. ITIL 4 Management Practices 🌐
  97. NOREA - DORA in Control Framework v3.0 🇪🇺
  98. NIS-1 transposition FR 🇫🇷
  99. PSSI État 🇫🇷
  100. Checklist de dossier d'homologation 🇫🇷
  101. Cahier des charges Label EBIOS RM v3.1 🇫🇷
  102. SecNumCloud v3.2 Annexe 2 : Recommandations aux commanditaires ☁️🇫🇷
  103. CCB CyberFundamentals Small - Self assessment 🇧🇪
  104. Mitre ATT&CK v19.1 - Threats and Mitigations catalog 🌐
  105. Mitre D3FEND - Reference controls 🌐
  106. OWASP Top 10 Web - Threat catalog 🐝🌐
  107. OWASP MAS Threat Modelling Guide - Threat catalog 🐝📱
  108. CISA Cybersecurity Performance Goals (CPG) v2.0 🇺🇸
  109. ANSSI : Référentiel Cyber France pour la réglementation NIS2 (ReCyF) 🇫🇷
  110. Cadre Conformité Cyber France (3CF) v3.1 (2026) ✈️🇫🇷
  111. Règles OIV - Secteur « Transport aérien » (2016) ✈️🇫🇷
  112. IEC 62443 series — parts 2-1, 2-4, 3-2, 3-3, 4-1, 4-2 🏭🌐
  113. CER Directive (Critical Entities Resilience) 🇪🇺
  114. EUDI ARF — EU Digital Identity Wallet High-Level Requirements (Annex 2.02) 🇪🇺
  115. UK Defence Standard 05-138 Issue 4 🇬🇧
  116. Référentiel HAS - Certification des établissements de santé pour la qualité des soins 🇫🇷🏥
  117. Personal Data Protection Law (PDPL) 🇸🇦
  118. NCSC - Cyber Assessment Framework (CAF) v4.0 🇬🇧
  119. Algemene Beveiligingseisen voor Rijksoverheidsopdrachten (ABRO) 2026 🇳🇱
  120. Algemene Beveiligingseisen voor Defensieopdrachten (ABDO) 2019 🇳🇱
  121. ANSSI : Cybersécurité des systèmes industriels - Mesures détaillées 🇫🇷🏭
  122. Cbw (NIS2) Control Framework v1.2 🇳🇱
  123. ENISA SME Cyber Resilience Maturity Assessment (CRA) 🇪🇺
  124. ISO 27701:2025 outline - Privacy Information Management System, including Annex A 🌐
  125. Plumber CI/CD Security Checks 🖥️
  126. UNESCO AI Maturity Framework 🤖🌐

Вклад сообщества

  1. PGSSI-S (Politique Générale de Sécurité des Systèmes d'Information de Santé) 🇫🇷
  2. ANSSI : Recommandations de configuration d'un système GNU/Linux (v2.0) 🇫🇷
  3. PSSI-MCAS (Politique de sécurité des systèmes d’information pour les ministères chargés des affaires sociales) 🇫🇷
  4. ANSSI : Recommandations pour la protection des systèmes d'information essentiels (v1.0) 🇫🇷
  5. ANSSI : Recommandations de sécurité pour l'architecture d'un système de journalisation (v2.0) 🇫🇷
  6. ANSSI : Recommandations de sécurité relatives à TLS (v1.2) 🇫🇷
  7. New Zealand Information Security Manual (NZISM) 🇳🇿
  8. Clausier de sécurité numérique du Club RSSI Santé 🇫🇷
  9. Référentiel National de Sécurité de l’Information (RNSI), MPT Algérie 🇩🇿
  10. Misure minime di sicurezza ICT per le pubbliche amministrazioni, AGID Italia 🇮🇹
  11. Framework Nazionale CyberSecurity v2, FNCS Italia 🇮🇹
  12. Framework Nazionale per la Cybersecurity e la Data Protection, ACN Italia 🇮🇹
  13. PSSIE du Bénin, ANSSI Bénin 🇧🇯
  14. IGI 1300 / II 901 - Liste des exigences pour la mise en oeuvre d'un SI classifié (ANSSI) 🇫🇷
  15. Référentiel Général de Sécurité 2.0 - Annexe B2 🇫🇷
  16. ANSSI : Recommandations sur la sécurisation des systèmes de contrôle d'accès physique et de vidéoprotection (v2.2) 🇫🇷
  17. ANSSI : Recommandations pour un usage sécurisé d’(Open)SSH (v1.3) 🇫🇷
  18. ANSSI : Recommandations de sécurité relatives à IPsec pour la protection des flux réseau (v1.1) 🇫🇷
  19. ANSSI : Recommandations relatives à l'interconnexion d'un système d'information à internet (v3.0) 🇫🇷
  20. Guides des mécanismes cryptographiques 🇫🇷
  21. Swift Customer Security Controls Framework (CSCF) v2025 🏦🌐
  22. OWASP Application Security Verification Standard (ASVS) 5 🐝🖥️
  23. NIST 800-82 (OT) - appendix 🏭🤖
  24. RBI Master Direction 2023 - india 🏦🇮🇳
  25. Loi 05-20 relative à la cybersécurité (Maroc) 🇲🇦
  26. Lithuanian NIS2 Cybersecurity Law (Kibernetinio saugumo įstatymas) 🇱🇹
  27. Prestataire d'audit de sécurité des systèmes d'information (PASSI) 🇫🇷
  28. ANS Programme CaRE - Domaine 2 (Continuité et reprise d'activité, sauvegarde) 🇫🇷🏥
  29. ANS HospiConnect HOP'EN2 (Sécurisation de l'accès au SIH) 🇫🇷🏥
  30. Loi n° 09-08 relative à la protection des personnes physiques 🇲🇦
  31. Checklist des exigences de la Loi n° 09-08 🇲🇦
  32. Référentiel des exigences de qualification des prestataires de services cloud ☁️🇲🇦
  33. AI Defense Matrix 🤖🌐
  34. Zero Trust for Operational Technology (ZT OT) 🇺🇸🏭
  35. T.C. CBDDO Bilgi ve İletişim Güvenliği Rehberi (BİGR) 🇹🇷
  36. NCA NCNICC-1:2025 🇸🇦
  37. NCA ECC-2:2024 🇸🇦
  38. NCA CCC-1:2020 🇸🇦

[!NOTE] Фреймворки со знаком * требуют дополнительного ручного шага — получения последней версии Excel-файла с их сайта, поскольку их лицензия запрещает прямое использование. Вы можете загрузить Excel-файл напрямую как библиотеку.


Ознакомьтесь с библиотекой и инструментами для изучения используемого Domain Specific Language и того, как можно определить собственные.

Скоро

  • Indonesia PDP 🇮🇩

  • OWASP SAMM

  • COBAC R-2024/01

  • ICO Data protection self-assessment 🇬🇧

  • ASD ISM 🇦🇺

  • и многое другое: просто спросите в Discord. Если это открытый стандарт, мы сделаем это для вас, бесплатно 😉

Добавление собственной библиотеки

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

Библиотеки теперь можно загружать напрямую из файлов Excel. Нет необходимости предварительно вручную конвертировать их в YAML — конвертация выполняется внутри при загрузке Excel-файла.

Ознакомьтесь с каталогом tools и его специальным README, где описан ожидаемый формат исходных файлов библиотек в Excel. Подкаталог excel содержит примеры XLSX-файлов, используемых в качестве источников для существующих библиотек, и может использоваться как шаблон для создания собственных.

Чтобы загрузить библиотеку из Excel-файла, перейдите на страницу Governance → Library, нажмите Load и выберите исходный Excel-файл. Любые ошибки валидации или парсинга будут сообщены в процессе импорта.

Опционально: конвертация библиотек в YAML

Хотя Excel-файлы можно загружать напрямую, по-прежнему возможно конвертировать исходные файлы библиотек в YAML с помощью внешних Python-скриптов:

  • convert_library_v2.py помогает сгенерировать библиотеку из простого Excel-файла. Как только ваши элементы структурированы в ожидаемом формате, запустите скрипт, чтобы получить соответствующий YAML-файл.
  • Каталог tools также содержит специализированные конвертеры для конкретных фреймворков (например, CIS или CCM Controls).

Создание библиотек сопоставлений

Чтобы упростить создание сопоставлений между фреймворками, вы можете использовать инструмент prepare_mapping_v2.py. Он генерирует Excel-файл на основе двух существующих библиотек фреймворков в формате YAML. После заполнения сопоставлений полученный Excel-файл можно:

  • загрузить напрямую в приложение, или
  • конвертировать в YAML с помощью convert_library_v2.py.

Сообщество

Присоединяйтесь к нашему открытому сообществу в Discord, чтобы взаимодействовать с командой и другими экспертами по GRC.

Тестирование облачной версии

Самый быстрый и простой способ начать — воспользоваться бесплатной пробной версией облачного экземпляра, доступной здесь.

Локальное тестирование 🚀

Чтобы запустить CISO Assistant локально простым способом, вы можете использовать Docker compose.

  1. Обновите docker

Убедитесь, что у вас установлена свежая версия docker (>= 27.0).

  1. Клонируйте репозиторий```sh git clone --single-branch -b main https://github.com/intuitem/ciso-assistant-community.git cd ciso-assistant-community
root@kitploit:~
2. Запустите скрипт docker-compose для предварительно собранных образов:```sh
./docker-compose.sh     # Linux/MacOS
./docker-compose.ps1    # Windows

В качестве альтернативы вы можете использовать этот вариант для сборки docker-образов под вашу конкретную архитектуру:```sh ./docker-compose-build.sh # Linux/MacOS ./docker-compose-build.ps1 # Windows

root@kitploit:~
При запросе введите свой адрес электронной почты и пароль для суперпользователя.

После этого вы сможете получить доступ к CISO Assistant через веб-браузер по адресу [https://localhost:8443/](https://localhost:8443/)

Для следующих запусков используйте "docker compose up" напрямую.

## Настройка CISO Assistant для разработки

> [!WARNING]
>
> ### Важное примечание для пользователей Windows
>
> Наилучшее рабочее решение для пользователей, разрабатывающих на **Windows**, — использовать [Ubuntu](https://apps.microsoft.com/detail/9pdxgncfsczv), установленную на [WSL2](https://apps.microsoft.com/detail/9p9tqf7mrm4r) (Docker не требуется).
>
> Теперь также возможно запускать и разрабатывать CISO Assistant нативно на Windows без WSL2 и Docker, но это потребует некоторых дополнительных шагов.
> Обратите внимание, что нативный запуск на Windows всё ещё находится в **ЭКСПЕРИМЕНТАЛЬНОЙ ФАЗЕ** и **НЕ** должен использоваться, если вы не уверены в том, что делаете, или если вы хотите обеспечить стабильность в процессе разработки.
> Тем не менее, мы будем рады услышать любые предложения по улучшению опыта разработки для пользователей Windows. Не стесняйтесь открывать Issue/PR по этому поводу!

### Требования

- Python 3.14+
- pip 25.3+
- uv 0.9+
- node 24+
- npm 10.2+
- pnpm 10.30+
- yaml-cpp (`brew install yaml-cpp libyaml` или `apt install libyaml-cpp-dev`)

<details>
<summary>[ЭКСПЕРИМЕНТАЛЬНО] Дополнительные требования для разработки на Windows без WSL2</summary>

Если вы хотите разрабатывать проект без WSL2, вам потребуется установить [MSYS2](https://www.msys2.org/), добавить бинарные файлы `MSYS2 UCRT64` в вашу [системную переменную среды PATH](https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_environment_variables?view=powershell-7.6#set-environment-variables-in-the-system-control-panel) (обычно бинарные файлы находятся в `C:\msys64\ucrt64\bin`), а затем установить следующие зависимости через `pacman`, используя `MSYS2 UCRT64`.```sh
pacman -S mingw-w64-ucrt-x86_64-file mingw-w64-ucrt-x86_64-pango

Вам также потребуется добавить эти 2 системные переменные окружения после установки зависимостей:```conf MAGIC=Full path to the magic.mgc file (usually C:\msys64\ucrt64\share\misc\magic.mgc) WEASYPRINT_DLL_DIRECTORIES=Same path as your MSYS2 UCRT64 binaries

root@kitploit:~
Учитывая, что кодировка по умолчанию в Windows — не `UTF-8`, а `cp1252`, некоторые python-скрипты, выводящие символы `UTF-8`, такие как эмодзи, могут в некоторых случаях вызвать сбой или некорректную работу бэкенда (например, при импорте библиотеки).
Чтобы избежать этой проблемы в данном проекте, принудительно установите кодировку `UTF-8`, добавив эти 2 пользовательские переменные среды:```conf
PYTHONUTF8=1
PYTHONIOENCODING=utf-8:replace

[!NOTE]

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

  • Библиотека libmagic в Windows (определение MIME) с трудом распознаёт файл Excel (.xlsx), считывая его первые 2048 бит, так как в большинстве случаев возвращает application/octet-stream при импорте библиотеки Excel (бэкенд отображает предупреждающее сообщение [warning ] Invalid MIME type). Это не мешает импорту файла Excel благодаря резервному методу в backend/library/views.py:StoredLibraryViewSet.upload_library.

Запуск бэкенда

  1. Клонируйте репозиторий.```sh git clone [email protected]:intuitem/ciso-assistant-community.git cd ciso-assistant-community
root@kitploit:~
2. Создайте файл в родительской папке (например, `../myvars`) и сохраните в нём переменные окружения, скопировав и изменив следующий код и заменив `"<XXX>"` на ваши личные значения. Следите за тем, чтобы не закоммитить этот файл в ваш git-репозиторий.

**Обязательные переменные**

Все переменные в бэкенде имеют удобные значения по умолчанию.

**Рекомендуемые переменные**```sh
export DJANGO_DEBUG=True

# Default url is set to http://localhost:5173 but you can change it, e.g. to use https with a caddy proxy
export CISO_ASSISTANT_URL=https://localhost:8443

# Setup a development mailer with Mailpit for example
export EMAIL_HOST_USER=''
export EMAIL_HOST_PASSWORD=''
export [email protected]
export EMAIL_HOST=localhost
export EMAIL_PORT=1025
export EMAIL_USE_TLS=True  # true for STARTTLS
export EMAIL_USE_SSL=False # true for SMTPS

Другие переменные```sh

CISO Assistant will use SQLite by default, but you can setup PostgreSQL by declaring these variables

export POSTGRES_NAME=ciso-assistant export POSTGRES_USER=ciso-assistantuser export POSTGRES_PASSWORD= export POSTGRES_PASSWORD_FILE= # alternative way to specify password export DB_HOST=localhost export DB_PORT=5432 # optional, default value is 5432

CISO Assistant will use filesystem storage backend by default.

Only one cloud storage backend can be active at a time (USE_S3 and USE_AZURE are mutually exclusive).

--- AWS S3 ---

You can use a S3 Bucket by declaring these variables

The S3 bucket must be created before starting CISO Assistant

export USE_S3=True export AWS_STORAGE_BUCKET_NAME= export AWS_S3_REGION_NAME= # optional, e.g., us-east-1

S3 Authentication Option 1: Access Key (for standalone deployments or S3-compatible services)

export AWS_ACCESS_KEY_ID= export AWS_SECRET_ACCESS_KEY= export AWS_S3_ENDPOINT_URL= # required for S3-compatible services (e.g., MinIO)

S3 Authentication Option 2: IRSA (for Kubernetes/EKS deployments)

When running on EKS with IAM Roles for Service Accounts (IRSA) enabled,

these environment variables are automatically injected by the pod's service account.

No explicit configuration is needed - just ensure USE_S3=True and AWS_STORAGE_BUCKET_NAME are set.

export AWS_WEB_IDENTITY_TOKEN_FILE=/var/run/secrets/eks.amazonaws.com/serviceaccount/token

export AWS_ROLE_ARN=arn:aws:iam::123456789012:role/ciso-assistant-s3-role

--- Azure Blob Storage ---

You can use an Azure Blob Storage container instead of S3.

The container must be created before starting CISO Assistant.

export USE_AZURE=True

export AZURE_CONTAINER= # default: ciso-assistant-container

export AZURE_CUSTOM_DOMAIN= # optional, e.g., cdn.example.com

export AZURE_LOCATION= # optional, path prefix within the container (e.g., "media")

Azure Authentication Option 1: Account Key

export AZURE_ACCOUNT_NAME=

export AZURE_ACCOUNT_KEY=

Azure Authentication Option 2: Connection String

export AZURE_CONNECTION_STRING=

Azure Authentication Option 3: Managed Identity (for Azure-hosted deployments)

Requires AZURE_ACCOUNT_NAME. The pod/VM's assigned managed identity is used automatically.

export AZURE_ACCOUNT_NAME=

export AZURE_USE_MANAGED_IDENTITY=True

Add a second backup mailer (will be deprecated, not recommended anymore)

export EMAIL_HOST_RESCUE= export EMAIL_PORT_RESCUE=587 export EMAIL_HOST_USER_RESCUE= export EMAIL_HOST_PASSWORD_RESCUE= export EMAIL_USE_TLS_RESCUE=True export EMAIL_USE_SSL_RESCUE=False

You can define the email of the first superuser, useful for automation. A mail is sent to the superuser for password initialization

export CISO_SUPERUSER_EMAIL=

By default, Django secret key is generated randomly at each start of CISO Assistant. This is convenient for quick test,

but not recommended for production, as it can break the sessions (see

this topic for more information).

To set a fixed secret key, use the environment variable DJANGO_SECRET_KEY.

export DJANGO_SECRET_KEY=...

Sandbox mode for running untrusted code (e.g. library excel files)

WARNING: Sandboxing must be enabled in production environments.

export ENABLE_SANDBOX=True # optional, default value is True in production enfironments (DJANGO_DEBUG=False) and False in development environments (DJANGO_DEBUG=True).

Logging configuration

export LOG_LEVEL=INFO # optional, default value is INFO. Available options: DEBUG, INFO, WARNING, ERROR, CRITICAL export LOG_FORMAT=plain # optional, default value is plain. Available options: json, plain

LOG_FORMAT=json emits one JSON object per line (timestamp, level, logger, event, ...),

which SIEMs (Splunk, Sentinel, ADX) ingest natively without custom parsing.

Set the same LOG_FORMAT=json on the frontend container to get structured JSON

from the SvelteKit SSR process (auth events, errors) on the same schema; the

backend and huey worker share this setting automatically.

Authentication options

export AUTH_TOKEN_TTL=3600 # optional, default value is 3600 seconds (60 minutes). It defines the time to live of the authentication token export AUTH_TOKEN_AUTO_REFRESH=True # optional, default value is True. It defines if the token TTL should be refreshed automatically after each request authenticated with the token export AUTH_TOKEN_AUTO_REFRESH_TTL=36000 # optional, default value is 36000 seconds (10 hours). It defines the time to live of the authentication token after auto refresh. You can disable it by setting it to 0.

root@kitploit:~
<details>
<summary>[ЭКСПЕРИМЕНТАЛЬНО] Другая переменная для разработки на Windows без WSL2</summary>

Можно настроить только пользовательские переменные PostgreSQL.

Для получения дополнительной информации используйте вспомогательные скрипты, описанные в [`tools/.windows/README.md`](https://github.com/intuitem/ciso-assistant-community/blob/main/tools/.windows/README.md).

</details>


3. Установите uv

Инструкции по установке смотрите на сайте uv: <https://docs.astral.sh/uv/getting-started/installation/>

4. Перейдите в backend и установите необходимые зависимости.```sh
cd backend
uv sync
  1. Рекомендуется: установите pre-commit хуки.```sh pre-commit install
root@kitploit:~
6. Если вы хотите настроить Postgres:

- Запустите одну из этих команд, чтобы войти в Postgres:
  - `psql as superadmin`
  - `sudo su postgres`
  - `psql`
- Создайте базу данных "ciso-assistant"
  - `create database ciso-assistant;`
- Создайте пользователя "ciso-assistantuser" и предоставьте ему доступ
  - `create user ciso-assistantuser with password '<POSTGRES_PASSWORD>';`
  - `grant all privileges on database ciso-assistant to ciso-assistantuser;`

<details>
<summary>[ЭКСПЕРИМЕНТАЛЬНО] Настройка PostgreSQL на Windows</summary>

Для получения дополнительной информации см. документацию в [`tools/.windows/README.md`](https://github.com/intuitem/ciso-assistant-community/blob/main/tools/.windows/README.md).

</details>

7. Если вы хотите настроить s3 bucket:

- Выберите своего s3-провайдера или протестируйте функцию s3 с помощью miniO этой командой:
  - `docker run -p 9000:9000 -p 9001:9001 -e "MINIO_ROOT_USER=XXX" -e "MINIO_ROOT_PASSWORD=XXX" quay.io/minio/minio server /data --console-address ":9001"`
- Теперь вы можете проверить свой bucket по адресу <http://localhost:9001>
  - Введите данные для входа, используя учётные данные, которые вы указали в переменных окружения docker run
- Экспортируйте в директории backend все переменные окружения, запрашиваемые для S3
  - Список можно увидеть выше в рекомендуемых переменных

8. Примените миграции.```sh
uv run python manage.py migrate
[ЭКСПЕРИМЕНТАЛЬНО] Применение миграции в Windows без WSL2

Для получения дополнительной информации см. документацию в tools/.windows/README.md.

  1. Создайте суперпользователя Django, который будет администратором CISO Assistant.

Если вы настроили почтовую программу и переменную CISO_SUPERUSER_EMAIL, нет необходимости создавать суперпользователя Django с помощью createsuperuser, так как он будет создан автоматически при первом запуске. Вы должны получить электронное письмо со ссылкой для настройки пароля.```sh uv run python manage.py createsuperuser

root@kitploit:~
<details>
<summary>[ЭКСПЕРИМЕНТАЛЬНО] Создание суперпользователя Django в Windows без WSL2</summary>

Для получения дополнительной информации см. документацию в [`tools/.windows/README.md`](https://github.com/intuitem/ciso-assistant-community/blob/main/tools/.windows/README.md).

</details>

10. Запустите сервер разработки.```sh
uv run python manage.py runserver
[ЭКСПЕРИМЕНТАЛЬНО] Как запустить сервер разработки нативно на Windows?

При запуске сервера разработки Django нативно на Windows SvelteKit SSR может открыть достаточно одновременных API-соединений, чтобы исчерпать небольшой размер очереди прослушивания сервера по умолчанию. Это может вызвать периодические ошибки ECONNREFUSED / TypeError: fetch failed во фронтенде.

Используйте вспомогательные скрипты, описанные в tools/.windows/README.md, для настройки нативной разработки на Windows.

  1. Для Huey (запуск задач)
  • подготовьте mailer для тестирования.
  • запустите python manage.py run_huey -w 2 -k process или эквивалент в отдельной оболочке.
  • вы можете использовать MAIL_DEBUG, чтобы получать почту в консоли для упрощения отладки

Запуск фронтенда

  1. перейдите в директорию frontend```shell cd frontend
root@kitploit:~
2. Установите зависимости```bash
npm install -g pnpm
pnpm install
  1. Запустите сервер разработки (убедитесь, что приложение Django запущено)```bash pnpm run dev
root@kitploit:~
4. Откройте фронтенд по адресу <http://localhost:5173>

> [!NOTE]
> Safari не будет корректно работать в такой конфигурации, так как для безопасных cookie требуется https. Самое простое решение — использовать Chrome или Firefox. Альтернативный вариант — использовать прокси caddy. Пожалуйста, обратитесь к [файлу readme](https://github.com/intuitem/ciso-assistant-community/blob/main/frontend/README.md) в директории frontend для получения дополнительной информации об этом.

5. Переменные окружения

Все переменные во фронтенде имеют удобные значения по умолчанию.

Если вы переносите фронтенд на другой хост, вам следует задать следующую переменную: `PUBLIC_BACKEND_API_URL`. Её значение по умолчанию — <http://localhost:8000/api>.

Переменная `PUBLIC_BACKEND_API_EXPOSED_URL` необходима для корректной работы SSO. Она указывает на URL API, видимый из браузера. Она должна быть равна конкатенации `CISO_ASSISTANT_URL` (в бэкенде) с "/api".

Когда вы запускаете "node server" вместо "pnpm run dev", вам нужно задать переменную ORIGIN с тем же значением, что и `CISO_ASSISTANT_URL` в бэкенде (например, <http://localhost:3000>).

### Управление миграциями

Миграции отслеживаются системой контроля версий, <https://docs.djangoproject.com/en/4.2/topics/migrations/#version-control>

Для первой версии продукта рекомендуется начать с чистой миграции.

Примечание: чтобы очистить существующие миграции, введите:```sh
find . -path "*/migrations/*.py" -not -name "__init__.py" -delete
find . -path "*/migrations/*.pyc"  -delete

После изменения (или очистки) необходимо повторно сгенерировать файлы миграции:```sh uv run python manage.py makemigrations uv run python manage.py migrate

root@kitploit:~
Эти файлы миграции должны отслеживаться системой контроля версий.

### Набор тестов

Чтобы запустить API-тесты на бэкенде, просто введите `uv run pytest` в оболочке в папке бэкенда.

Чтобы запустить функциональные тесты на фронтенде, выполните следующие действия:

- в папке фронтенда запустите следующую команду:```shell
tests/e2e-tests.sh

Цель тестового окружения — предотвратить любые регрессии, то есть все тесты должны проходить успешно, как для бэкенда, так и для фронтенда.

API и Swagger

  • Интерактивная документация API (Swagger UI) доступна только в режиме разработки. Чтобы включить её, установите export DJANGO_DEBUG=True перед запуском бэкенда.
  • После запуска сервера документация будет доступна по адресу <backend_endpoint>/api/schema/swagger/, например: http://127.0.0.1:8000/api/schema/swagger/.

Чтобы взаимодействовать с API через Swagger или напрямую с помощью HTTP-запросов:

  1. Создайте Personal Access Token (PAT) в своём профиле пользователя в приложении.
  2. Включите этот токен в заголовок последующих запросов следующим образом: Authorization: Token <token>

⚠️ Примечание: используйте Token, не Bearer.

PAT учитывают MFA: они выдаются из аутентифицированной сессии, поэтому аккаунт, защищённый MFA, остаётся защищённым. Для интерактивных/браузерных сценариев аутентификация проходит через стандартный вход (который применяет MFA, когда она включена).

Настройка CISO Assistant для production

Файл docker-compose.yml содержит важную конфигурацию для тестирования, с прокси Caddy перед фронтендом. Он предоставляет доступ ко всему API, что пока не рекомендуется для production.

Для production можно использовать config builder для генерации более защищённого и адаптированного файла docker-compose.yml, хотя всё ещё требуется выполнить несколько шагов по усилению защиты.

Для production применяются следующие рекомендации:

  • Установите DJANGO_DEBUG=False по соображениям безопасности.
  • Зафиксируйте версии на последней production-версии для всех образов (бэкенд, фронтенд, обратный прокси)
  • Усильте конфигурацию сети, чтобы открыть только нужные порты, и отфильтруйте URL-адреса, чтобы ограничить полный доступ к API доверенными диапазонами IP. Если публичный доступ к API ограничен и включён SSO, оставьте эти эндпоинты доступными для браузера или провайдера идентификации:
    • /api/iam/sso/redirect/
    • /api/accounts/saml/0/acs/
    • /api/accounts/saml/0/acs/finish/
    • /api/accounts/oidc/openid_connect/login/callback/
    • /api/accounts/saml/0/sls/ (только при включённом SAML single logout)
  • Используйте развёртывание от имени непривилегированного пользователя, как описано ниже.
  • Используйте действительный сертификат для обратного прокси
  • Если обратный прокси работает не на том же хосте, что бэкенд и фронтенд, используйте VPN, например wireguard, между узлами.
  • Используйте зашифрованный том для базы данных и осторожно управляйте ключом шифрования.
  • Управляйте секретами через переменные окружения, а не указывайте их напрямую в файле docker-compose.yml.

[!NOTE] Фронтенд не может автоматически определить хост, поэтому вам нужно либо задать переменную ORIGIN, либо переменные HOST_HEADER и PROTOCOL_HEADER. Пожалуйста, ознакомьтесь с документацией sveltekit по этому непростому вопросу. Учтите, что этот подход не работает с "pnpm run dev", что не должно быть проблемой для production.

[!NOTE] Caddy должен получать заголовок SNI. Поэтому для вашего публичного URL (того, что объявлен в CISO_ASSISTANT_URL), вам нужно использовать FQDN, а не IP-адрес, так как SNI не передаётся браузером, если хост является IP-адресом. Ещё один непростой вопрос!

[!NOTE] Шаблонные файлы docker-compose теперь запускают бэкенд, huey и фронтенд в режиме непривилегированного пользователя. Если вы используете старый файл docker-compose.yml, рекомендуется его обновить. Контейнеры совместимы как с режимом root, так и с режимом непривилегированного пользователя.

Docker-контейнеры без root

docker-compose.yml теперь использует непривилегированного пользователя 1001:1001, который доступен в образе. Более старые развёртывания используют пользователя root, что по-прежнему поддерживается. Чтобы перейти на непривилегированный режим, выполните следующие шаги на хосте:

  • docker compose down
  • обновите файл docker-compose.yml
  • sudo chown -R 1001:1001 db
  • docker compose up -d

Поддерживаемые языки 🌐

Translation progress

Эталон — en.json; покрытие = доля эталонных ключей, присутствующих в каждом файле локали. Автообновление ежедневно — полная разбивка на дашборде.

Участники 🤝

Создано с помощью 💜

  • Django - Фреймворк для веб-разработки на Python
  • SvelteKit - Фронтенд-фреймворк
  • eCharts - Библиотека для построения графиков
  • unovis - Дополнительная библиотека для построения графиков
  • Gunicorn - Python WSGI HTTP-сервер для UNIX
  • Caddy - Самый крутой обратный прокси
  • Gitbook - Платформа для документации
  • PostgreSQL - Открытая СУБД
  • SQLite - Открытая СУБД
  • Docker - Движок контейнеризации
  • inlang - Экосистема для глобализации вашего программного обеспечения
  • Huey - Легковесная очередь задач

Безопасность

Были приложены большие усилия для соблюдения лучших практик безопасности. Пожалуйста, сообщайте о любых проблемах на [email protected].

Лицензия

Этот репозиторий содержит исходный код как открытой редакции CISO Assistant (Community Edition), выпущенной под AGPL v3, так и коммерческой редакции CISO Assistant (Pro и Enterprise Editions), выпущенной под коммерческой лицензией intuitem Commercial Software License. Такой подход с монорепозиторием принят для простоты.

Все файлы в каталоге верхнего уровня "enterprise" выпущены под коммерческой лицензией intuitem Commercial Software License.

Все файлы вне каталога верхнего уровня "enterprise" выпущены под AGPLv3.

Подробности см. в LICENSE.md. Для получения более подробной информации о коммерческих редакциях вы можете связаться с нами по адресу [email protected].

Если не указано иное, все файлы являются © intuitem.

Активность

Alt

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