Το προφίλ μας στο Google Plus
3

Ανελέητες επιθέσεις για καλύτερη άμυνα! [Μέρος 2/2]

Μπορεί οι επιθέσεις να αποκρούστηκαν αλλά ταυτόχρονα επιτεύχθηκε και ο στόχος τους. Σωστά διαβάσατε! Με το script που είδαμε στο άρθρο που αρχίζει από τη σελίδα 14, καταφέραμε να μπλοκάρουμε τις επιθέσεις και την ίδια στιγμή τις συνδέσεις των αθώων επισκεπτών :S Ευτυχώς, συνεχίζοντας την προσπάθειά μας καταφέραμε να εντοπίσουμε τα λάθη και να βρούμε μια ικανοποιητική λύση…

Ανελέητες επιθέσεις για καλύτερη άμυνα! [Μέρος 2/2]

Το σκριπτάκι μας για τη ρύθμιση του iptables έκρυβε ορισμένα λάθη. Για την ακρίβεια, έκρυβε την πρόχειρη και κατά κάποιον τρόπο επιφανειακή αντίληψη που είχαμε για τη λειτουργία του iptables. Ας δούμε όμως πώς ακριβώς συνεχίστηκαν οι δοκιμές μας. Όταν ολοκληρώσαμε το σκριπτάκι σπεύσαμε να το δοκιμάσουμε. Έτσι, το εκτελέσαμε για να “εγκαταστήσουμε” τους κανόνες μας στο iptables και ξεκινήσαμε μια επίθεση TCP flood με το LOIC. Στη συνέχεια προσπαθήσαμε να επισκεφθούμε το αντίγραφο του Parabing, που φιλοξενούσε το μηχάνημα–θύμα. Δεν ξέρουμε αν εσείς αντιληφθήκατε αμέσως το πρόβλημα, αλλά εμείς αιφνιδιαστήκαμε. Ο browser δεν κατάφερε να φορτώσει τη σελίδα ποτέ! Ας δούμε το γιατί, εξετάζοντας τις τελευταίες γραμμές του script:

[...]
14 # block UDP flood
15 iptables -A inspect -p udp -m udp --dport 80 \
            -m limit --limit 1/sec --limit-burst 8 -j ACCEPT
16 iptables -A inspect -p udp -j log_n_drop

17 # block TCP PSH,ACK flood
18 iptables -A inspect -p tcp -m tcp --tcp-flags ALL PSH,ACK \
            -m limit --limit 1/sec --limit-burst 8 -j ACCEPT
19 iptables -A inspect -p tcp -m tcp --tcp-flags ALL PSH,ACK \
            -j log_n_drop

Το LOIC έστειλε τόσα πολλά πακέτα σε τόσο σύντομο χρονικό διάστημα, ώστε το όριο που είχαμε θέσει στη γραμμή 18 ξεπεράστηκε αμέσως. Έτσι, το iptables προχώρησε στον επόμενο κανόνα (γραμμή 19). Ο επόμενος κανόνας όμως, απορρίπτει *όλα* τα πακέτα που έχουν ενεργοποιημένα τα flags PSH και ACK, από *οπουδήποτε* κι αν προέρχονται. Με άλλα λόγια, δεν απορρίπτονται μόνο τα πακέτα που στέλνει το LOIC. Αυτή η βάρβαρη συμπεριφορά τραυμάτιζε και τελικά εμπόδιζε όλες τις επικοινωνίες μέσω TCP. Με τους κανόνες που είχαμε ορίσει, λοιπόν, τα πακέτα του LOIC απορρίπτονταν αλλά έπαιρναν μαζί τους και εκείνα των αθώων χρηστών. Στην περίπτωση του UDP συνέβαινε ακριβώς το ίδιο: Όταν ξεπερνιόταν το όριο που είχαμε θέσει, το iptables απέρριπτε όλα τα πακέτα UDP ανεξαιρέτως.

Διαβάστε ολόκληρο το άρθρο στο deltaHacker 038 (τεύχος Νοεμβρίου 2014).

Το μηνιαίο περιοδικό deltaHacker είναι αποκλειστικά ψηφιακό (PDF). Ενημερωθείτε για τις διαθέσιμες συνδρομές και συμπληρώστε τη φόρμα παραγγελίας.

3 Responses to “Ανελέητες επιθέσεις για καλύτερη άμυνα! [Μέρος 2/2]”

  1. sc0rpion | 12/03/2015 at 01:29

    Πολυ ωραιο αρθρο και αυτο, θα ηθελα να δω κ αλλα σαν και αυτο στο μελλον.

    Μονο που αφου το script βασιζεται στις “ατελειες” που εχει το LOIC για τον εντοπισμο, αυτο δεν σημαινει οτι καταπολεμά μονο επιθεσεις απο το συγκεκριμένο εργαλείο?

    Πως θα μπορουσε καποιος να προστατευθει απο καποιο αλλο εργαλειο για Denial of Service που τα requests που κάνει δεν εχουν καποιο ιδιαίτερο χαρακτηριστικο που τα κάνει να ξεχωριζουν?

    • subZraw | 12/03/2015 at 06:16

      Ο μέσος χρήστης μπορεί να δοκιμάσει κάτι σαν το fail2ban (http://deltahacker.gr/?p=12063).

    • Spir@lEvolution | 12/03/2015 at 10:25

      Έτσι όπως τα λες είναι! Το script αντιμετωπίζει μόνο τις επιθέσεις του LOIC. Το ζουμί του κειμένου δεν εντοπίζεται στη χρησιμότητα του script καθεαυτού, αλλά στον τρόπο μελέτης και εργασίας, που είχαν σαν αποτέλεσμα την παραγωγή του script.

      Γενικές λύσεις που να δουλεύουν πάντα δεν υπάρχουν. Κάθε περίπτωση χρειάζεται ξεχωριστή μελέτη…

Leave a Reply

You must be logged in to post a comment.

Σύνδεση

Αρχείο δημοσιεύσεων