Skip to content
forked from al0ne/LinuxCheck

Инструмент для сбора информации и обнаружения уязвимостей как в Debian и Ubuntu Linux так и в Alt и Astra Linux, с проверкой более чем по 70 пунктам из 13 категорий

License

Notifications You must be signed in to change notification settings

msklv/LinuxCheck

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LinuxCheck

Инструмент для экстренного реагирования в Linux, сбора информации и обнаружения уязвимостей. Поддерживает проверки по 13 категориям и более чем 70 пунктам, включая базовую конфигурацию, сетевой трафик, планировщик задач, переменные окружения, информацию о пользователях, службы, bash, вредоносные файлы, руткиты ядра, SSH, веб-шеллы, майнинговые файлы и процессы, цепочки поставок и риски серверов.

Дисклеймер

Это форк оригинального проекта LinuxCheck, для адоптации под нужды русскоязычных пользователей.

Обновления по сравнению с оригиналом

05.06.2025

  • Проверка мандатного доступа
  • Проверка источников обновлений

03.05.2025

  • Поддержка 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 .

Ссылки

Этот инструмент был создан с учётом следующих инструментов/статей и личного опыта:

Неплохо бы сделать

  • лучше использовать iproute2 (ip, ss) за место net-tools (ifconfig, netstat) и других устаревших инструментов.
  • Расширить проверки контеинеризации (например, containerd, crio и другие)
  • лучше ограничить области сканирования самыми уязвимыми местами.
  • Централизованный запуск тестов через Ansible
  • Отчет в формате Allure Report (json)

About

Инструмент для сбора информации и обнаружения уязвимостей как в Debian и Ubuntu Linux так и в Alt и Astra Linux, с проверкой более чем по 70 пунктам из 13 категорий

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 100.0%