Μετάβαση στο περιεχόμενο

Αναζήτηση στην κοινότητα

Εμφάνιση αποτελεσμάτων για τις ετικέτες 'vulnerability'.

  • Αναζήτηση με βάση τις ετικέτες

    Πληκτρολογήστε τις ετικέτες και χωρίστε τες με κόμμα.
  • Αναζήτηση με βάση τον συγγραφέα

Τύπος περιεχομένου


Ενότητες

  • GreekHacking
    • Κανόνες & Ανακοινώσεις
    • Καλωσόρισμα νέων μελών
    • Προτάσεις / Βελτιώσεις
    • Νέα σχετικά με το Hacking/Security
    • Ασφάλεια & Προστασία Δεδομένων
    • Εκτός Θέματος
  • Leaks
    • Hacking Tutorials
    • Anonymity & Privacy / Ανωνυμία και Προστασία Προσωπικών Δεδομένων
    • Προγράμματα για Hacking / Hacking Programs
    • Cracking Οδηγοί & Πληροφορίες
    • Βιβλία σχετικά με το Hacking
    • Προγράμματα - High Quality downloads
    • E-Books
    • XXX Movies

Categories

  • Ορολογίες
  • Hacking για αρχάριους
  • Hacking για προχωρημένους
  • Mobile Hacking
  • Cracking Tutorials
  • Hacking Computers
  • Hacking Tutorials στα Αγγλικά
  • Tutorials for hacks
  • Διάφοροι Οδηγοί
    • Οδηγοί σχετικά με τα Linux
    • Οδηγοί για υπολογιστές
    • Οδηγοί σχετικά με τα Mac
    • Οδηγοί για κινητά
  • Hacking Tutorials στα Αγγλικά Copy

Categories

  • Hacking
  • Ιστοσελίδες/Server
  • Hardware
  • Windows

Βρείτε αποτελέσματα...

Βρείτε αποτελέσματα που...


Ημερομηνία δημιουργίας

  • Start

    End


Τελευταία ενημέρωση

  • Start

    End


