Εμφάνιση αναρτήσεων με ετικέτα χάκερ. Εμφάνιση όλων των αναρτήσεων
Εμφάνιση αναρτήσεων με ετικέτα χάκερ. Εμφάνιση όλων των αναρτήσεων

Κυριακή 13 Σεπτεμβρίου 2009

Βασικοί κανόνες του χάκινγκ

Η λέξη χάκινγκ στις μέρες μας πλέον είναι μία παρεξηγημένη έννοια.Πολλοί άνθρωποι πιστεύουν ότι χάκερ είναι μόνο αυτός που καταστρέφει ένα υπολογιστικό σύστημα και κλέβει δεδομένα.Άρα και το χάκινγκ είναι κάτι κακό.Η αλήθεια όμως δεν είναι ακριβώς αυτή.

Χάκερ μπορεί να είναι αυτός που είναι σε θέση να λύσει ένα πρόβλημα οποιαδήποτε μορφής.Ωστόσο υπάρχουν και κάποιοι άτυποι κανόνες που πρέπει να γνωρίζει κάποιος που θέλει να ασχοληθεί με το χάκινγκ.

  1. Δεν καταστρέφουμε ένα σύστημα σκόπιμα
  2. Δεν δίνουμε ποτέ το πραγματικό μας όνομα
  3. Δεν χακάρουμε ποτέ ένα σύστημα απευθείας
  4. Δεν μπλέκουμε ποτέ με τίποτα που δεν γνωρίζουμε όταν χακάρουμε έναν server για παράδειγμα
  5. Δεν μπλέκουμε με λογαριασμούς χρηστών
  6. Δεν ποστάρουμε σε φόρουμς και ιστοσελίδες αυτά που βρίσκουμε κατά το χάκινγκ
  7. Δημιουργούμε έναν λογαριασμό για τον εαυτό μας
  8. Παίρνουμε τα σημαντικά αρχεία του συστήματος
  9. Φτιάχνουμε την τρύπα από την οποία μπήκαμε
  10. Συνεχίζουμε να παρακολουθούμε το σύστημα για κάποιο διάστημα

Οι παραπάνω κάνονες είναι πράγματα που κάνει συνήθως ένας χάκερ και είναι σημαντικό να τα λάβουμε υπόψιν μας σε περίπτωση που θέλουμε να ακολουθήσουμε αυτόν τον δρόμο.

Οι ηθικοί κώδικες των χάκερ

Το 1984 ο Stephen Levy είχε γράψει ένα βιβλίο με τον τίτλο Hacker:Heroes of the Computer Revolution όπου ανέλυσε τα hacker ethics (κώδικες ηθικής των hackers).Από τότε έχουν περάσει πολλά χρόνια αλλά οι κώδικες ηθικής αυτοί έχουν παραμείνει και έχουν εξαπλώθει μέσω του Internet σε όλους αυτούς που θέλουν να γίνουν hackers.Ποιά είναι όμως τα κυριότερα hacker ethics?

Τα σημαντικότερα Hacker Ethics:

1)Η γνώση πρέπει να είναι ελεύθερη

2)Η πρόσβαση σε υπολογιστές και σε οτιδήποτε μπορεί να σε διδάξει κάτι σχετικά με τον τρόπο με τον οποίο λειτουργεί ο κόσμος πρέπει να είναι απεριόριστη και συνολική

3)Δυσπίστία σε όλες τις μορφές εξουσίας

4)Ένας χάκερ θα πρέπει να κρίνεται σύμφωνα με τις ικανότητες του στο hacking και όχι με κριτήρια την ηλικία του ή το πτυχίο του

5)Ένας χάκερ μπορεί να δημιουργήσει τέχνη και ομορφιά μέσω ενός υπολογιστή

6)Οι υπολογιστές μπορούν να αλλάξουν την ζωή προς το καλύτερο

Ωστόσο υπάρχουν και κάποια άλλα hacker ethics τα οποία είναι σημαντικά να τα γνωρίζει κάποιος,ειδικότερα οι νέοι επίδοξοι hackers.

1)Πάνω από όλα είναι η μη πρόκληση καταστροφής

Όπου είναι εφικτό δεν θα πρέπει ένας χάκερ να καταστρέφει ένα υπολογιστικό σύστημα ή δεδομένα.Το hacking είναι η έρευνα για γνώση.Δεν έχει καμία σχέση με την επιθυμία κάποιου για καταστροφή.

2)Προστασία της ιδιωτικότητας

Πρέπει να υπάρχει ένας διαχωρισμός της δημοσίας πληροφορίας που μπορεί να βρει κάποιος από την ιδιωτική.Δεν είναι σωστό να αναρτήσει κάποιος προσωπικές πληροφορίες για κάποιον άλλον στο Internet.Ένας χάκερ μπορεί να βρει πολλές πληροφορίες για ανθρώπους ή συστήματα αλλά πρέπει να ξέρει τι πρέπει να αναρτήσει και τι όχι.Η γραμμή αυτήν είναι πολύ λεπτή και είναι συνάρτηση των προσωπικών και πολιτικών πεποιθήσεων.

3)Υπέρβαση των περιορισμών

Το να λέει κάποιος σε έναν χάκερ ότι κάτι δεν μπορεί να γίνει είναι σαν να του λέει ότι πρέπει να προσπαθήσει να το κάνει οπωσδήποτε.

4)Όχι ίχνη από επιθέσεις

Δεν χρειάζεται κάποιος νέος χάκερ να λέει σε όλους για τις επιθέσεις του.Αυτό δεν έχει να κάνει μόνο για την προστασία του αλλά και γιατί θα βοηθήσει και άλλους χάκερ να μην χάσουν την πρόσβαση που έχουν αποκτήσει σε ένα σύστημα.

5)Διαμοιρασμός

Όταν μοιραζόμαστε την πληροφορία με άλλους ανθρώπους μεγαλώνει και η αξία της.Η πληροφορία που μπορεί να διαμοιράσουμε σε κάποιους ανθρώπους μπορεί να γίνει η βάση για την γνώση κάποιου άλλου.

6)Ενημέρωση στον διαχειριστή του συστήματος

Οι ανακαλύψεις που μπορεί να βρει κάποιος χάκερ (π.χ μία τρύπα σε ένα web server) μπορούν να συνεισφέρουν στην βελτίωση ενός συστήματος.

Η τεχνική του Footprinting

Όταν ένας χάκερ θέλει να επιτεθεί σε ένα δίκτυο μίας εταιρείας χρησιμοποιεί μία τεχνική η οποία λέγεται Footprinting για να βρει τις απαραίτητες πληροφορίες για το δίκτυο της.Αυτή η τεχνική θα τον βοηθήσει να ανακαλύψει πληροφορίες σχετικά με τα Domain Names της εταιρείας,τα network blocks της,τις access control lists της αλλά και τις υπηρεσίες TCP και UDP που τρέχουν στο δίκτυο της.

Τι είναι το Footprinting?

Το Footprinting είναι η τεχνική της συλλογής πληροφοριών σχετικά με τα υπολογιστικά συστήματα και τις οντότητες που ανήκουν.Πριν λοιπόν από μία επίθεση αυτήν η διαδικασία είναι απαραίτητη για την εύρεση όσο το δυνατόν περισσότερων πληροφοριών σχετικά με το δίκτυο της εταιρείας που είναι και ο στόχος.Πώς μπορεί όμως κάποιος να συλλέξει αυτές τις πληροφορίες?

Που συλλέγονται οι πληροφορίες?

Καταρχάς το web site της εταιρείας που είναι ο στόχος το δίκτυο της είναι μία καλή αρχή για κάποιον.Εκεί συνήθως θα βρει κάποιος χρήσιμες πληροφορίες όπως τηλέφωνα,ονόματα,διευθύνσεις email,τοποθεσίες και συνεργαζόμενες εταιρείες.Οι εταιρείες συνήθως δεν συνειδητοποιούν όταν αναρτούν στην ιστοσελίδα τους αυτές τις πληροφορίες ότι ουσιαστικά μπορούν να βοηθήσουν τους χάκερς να μαζέψουν τις απαραίτητες πληροφορίες για μία μελλοντική επίθεση.Επίσης στα σχόλια του κώδικα της HTML της ιστοσελίδας υπάρχουν σημαντικές πληροφορίες και είναι ένα ακόμα μέρος για συλλογή πληροφοριών.

