Инструмент для экстренного реагирования в Linux, сбора информации и обнаружения уязвимостей. Поддерживает проверки по 13 категориям и более чем 70 пунктам, включая базовую конфигурацию, сетевой трафик, планировщик задач, переменные окружения, информацию о пользователях, службы, bash, вредоносные файлы, руткиты ядра, SSH, веб-шеллы, майнинговые файлы и процессы, цепочки поставок и риски серверов.
Это форк оригинального проекта LinuxCheck, для адоптации под нужды русскоязычных пользователей.
- Проверка мандатного доступа
- Проверка источников обновлений
- Поддержка Astra Linux и Alt Linux
- Русские комментарии
- Код и результаты - на английском, для больших шансов на понимание при разных кодировках
- Повышенный уровень безопасности действий скрипта, устанавливаются только необходимые для анализа пакеты
- Серьезно расширен список проверок на установленные пакеты
- Проверка базовой конфигурации
- Изменения в системной конфигурации
- Информация о системе (IP-адрес, пользователи, время работы, версия системы, Hostname, серийный номер сервера)
- Использование CPU
- Информация о вошедших пользователях
- Топ-15 процессов по загрузке CPU
- Топ-15 процессов по использованию памяти
- Проверка свободного места на диске
- Подключённые диски
- Проверка установленных программ
- /etc/hosts
- Проверка сети и трафика
- ifconfig
- Сетевой трафик
- Прослушиваемые порты
- Открытые внешние порты
- Сетевые соединения
- Состояние TCP-соединений
- Таблица маршрутов
- Перенаправление маршрутов
- DNS-серверы
- ARP
- Проверка сетевых карт в режиме промискуитета
- iptables (фаервол)
- Проверка планировщика задач
- Задачи текущего пользователя
- Системные задачи в /etc/
- Время создания файлов задач
- Проверка на бэкдоры в crontab
- Проверка переменных окружения
- env
- path
- LD_PRELOAD
- LD_ELF_PRELOAD
- LD_AOUT_PRELOAD
- PROMPT_COMMAND
- LD_LIBRARY_PATH
- ld.so.preload
- Проверка информации о пользователях
- Пользователи с доступом
- Дата изменения файла passwd
- sudoers
- Информация о входах (w/last/lastlog)
- История IP-адресов входов
- Проверка служб
- Запущенные службы SystemD
- Время создания служб SystemD
- Проверка bash
- История команд
- Аудит истории команд
- /etc/profile
- $HOME/.profile
- /etc/rc.local
- ~/.bash_profile
- ~/.bashrc
- Обратные shell через bash
- Проверка файлов
- Скрытые файлы
- Изменения системных файлов
- Проверка временных файлов (/tmp, /var/tmp, /dev/shm)
- alias
- Проверка файлов с suid-правами
- Процессы с отсутствующими файлами
- Изменения файлов за последние 7 дней (mtime)
- Изменения файлов за последние 7 дней (ctime)
- Большие файлы (>200 МБ)
- Аудит чувствительных файлов (nmap, sqlmap, ew, frp, nps и другие инструменты хакеров)
- Подозрительные файлы (вредоносные программы, замаскированные под обычные, например, nps под mysql)
- Проверка руткитов ядра
- Подозрительные модули lsmod
- Проверка таблицы символов ядра
- Проверка с помощью rootkit hunter
- Проверка модулей руткитов (.ko)
- Проверка SSH
- Брутфорс SSH
- Проверка SSHD
- Проверка конфигурации SSH на бэкдоры
- Проверка inetd-бэкдоров SSH
- Проверка SSH-ключей
- Проверка веб-шеллов
- Проверка php webshell
- Проверка jsp webshell
- Проверка майнинговых файлов и процессов
- Проверка файлов для майнинга
- Проверка процессов для майнинга
- Обнаружение WorkMiner
- Обнаружение Ntpclient
- Проверка на отравление цепочек поставок
- Проверка на отравление Python PIP
- Проверка рисков серверов
- Проверка слабых паролей Redis
- Проверка службы JDWP
- Проверка Python http.server
- Проверка прав Docker
- Проверка мандатного доступа
- Проверка источников обновлений
Первый способ: установка через git clone
git clone https://github.com/msklv/LinuxCheck.git
chmod u+x LinuxCheck.sh
./LinuxCheck.sh Второй способ: запуск напрямую онлайн (в этом случае возможность загрузки отчёта недоступна)
bash -c "$(curl -sSL https://raw.githubusercontent.com/msklv/LinuxCheck/master/LinuxCheck.sh)" Файл будет сохранён в формате ipaddr_hostname_username_timestamp_log.md
# Копирование скрипта на удаленный хост
scp LinuxCheck.sh user@10.10.10.10:/home/user/
# Копирование отчёта обратно на локальный хост
scp user@10.10.10.10:/home/user/app-alt10_root_1745921754_log.md .Этот инструмент был создан с учётом следующих инструментов/статей и личного опыта:
- Оригинальный проект LinuxCheck
- Linenum
- lis912/Evaluation_tools
- ixyzero.com/blog/archives/4.html
- T0xst/linux
- grayddq/GScan
- лучше использовать iproute2 (ip, ss) за место net-tools (ifconfig, netstat) и других устаревших инструментов.
- Расширить проверки контеинеризации (например, containerd, crio и другие)
- лучше ограничить области сканирования самыми уязвимыми местами.
- Централизованный запуск тестов через Ansible
- Отчет в формате Allure Report (json)