Skip to content

Скрипт аудита параметров безопасности ОС Linux / Linux OS Security Settings Audit Script

Notifications You must be signed in to change notification settings

CyberVedmak/Audit-Security-Config-Linux

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 

Repository files navigation

Audit-Security-Config-Linux

Скрипт аудита параметров безопасности ОС Linux / Linux OS Security Settings Audit Script

Bash-скрипт протестирован на дистрибутивах: Red Hat-based (Centos 8+, Rocky 8+, AlmaLinux 8+)

История версий

v 1.0 beta - Первая публичная версия


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

  • ALERT - параметр не соотвествует эталону. Несоотвествие приводит к снижению уровня защищенности системы.
  • WARNING - параметр не соотвествует эталону. Требуется экспертный анализ итогов проверки.
  • OK - параметр соответствует эталону.
    (!!) - при трактовке логов аудита необходимо учитывать особенности конфигурации и целевом назначении проверяемой системы.

Выделяются три уровня критичности (Verification ratings) в случае несоответствия параметру эталону:

  • CRITICAL - несоотвествие данного параметра эталону может значительно сказаться на уровне безопасности системы. Как правило не нуждается в переоценке урвоня значимости.
  • HIGH - несоотвествие данного параметра эталону может значительно сказаться на уровне безопасности системы. Возможна переоценка уровня критичности экспертом с учетом назначения проверяемой системы.
  • MIDDLE - несоотвествие данного параметра эталону может сказаться на уровне безопасности системы. Необходима оценка уровня критичности экспертом с учетом назначения проверяемой системы.

Ниже приведена таблица в которой попунктно расписаны параметры которые проверяет скрипт.
Каждому параметру присвоен уровень критичности в случае несоответствию эталонному значению. В таблице дано краткое описание каждому параметру. Проверяемые параметры объединены в группы по назначению и/или логике.

№ п/п Проверяемый параметр Уровень критичности Краткое описание
1 Параметры ядра Файл /etc/sysctl.conf содержит параметры направленные на безопасность и оптимизацию системы
1.1 kernel.randomize_va_space = 2 HIGH Параметр в ядре Linux контролирует рандомизацию адресного пространства (ASLR), которая помогает защитить систему от определённых типов атак на переполнение буфера.
1.2 fs.protected_symlinks = 1 HIGH Параметр в Linux предназначен для ограничения небезопасных опций для передачи символических ссылок.
1.3 fs.protected_fifos = 2 HIGH Параметр в ядре Linux предназначен для защиты от непреднамеренной записи в FIFO-объект, который контролируется злоумышленником. Конечная защиты — сделать атаки по подделке данных сложнее.
1.4 fs.protected_regular = 2 HIGH Параметр в ядре Linux предназначен для защиты от атак, связанных с подделкой данных. Доступен, начиная с версии 4.19 ядра Linux.
1.5 fs.suid_dumpable = 0 HIGH Параметр позволяет запрашивать и устанавливать режим дампа ядра для программ с битом setuid или других защищённых бинарников. При значении параметра 0 дамп ядра не создаётся для процесса, который изменил уровни привилегий или работает только в режиме выполнения.
1.6 kernel.dmesg_restrict = 1 HIGH Параметр контролирует ограничения доступа к буферу сообщений ядра с помощью команды dmesg. Значение параметра "1" используют, чтобы не допускать просмотра обычными пользователями конфиденциальных данных, которые хранятся в dmesg, например, деталей сбоя приложений.
1.7 net.ipv6.conf.all.disable_ipv6 = 1 MIDDLE Отключение протокола IPv6. Рекомендуется отключить если не используется.
1.8 net.ipv4.conf.default.rp_filter = 1 HIGH Параметр .устанавливает значение по умолчанию для Reverse Path Filtering на всех интерфейсах. Значение "1" выставляет строгий режим, определённый в RFC3704. Каждый входящий пакет проверяется против базы информации о пересылке (FIB), и если интерфейс не является лучшим обратным путём, проверка пакета завершается с ошибкой. По умолчанию неудачные пакеты отбрасываются
1.9 kernel.yama.ptrace_scope = 3 HIGH Параметр отвечает за блокировку ptrace и позволяет контролировать, какие процессы могут использовать ptrace для работы с другими процессами. Рекомендуемое значение означает, что никакие процессы не могут выполнять операции PTRACE_MODE_ATTACH или трассировать потомков, выполнивших PTRACE_TRACEME. После записи такого значения в файл, чтобы его изменить, требуется перезагрузка
1.10 net.ipv4.icmp_echo_ignore_broadcasts = 1 MIDDLE Параметр предназначен для управления поведением системы относительно ICMP-запросов типа ECHO REQUEST (ping), направленных на широковещательные MAC/IP-адреса. При значении параметра "1" система игнорирует ping-запросы, отправленные на широковещательные адреса (broadcast-пакеты). Таким образом, компьютер не будет отвечать на запросы вида ping <широковещательный_адрес>
2 Права на файлы/каталоги Правильно высталенные права на файлы/каталоги в Linux - основа безопасности
2.1 /etc/passwd - 644 CRITICAL Права доступа к файлу с параметрами пользователей
2.2 /etc/group - 644 CRITICAL Права доступа к файлу с параметрами пользователей
2.3 /etc/shadow - 000 CRITICAL Права доступа к файлу с хешами паролей
2.4 /var/log/messages - 600 MIDDLE Права доступа к файлу с логами
2.5 /home/* - 740 HIGH Права доступа на каталоги пользователей
2.6 /etc/cron* - 700 MIDDLE Права доступа на файлы cron
2.7 /lib - 755 HIGH Права доступа к системным каталогам
2.8 /lib64 - 755 HIGH Права доступа к системным каталогам
2.9 /usr/lib - 755 HIGH Права доступа к системным каталогам
2.10 /usr/lib64 - 755 HIGH Права доступа к системным каталогам
3 Конфигурация SSH Обеспечение безопасности SSH-подключений является необходмым минимумом в безопасной настройке Linux
3.1 "etc/ssh/sshd_config" -> PermitEmptyPasswords no CRITICAL Параметр запрещает доступ по ssh пользователем с пустым паролем
4 Конфигурация ОС и сервисов Проверка конфигурации отдельных параметров ОС и сервисов
4.1 SELinux CRITICAL SELinux - механизм безопасности, разработанный для повышения уровня защиты ОС Linux, - должен быть включен.
4.2 disable ctrl-alt-del MIDDLE Должна быть выключена перезагрузка системы при нажатии клавиш Ctrl-Alt-Delete
4.3 Отсутствие в ОС файлов с хранением секретов для беспарольного подключения посредством host-based authentication HIGH
4.4 Установка пакет ftp MIDDLE Отсутствие пакета ftp на машинах на которых не предусмотрена работа с FTP и VPN
4.5 "/etc/pam.d/su" -> auth required pam_wheel.so use_uid HIGH Использование команды su разрешено только членам группы wheel

About

Скрипт аудита параметров безопасности ОС Linux / Linux OS Security Settings Audit Script

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages