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

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

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

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

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

Категории

Все категории
Loading categories
chackd — Демон для рандомизации tcp_challenge_ack_limit с целью предотвращения атак по сторонним каналам CVE-2016-5696 | Kitploit
Инструменты/GitHubGitHub/bplinux/chackd
Оборонительные ИнструментыАнализ уязвимостейАудит конфигурацииСетевая безопасностьОбнаружение Аномалий
GitHubbplinux/chackd

chackd

Демон для рандомизации tcp_challenge_ack_limit с целью предотвращения атак по сторонним каналам CVE-2016-5696

Репозиторий
249 лет назадЕщё не проверено

Популярное

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

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

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

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

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

chackd

chackd — это демон, который каждую секунду рандомизирует параметр ядра tcp_challenge_ack_limit для предотвращения атак по побочным каналам

Введение

Недавно представленная атака по побочному каналу привлекла большое внимание сообщества [1]. Для многих серверов и смартфонов эта атака считается опасной для IPv4-соединений. Нет сомнений, что ядро исправит эту проблему в следующих версиях. Однако некоторые администраторы могут не обновлять ядро по особым причинам или просто из-за лени.

Установка параметра на очень высокое значение [2] будет работать нормально. С другой стороны, для серверных приложений это может привести к лишнему объему трафика. Чтобы предотвратить это, я написал программу chackd. Она может быть настроена для реализации решения, представленного в [1].

Демон chack отлично справляется с этой задачей, оставаясь простым. Моя предыдущая концепция заключалась в поиске загружаемого модуля ядра, но я отказался от неё, потому что существует мощный интерфейс между пользовательским пространством и пространством ядра, называемый proc vfs. С помощью proc-файлов мы можем выполнить задачу простым демоном.

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

Мне нужна помощь сообщества, чтобы сделать этот проект «стандартом сообщества».

Файлы

  1. Makefile - Makefile
  2. global.h - Обрабатывает опции компилятора и определяет глобальные переменные
  3. main.c - главная функция и точка входа в chack-daemon
  4. init_daemon.h - заголовочный файл интерфейса для init_daemon.c
  5. init_daemon.c - инициализация демона, просто чтобы сделать chackd демоном
  6. start_daemon.h- заголовочный файл интерфейса для start_daemon.c
  7. start_daemon.c- основная функциональность с генератором случайных чисел и обработкой proc-файлов
  8. stop_daemon.h - заголовочный файл интерфейса для stop_daemon.c
  9. stop_daemon.c - содержит обработчик сигнала SIGUSR1, который используется для остановки демона
  10. test.sh - простая проверка текущего параметра ядра, чтобы показать, что демон работает
  11. chackd.script.h - скрипт запуска/остановки демона

TODOs

Пожалуйста, ищите TODO внутри исходных файлов для некоторых вещей, над которыми я хотел бы поработать. Не стесняйтесь создавать ответвления (форки) любым способом. Я хотел бы многому научиться из этого проекта.

Makefile - Моё пожелание для Makefile — сделать его своего рода стандартом с установкой, запросами версии ядра и так далее.

start_daemon - Любая часть кода, которая может привести к сбою демона, должна быть исправлена.

stop_daemon - Любая часть кода, которая не является стандартной, должна быть исправлена.

init_daemon - Любая часть кода, которая может привести к сбою демона, должна быть исправлена.

main - Я намеревался, чтобы основные параметры передавались в виде простых целых чисел, в настоящее время это работает хорошо. Однако, возможно, есть гораздо лучший способ обработки?

Вывод

Интервал в 1 секунду "sysctl net.ipv4.tcp_challenge_ack_limit"

net.ipv4.tcp_challenge_ack_limit = 222

net.ipv4.tcp_challenge_ack_limit = 227

net.ipv4.tcp_challenge_ack_limit = 191

net.ipv4.tcp_challenge_ack_limit = 178

net.ipv4.tcp_challenge_ack_limit = 229

net.ipv4.tcp_challenge_ack_limit = 167

net.ipv4.tcp_challenge_ack_limit = 189

net.ipv4.tcp_challenge_ack_limit = 229

Автор

Bastian Pukallus, пожалуйста, пишите на [email protected]

Источники

[1] http://www.cs.ucr.edu/~zhiyunq/pub/sec16_TCP_pure_offpath.pdf

[2] https://www.mail-archive.com/[email protected]/msg705042.html

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