Lynis, lunar, lsat и lbsa: изучаем набор утилит для аудита безопасности linux

battarismos

Активный участник
ДРУЗЬЯ ФОРУМА

battarismos

Активный участник
ДРУЗЬЯ ФОРУМА
Регистрация
23 Сен 2020
Сообщения
92
Реакции
5
Репутация
8
Применение автоматизированных методов аудита – часть процесса обучения специалиста по кибербезопасности. Рассказываем об утилитах для Linux, помогающих выявить слабые места в системе.

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

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

Lynis


Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

– это инструмент аудита для UNIX-подобных систем, таких как Linux, OS X, Free/Net/Open BSD и других. Основная цель утилиты – проверить средства защиты и дать советы по настройке безопасности. Lynis сканирует общую информацию о системе, уязвимые пакеты программного обеспечения и возможные проблемы с конфигурацией.

Поддерживаемые дистрибутивы Linux
  • CentOS;
  • Debian;
  • Fedora;
  • OEL;
  • openSUSE;
  • RHEL;
  • Ubuntu;

Для чего предназначен


  • автоматизированный аудит безопасности;
  • тестирование на соответствие ISO27001, PCI-DSS, HIPAA;
  • обнаружение уязвимости;
  • конфигурирование и управление активами;
  • управление исправлениями для программного обеспечения;
  • укрепление системы;
  • тестирование на проникновение;
  • обнаружения вторжений.
Установка и запуск
Установка через YUM

$ yum install lynis

Debian-подобные

$ apt-get install lynis

openSUSE

$ zypper install lynis

Установка через Git

$ cd /usr/local
$ git clone

Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.


$ cd lynis

Также вы можете напрямую скачать и распаковать

Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

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

$ lynis audit system



Полезные опции
-checkall, -c – запуск сканирования;

-check-update – проверка обновлений;

-cronjob – запускает Lynis через планировщик;

-quick, -Q – не ждать ввода пользователя, кроме ошибок;

-version, -V – выводит версию Lynis.

Lunar

Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

– сокращение от Lockdown UNix Auditing and Reporting. Этот сценарий генерирует отчет аудита безопасности хоста UNIX. Он основан на CIS и других фреймворках.

Поддерживаемые ОС и дистрибутивы Linux
  • RHEL 5,6,7;
  • Centos 5,6,7;
  • Scientific Linux;
  • SLES 10,11,12;
  • Debian;
  • Ubuntu;
  • Amazon Linux;
  • Solaris (6,7,8,9,10 и 11);
  • Mac OS X.
Утилита также поддерживает облачную платформу Amazone и контейнеры Docker.

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

Установка и запуск
LUNAR это сценарий командной строки sh, поэтому особых усилий по установке он не требует. Качаем

Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

с Github, распаковываем в соответствующую директорию и запускаем из командной строки.

$ ./lunar.sh -a

Рекомендуется запускать в режиме аудита (параметр -a).


Полезные опции
Будьте внимательны и осторожны при запуске в режиме исправлений! У автора статьи при запуске в режиме изменений скрипт выкинул основного пользователя из группы sudoers, в результате пришлось грузиться из recovery mode и откатываться из бэкапа, благо lunar сам создает их перед внесением изменений.

Список параметров:

-a – запуск в режиме аудита (в систему не вносятся изменения);

-v – подробный режим [используется с -a и -A];

-d – просмотр предлагаемых изменений системы до их внесения в конфиги;

-s – запуск в выборочном режиме;

-l – запуск в режиме блокировки (внесение изменений);

-S – список всех функций UNIX, доступных для выборочного режима;

-W – список всех функций AWS, доступных для выборочного режима;

-D – список всех функций Docker, доступных для выборочного режима;ш

-Z – показать изменения, ранее внесенные в систему;

-b – список файлов резервных копий;

-n – выводить доступные сегменты кода;

-u – восстановление из резервной копии.

LSAT
Linux security auditing tool (LSAT) имеет модульную конструкцию, поэтому можно быстро добавлять новые функции.

Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

проверяет записи inetd, просматривает ненужные пакеты RPM и проверяет версии ядра.

Поддерживаемые ОС и дистрибутивы Linux
  • Gentoo;
  • RedHat;
  • Debian;
  • Mandrake;
  • Linux Mint 18;
  • CentOS 7
  • Sparc: Sun OS (2.x);
  • Redhat sparc, Mandrake Sparc;
  • Apple OS X;
  • Должен нормально работать под Slackware и другими дистрибутивами Linux.
Для чего предназначен
Комплексный аудит безопасности ОС.

Установка и запуск
LSAT устанавливается с помощью сборки из исходников и имеет заранее заготовленный автоконфиг — autoconf.

$ ./configure
$ make

Для установки в систему на /usr/local/bin

$ make instal


Полезные опции
-d diff – текущий и старый md5, вывод в lsatmd5.diff;

-m – тест для конкретного дистрибутива:

  • redhat;
  • debian;
  • mandrake;
  • solaris;
  • gentoo;
  • macosx.
-a – показать расширенную страницу справки;

-o – имя выходного файла, по умолчанию lsat.out

-r – проверить целостность rpm, только redhat или mandrake;

-s – тихий режим;

-v – подробный вывод;

-w – выходной файл в формате HTML;

-x – исключить модули из списка файлов из проверок.

LBSA
Это базовый сценарий аудита безопасности Linux для непрерывного применения политик (CPE). Запускать его можно из командной строки от имени пользователя root или на регулярной основе с использованием планировщика.

Для чего предназначен
Цель сценария – сообщить администратору возможные настройки, которые можно изменить, чтобы обеспечить безопасность системы.

В настоящее время скрипт ищет:

  • распространенные уязвимости безопасности в настройке учетной записи для входа в Linux;
  • распространенные уязвимости безопасности в настройках SSH;
  • распространенные уязвимости безопасности во временных файловых системах и файловых системах с общей памятью (например: /tmp, /var/tmp, /dev/shm);
  • рекомендации по разрешениям файловой системы, которые могут усилить защиту большинства систем, не влияя на нормальную работу;
  • Heartbeat и разрешения файла конфигурации DRBD;
Использование

Полную версию скрипта можно взять на официальной

Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

.

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

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

В заключение
Как наиболее универсальный инструмент для комплексного аудита, из перечисленных мы можем рекомендовать Lynis. Он поможет провести всестороннюю проверку и выявить самые уязвимые части системы. В качестве скрипта для периодической профилактики удобно использовать LBSA.
 
Сверху