LinuxCheck
Инструмент аварийного реагирования Linux/сбора информации/обнаружения уязвимостей, поддерживает базовую конфигурацию/сетевой трафик/план задач/переменные среды/информацию пользователя/сервисы/bash/вредоносные файлы/ядро Rootkit/SSH/Webshell/файлы майнинга/процесс майнинга/поставки 70+ проверки по 13 категориям, включая сетевые/серверные риски
возобновлять
Журнал обновлений: 20 апреля 2024 г.
- Настройте вывод в отчет Markdown
- Отмените ag и используйте собственную команду grep Linux, чтобы избежать дополнительной установки.
- Оптимизируйте формат кода, больше не требуется tee -a для каждой строки.
- Обновить логику обнаружения Webshell
- Обновить логику обнаружения авторизованных_ключей.
- Проверка рисков сервера добавляет проверки JDWP и HTTP-сервера Python.
- Добавить обнаружение контейнера Docker
- Добавить обнаружение бэкдора PAM
- Добавьте возможность загрузки локальных отчетов для устранения аварийных ситуаций на пакетных машинах.
Журнал обновлений: 5 августа 2022 г.
- Исправлена проблема со слишком большим количеством журналов проверки модулей ядра.
Журнал обновлений: 07 марта 2022 г.
- Добавлено обнаружение бэкдора с программным соединением SSH.
Дата обновления: 17 октября 2021 г.
- Добавлено обнаружение троянов-майнеров Ntpclient/WorkMiner/TeamTNT.
- Добавить логику обнаружения модуля руткитов
- Добавить обнаружение отравления пипов Python
- Добавьте $HOME/.profile для просмотра
- Добавить проверку рисков сервера (Redis)
Функция
- Базовая проверка конфигурации
- Проверка изменения конфигурации системы
- Системная информация (IP-адрес/пользователь/время загрузки/версия системы/имя хоста/серийный номер сервера)
- Использование процессора
- Данные для входа в систему
- ТОП-15 процессоров
- Память ТОП 15
- Проверьте оставшееся место на диске
- Крепление жесткого диска
- Часто используемые проверки программного обеспечения
- /etc/горячие
- Проверка сети/трафика
- есликонфигурация
- сетевой трафик
- Прослушивание портов
- Открыть порт
- сетевое подключение
- Статус TCP-соединения
- таблица маршрутизации
- Маршрутизация и переадресация
- DNS-сервер
- АРП
- Проверка беспорядочного режима сетевой карты
- iptables брандмауэр
- Проверка плана задач
- Текущий план задач пользователя
- /etc/расписание системных задач
- Время создания файла расписания задач
- Устранение неполадок бэкдора crontab
- Проверка переменной среды
- окружение
- путь
- LD_PRELOAD
- LD_ELF_PRELOAD
- LD_AOUT_PRELOAD
- PROMPT_COMMAND
- LD_LIBRARY_PATH
- ld.so.preload
- Проверка информации о пользователе
- Пользователи, которые могут войти в систему
- дата изменения файла passwd
- судоеры
- Информация для входа (с последним/последним журналом)
- Исторический IP-адрес для входа
- Проверка услуг
- Служба запуска SystemD
- Время создания сервиса SystemD
- баш-чек
- История
- Аудит истории команд
- /etc/профиль
- $HOME/.profile
- /etc/rc.local
- ~/.bash_profile
- ~/.bashrc
- оболочка отскока bash
- Проверка документов
- ...скрытые файлы
- Обнаружение времени модификации системного файла
- Проверка временного файла (/tmp/var/tmp/dev/shm)
- псевдоним
- проверка специального разрешения suid
- Файл процесса не найден
- время изменений файлов за последние семь дней
- ctime изменений файлов за последние семь дней
- Большой файл >200 МБ
- Аудит конфиденциальных файлов (nmap/sqlmap/ew/frp/nps и другие распространенные инструменты для хакеров)
- Подозрительные хакерские файлы (такие программы, как wget/curl, загруженные хакерами, или вредоносные программы, замененные на обычное программное обеспечение, например, файлы nps в mysql).
- Проверка ядра на наличие руткитов
- lsmod подозрительный модуль
- Проверка таблицы символов ядра
- проверка охотника на руткиты
- проверка модуля руткита .ko
- SSH-проверка
- SSH-взрыв
- Обнаружение SSD
- Конфигурация бэкдора SSH
- Проверка бэкдора SSH inetd
- SSH-ключ
- Проверка веб-шелла
- проверка веб-шелла PHP
- проверка веб-шелла jsp
- Проверка файла/процесса майнинга
- Проверка файла майнинга
- Проверка процесса майнинга
- Обнаружение WorkMiner
- Обнаружение Ntpclient
- Проверка цепочки поставок на отравление
- Проверка отравления PIP Python
- Проверка рисков сервера
- Обнаружение слабого пароля Redis
- Обнаружение службы JDWP
- Обнаружение http.сервера Python
- Проверка разрешений Docker
Использование
Первый способ: установка через git clone
git clone https://github.com/al0ne/LinuxCheck.git
chmod u+x LinuxCheck.sh
./LinuxCheck.sh
Второй способ: позвонить напрямую онлайн [вы не можете использовать возможность загрузки отчета, если звоните онлайн]
bash -c "$(curl -sSL https://raw.githubusercontent.com/al0ne/LinuxCheck/master/LinuxCheck.sh)"
Файл будет сохранен в формате ipaddr_hostname_username_timestamp.log.
Отчеты загружаются автоматически
Если он доставлен на пакетные машины, скрипт будет автоматически отправлен на определенный URL-адрес после выполнения. Измените webhook_url в скрипте на свой собственный адрес.
# 报告上报的地址
webhook_url= ' http://localhost:5000/upload '
upload_report () {
# 上传到指定接口
if [[ -n $webhook_url ]] ; then
curl -X POST -F " file=@ $filename " " $webhook_url "
fi
}
Используйте Flask, чтобы запустить службу на вашем сервере и получить отчет Markdown, сообщаемый сервером.
from flask import Flask , request
app = Flask ( __name__ )
@ app . route ( '/upload' , methods = [ 'POST' ])
def upload_file ():
if 'file' not in request . files :
return "No file part" , 400
file = request . files [ 'file' ]
if file . filename == '' :
return "No selected file" , 400
if file :
filename = file . filename
file . save ( filename )
return "File successfully uploaded" , 200
if __name__ == '__main__' :
app . run ( debug = True , host = "0.0.0.0" , port = 9999 )
обратитесь к
Написание этого инструмента в основном относится к следующим инструментам/статьям и основано на личном опыте.
Linenum https://github.com/lis912/Evaluation_tools
https://ixyzero.com/blog/archives/4.html
https://github.com/T0xst/linux
https://github.com/grayddq/GScan