ΑρχικήinetEthiHak Contest 2016 - Η λύση!

EthiHak Contest 2016 – Η λύση!

ethihak-22-3-16-sent

Με αγωνία οι περισσότεροι αναγνώστες μας που συμμετείχαν στο EthiHak στα πλαίσια του Infocom Security 2016, αναμένουν τη λύση του διαγωνισμού! Η στιγμή αυτή ήρθε και με χαρά σας ανακοινώνουμε μια από τις προτεινόμενες λύσεις!

Το Σενάριο EthiHak:

  1. Εύρεση αδυναμίας SQL Injection σε συγκεκριμένο site.
  2. Εκμετάλλευση αυτής της αδυναμίας και κατέβασμα του σχήματος της βάσης.
  3. Μέσα στο σχήμα της βάσης υπάρχει ο πίνακας ‘contact_persons’ μέσω του οποίου ο επιτιθέμενος θα λάβει πληροφορίες για τα επόμενα βήματα του.
  4. Από τον παραπάνω πίνακα θα βρει (εκτός των άλλων) emails με στόχο να αποστείλει malware για να πάρει access στο/στα box/es που βρίσκονται οι παραλήπτες των emails. Τα PC των θυμάτων τρέχουν Windows 7 (full patched) με ενεργοποιημένο το Windows Essentials της Microsoft καθώς και το default Firewall.
  5. Για να τους δελεάσει ώστε να ανοίξουν το email και να “τσιμπήσουν» το δόλωμα θα πρέπει να κάνει χρήση τεχνικών Social Engineering. Για αυτό τον λόγο, τα «θύματα» μας έχουν πλούσιο Social Network… (fb, linked in).
  6. Ο επιτιθέμενος, πρέπει να πάρει πρόσβαση στο Local Box του χρήστη να γράψει εκεί κάποια αρχεία που θα αποδεικνύουν την εισβολή του.
  7. Αμέσως μετά θα πρέπει να βρει και να εκμεταλλευτεί το δίκτυο που βρίσκεται ο powned υπολογιστής.
  8.  Θα πρέπει λοιπόν να ανακαλύψει ότι οι υπολογιστές των θυμάτων είναι στημένοι σε ένα Active Directory καθώς και να βρει τον αντίστοιχο Domain Controller Server.
  9. O Domain Controller Server είναι ένας Windows 2008 R2 (full patched) με ενεργοποιημένο το Windows Essentials της Microsoft καθώς και το default Firewall. Έχει όμως ένα σχετικά αδύναμο password το οποίο μπορεί να βρεθεί μέσα σε ένα καλό dictionary.
  10. Η ολοκλήρωση του σεναρίου επιτυγχάνεται με την κατάληψη και του Domain Controller και το ανέβασμα και εκεί κάποιον αρχείων που να αποδεικνύουν την  εισβολή.
  11. Τέλος, η τέλεια προσέγγιση θα ήταν να βρεθούν από τον επιτιθέμενο και να δοθούν στο τελικό report και κάποια αρχεία που υπάρχουν μέσα στα διάφορα PCs ή στον Server που περιέχουν ευαίσθητα δεδομένα και που αν κάποιος τα δημοσίευε θα έπληττε πάρα πολύ αρνητικά την φήμη της συγκεκριμένης εταιρίας.

 

Proof Of Concept (pOc)

Κατ’ αρχάς να τονίσουμε ότι το πρόβλημα δεν είναι ντετερμινιστικό. Οποιαδήποτε λύση, εύρεση και εκμετάλλευση της οποιαδήποτε αδυναμίας είναι αποδεκτή, αρκεί να επιφέρει το επιθυμητό αποτέλεσμα. Κατά την αξιολόγηση επιλέχθηκε η πιο έξυπνη αλλά και πρωτότυπη προσέγγιση καθώς και εκείνη που «προχώρησε» περισσότερο.

Θα παρουσιάσουμε τώρα μια προσέγγιση για την λύση του προβλήματος που όμως σε καμιά περίπτωση να μην θεωρηθεί και ως η μοναδική σωστή ή εκείνη που θα βαθμολογηθεί με τα Best Points. Απλά ας θεωρηθεί ως ένα από τα πολλά Proof Of Concepts που μπορούσαν να υπάρξουν για το συγκεκριμένο Challenge.

 

Βήμα 1: SQL Injection

Η αδυναμία βρίσκεται στην σελίδα: http://www.havesec.com/news.php?id=1

Μπορεί να την εκμεταλλευτεί κάποιος πάρα πολύ εύκολα τόσο χειροκίνητα όσο και με αυτόματα εργαλεία.

Παραθέτουμε τα χειροκίνητα βήματα που οδηγούν στην εμφάνιση των δεδομένων του πίνακα contact_persons.

  1. Get Tables
    http://www.havesec.com/news.php?id=1 union SELECT table_name FROM information_schema.tables
  2. Get Columns per table
    http://www.havesec.com/news.php?id=1 union SELECT concat(table_name, ‘ | ‘, column_name) FROM information_schema.columns

3.Get full data for table contact_persons
http://www.havesec.com/news.php?id=1 union  select concat(isActive, ‘ | ‘, id, ‘ | ‘, ip, ‘ | ‘ ,name, ‘ | ‘, email) from contact_persons

Επίσης, ως αυτόματο τρόπο, θα μπορούσε κάποιος χρησιμοποιώντας π.χ. to Havij, βλέπε επόμενη εικόνα:

