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

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

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

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

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

Категории

Все категории
Loading categories
siper — Легковесный и быстрый межсетевой экран на основе XDP | Kitploit
Инструменты/GitHubGitHub/fksvs/siper
Оборонительные ИнструментыАудит конфигурацииСетевая безопасностьБезопасность облачных средОбнаружение ВторженийАнализ Журналов
GitHubfksvs/siper

siper

Легковесный и быстрый межсетевой экран на основе XDP

Репозиторий
7066 месяцев назадПроверено Kitploit

Популярное

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

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

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

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

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

Siper (Щит)

Siper — это высокопроизводительный межсетевой экран для IP-черных списков на основе XDP, написанный на Go и C (eBPF). Он позволяет отбрасывать вредоносный трафик на самом раннем этапе стека сети Linux — на уровне сетевого драйвера. Используя XDP (Express Data Path), Siper обрабатывает пакеты до того, как они попадут в тяжеловесную сетевую подсистему ядра, обеспечивая экстремальную производительность даже в условиях сильных DDoS-атак.

Возможности

  • Производительность на базе XDP: Фильтрация пакетов происходит на уровне драйвера NIC с помощью XDP_DROP, что приводит к значительно меньшей нагрузке на ЦП по сравнению с iptables или nftables.

  • LPM (Longest Prefix Match): Поддерживает блокировку на основе CIDR (например, 192.168.1.0/24) с использованием специализированных BPF-карт LPM Trie для эффективного поиска IP-диапазонов.

  • Постоянная конфигурация: Правилами управляют через локальный черный список на основе JSON, что упрощает аудит и версионирование заблокированных адресов.

  • Наблюдаемость в реальном времени: Встроенные метрики для отслеживания счетчиков пакетов и байтов как для отброшенного, так и для пропущенного трафика.

  • Минималистичная архитектура: Скомпилированный BPF-объект обрабатывает плоскость данных, а CLI на Go управляет плоскостью управления.

Архитектура

Siper работает по принципу разделения плоскости управления (пространство пользователя) и плоскости данных (пространство ядра).

Поток управления (пространство пользователя)

  1. Определение правил: Пользователь добавляет/удаляет CIDR через CLI. Они хранятся в файле blacklist.json.
  2. Загрузка: При выполнении siper run приложение Go анализирует JSON, компилирует/загружает объект eBPF и заполняет BPF-карту IP-префиксами.
  3. Мониторинг: CLI взаимодействует с ядром через системные вызовы BPF для выгрузки метрик и текущих состояний карт без прерывания трафика.

Поток пакетов (пространство ядра)

  1. Входящий трафик: Пакет прибывает на сетевой интерфейс.

  2. Поиск: Программа XDP перехватывает пакет и выполняет поиск в карте block_list.

  3. Вердикт:

    • Совпадение: Пакет немедленно отбрасывается (XDP_DROP).
    • Без совпадения: Пакет передается в стандартный сетевой стек Linux (XDP_PASS).

Установка и использование

Необходимые предварительные условия

  • Ядро Linux: 5.4 или новее (с поддержкой XDP).
  • Go: установлена версия 1.21+.
  • Clang/LLVM: Для компиляции программы eBPF на C в объектный файл .o.
  • Разрешения: Доступ root или возможности CAP_NET_ADMIN / CAP_BPF.

1.Сборка проекта

root@kitploit:~
make

Перейдите в каталог build/.

2.Управление черным списком

Добавляйте или удаляйте IP-диапазоны из локального конфигурационного файла:

root@kitploit:~
# Add a CIDR to the list
sudo ./siper add --cidr 1.2.3.0/24 --comment "Known botnet"

# Delete a rule
sudo ./siper del --cidr 1.2.3.0/24

3.Запуск межсетевого экрана

Прикрепите межсетевой экран к определенному сетевому интерфейсу:

root@kitploit:~
# Start the firewall
sudo ./siper run --iface eth0 --path ./blacklist.json

# Stop and detach the firewall
sudo ./siper stop --iface eth0

4.Мониторинг метрик и ключей

Просмотрите, что происходит внутри ядра:

root@kitploit:~
# See currently active keys in the BPF map
sudo ./siper dump-keys

# Monitor drop/pass statistics
sudo ./siper dump-metrics

Вклад в проект

Pull request'ы приветствуются. Для исправлений ошибок и небольших улучшений отправляйте pull request. Для больших изменений сначала откройте issue, чтобы обсудить, что вы хотели бы изменить.

Лицензия

Этот проект является свободным программным обеспечением; вы можете распространять и/или изменять его в соответствии с условиями лицензии GPLv3. См. файл LICENSE для подробностей.

Скачать инструмент