Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
SysTrace — Monitor de chamadas de sistema Linux usando ptrace para rastrear atividades de arquivos, processos, rede e memória, com isolamento de namespace e classificação por aprendizado de máquina para análise comportamental de segurança. | Kitploit
Ferramentas/GitHubGitHub/tracebyte8/systrace
Análise Dinâmica (Sandboxing)Análise de MalwareAprendizado de MáquinaDetecção de Anomalias
GitHubtracebyte8/systrace

SysTrace

Monitor de chamadas de sistema Linux usando ptrace para rastrear atividades de arquivos, processos, rede e memória, com isolamento de namespace e classificação por aprendizado de máquina para análise comportamental de segurança.

Ver Repositório
25293há 1 mêsRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

SysTrace 2.0

Monitor de syscalls Linux e sandbox baseado em ptrace para análise de binários ELF.

O SysTrace executa um alvo dentro de um ambiente isolado de namespaces Linux, rastreia suas chamadas de sistema e processos filhos, aplica detecção baseada em regras e pontuação de risco ponderada, e então usa um classificador Random Forest como sinal secundário.

Recursos

  • Rastreamento de syscalls com ptrace
  • Segue fork, vfork, clone e execve
  • Namespaces Linux de usuário, PID e mount
  • Sandbox mínimo com pivot_root
  • Monitoramento de arquivos, processos, memória e rede
  • Estatísticas de syscalls por processo e agregadas
  • Detecção baseada em regras com aplicação de SIGKILL
  • Pontuação de risco ponderada de 0 a 100
  • Classificação por ML com Random Forest
  • Relatório de segurança em HTML
  • Logs em JSON e texto
  • Rastreamento bruto de syscalls

Início Rápido

Clone o repositório:

git clone https://github.com/tracebyte8/SysTrace.git
cd SysTrace

Torne o script de configuração executável:

chmod +x config.sh

Execute o SysTrace em um binário ELF compilado:

./config.sh ./tests/bin/mal_fileopen

config.sh automaticamente:

  1. Verifica gcc, make e python3
  2. Cria .venv
  3. Instala as dependências Python necessárias
  4. Compila o SysTrace
  5. Executa o alvo através do monitor
  6. Gera o relatório de segurança

Não é necessária a instalação manual de pacotes Python.

O alvo deve ser um binário ELF já compilado. Um arquivo de código-fonte .c não pode ser passado diretamente.

Arquitetura

Target ELF
    │
    ▼
Namespace Sandbox
    │
    ├── CLONE_NEWUSER
    ├── CLONE_NEWPID
    ├── CLONE_NEWNS
    └── pivot_root
    │
    ▼
ptrace Tracer
    │
    ├── Syscall tracing
    ├── fork/vfork/clone following
    └── exec following
    │
    ▼
System Call Monitors
    │
    ├── File
    ├── Process
    ├── Memory
    └── Network
    │
    ▼
Statistics
    │
    ▼
Rule Engine
    │
    ├── Alerts
    └── SIGKILL enforcement
    │
    ▼
Risk Scoring
    │
    ├── features.json
    │
    └── Random Forest
             │
             ▼
      security_report.html

O Que Ele Monitora

CategoriaSyscalls rastreadas
Arquivoopen, openat, read, close
Processoexecve, fork, clone, wait4, ptrace
Memóriammap, mprotect
Redesocket, connect, sendto, recvfrom, bind, listen, accept

Outras syscalls também são gravadas em syscall.txt quando seus nomes estão disponíveis na tabela de syscalls.

Regras de Detecção

GatilhoCondiçãoAção
Acesso a arquivo sensível/etc/passwd ou /etc/shadowAlerta + SIGKILL
Aberturas excessivas de arquivosopen > 100Alerta + SIGKILL
Leituras excessivasread > 29Alerta + SIGKILL
Forking excessivofork/clone > 8Alerta + SIGKILL
Reexecução excessivaexecve > 8Alerta + SIGKILL
Conexão de redeQualquer connect()Alerta + SIGKILL
Envio de redeSyscall de envio rastreadaAlerta + SIGKILL
Alteração de proteção de memóriamprotect > 5Alerta + SIGKILL
Rastreamento entre processosQualquer ptrace()Alerta + SIGKILL
Risco altoPontuação ≥ 70Alerta + SIGKILL
Risco moderado40 ≤ pontuação < 70Alerta

O killit registra as ações de SIGKILL executadas pelo motor de regras.

Pontuação de Risco

O SysTrace calcula uma pontuação comportamental ponderada:

score =
    (sum of weighted syscall counts)
    / (total syscalls × 6.0)
    × 100

A pontuação é limitada a 0–100.

Se o motor de regras encerrar um processo, a pontuação de risco é forçada a pelo menos 90.

Pesos

ComportamentoPeso
ptrace6.0
connect5.0
rede4.0
execve3.0
mprotect3.0
fork2.0
processo1.5
open0.5
mmap0.5
arquivo0.3
read0.2
close0.1

Aprendizado de Máquina

O SysTrace usa um classificador Random Forest como sinal comportamental secundário.

O modelo está localizado em:

ml/syscall_model.pkl

As estatísticas de syscalls monitoradas são exportadas para:

features.json

ml/predict.py lê o registro de features mais recente e produz:

prediction.txt

Exemplo:

Program: ./tests/bin/mal_fileopen

Prediction: MALICIOUS
Confidence: 91.42%

O resultado de ML deve ser tratado como um sinal secundário, não como um veredito definitivo.

O repositório não inclui o conjunto de dados de treino original nem a precisão publicada do modelo.

Relatórios e Logs

FicheiroDescrição
security_report.htmlRelatório de segurança HTML final
alerts.jsonAlertas de segurança JSON
features.jsonRegistos de características de ML
prediction.txtÚltima previsão de ML
log.txtAlertas legíveis por humanos
syscall.txtRastreio de syscalls em bruto

features.json, alerts.json, log.txt e syscall.txt acumulam registos entre execuções.

security_report.html e prediction.txt são substituídos em cada execução.

Dashboard

SysTrace Dashboard

O relatório HTML contém:

  • Pontuação do motor de regras
  • Previsão de ML
  • Confiança de ML
  • Percentagem final de perigo
  • Eventos de segurança
  • Estatísticas comportamentais

Estrutura do Projeto

SysTrace/
├── src/
│   ├── tracer.c
│   ├── namespace.c
│   ├── set_root.c
│   ├── file_monitor.c
│   ├── process_monitor.c
│   ├── memory_monitor.c
│   ├── network_monitor.c
│   ├── rules.c
│   ├── score.c
│   ├── stat.c
│   └── dataset.c
│
├── include/
├── dashboard/
│   ├── index.c
│   └── style.css
│
├── ml/
│   ├── train.py
│   ├── predict.py
│   └── syscall_model.pkl
│
├── tests/
│   └── bin/
│
├── image/
├── Makefile
├── config.sh
└── README.md

Compilar Manualmente

Se você não quiser usar config.sh:

make

Limpe o projeto:

make clean

Reconstruir:

make re

Configuração manual do Python:

python3 -m venv .venv
source .venv/bin/activate
pip install numpy scikit-learn

Programas de Teste

ProgramaComportamento
benign_idle.cDorme e encerra
benign_fileread.cCria, lê e remove um arquivo temporário
mal_fileopen.cAbre/lê/fecha múltiplos arquivos
mal_forkbomb.cCria um número limitado de processos filhos
mal_connect.cTenta múltiplas conexões de rede
mal_mmap_mprotect.cOperações repetidas de mmap/mprotect

Exemplo:

./config.sh ./tests/bin/mal_forkbomb

Em seguida, abra:

xdg-open security_report.html

Segurança e Limitações

O SysTrace é uma ferramenta de análise dinâmica para pesquisa/aprendizado, não uma fronteira de segurança reforçada nem um EDR de produção.

Limitações importantes:

  • Apenas um único alvo é analisado por execução.
  • A aplicação é feita via SIGKILL após a detecção; não é um bloqueio de syscalls em nível de kernel.
  • O sandbox utiliza namespaces de usuário/PID/mount do Linux e pivot_root.
  • Namespaces de usuário não privilegiados devem estar habilitados.
  • O sistema de arquivos raiz mínimo contém apenas o alvo e as bibliotecas de runtime selecionadas.
  • Binários com linkagem dinâmica que possuam dependências adicionais podem falhar dentro do sandbox.
  • O runtime do sandbox atualmente assume caminhos de bibliotecas x86-64.
  • O rastreamento de descritores de arquivo é global, e não por PID.
  • O modelo de ML não possui garantia de precisão publicada.
  • O motor de regras e o classificador de ML podem produzir falsos positivos e falsos negativos.
  • O sandbox não deve ser tratado como substituto de uma VM ou de um contêiner reforçado.

Execute o SysTrace apenas contra binários que você possui ou está autorizado a analisar.

Baixar ferramenta