Ακόμη οι μηχανές αναζήτησης παρέχουν επίσης στους επίδοξους χάκερς πληροφορίες σχετικά με νέα,άρθρα,ίσως θέματα ασφάλειας της εταιρείας και άλλα στοιχεία ειδικά αν πρόκειται για μία εταιρεία που είναι βασισμένη στο Internet.

Καθορισμός των network blocks και των domain names

Το αμέσως επόμενο βήμα είναι να βρει ο χάκερ το εύρος των IP διευθύνσεων που είναι κατοχυρωμένες στην εταιρεία καθώς και τα Domain Names της.Αυτήν η διαδικασία ονομάζεται network enumeration (απαρίθμηση δικτύου).Οι χάκερ χρησιμοποιούν το whois query σε βάσεις δεδομένων ιστοσελίδων που έχουν κατοχυρωμένα όλα τα register domains όπως η ripe.net για την ευρώπη.

Παράδειγμα 1:

Εύρεση των Network Blocks

Εύρεση των Network Blocks

Μετά από την εκτέλεση του whois query οι χάκερς προσπαθούν να εντοπίσουν τα εσωτερικά hostnames και τις IP διευθύνσεις.Αυτό είναι ακόμα πιο εύκολο για τους χάκερς σε περίπτωση που η εταιρεία δεν χρησιμοποιεί έναν μηχανισμό για τα DNS που θα διαχωρίσει τα εξωτερικά DNS από τα εσωτερικά.Η εντολή που χρησιμοποιούν για αυτήν την δουλειά είναι η nslookup.Επιπρόσθετα η χρήση της εντολής traceroute θα βοηθήσει τους hackers να αρχίσουν να βρίσκουν τις τοποθεσίες στις οποίες βρίσκονται οι συσκευές (routers,switches κτλ).

Παράδειγμα 2:

Εύρεση Domain

Εύρεση Domain

Παράδειγμα 3:

4

Μέχρι στιγμής έχουμε δει ότι με τις κατάλληλες εντολές και αναζητήσεις στο Internet ένας εισβολέας μπορεί να ανακαλύψει πολλές πληροφορίες που θα τον βοηθήσουν να φτιάξει το προφίλ της εταιρείας που θέλει να επιτεθεί.Θα έχει λοιπόν τηλέφωνα,email,τοποθεσίες,ονόματα ίσως,τα IP’s που χρησιμοποιεί η εταιρεία και τα DNS της.

Η τεχνική του Footprinting χρησιμοποιείται από όλους τους χάκερς και είναι η πρώτη φάση στην μεθοδολογία μίας επίθεσης.

Πώς κλείνουμε τα ανοιχτά ports

Πλέον είμαστε σε μία εποχή που η λέξη ασφάλεια πρέπει να ανησυχεί όχι μόνο τους διαχειριστές δικτύων εταιρειών αλλά και τον κάθε μέσο χρήστη που συνδέεται στο Internet.Οι απειλές που μπορεί να δεχτεί κάποιος είναι αρκετές από virus,trojans,worms μέχρι και επιθέσεις από κακόβουλους χάκερς.Είναι σημαντικό λοιπόν να ξέρει ο κάθε χρήστης κάποια πράγματα που μπορούν να τον βοηθήσουν να ασφαλίσει το σύστημα του.

Πώς ανοίγει ένα port?

Όταν χρησιμοποιούμε κάποιο πρόγραμμα αυτό μας ανοίγει και κάποιο port στον υπολογιστή μας.Για παράδειγμα αν χρησιμοποιούμε τον Internet Explorer τότε η 80 θύρα θα ανοίξει στο σύστημα μας.Ακολούθως αν χρησιμοποιήσουμε κάποιο FTP (File Transfer Protocol) πρόγραμμα θα ανοίξει η θύρα 21.Τα ανοικτά ports λοιπόν που έχουμε στο σύστημα μας είναι σίγουρα μία απειλή ακόμα.Όσα περισσότερα ανοιχτά ports έχουμε τόσο περισσότερο εκτεθημένο είναι το σύστημα μας.Οπότε θα πρέπει να κάνουμε χρήση μόνο προγράμματα που τα θεωρούμε απαραίτητα να τρέχουν για να μειώσουμε τον κίνδυνο.

Πώς βλέπουμε τα ανοικτά ports που έχουμε?

Η απάντηση είναι απλή.Μπαίνουμε στην διαχείριση εντολών και απλά πληκτρολογούμε netstat -a και θα μας δώσει όλες τις ενεργές συνδέσεις καθώς και την κατάσταση τους.Επίσης θα μπορέσουμε να δούμε και αν είμαστε συνδεδεμένοι σε κάποιο απομακρυσμένο host και έτσι θα μπορέσουμε να καταλάβουμε αν έχουμε κάποιο πιθανό backdoor σε περίπτωση που δεν τρέχουμε κάποιο πρόγραμμα που να το γνωρίζουμε και να έχει συνδεθεί εκεί.

Παράδειγμα 1:

Ενεργές συνδέσεις

Ενεργές συνδέσεις

Για να αναλύσουμε λίγο και τι βλέπουμε παίρνουμε ως παράδειγμα την τελευταία σειρά.Βλέπουμε καταρχάς την εσωτερική IP του δικτύου μας που είναι η 192.168.1.3 ότι χρησιμοποιεί το port 20313 για να συνδεθεί σε μία απομακρυσμένη διεύθυνση και στο port 49387.Η κατάσταση αν είναι established σηματοδοτεί ότι υπάρχει σύνδεση μεταξύ των δύο host.

Πώς κλείνουμε ένα port που είναι ανοικτό?

Όπως αναφέραμε και παραπάνω αν χρησιμοποιούμε κάποιο πρόγραμμα αυτό το πρόγραμμα ανοίγει και κάποιο port προσωρινά στον υπολογιστή μας για να εκτελέσει κάποιες διεργασίες.Όταν κλείσουμε την εφαρμογή θα κλείσει και το port που χρησιμοποιεί αυτόματα.Στην προκειμένη περίπτωση έχουμε το port 20313 που είναι ανοιχτό στο σύστημα μας.

Για να το κλείσουμε θα πρέπει να βρούμε την εφαρμογή που το χρησιμοποιεί.Για να το βρούμε αυτό αρκεί να δώσουμε στην διαχείριση εντολών την εντολή netstat -o η οποία και θα μας δώσει επίσης τα ανοιχτά ports αλλά και το PID (Process Identifier) της εφαρμογής.Το PID δεν είναι τίποτα άλλο από έναν αριθμό που δίνει το λειτουργικό μας σύστημα σε μία διεργασία για να την αναγνωρίσει μοναδικά.

Παράδειγμα 2:

Εύρεση του PID

Εύρεση του PID

Έχοντας λοιπόν το PID το επόμενο μας βήμα είναι να ανοίξουμε την διαχείριση εργασιών των Windows (Ctrl+Alt+Del),να πάμε στις διεργασίες και εκεί από το μενού να πάμε Προβολή—>Επιλογή Στηλών και στο νέο παράθυρο που θα μας εμφανίσει να τσεκάρουμε το κουτάκι με την ονομασία PID και κάνουμε κλικ στην επιλογή OK.

Παράδειγμα 3:

PID

Πλέον θα δούμε ότι στις διεργασίες της διαχείρισης εργασιών θα εμφανίζεται και το PID της διεργασίας.Βρίσκουμε λοιπόν στις διεργασίες το PID που αντιστοιχεί σε αυτό που είχαμε βρει όταν ψάχναμε το PID της εφαρμογής που είχε ανοιχτό το port που θέλαμε να κλείσουμε (εικόνα παραδείγματος 2).Τερματίζουμε την διεργασία και έτσι θα κλείσουμε και το port που χρησιμοποιεί.

Άλλοι τρόποι για κλείσιμο ports

