Per arginare un attacco DDoS è necessario, prima di tutto, individuare quali sono gli IP pubblici da cui proviene. In secondo luogo, occorre capire se il sito vittima basa il proprio "business" esclusivamente su visite italiane. In questo caso, per realizzare delle opportune ACL in modo da filtrare il traffico in ingresso, si deve capire quali sono i netblock stranieri da interdire. Per fare ciò ho realizzato un piccolo script bash che legge gli IP da un file di testo (ricavati, ad esempio, analizzando i log del Firewall o del Web server) e ne individua il relativo netblock (e la nazionalità).
Ecco lo script:
#!/bin/bash
touch ipinfo
touch target
while read line
do
whois -F $line >> ipinfo
done < tlog
while read line
do
locin=`echo $line | grep "*in"`
loccy=`echo $line | grep "*cy"`
if [[ -n "$locin" || -n "$loccy" ]]; then
echo "$locin$loccy" >> target
fi
done < ipinfo
rm ipinfo
exit 0;
Ovviamente è ancora ad una versione alpha (0.1). Appena avrò tempo provvoderò ad aggiungere il calcolo automatico delle netmask e la creazione automatizzata della relative ACL Cisco (con un minimo di interattività).
Alla prossima.