Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
chackd — Demone per randomizzare tcp_challenge_ack_limit per prevenire attacchi side-channel CVE-2016-5696 | Kitploit
Strumenti/GitHubGitHub/bplinux/chackd
Strumenti DifensiviAnalisi delle VulnerabilitàAudit di ConfigurazioneSicurezza di ReteRilevamento di Anomalie
GitHubbplinux/chackd

chackd

Demone per randomizzare tcp_challenge_ack_limit per prevenire attacchi side-channel CVE-2016-5696

Vedi Repository
249 anni faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

chackd

chackd è un demone che randomizza ogni secondo il parametro del kernel tcp_challenge_ack_limit per prevenire attacchi side-channel

Introduzione

Un attacco side-channel presentato di recente ha attirato una forte attenzione della comunità [1]. Per molti server o dispositivi smartphone questo attacco è considerato pericoloso per le connessioni ipv4. Non c'è dubbio che il kernel correggerà questo problema nelle prossime versioni. Tuttavia, alcuni amministratori potrebbero non aggiornare il kernel per motivi specifici o semplicemente per pigrizia.

Regolare il parametro a un valore molto alto [2] funzionerà bene. D'altra parte, per applicazioni server potrebbe comportare una quantità di traffico non necessaria. Per prevenire questo ho scritto il programma chackd. È in grado di essere parametrizzato per raggiungere la soluzione presentata in [1].

Il demone chackd fa questo lavoro molto bene e lo mantiene semplice. Un mio precedente concetto prevedeva un modulo kernel caricabile, ma l'ho scartato perché esiste una potente interfaccia tra spazio utente e spazio kernel chiamata proc vfs. Con i file proc siamo in grado di fare il lavoro con un semplice demone.

Questo è il mio primo progetto open-source con un bel vantaggio per gli amministratori che vogliono proteggersi dagli attacchi challenge_ack_limit e non sono in grado di aggiornare il proprio kernel. Basta compilarlo ed eseguirlo sul proprio server.

Ho bisogno dell'aiuto della comunità per rendere questo progetto "standard di comunità".

File

  1. Makefile - Makefile
  2. global.h - Gestisce le opzioni del compilatore e definisce le variabili globali
  3. main.c - Funzione principale e punto di ingresso nel demone chackd
  4. init_daemon.h - Header di interfaccia per init_daemon.c
  5. init_daemon.c - Inizializzazione del demone, serve solo a rendere chackd un processo demone
  6. start_daemon.h - Header di interfaccia per start_daemon.c
  7. start_daemon.c - Funzionalità principale con generatore casuale e gestione dei file proc
  8. stop_daemon.h - Header di interfaccia per stop_daemon.c
  9. stop_daemon.c - Contiene il gestore di segnale per SIGUSR1, usato per fermare il demone
  10. test.sh - Verifica semplice del parametro corrente del kernel per mostrare che il demone funziona
  11. chackd.script.h - Script di avvio/arresto del demone

TODO

Cerca i TODO all'interno dei file sorgente per alcune cose su cui vorrei lavorare. Sentiti libero di creare branch come preferisci. Vorrei imparare molto da questo progetto.

Makefile - Il mio desiderio per il Makefile è renderlo una sorta di standard con installazione, query sulla versione del kernel e così via.

start_daemon - Qualsiasi parte di codice che potrebbe causare il crash del demone deve essere corretta

stop_daemon - Qualsiasi parte di codice che non sia una sorta di standard deve essere corretta

init_daemon - Qualsiasi parte di codice che potrebbe causare il crash del demone deve essere corretta

main - La mia intenzione è che i parametri principali siano forniti come semplici interi, attualmente funziona bene. Tuttavia forse esiste un modo molto migliore di gestirli?

Output

Intervallo di 1 secondo di "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

Autore

Bastian Pukallus, si prega di inviare una mail a [email protected]

Fonti

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

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

Scarica lo strumento