Εκτός βέβαια από αυτόν τον τρόπο υπάρχει και η λύση των Firewall για να χρησιμοποιήσουμε ένα port.Πλέον τα περισσότερα router υποστηρίζουν και hardware firewall κάτι που σημαίνει ότι όλες οι θύρες (ports) είναι φιλτραρισμένες.Αυτός είναι και ο λόγος που κάνουμε port forward στο router μας όταν θέλουμε να χρησιμοποιήσουμε κάποια εφαρμογή όπως μtorrent για παράδειγμα.Δηλαδή να ανοίξουμε κάποιο port που θέλουμε ή χρειαζόμαστε.

Επιπρόσθετα μπορούμε να χρησιμοποιήσουμε και κάποιο software firewall (Zone Alarm, Outpost κτλ) για να κλείσουμε τα ανοικτά ports και να έχουμε κάποια προστασία και κάποιο έλεγχο σε περίπτωση που βρεθούμε κάτω από κάποια επίθεση.

Επιλέγοντας δυνατούς κωδικούς

Πολλοί χρήστες επειδή θεωρούν ότι θα είναι δύσκολο να θυμηθούν τους κωδικούς τους επιλέγουν κάποιες εύκολες λέξεις,ημερομηνίες ή ακόμα χειρότερα και το ίδιο το όνομα τους!

Κάτι επίσης πολύ συνηθισμένο είναι η επιλογή του ίδιου κωδικού για πολλούς λογαριασμούς (accounts).Αν όμως κάποιος χάκερ ανακαλύψει τον κωδικό τότε μπορεί πολύ εύκολα να αποκτήσει πρόσβαση και σε όσους λογαριασμούς έχουν το ίδιο password.

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

Ένας άλλος παράγοντας για να είναι ένας κωδικός δυνατός είναι και η χρησιμοποίηση διαφορετικών χαρακτήρων.Βάζοντας στον κωδικό μας χαρακτήρες όπως %,#,$ κτλ κάνουμε τον κωδικό μας αρκετά δυνατό.Ακόμα και αν κάποιος χρησιμοποιήσει κάποια τεχνική για να σπάσει τον κωδικό μας όπως dictionary ή brute force έχοντας τέτοιου είδους χαρακτήρες στον κωδικό μας θα είναι πάρα πολύ δύσκολο,σχεδόν αδύνατο να σπάσει ο κωδικός μας.

Ένα άλλο ζήτημα είναι η χρησιμοποιήση μικρών ή κεφαλαίων γραμμάτων στον κωδικό.Για παράδειγμα ο κωδικός test είναι διαφορετικός από τον κωδικό tESt.Και σίγουρα κάποιος που θα προσπαθήσει να σπάσει αυτό το password θα είναι δύσκολο να σκεφτεί και τον παράγοντα πεζών η κεφαλαιών γραμμάτων.

Επιπρόσθετα όταν έχουμε να επιλέξουμε την φράση κλειδί για τον κωδικό μας θα πρέπει να αποφεύγουμε να βάζουμε εύκολες λέξεις.Ένας τρόπος είναι η χρησιμοποιήση λέξεων που θα περιέχουν και αριθμούς.Για παράδειγμα ο κωδικός elite μπορεί να γίνει l33t.Με αυτήν την μέθοδο μπορούμε να έχουμε και κάποια εύκολη λέξη σαν φράση κλειδί που να την θυμόμαστε αλλά και να είναι και δύσκολη και για τον οποιονδήποτε θελήσει να την σπάσει.

Τέλος αν δυσκολεύεστε να βρείτε ένα καλό password μόνοι σας υπάρχουν πολλά διαθέσιμα password generators στο Internet για αυτήν την δουλειά.Ένα αρκετά καλό είναι αυτό που θα βρείτε στην παρακάτω διεύθυνση:

http://www.pctools.com/guides/password/

Η συγκεκριμένη σελίδα σας δίνει την δυνατότητα να επιλέξετε το μήκος του κωδικού που θέλετε να παράγει,τι χαρακτήρες θα θέλατε να έχει και επίσης μπορείτε να δημιουργήσετε έως και 50 κωδικούς σε μία φορά για να επιλέξετε τον καταλληλότερο για εσάς.

Ακολουθώντας τις παραπάνω μεθόδους μπορούμε να έχουμε δυνατότερους κωδικούς και να ελαχιστοποιήσουμε την πιθανότητα κάποιος να βρει τους κωδικούς μας.