LinuxCheck
Ferramenta de resposta de emergência/coleta de informações/detecção de vulnerabilidade do Linux, suporta configuração básica/tráfego de rede/plano de tarefas/variáveis de ambiente/informações do usuário/serviços/bash/arquivos maliciosos/kernel Rootkit/SSH/Webshell/arquivos de mineração/processo de mineração/fornecimento 70+ inspeções em 13 categorias, incluindo riscos de cadeia/servidor
renovar
Registro de atualização: 20 de abril de 2024
- Ajustar a saída para o relatório Markdown
- Abandone ag e use o comando grep nativo do Linux para evitar instalação adicional
- Otimize o formato do código, não precisa mais de tee -a para cada linha
- Atualizar a lógica de detecção do Webshell
- Atualizar lógica de detecção de chaves_autorizadas
- Server Risk Check adiciona verificações de servidor HTTP JDWP e Python
- Adicionar detecção de contêiner Docker
- Adicionar detecção de backdoor PAM
- Adicione capacidade de upload de relatórios locais para lidar com emergências de máquinas em lote.
Registro de atualização: 5 de agosto de 2022
- Corrija o problema de muitos logs de verificação de módulos do kernel
Registro de atualização: 07 de março de 2022
- Adicionar detecção de backdoor de conexão suave SSH
Data de atualização: 17 de outubro de 2021
- Adicionada detecção de Trojan de mineração Ntpclient/WorkMiner/TeamTNT
- Adicionar lógica de detecção de módulo Rootkit
- Adicionar detecção de envenenamento por pip Python
- Adicione $HOME/.profile para visualizar
- Adicionar verificação de risco do servidor (Redis)
Função
- Verificação de configuração básica
- Verificação de alteração na configuração do sistema
- Informações do sistema (endereço IP/usuário/tempo de inicialização/versão do sistema/nome do host/SN do servidor)
- Uso da CPU
- Informações do usuário de login
- TOP 15 de CPU
- Memória TOP 15
- Verifique o espaço restante em disco
- Montagem de disco rígido
- Verificações de software comumente usadas
- /etc/hots
- Inspeção de rede/tráfego
- ifconfig
- tráfego de rede
- Escuta de porta
- Porta aberta
- conexão de rede
- Status da conexão TCP
- tabela de roteamento
- Roteamento e encaminhamento
- Servidor DNS
- ARP
- Verificação do modo promíscuo da placa de rede
- firewall iptables
- Verificação do plano de tarefas
- Plano de tarefas do usuário atual
- /etc/agendamento de tarefas do sistema
- Hora de criação do arquivo de agendamento de tarefas
- solução de problemas de backdoor do crontab
- Verificação de variável de ambiente
- ambiente
- caminho
- LD_PRELOAD
- LD_ELF_PRELOAD
- LD_AOUT_PRELOAD
- PROMPT_COMMAND
- LD_LIBRARY_PATH
- ld.so.pré-carregamento
- Verificação de informações do usuário
- Usuários que podem fazer login
- data de modificação do arquivo passwd
- sudoers
- Informações de login (com último/último log)
- IP de login histórico
- Verificação de serviços
- Serviço de execução SystemD
- Hora de criação do serviço SystemD
- verificação bash
- História
- Auditoria de comando de histórico
- /etc/perfil
- $HOME/.perfil
- /etc/rc.local
- ~/.bash_profile
- ~/.bashrc
- shell de rebote bash
- Verificação de documentos
- ... arquivos ocultos
- Detecção de hora de modificação de arquivo do sistema
- Verificação de arquivo temporário (/tmp /var/tmp /dev/shm)
- apelido
- verificação de permissão especial suid
- Arquivo de processo não encontrado
- mtime de alterações de arquivo nos últimos sete dias
- ctime das alterações do arquivo nos últimos sete dias
- Arquivo grande >200mb
- Auditoria de arquivos confidenciais (nmap/sqlmap/ew/frp/nps e outras ferramentas comuns para hackers)
- Arquivos de hackers suspeitos (programas como wget/curl carregados por hackers ou programas maliciosos alterados para software normal, como arquivos nps para mysql)
- Verificação de rootkit do kernel
- módulo suspeito lsmod
- Verificação da tabela de símbolos do kernel
- verificação do caçador de rootkit
- Verificação do módulo rootkit .ko
- Verificação SSH
- Explosão SSH
- Detecção SSHD
- Configuração de backdoor SSH
- Verificação de backdoor SSH inetd
- Chave SSH
- Verificação de webshell
- verificação de webshell php
- verificação de webshell jsp
- Verificação de arquivo/processo de mineração
- Verificação de arquivo de mineração
- Verificação do processo de mineração
- Detecção do WorkMiner
- Detecção de Ntpclient
- Inspeção de envenenamento na cadeia de suprimentos
- Verificação de envenenamento Python PIP
- Verificação de risco do servidor
- Detecção de senha fraca do Redis
- Detecção de serviço JDWP
- Detecção http.server em Python
- Verificação de permissão do Docker
Uso
A primeira forma: instalar através do git clone
git clone https://github.com/al0ne/LinuxCheck.git
chmod u+x LinuxCheck.sh
./LinuxCheck.sh
O segundo método: ligue diretamente online [você não pode usar a capacidade de upload de relatórios se ligar online]
bash -c "$(curl -sSL https://raw.githubusercontent.com/al0ne/LinuxCheck/master/LinuxCheck.sh)"
O arquivo será salvo no formato ipaddr_hostname_username_timestamp.log
Os relatórios são carregados automaticamente
Se for entregue em máquinas em lote, o script será enviado automaticamente para um determinado URL após a execução. Altere o webhook_url no script para seu próprio endereço.
# 报告上报的地址
webhook_url= ' http://localhost:5000/upload '
upload_report () {
# 上传到指定接口
if [[ -n $webhook_url ]] ; then
curl -X POST -F " file=@ $filename " " $webhook_url "
fi
}
Use Flask para iniciar um serviço em seu servidor para receber o relatório Markdown relatado pelo servidor.
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 )
consulte
A redação desta ferramenta refere-se principalmente às seguintes ferramentas/artigos e é concluída com base na experiência pessoal.
Número de linha https://github.com/lis912/Evaluation_tools
https://ixyzero.com/blog/archives/4.html
https://github.com/T0xst/linux
https://github.com/grayddq/GScan