Re: [Hackmeeting] attacco DDoS a Nodo50, suggerimenti sull'a…

Delete this message

Reply to this message
Author: Jaromil
Date:  
To: hackmeeting
Subject: Re: [Hackmeeting] attacco DDoS a Nodo50, suggerimenti sull'autodifesa
On Tue, 22 Oct 2013, clash wrote:

> Il 22/10/2013 10:38, snORky ha scritto:
>
> > puoi aggiungere anche fail2ban
> > pero' se non configuri bene tutti gli alert non serve a molto...
>
> pero' fail2ban lavora su ricerca di stringhe nei log non a livello di
> socket di rete, quindi è impotente, che ne so, contro i vari torhammer,


infatti e' quello che intendevo per minimale. aggiungo dunque il nostro
approccio che evita di analizzare logs ma anche iptables che diciamocelo
consuma cicli cpu pure quello

qui parsiamo netstat ogni $sleep contando le connessioni aperte, se sono
piu' di $connlimit le mettiamo in "blackhole" (che e' una roba built-in)

 while `sleep $sleep`; do
  conns=`netstat -ntau | tail -n+3 | awk '{print $5}' | cut -d: -f1 | sort | uniq -c`
  for c in ${(f)conns}; do
    ip=`print $c | awk '{print $2}'`
    nc=`print $c | awk '{print $1}'`
    { test "$ip" = "127.0.0.1" } && { continue }
    # altri ip in whitelist qui


    { test $nc -gt $connlimit } && {
     echo "$ip -> blackhole"
     echo "ip route add blackhole $ip"
        echo "$ip" >> blacklist-live.list
        ip route add blackhole $ip }
  done
 done


questa roba non ha memoria

ora a me piacerebbe fare la stessa cosa ma in C e con un sqlite che fa
dei controlli sulle connessioni piu' raffinati e soprattutto tiene
memoria tra un'avvio ed un altro.

ciao