EthiHak

Βήμα 2: Information Gathering

O επιτιθέμενος θα χρησιμοποιήσει τo Social Network για Information Gathering. Θα πάρει υλικό ώστε να καταφέρει να βρει ποιες είναι οι αδυναμίες των θυμάτων. Για παράδειγμα η υπέροχη γραμματέας μας, η Σέβη, έχει αδυναμία στα… sexy εσώρουχα μεταξύ άλλων ενώ στον πολύ CEO μας, αρέσουν τα extreme Sports.

 

Βήμα 3: Social Engineering & Phishing

Με τις πληροφορίες που μάζεψε ο επιτιθέμενος από το προηγούμενο βήμα θα μπορεί να φτιάξει ένα email και να το στείλει σε κάποιο από τα θύματα που θα επιλέξει. Το μήνυμα θα μπορεί να έχει κάποιο attachment (ή κάποιο Link) που θα προτείνει στο θύμα να το πατήσει αλλά να είναι δοσμένο με τέτοιο τρόπο ώστε να εκμεταλλεύεται την αδυναμία τις αδυναμίες του θύματος… π.χ.

Η νέα σειρά το Χ silk πανάκριβων εσώρουχων τώρα σε τιμή γνωριμίας με 80% έκπτωση.
Παρακαλώ πατήστε εδώ για να κατεβάσετε το κουπόνι της προσφοράς.

…ή τέλος πάντων κάτι παρόμοιο.

 

Βήμα 4: Payload Execution

Σε αυτό το βήμα θα πρέπει ο επιτιθέμενος να έχει ένα αρκετά καλό Payload που θα το κατεβάσει το θύμα στο PC του, ώστε να καταφέρει τα εξής:

  • Να τρέξει χωρίς να γίνει αντιληπτό από το Antivirus.
  • Να επιτρέψει στο επιτιθέμενο απομακρυσμένη πρόσβαση (κλασική περίπτωση RAT).
  • Το RAT πρέπει να «ακούει» μόνο σε μια από τις πόρτες 80 ή 443 με δεδομένο ότι το PC του θύματος βρίσκεται μέσα σε κάποιο άλλο δίκτυο, πίσω από ένα firewall, κάποιο εταιρικό router κλπ.

Αυτό που χρειαζόταν εδώ είναι να τρέξει ένα σχετικά απλό RAT (home-made ή μέσω metsasploit) το οποίο να επιτρέπει την απομακρυσμένη εκτέλεση, να τρέχει σε μια από τις παραπάνω πόρτες καθώς και να μπορεί να μεταφέρει αρχεία από το PC του επιτιθέμενου στο PC του θύματος. Βέβαια αυτό το τελευταίο είναι προαιρετικό μιας και θα μπορούσε κάποιος να βάλει τα «απαραίτητα» σε ένα καλό (aka μη ανιχνεύσιμο) container και να τα κατεβάσει στο PC του θύματος μέσα στο επισυναπτόμενο αρχείο του phishing email. Εμείς μεταφέραμε το THC_Hydra το οποίο θα το χρησιμοποιήσουμε στο επόμενο βήμα μας. Βέβαια σε τέτοιες περιπτώσεις καλό είναι να μεταφέρει κάποιος με το πολύ χρήσιμο wget (https://goo.gl/7ikGUo) για τα Windows ώστε να μπορούμε να… κατεβάσουμε κατά βούληση ότι μας «αρέσει». Με την παρόμοια ακριβώς λογική κατεβάζουμε και το πολύ χρήσιμο PSExec (https://goo.gl/iscr9M). Αυτό το εργαλείο θα το χρησιμοποιήσουμε για να πάρουμε shell στον… server (επόμενο βήμα).

 

Βήμα 5: Domain Server attack

Το τελευταίο βήμα του επιτιθέμενου ήταν να βρει τον Domain Server και να τον κάνει Pown.

Υπάρχουν διάφοροι τρόποι για να βρούμε τον Domain Server μέσα από ένα ήδη Logged In client. Π.χ. με την εντολή echo %LOGONSERVER%  μπορούμε να πάρουμε το όνομα του.

Αμέσως μετά θα μπορούσαμε με ένα Dictionary attach tool να δοκιμάζαμε να παραβιάσαμε το password του Administrator.

Το εργαλείο που χρησιμοποιήσαμε εμείς είναι το γνωστό THC_Hydra το οποίο μπορούμε άμεσα να το κατεβάσουμε και να το εκτελέσουμε μέσα από το RAT μας:

EthiHak

Αμέσως μετά εκτελούμε το PsExec με τα… ανάλογα αποτελέσματα!!

EthiHak

TIP: Την πρώτη φορά που θα καλέσετε την PSExec μην ξεχάσετε να βάλετε την παράμετρο /accepteula ώστε να μην εμφανιστεί στην οθόνη του ανυποψίαστου θύματος το banner αποδοχής της εκτέλεσης της εντολής, γεγονός που μάλλον θα… σας πρόδιδε!

 

Παραμείνετε συντονισμένοι για όλους τους hacking διαγωνισμούς που διοργανώνει το Secnews.gr καθώς και πληροφοριες για το επόμενο EthiHak!

Happy Ethical Hacking!! 😉

 

Script>Alert
Script>Alerthttps://www.secnews.gr
We are all Edward Snowden.

Εγγραφή στο Newsletter

* indicates required

FOLLOW US

LIVE NEWS