SPAM CS682 Advanced Security Topics Instructor: Elias Athanasopoulos Ιάκωβος Ανδρέου
SPAM Τι είναι το spam Μαζική αποστολή ηλεκτρονικών μηνυμάτων, εξωτερικών συνδέσμων ή άλλων, σε μια προσπάθεια προώθησης προϊόντων ή ιδεών. Λόγω του χαμηλού κόστους αποστολής, η αποστολή γίνεται σε μεγάλο αριθμό αποδεκτών. Πρόκειται για παγκόσμιο φαινόμενο και υπάρχουν εκτιμήσεις για επτά τρισεκατομμύρια ανεπιθύμητα μηνύματα spam (2011) Σε αρκετές χώρες η αποστολή spam θεωρείται ποινικό αδίκημα. Τρόπος διάδοσης: Η διάδοση του spam γίνεται αυτόματα μέσω των botnets, δικτύων από μολυσμένους υπολογιστές αθώων χρηστών που ελέγχονται από τους spammer. Botnets είναι ένας αριθμός μολυσμένων υπολογιστών συνδεδεμένων στο διαδίκτυο, εκ των οποίων ο κάθε ένας εκτελεί ένα ή περισσότερα tasks χωρίς την άδεια ή την γνώση του χρήστη. Paper 1: Spamalytics: An Empirical Analysis of Spam Marketing Conversion (2008) Πρόβλημα: Οι ερευνητές σε αυτό το άρθρο είχαν ως δεδομένο ότι η αποστολή spam είναι κερδοφόρα αλλά ήθελαν να απαντήσουν κάποια ερωτήματα όπως: πόσα, πόσο συχνά, πόσο στοιχίζει; Οι 3 βασικές παράμετροι με τις οποίες ασχολήθηκαν είναι: Κόστος αποστολής ενός spam conversion rate (πιθανότητα ένα e-mail που στάλθηκε να οδηγήσει σε αγορά) Κέρδος ανά πώληση Λόγω των παράνομων δραστηριοτήτων των spammers, δεν υπάρχουν στοιχεία όσο αφορά τις οικονομικές δραστηριότητες τους, και έτσι δεν είχαν καμία καλά τεκμηριωμένη μέτρηση του spam conversion rate. Συνεπώς αποφάσισαν ότι ο καλύτερος τρόπος για να μετρήσεις το spam είναι να γίνεις spammer. Γενική διαδικασία: Για να δουν αν οι ενέργειες των spammers είναι κερδοφόρες ή όχι δημιούργησαν δικές τους e- commerce ιστοσελίδες, τις διαφήμισαν μέσω spam με την χρήση ενός υφιστάμενου spamming botnet (Storm) και καταγράψαν τις πωλήσεις. Ασχολήθηκαν με 3 spam campaigns οι οποίες περιλαμβάναν 469 εκατομμύρια emails και ήθελαν συγκεκριμένα να δουν: Πόσα spam emails στάλθηκαν με επιτυχία, Πόσα φιλτραρίστηκαν από δημοφιλής anti-spam solutions, Πόσοι χρήστες μπήκαν στο διαφημιζόμενο site (response rate) και πόσοι από αυτούς προχώρησαν σε αγορά ή infection (sale or infection ) (conversion rate). Storm Botnet: Χρησιμοποίησαν το Storm Botnet για να διαδίδουν spam. Το storm botnet είναι ένα peer-to-peer botnet, και αποτελείται από ένα σύνολο μολυσμένων υπολογιστών οι οποίοι έχουν μολυνθεί από ένα trojan horse που διαδόθηκε μέσω e-mail spam. Ήταν δυνατό να εκτελέσει περισσότερες εντολές το δευτερόλεπτο από top supercomputers. Διαδίδεται μέσω spam, καθοδηγώντας τους παραλήπτες να κάνουν download ένα executable/malware από μία ιστοσελίδα.
Ιεραρχία Storm Υπάρχουν 3 επίπεδα στην ιεραρχία του Storm botnet, όπως φαίνεται στο παρακάτω σχήμα: Worker Bots: Μολυσμένοι Hosts που αιτούνται spam tasks μέσω των proxies για εκτέλεση. Proxy Bots: Λειτουργούν ως μεσολαβητές μεταξύ των Worker Bots και των Master bots. Δηλαδή μεταβιβάζουν τα tasks που αναθέτουν οι Master Servers στους Workers. Master Servers: Στέλνουν εντολές στους worker bots για να εκτελέσουν και συνήθως ελέγχονται από τους Βot masters. Όταν το Storm μολύνει έναν host, ελέγχει αν μπορεί να συνδεθούν άλλοι host σε αυτόν. Αν ναι τότε ο host γίνεται proxy, αν όχι γίνεται worker. Διαδικασία Διάδοσης spam μέσω Storm Βήμα 1: Ο worker βρίσκει ένα proxy και στέλνει ένα request για tasks στον αντίστοιχο master server. Βήμα 2: Ο master server θα απαντήσει με ένα φόρτο εργασίας για τον worker. Αυτός ο φόρτος εργασίας περιλαμβάνει ένα spam template, μια λίστα από e-mail addresses που πρέπει να αποσταλθεί το spam, και ένα set από spam URLs. Βήμα 3: Μόλις λάβει το φόρτο εργασίας που πρέπει να ακολουθήσει ο worker, αποστέλλει τα spam e-mails στα addresses που του έχουν ανατεθεί. Βήμα 4: Με την ολοκλήρωση του φόρτου εργασίας ο worker στέλνει ένα report αν έγινε επιτυχής ή όχι η αποστολή στον proxy, ο οποίος τις μεταβιβάζει στον master server.
Μεθοδολογία Η μεθοδολογία που χρησιμοποιήθηκε ονομάζεται botnet infiltration. Botnet infiltration είναι ένας τρόπος να μπεις στο command and control (C&C) channel του botnet και να παρακολουθήσεις τις εντολές που δίνουν οι bot masters στους proxy hosts, και να τις τροποποιήσεις. Εφόσον το Storm μολύνει hosts τυχαία οι συγγραφείς κατάφεραν να μολύνουν υπολογιστές τους κατά παραγγελία και να δημιουργήσουν proxy bots υπό τον έλεγχο τους. Στην συνέχεια κατάφεραν να αποτρέψουν άλλες ανεπιθύμητες λειτουργίες των bots όπως DDOS attacks και με την χρήση ενός re-writer να αλλοιώνουν τα spam templates που αποστέλλονται από τους master servers, κάνοντας τους worker bots να αντικαταστήσουν τα spam links με URLs ιστοσελίδων δημιουργημένες από τους συγγραφείς.
Measuring click-through and conversion Advertising a pharmacy site: Δημιουργήσαν web sites που αντικατοπτρίζουν τη Storm original sites s user interface, αλλά όταν ένας χρήστης κάνει κλικ στο "Checkout" επιστρέφουν ένα μήνυμα σφάλματος (404 error message). Προσθέτουν ένα αναγνωριστικό στο τέλος κάθε διεύθυνσης URL, το οποίο επιτρέπει να συνδέουν ξεκάθαρα μεμονωμένα μηνύματα spam με επακόλουθες προσβάσεις στο site. Υποθέτουν ότι μια προσπάθεια αγοράς είναι ένα conversion A self-propagation campaign: Η καμπάνια προσελκύει τους χρήστες να κατεβάσουν το Storm malware μέσω εξαπάτησης. Αντικαταστήσαν το link στο Storm malware με ένα benign εκτελέσιμο αρχείο. Αν εκτελεστεί, το εκτελέσιμο είναι σχεδιασμένο να εκτελεί ένα απλό HTTP POST με ένα harmless payload ("data = 1") σε ένα server υπό τον έλεγχό τους και στη συνέχεια γίνεται exit. Όλες οι προσβάσεις στο site καταγράφονται και έτσι προσδιορίζουν πότε έχει γίνει λήψη του binary. Αποτελέσματα Συμπεράσματα Μετά από 26 μέρες πειράματος, από τα 350 εκατομμύρια spam e-mail που στάλθηκαν μόνο 28 οδήγησαν σε μια πώληση, λόγω των τεχνικών spam filtering που χρησιμοποιούν οι παροχείς υπηρεσιών Internet και ηλεκτρονικού ταχυδρομείου. Ένα conversion rate που υπολογίζεται να είναι πολύ μικρότερο από 0.0001%. Ωστόσο ένα πολύ χαμηλό conversion rate δεν σημαίνει πως δεν είναι κερδοφόρο προς τους spammers. Η κάθε πώληση ήταν για προϊόντα περίπου 100 ευρώ το κάθε ένα. Έτσι, υπήρξε περίπου κέρδος 2,731 δολάρια όσο το πείραμα έτρεχε. Ωστόσο, το πείραμα αντικατόπτριζε μόνο ένα μικρό κλάσμα ολόκληρου του Storm network, που υπολογίζεται να είναι γύρω στο 1.5%. Έτσι, υπολογίζεται πως για την φαρμακευτική ιστοσελίδα υπάρχει περίπου κέρδος 9000 δολαρίων καθημερινώς, άρα περίπου 3.5 εκατομμύρια κέρδος ετησίως. Paper 2: @spam: The Underground on 140 Characters or Less (2010) Πρόβλημα: Αυτό το paper ασχολείται με το spam στο twitter. Το twitter έχει πάνω από 106 εκατομμύρια χρήστες οι οποίοι κάνουν post πάνω από ένα δισεκατομμύριο φορές τον μήνα. Παρά την αύξηση του όγκου ανεπιθύμητων μηνυμάτων, το Twitter δεν διαθέτει σήμερα μηχανισμό φιλτραρίσματος για την αποτροπή του αποκλεισμού του spam, εξαιρουμένου των malware που μπλοκάρονται χρησιμοποιώντας το Google s Safebrowsing API. Το Twitter έχει αναπτύξει ένα χαλαρό σύνολο ευρετικών για να ποσοτικοποιήσει τη δραστηριότητα του spam, όπως η υπερβολική δημιουργία λογαριασμών ή τα friend requests. Anatomy of a Twitter spammer Ένα profile στο Twitter αποτελείται από 3 συστατικά: Tweets: πρόταση από τον χρήστη που εκφράζει μια άποψη. 140 χαρακτήρες ή λιγότερο, (περιορισμός στις πληροφορίες που μπορεί να ενσωματώσει ένας spammer σε ένα tweet) Followers: σύνολο των χρηστών που θα λάβουν το tweet όταν δημοσιευτεί από τον spammer. Η πρόκληση για τον spammer είναι να αποκτήσει ένα τεράστιο αριθμό ακολούθων, δίνοντας του την δυνατότητα να διαδίδει ένα spam tweet σε χιλιάδες χρήστες.
Friends: Οι φιλίες στο Twitter δεν είναι αμφίδρομες. Ένας χρήστης θα λαμβάνει tweets από έναν φίλο χωρίς να δείχνει τα δικά του tweets. Ένας spammer θα αιτηθεί φιλία από πολλούς χρήστες ελπίζοντας πως κάποιοι θα ανταποδώσουν το αίτημα, και να ανοίξει ένα κανάλι επικοινωνίας. Twitter features Mentions: Αναφορά σε ένα συγκεκριμένο χρήστη, χρησιμοποιώντας το @ σύμβολο μαζί με το όνομα του χρήστη. Επιτρέπει στους χρήστες να βρίσκουν tweets που αναφέρονται απευθείας σε αυτούς. π.χ. @justinbieber PLEASE FOLLOOWW MEEE!!! <3333 Retweets: όταν ένας χρήστης κάνει repost ή προώθηση ενός tweet κάποιου άλλου χρήστη. Βοηθά στην αύξηση του αριθμού των χρηστών που θα δουν ένα tweet. π.χ. Example: RT @JBieberCrewz: RT this if u <3 justin bieber Hashtags: Χρήση του συμβόλου # για κατηγοριοποίηση των tweets βάση ενός θέματος. π.χ. Example: Get free followers #FF #Follow Justin Bieber Data collection Η συλλογή δεδομένων από δύο ξεχωριστές κατηγορίες: τυχαία συλλογή tweets συλλογή tweets που περιλάμβαναν URLs. Για την αναγνώριση spam URLs στο Twitter χρησιμοποίησαν γνωστά URL blacklists: Google Safebrowser, URIBL, και Joewein. Τα spam URL χωρίστηκαν σε 3 κατηγορίες βάση των περιεχομένων τους: Malware: Αν το URL οδηγεί σε ιστοσελίδα που περιέχει κακόβουλο software. Phishing: Αν η ιστοσελίδα προσπαθεί να κλέψει τα στοιχεία του χρήστη. Scam: Αν η ιστοσελίδα διαφημίζει προϊόντα. Για την μέτρηση του Spam έγινε συλλογή 7 εκατομμυρίων tweets καθημερινά για ένα μήνα. Μετά από 1 μήνα, έγινε συλλογή 200 εκατομμυρίων tweets και 25 εκατομμυρίων URLs. Από τα 200 εκατομμύρια tweets, πέραν των 3 εκατομμυρίων αναγνωριστήκαν ως spam βάση του περιεχομένου τους. Από τα 25 εκατομμύρια URLs, τα 2 εκατομμύρια αναγνωριστήκαν ως spam από τα blacklists. Από αυτά τα blacklisted URLs, 5% ήταν malware και phishing, ενώ το υπόλοιπο 95% οδηγούσε τους χρήστες σε scam. Spam on tweeter - Spam Breakdown Με μόνο 140 χαρακτήρες στην διάθεση τους, οι spammers πρέπει να βρουν έξυπνους τρόπους για να διαδώσουν το spam. Οι spammers εκμεταλλευόμενοι τα features που προσφέρει το twitter όπως τα hashtags, retweets, και τα mentions ανέπτυξαν τις πιο κάτω τεχνικές για να διαδίδουν spam:
Callouts: Τα mentions χρησιμοποιούνται για την προσωποποίηση ενός μηνύματος, σε μια προσπάθεια αύξησης της πιθανότητας ένας χρήστης να επισκεφτεί ένα spam link. π.χ Win an itouch AND a $150 Apple gift card @victim! Retweets: Με την χρήση retweet των spam URL αυξάνεται ο αριθμός των χρηστών που θα δουν το URL. Υπάρχουν 4 κατηγορίες spam retweet: retweets που αγοράζονται από spammers (μία υπηρεσία, το retweet.it, κάνει retweet ένα μήνυμα 50 φορές σε 2,500 twitter followers για $5), spam account που κάνουν retweet άλλα spam, hijacked retweets, χρήστες κάνουν retweet spam άθελα τους. π.χ. RT @scammer: check out the Ipads there having a giveaway Tweet hijacking: Οι spammers μπορούν να παίρνουν tweets από γνωστά μέλη, και να τα αλλοιώνουν ενσωματώνοντας spam URLs σε αυτά και να τα κάνουν retweet. π.χ. Example: http://spam.com RT @barackobama A great battle is ahead of us Trend hijacking: Οι spammers με την χρήση hashtag, προσαρτούν δημοφιλή θέματα στα spam tweet τους. Όποιος χρήστης αναζητήσει το θέμα αυτό θα του εμφανίζονται επίσης τα spam URLs. π.χ. Example: Help donate to #haiti relief: http://spam.com Spam Accounts Χωρίς τους λογαριασμούς στο Twitter οι spammers δεν θα μπορούσαν να προωθήσουν τις spam ιστοσελίδες τους. Οι κατηγορίες λογαριασμών που προωθούν spam είναι δύο: Career spamming accounts: Λογαριασμοί που δημιουργούνται εξολοκλήρου για την προώθηση spam (automated bots). Compromised accounts: Λογαριασμοί χρηστών που έχουν κλαπεί μέσω phishing attacks ή από απλή κλοπή κωδικών. Η κατηγοριοποίηση των λογαριασμών αυτών έγινε μετά από μια σειρά τεστ που πέρασαν οι λογαριασμοί αυτοί: ανάλογα με τον αριθμό followers που έχει ένας λογαριασμός, αν έχει φωτογραφία, ή αν ακολουθεί ένα συγκεκριμένο pattern δημοσίευσης σε συγκεκριμένες χρονικές στιγμές. Μετά από πολλά τεστ και ένα δείγμα 43,000 spam account υπολογίστηκε πως 16% των spam account ήταν career spamming, 84% ήταν compromised accounts Οι spammers προτιμούν την μέθοδο κλοπής ενός υφιστάμενου λογαριασμού για προώθηση του spam, εκμεταλλευόμενοι την εμπιστευτικότητα που έχουν οι followers του κλεμμένου λογαριασμού σε αυτό. Spam Clickthrough Από 245,000 blacklisted URL links υπολογίστηκε πως: 97% δεν έλαβαν κανένα κλικ, 3% έλαβαν πάνω από 1.6 εκατομμύρια επισκέπτες. Για τον υπολογισμό του spam clickthrough, έγινε υπολογισμός του linear correlation (γραμμική συσχέτιση) μεταξύ των clicks, του αριθμού account που κάνουν tweet ένα link, και τον αριθμό των follower που μπορούν να δουν ένα spam link. Υπολογίστηκε πως 0.13% των spam tweet που δημοσιεύονται οδηγούν σε μια επίσκεψη στην ιστοσελίδα ποσοστό πολύ ψηλότερο από αυτό του spam e-mail. Για την μέτρηση του clickthrough χρησιμοποιήθηκε το bit.ly, το οποίο σου επιτρέπει να αναλύσεις διάφορες ιστοσελίδες στο web.
Συμπεράσματα: Το άρθρο παρουσιάζει την πρώτη έρευνα που αφορά τo spam στο Twitter, όπως το spam behavior, το clickthrough, spam accounts, και την αποδοτικότητα των blacklist για παρεμπόδιση των spam. Χρησιμοποιώντας πάνω από 400 εκατομμύρια μηνύματα και 25 εκατομμύρια URLs από δεδομένα του Twitter, υπολογίστηκε πως 8% των Twitter link οδηγούν σε spam. Αναλύοντας την συμπεριφορά των spam account, υπολογίστηκε πως 16% των spam accounts είναι automated bots, και το υπόλοιπο 84% είναι compromised accounts. Το clickthrough του spam υπολογίστηκε να φτάνει στο 0.13%, ένα ποσοστό πολύ ψηλότερο από αυτό του e-mail spam. Η καθυστέρηση των blacklist να παρεμποδίζουν spam URLs από το να δημοσιεύονται, δείχνει πως η χρήση τους στο Twitter δεν θα ήταν χρήσιμη για την μείωση του spam. Τέλος, το Twitter αποτελεί ένα ελκυστικό στόχο για τους spammers, εφόσον μπορούν να προωθούν spam μηνύματα σε χιλιάδες χρήστες χωρίς μεγάλη προσπάθεια.