Φιλτράρισμα με βάση τον αριθμό των...

  1. Σε αυτό το tutorial χρειάζεται λίγη γνώση απο binary exploitation, c programming, python, gdb, assembly, understanding of malloc algorithm Ας αρχίσουμε διαβάζοντας τον κώδικα για να βρούμε πιο ειναι το πρόβλημα στο πρόγραμμα. https://exploit.education/protostar/final-two/#source-code Ο σέρβερ τρέχει στην θύρα 2993. Για να μας διευκολύνει και να εστιάσουμε μόνο στο heap vulnerability κάποια μέρη του κώδικα τα έχουν κρύψει οπότε δεν χρειάζεται να ασχοληθούμε με αυτά.Το πρόγραμμα αρχίζει καλώντας την συνάρτηση get_requests() η οποία τρέχει ενα while loop 255 φορές άμα στείλουμε στον σέρβερ 128 bytes τα οποία αρχίζουν απο FSRD.Άμα δεν το κάνουμε αυτό η συνάρτηση κανει break και πάει στο for loop που εκεί κάνει free τα chunks που έγιναν allocate από το calloc. int get_requests(int fd) { char *buf; char *destroylist[256]; int dll; int i; dll = 0; while(1) { if(dll >= 255) break; buf = calloc(REQSZ, 1); if(read(fd, buf, REQSZ) != REQSZ) break; if(strncmp(buf, "FSRD", 4) != 0) break; check_path(buf + 4); dll++; } for(i = 0; i < dll; i++) { write(fd, "Process OK\n", strlen("Process OK\n")); free(destroylist[i]); } } Άρα όταν στείλουμε στον σέρβερ για παράδειγμα FSRD + 'A' *124 (total: 128 bytes) το πρόγραμμα θα καλέσει την check_path συναρτηση η οποία σαν parameter θα πάρει τους χαρακτήρες μετα το FSRD.Μετά στο check_path τσεκάρει αμα υπάρχει στο input που του δώσαμε ο χαρακτήρας '/' γυρίζει ενα pointer(στο τελευταίο '/' που θα βρεί) και μετράει το μέγεθος σε bytes απο το '/' μεχρι να συναντήση NULL TERMINATOR '0x00'. Άμα υπάρχει '/' τότε ψάχνει με το strstr την λέξη ROOT και άμα την βρεί ψάχνει τον χαρακτήρα '/' πίσω στην μνήμη απο το ROOT.Όταν τελειώσουν όλα αυτά καλεί το memmove όπου μεταφέρει l bytes δηλαδή όσα υπολόγισε απο το τελευταίο '/' μεχρι το NULL Terminator από το p που ξαναλέω ειναι το τελευταίο '/' μεχρι το NULL terminator στο start που έιναι το '/' που βρέθηκε πριν το ROOT μεχρι το Null terminator. void check_path(char *buf) { char *start; char *p; int l; /* * Work out old software bug */ p = rindex(buf, '/'); l = strlen(p); if(p) { start = strstr(buf, "ROOT"); if(start) { while(*start != '/') start--; memmove(start, p, l); printf("moving from %p to %p (exploit: %s / %d)\n", p, start, start < buf ? "yes" : "no", start - buf); } } } Κάνουμε ssh στο virtual machine του protostar με ssh root@ip με κωδικό godmode.Φτιάχνουμε ενα αρχείο έτσι ώστε να τρέχει κάθε φορά που ανοίγουμε το gdb έτσι ώστε να κάνει την δουλεία μας πιο έυκολη. set disassembly-flavor intel set follow-fork-mode child set pagination off break *check_path+117 commands x/3wx $esp end run Πρώτα θέτουμε το disassembly-flavor δηλαδή τα op codes σε intel γιατί προσωπικά με αυτά έχω μάθει να δουλεύω, μετά το επόμενο command είναι για να ακολουθήσει το gdb το child proccess το οποιο δημιουργεί το πρόγραμμα όταν δέχεται σύνδεση.Κάνουμε ένα break στο check_path+117 δηλαδή στο memmove και κανουμε print τα πρώτα τρια values στο stack οπου θα βρίσκονται τα parameters start, p, l. Μετά για να είναι τελείως αυτοματοποιημένο δημιουργούμε ενα sh αρχείο. #!/bin/bash gdb -p $(ps aux | grep final2 | head -n 1 | awk '{print $2}') -x /tmp/gdb #το πρωτο parameter ψάχνει το pid του final2 και το κάνει attach στο gdb και το δεύτερο φορτώνει τα commands που έχουμε στο προηγούμενο αρχείο #που φτιάξαμε #chmod +x /tmp/gdb.sh Τρέχουμε το /tmp/gdb.sh και στην δικιά μας μηχανή τρέχουμε το send.py(Συμπληρώνει στην αρχή το FSRD και κάνει το μήνυμα να είναι 128 bytes) με python -i send.py ip address.Θα πετάξει interactive shell οπου μπορούμε να στείλουμε με το send command input στον σερβερ.Για παράδειγμα άμα του στείλουμε send("/ROOT/AAAA")To gdb θα κάνει output 3 values στο stack που τα πρώτα δύο είναι pointers στο start, p και το τριτο integer στο l Δοκίμασε να στείλεις ROOT/AAAA καί δες τι value έχει το start parameter δηλαδή το πιο πάνω στο stack στην περιπτωσή μου πάνω ήταν το 0x0804e010. ΘΑ ΣΥΝΕΧΙΣΩ ΤΟ TUTORIAL ΑΥΡΙΟ :)) ΜΕΧΡΙ ΤΟΤΕ ΣΑΣ ΒΑΖΩ CHALLENGE ΝΑ ΔΙΑΒΑΣΕΤΕ ΚΑΙ ΝΑ ΚΑΤΑΛΑΒΕΤΕ ΤΟ MALLOC ALGORITHM https://azeria-labs.com/heap-exploitation-part-2-glibc-heap-free-bins/ Και εδώ ένα post το οποίο μιλάει για την ευάλωτη version του heap algorithm το 2001 του doug lea στο οποιο βασίζεται αυτο το tutorial http://phrack.org/issues/57/9.html send.py
  2. Καλησπέρα Forum. Θα ήθελα να μιλήσουμε λίγο για ένα προγραμματάκι το οποίο εγκατέστησα πριν λίγο καιρό στο Linux και το χρησιμοποιώ αρκετά για εντοπισμό κενών ασφαλείας σε ιστοσελίδες. Το πρόγραμμα αυτό λέγεται Vega. Το Vega σας δίνει την δυνατότητα να κάνετε Scan σε μία ιστοσελίδα και να βρείτε κενά ασφαλείας όπως SQL injection, Cross-Site-Scripting (XSS), Local File Inclusion, μέχρι και να βρείτε κάποιες βασικές πληροφορίες για το συγκεκριμένο Site. Το Vega μπορούμε να το κατεβάσουμε από εδώ ==> https://subgraph.com/vega/download/ Δεν θα πούμε την διαδικασία της εγκατάστασης αλλά στο τέλος της ανάρτησης θα σας βάλω ένα βιντεάκι για το πως μπορείτε να το κατεβάσετε. ############################################# Πάμε να δούμε πως λειτουργεί το πρόγραμμα ############################################# Αφού ανοίξουμε το πρόγραμμα, θα πατήσουμε πάνω αριστερά που σας το έχω κυκλωμένο, έτσι ώστε να εισάγουμε τον στόχο που θέλουμε να σκανάρουμε. ΕΙΚΟΝΑ ΓΙΑ ΤΟ ΠΟΥ ΒΡΙΣΚΕΤΑΙ Όταν το πατήσουμε, θα μας εμφανίσει κάποιες επιλογές. Θα πρέπει να βάλουμε στο TextBox τον στόχο μας. Αμέσως μετά πατάμε NEXT ΒΑΖΟΥΜΕ ΤΟΝ ΣΤΟΧΟ ΠΟΥ ΕΧΟΥΜΕ ΕΠΙΛΕΞΕΙ Βάλαμε τον στόχο μας. Τώρα όταν πατήσουμε NEXT, θα μας βάλει στην διαδικασία να επιλέξουμε για τι είδος κενών ασφαλείας θέλουμε να ψάξει ΕΠΙΛΕΓΟΥΜΕ ΤΟ ΕΙΔΟΣ ΚΕΝΩΝ ΑΣΦΑΛΕΙΑΣ Αφού λοιπόν επιλέξουμε, πατάμε το FINISH. Αν θέλετε να κάνετε και κάτι παραπάνω (π.χ να βάλετε τα cookies) πατάτε NEXT. Και τώρα το αγαπημένο σημείο όλων. Όταν πατήσουμε FINISH, το πρόγραμμα θα αρχίσει να ψάχνει για κενά ασφαλείας που εμείς ορίσαμε. Όταν με το καλό βρει τα κενά, μπορούμε να τα δούμε λεπτομεριακά στην αριστερή στήλη του προγράμματος. ΤΑ ΑΠΟΤΕΛΕΣΜΑΤΑ Παρακάτω μπορείτε να δείτε την διαδικασία της εγκατάστασης του Vega. (ΠΡΟΣΟΧΗ! ΔΕΝ ΦΕΡΩ ΚΑΜΙΑ ΕΥΘΥΝΗ ΓΙΑ ΤΟ ΠΩΣ ΘΑ ΧΡΗΣΙΜΟΠΟΙΗΣΕΤΕ ΤΟ ΠΡΟΓΡΑΜΜΑ)
  3. Tο διαδίκτυο αποτελεί σήμερα απαραίτητο συστατικό της καθημερινής ζωής για τους περισσότερους ανθρώπους. H αξιοποίηση των υπηρεσιών του διαδικτύου για την υποστήριξη των οικονομικών και κοινωνικών δραστηριοτήτων γίνεται κυρίως μέσω των διαδικτυακών εφαρμογών, οι οποίες εξελίσσονται ραγδαία. Όμως, όσο εξαπλώνεται η χρήση των διαδικτυακών εφαρμογών, τόσο περισσότερο γίνονται στόχος επιθέσεων από κακόβουλους χρήστες, οι οποίο προσπαθούν να εκμεταλλευτούν τις αδυναμίες στον κώδικα και τις ρυθμίσεις για την επιτέλεση των σκοπών τους. Επομένως, η ασφάλεια των διαδικτυακών εφαρμογών αποτελεί μια κρίσιμη παράμετρο για την αποδοχή και αξιοποίησή τους. Μια διαδεδομένη πρακτική για την ενίσχυση της ασφάλειας των διαδικτυακών εφαρμογών είναι η πραγματοποίηση δοκιμών διείσδυσης από ειδικούς της ασφάλειας, με τη συγκατάθεση των ιδιοκτητών τους. Οι δοκιμές αποσκοπούν στο να εντοπισθούν τυχόν ευπάθειες και να διαπιστωθεί η ανάγκη λήψης μέτρων προστασίας. Για το σκοπό αυτό, έχουν αναπτυχθεί πολλά και διάφορα εργαλεία για δοκιμές διείσδυσης, τα οποία δεν παρέχουν την ίδια αποτελεσματικότητα και πληρότητα κάλυψης των αναγκών ελέγχου ασφάλειας των εφαρμογών ιστού. Αντικείμενο της παρούσας διπλωματικής εργασίας αποτελεί η έρευνα, η καταγραφή, η ταξινόμηση και η αξιολόγηση των αντιπροσωπευτικών εργαλείων διείσδυσης, κυρίως στη βάση της εφαρμογής τους στο πλαίσιο μιας μεθοδολογίας επίθεσης. Στο πλαίσιο μιας τυποποιημένης διαδικασίας δοκιμών διείσδυσης, σύμφωνα με τη συγκεκριμένη μεθοδολογία επίθεσης, γίνεται προσδιορισμός των ποιοτικών κριτηρίων αξιολόγησης εργαλείων διείσδυσης σε κάθε στάδιο της μεθοδολογίας. Από την οργανωμένη εφαρμογή των εργαλείων δοκιμών διείσδυσης με μια ολοκληρωμένη δοκιμή διείσδυσης σε πραγματικό στόχο, προκύπτουν συμπεράσματα τα οποία αποτυπώνονται σε μια συνολική συγκριτική αξιολόγησή τους. Αξιολόγηση εργαλείων Penetration Testing για Web εφαρμογές - Iatropoulos Ioannis Msc2017.pdf Πηγή: ΨΗΦΙΔΑ - Ψηφιακή Βιβλιοθήκη και Ιδρυματικό Αποθετήριο του Πανεπιστημίου Μακεδονίας

ChatBox

ChatBox

Chatroom Rules

  • Το GreekHacking.Gr είναι ένα ελληνικό forum και επιτρέπεται μόνο η χρήση της Ελληνική Γλώσσας (ούτε greeklish).
  • Δεν επιτρέπονται οι βρισιές και γενικά η χρήση χυδαίας γλώσσας.
  • Απαγορεύεται αυστηρά το πορνογραφικό, προσβλητικό και βίαιο περιεχόμενο.
  • Μην χρησιμοποιείτε κεφαλαία γράμματα η σύμβολα.
×
×
  • Create New...