Ferramenta de resposta a emergências Linux / coleta de informações / detecção de vulnerabilidades, suporta verificação em 13 categorias e 70+ itens, incluindo configuração básica / tráfego de rede / tarefas agendadas / variáveis de ambiente / informações do usuário / Services / bash / arquivos maliciosos / kernel Rootkit / SSH / Webshell / arquivos de mineração / processos de mineração / cadeia de suprimentos / riscos do servidor, etc.
Ferramenta de resposta a emergências/coleta de informações/detecção de vulnerabilidades para Linux, suporta 13 categorias com mais de 70 itens de verificação, incluindo configuração básica/tráfego de rede/tarefas agendadas/variáveis de ambiente/informações do usuário/Services/bash/arquivos maliciosos/Rootkit do kernel/SSH/Webshell/arquivos de mineração/processos de mineração/cadeia de suprimentos/riscos do servidor, etc.
Registro de alterações: 20 de abril de 2024
Registro de alterações: 05 de agosto de 2022
Registro de alterações: 07 de março de 2022
Registro de alterações: 17 de outubro de 2021
Primeira forma: instalação via git clone
git clone https://github.com/al0ne/LinuxCheck.git
chmod u+x LinuxCheck.sh
./LinuxCheck.sh
Segunda forma: chamada online diretamente [chamada online não permite usar a capacidade de upload de relatório]
bash -c "$(curl -sSL https://raw.githubusercontent.com/al0ne/LinuxCheck/master/LinuxCheck.sh)"
O arquivo será salvo no formato ipaddr_hostname_username_timestamp.log
Se for implantação em lote, após a execução do script, ele será enviado automaticamente para uma URL. Altere o webhook_url no script para seu próprio endereço.
# Endereço de upload do relatório
webhook_url='http://localhost:5000/upload'
upload_report() {
# Faz upload para a interface especificada
if [[ -n $webhook_url ]]; then
curl -X POST -F "file=@$filename" "$webhook_url"
fi
}
Em seu servidor, execute um serviço Flask para receber os relatórios Markdown enviados pelos servidores.
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)
A criação desta ferramenta foi baseada principalmente nas seguintes ferramentas/artigos, combinada com experiência pessoal