Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
SysTrace — Монитор системных вызовов Linux, использующий ptrace для отслеживания активности файлов, процессов, сети и памяти, с изоляцией пространств имён (namespace) и классификацией на основе машинного обучения для поведенческого анализа безопасности. | Kitploit
Инструменты/GitHubGitHub/tracebyte8/systrace
Динамический анализ (песочница)Анализ вредоносных программМашинное ОбучениеОбнаружение Аномалий
GitHubtracebyte8/systrace

SysTrace

Монитор системных вызовов Linux, использующий ptrace для отслеживания активности файлов, процессов, сети и памяти, с изоляцией пространств имён (namespace) и классификацией на основе машинного обучения для поведенческого анализа безопасности.

Репозиторий
15122 ч 37 мин назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

SysTrace

Инструмент мониторинга системных вызовов Linux и поведенческого анализа безопасности, сочетающий трассировку на основе ptrace, лёгкую изоляцию пространств имён и классификацию с помощью машинного обучения.

SysTrace наблюдает за поведением целевой программы во время выполнения на уровне системных вызовов, извлекает поведенческие признаки и классифицирует наблюдаемую активность как безопасную или вредоносную с помощью обученной модели Random Forest. Инструмент написан в основном на C для низкоуровневой трассировки и изоляции, с компонентом на Python/scikit-learn для классификации и формирования отчётов.


Обзор

SysTrace трассирует целевой процесс с помощью ptrace, перехватывая системные вызовы, связанные с доступом к файлам, созданием процессов, сетевой активностью и операциями с памятью. Перехваченное поведение агрегируется в статистику системных вызовов и вектор признаков, который передаётся обученному классификатору Random Forest для вынесения прогноза «безопасно/вредоносно». Результаты оформляются в структурированный HTML-отчёт по безопасности.

Проект также включает лёгкий слой песочницы, построенный на пространствах имён Linux и используемый для изоляции целевого процесса во время трассировки.


Архитектура

Архитектура SysTrace

Основные возможности

Трассировка системных вызовов

  • Основана на Linux ptrace для подключения к целевым процессам и их инспекции, включая аргументы системных вызовов и регистры.
  • Отслеживает широкий набор системных вызовов по четырём поведенческим категориям:
    • Файловые операции — open/openat, read, close, chmod
    • Активность процессов — execve, fork, clone, kill
    • Сетевая активность — socket, connect
    • Активность памяти — mmap, mprotect

Обнаружение на основе правил

Эвристические правила помечают подозрительные поведенческие паттерны, в том числе:

  • Доступ к чувствительным файлам
  • Чрезмерное количество файловых операций
  • Чрезмерное создание процессов
  • Подозрительное поведение памяти (например, необычное использование mmap/mprotect)
  • Подозрительная сетевая активность

Лёгкая песочница / слой изоляции

Слой изоляции, построенный непосредственно на примитивах пространств имён Linux:

  • clone() с CLONE_NEWUSER, CLONE_NEWPID, CLONE_NEWNS
  • Настройка пространства имён монтирования через MS_PRIVATE
  • Переключение корневой файловой системы с помощью pivot_root и umount2
  • Минимальная корневая файловая система на базе tmpfs, создаваемая во время выполнения в /tmp/systrace-root

Это обеспечивает базовую изоляцию процессов, PID и точек монтирования для трассируемой цели — это не замена контейнерной среды выполнения.

Классификация с помощью машинного обучения

  • Векторы признаков формируются из статистики системных вызовов и включают поля: file, process, network, fork, connect, execve, read, open, close, memory, chmod, kill, label
  • Классификатор RandomForestClassifier (scikit-learn) обучается на этих векторах, чтобы различать безопасное и вредоносное поведение.
  • Обученная модель сериализуется в ml/syscall_model.pkl.
  • DATASET

Формирование отчётов

  • Структурированный вывод в виде features.json (исходные данные признаков) и report.html (отчёт для чтения человеком).
  • HTML-отчёт содержит сводку отслеживаемой активности, сработавшие правила/события безопасности, статистику системных вызовов и итоговую классификацию ML.

Пример вектора признаков

root@kitploit:~
[file, process, network, fork, connect, execve, read, open, close, memory, chmod, kill]
[15,   2,       0,       0,    0,       2,      1,    10,   4,     14,     6,     0]

Технологии


Структура проекта

root@kitploit:~
linux-syscall-monitor/
├── include/
├── src/
│   ├── tracer.c            # Core ptrace-based syscall tracer
│   ├── syscall.c           # Syscall interception/handling
│   ├── namespace.c         # Namespace/clone setup
│   ├── set_root.c          # pivot_root / minimal rootfs setup
│   ├── file_monitor.c      # File operation monitoring
│   ├── process_monitor.c   # Process creation/execution monitoring
│   ├── network_monitor.c   # Network activity monitoring
│   ├── memory_monitor.c    # Memory-related activity monitoring
│   ├── fd_tables.c         # File descriptor tracking
│   ├── rules.c             # Rule-based detection logic
│   ├── alert.c             # Security alert generation
│   ├── stat.c               # Syscall statistics aggregation
│   └── dataset.c           # Feature vector / dataset generation
├── ml/
│   ├── train.py             # Random Forest training script
│   ├── predict.py           # Classification / inference script
│   └── syscall_model.pkl    # Trained model
├── dashboard/                # Report/dashboard assets
├── tests/
├── Makefile
├── dataset.csv
└── README.md

Ограничения

  • Песочница — это учебный, лёгкий слой изоляции — она не является промышленной средой выполнения контейнеров и не представляет собой укреплённую песочницу для анализа вредоносных программ.
  • Изоляция пространств имён охватывает только пространства имён пользователя, PID и монтирования; она не реализует изоляцию сетевых пространств имён, фильтрацию seccomp или ограничения ресурсов cgroup.
  • Трассировка на основе ptrace создаёт заметные накладные расходы и может быть обнаружена/обойдена достаточно сложными вредоносными программами.
  • Классификатор ML обучается на ограниченном наборе признаков (агрегированные счётчики системных вызовов) и наборе данных; точность классификации зависит от качества и разнообразия обучающих данных.
  • Не предназначен для трассировки недоверенных или по-настоящему вредоносных двоичных файлов вне надлежащим образом изолированной исследовательской среды.

Отказ от ответственности по безопасности

SysTrace — это исследовательский и учебный проект, изучающий внутреннее устройство Linux, трассировку системных вызовов, изоляцию на основе пространств имён и поведенческое обнаружение вредоносных программ с помощью машинного обучения. Это не сертифицированный или готовый к промышленному использованию инструмент безопасности, и на него нельзя полагаться как на единственную защиту от вредоносного ПО. Используйте только в изолированных, контролируемых средах.


Назначение

Этот проект создан для изучения и демонстрации:

  • Внутреннего устройства Linux и трассировки системных вызовов с помощью ptrace
  • Мониторинга процессов, файлов, сети и памяти
  • Изоляции файловой системы с помощью пространств имён Linux (clone, pivot_root, пространств имён монтирования)
  • Проектирования архитектуры песочницы
  • Поведенческого анализа безопасности
  • Применения машинного обучения (Random Forest) к задачам классификации в кибербезопасности
Скачать инструмент
  • Ведёт отслеживание файловых дескрипторов, чтобы связывать открытые файловые дескрипторы с исходными именами файлов.
  • КатегорияСтек
    Базовый трассировщикC, Linux ptrace
    ИзоляцияLinux namespaces, clone, mount namespaces, pivot_root, tmpfs
    Машинное обучениеPython, scikit-learn, Random Forest
    Данные / выводJSON, HTML
    СборкаMake