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

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

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

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

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

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


Ενότητες

  • 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. Καλησπέρα. Ένα διαφορετικό θέμα για σήμερα με σχέση το Cyber Security και την ασφάλεια συστημάτων διότι είναι πολύ σημαντικό να γνωρίζουμε και την ασφάλεια, παρά να ξέρουμε μόνο να κάνουμε επιθέσεις. Σήμερα σε αυτόν τον οδηγό θα πούμε πως μπορούμε να προστατέψουμε την Βάση δεδομένων μας και τα απόρρητα αρχεία από κάποιον κακόβουλο χάκερ με επίθεση SQL INJECTION σε POST method. Όσοι θέλετε να μάθετε και πως γίνεται μία τέτοιου είδους επίθεση, υπάρχουν κάποιοι οδηγοί στο φόρουμ. Ας μπούμε όμως στο θέμα μας. Το παράδειγμα θα σας το δείξω σε μία δική μου manual ιστοσελίδα η οποία τρέχει local με την βοήθεια του xampp. Να πω λοιπόν πως άνοιξα έναν apache server και ένα phpmyadmin από πίσω για database. (db = egasiasxol, host = localhost, table = users, columns = username-password). Μπορείτε να δείτε τους κώδικες html και php παρακάτω. Τι έχουμε στον κώδικα; Στον κώδικα έχουμε απλά input στην html τα οποία είναι textboxes για τον χρήστη έτσι ώστε να εισχωρίσει το username και το password και άλλο ένα input το οποίο είναι type=submit δηλαδή button έτσι ώστε να γίνει η σύνδεση σε περίπτωση που είναι σωστά τα στοιχεία (Όλα αυτά βρίσκονται σε ένα form στο οποίο χρησιμοποιούμε method=post. Στον php κώδικα επιτρέπουμε στην βάση να επικοινωνήσει μαζί του. Τι σημαίνει αυτό; να διαβάζει μέσα από την βάση το username και το password έτσι ώστε ελέγξει αν είναι σωστά τα στοιχεία για να πάρει πρόσβαση ο χρήστης στο λεγόμενο Dashboard, ή να μην πάρει. $sql = "select * from users where username='$user' and password='$passwd'"; Πάμε λοιπόν να δούμε που είναι το λάθος σε αυτόν τον κώδικα. Η απάντηση είναι πως δεν υπάρχει κάποιο λάθος, απλώς δεν υπάρχουν φίλτρα και έτσι ο χάκερ μπορεί να πάρει πρόσβαση στο σύστημα επειδή ο κώδικας μας δεν έχει φιλτράρει τα Symbols τα οποία μπορεί να χρησιμοποιηθούν ( ' κ.τ.λ). Πάμε λοιπόν να δούμε Live την επίθεση αλλά και την ασφάλεια. Πρώτα θα ξεκινήσουμε από την επίθεση. Ανοίγουμε το Burpsuite στο Linux μας, ανοίγουμε και έναν browser στον οποίο έχουμε βάλει σωστά τα proxies για να επικοινωνούν με το burp. proxy -> intercept Να προσέξετε το intercept να είναι στο "ON". Βάζουμε λοιπόν κάποια τυχαία cedentials με ένα "αυτάκι" στο τέλος και στο username και στο password. (π.χ username' , password'). Αφού πατήσουμε το κουμπί σύνδεση το burpsuite θα μας εμφανίσει κάποια αποτελέσματα με POST method. Πατάμε δεξί κλικ στα αποτελέσματα και επιλέγουμε copy to file έτσι ώστε να τα αποθηκεύσουμε σε αρχείο. Αφού πατήσουμε ονομάσουμε το αρχείο (στην περίπτωσή μας grhacking) και πατήσουμε save έτσι ώστε να αποθηκεύσει το αρχείο στο path το οποίο έχουμε επιλέξει, ανοίγουμε το sqlmap το οποίο είναι ένα απίστευτο κατά την γνώμη μου tool το οποίο θα μας βοηθήσει να κάνουμε αυτοματοποιημένα την επίθεση sql injection. Ανοίγουμε sqlmap και γράφουμε "sqlmap -r (για το αρχείο) grhacking --dbs (για να βρει το database) sqlmap -r grhacking --dbs POST parameter 'username' might be injectable (Πιθανή Βάση mysql). Για όσους δεν καταλάβατε βρήκε ευάλωτη την βάση μας κάτι το οποίο είναι πάρα πολύ σημαντικό. Γιατί; πάμε να δούμε παρακάτω. Αφού λοιπόν γράψουμε κάποιες εντολές για να βρούμε τα κατάλληλα tables και columns έτσι ώστε να τα κάνει dump, βλέπουμε τα αποτελέσματα... Με τα οποία ο χάκερ θα χαρεί αλλά εμείς θα κλαίμε... διότι με αυτά τα στοιχεία παίρνει πρόσβαση στο dashboard. username: mata , password = greekhacking Πάμε λοιπόν να δούμε πως μπορούμε να προστατέψουμε τα προσωπικά μας δεδομένα από αυτήν την επίθεση. Ξαναπάμε στον κώδικα τον οποίο έδειξα σε προηγούμενο screenshot, και βάζουμε τα φίλτρα. Θα σας εξηγήσω αφού δείτε την εικόνα. Εκεί που έχω βάλει τα slashes είναι το λεγόμενο comment το οποίο ο κώδικας δεν το βλέπει. Οπότε το προσπερνάμε. Δημιουργούμε ένα νέο variable το οποίο είναι το $userprevent και μέσα σε αυτό βάζουμε το φίλτρο mysqli_real_escape_string. Στις παρενθέσεις είναι το connection που το έχω ορίσει ως $conn και το $usr το οποίο έχω ορίσει για το POST του username πιο πάνω "$usr = $_POST['username'];" Κάνουμε το ίδιο και για το password. Αφού λοιπόν γίνει αυτό, το αμέσως επόμενο βήμα είναι να εφαρμοστούν τα variables για να δουλέψουν τα φίλτρα για να προστατευτεί η βάση μας. τα εφαρμόζουμε πηγαίνοντας στο $sql variable που έχουμε ορίσει για την επικοινωνία των στοιχείων με το POST method στα textbox τα οποία θα πληρκτρολογήσει ο χρήστης. Σας το έχω δείξει και με βελάκια. (Μπορείτε να δείτε τις διαφορές στο πάνω σκριν που έδειξα με κώδικα και σε αυτό το σκριν). Πάμε λοιπόν να ξανακάνουμε επίθεση για να δούμε τι θα γίνει πάλι. Όπως βλέπουμε το sqlmap δεν μπορεί να ανταποκριθεί διότι έχουμε πλέον βάλει φίλτρα και μας πετάει POST parameter does not seem to be injectable. [WARNING]. Και εννοείτα παρακάτω μας πετάει CRITICAL error και μας απορρίπτει. Αυτός ήταν ο οδηγός για το πως μπορείτε να προστατευτείτε από μία επίθεση SQL INJECTION σε POST method. Κάποια στιγμή θα βγάλω και για το πως να προστατευτείτε από SQL INJECTION επίθεση σε GET method. Ευχαριστώ όσους διαβάσατε μέχρι το τέλος, ελπίζω να μάθατε κάτι από εμένα και ελπίζω να το έγραψα και να το έδειξα όσο πιο αναλυτικά μπορούσα. Καλό Hacking (ηθικό φυσικά). 🙂
  2. Επειδή ό,τι λέω το κάνω κάποια στιγμή, σας είχα πει όταν έκανα τον οδηγό για το POST METHOD ότι θα κάνω και οδηγό για το πως να προστατευτούμε από ένα SQL INJECTION attack σε GET METHOD. Τι εννοούμε GET? Εννοώ η πληροφορία που Παίρνω και όχι που δίνω στον Server όπως είναι το POST με login, register κ.τ.λ. Όπως έχουμε πει με τα google dorks inurl:.php?id=1 , που δίνουμε στην google να καταλάβει ότι θέλουμε να ψάξουμε στην αναζήτη ΜΟΝΟ ιστοσελίδες και σελίδες που έχουν ΜΟΝΟ παράμετρο ID στο URL τους... Ε αυτό θα κάνουμε σήμερα. Θα μάθουμε πως να μην τρώει MYSQL ERROR η σελίδα όταν βάζουμε το quote " ' " δίπλα από την παράμετρο. Π.Χ id=1' . Αφήνω λοιπόν την πολλή εξήγηση και πάμε να μπούμε στο ψητό. Εδώ του λέμε να πάρει το ID το οποίο το έχουμε ορίσει και user_id και μετά φτιάχνουμε ένα query με users όπου id=$user_id. Πρώτα απ' όλα βλέπουμε τον κώδικά μας. Έχουμε χτίσει ένα table γράφοντας κώδικα HTML ΜΕΣΑ ΣΤΗΝ PHP, και με τα $row που έχουμε ορίσει πιο πάνω από το foreach και $sql_run, του δείχνουμε να καταλάβει πως θέλουμε στα tables να εμφανίζετε ΚΑΘΕ χρήστης μέσα από την βάση. (θα δείτε παρακάτω σε screenshot). Ακριβώς από κάτω από αυτά τα $row, δίνουμε άλλο ένα row και το πιο σημαντικό γι αυτό το topic. Του λέμε όταν πατηθεί το «κουμπί» EDIT που θα υπάρχει στο table, να μας ανακατευθύνει ( href ) στην σελίδα edit.php (που έχουμε φτιάξει) αλλά όχι μόνο εκεί, αλλά και στην παράμετρο. Δηλαδή για παράδειγμα θέλουμε να κάνουμε edit τα στοιχεία του χρήστη MATA ο οποίος mata μέσα στην βάση σαν ID έχει τον αριθμό 64. Οπότε θα γράψεις στο url edit.php?id= (Και τον αριθμό του id του χρήστη μέσα στην βάση) $row['id']. Προφανώς το ID αν δεν ξέρετε πως το διαβάζει μέσα από την βάση, το διαβάζει διότι κάναμε πριν query "SELECT * FROM users". Δηλαδή; Επέλεξέ τα όλα (*) από το table users. Και αμέσως μετά τρέξαμε το $sql_run = mysqli_query($conn, $sql) (το sql ήταν το variable που είχαμε ορίσει για το query ( $sql = "SELECT * FROM users ). Εδώ έχουμε τα tables που είπα πρίν. Και με ID χρήστη τον αριθμό 64. (όσοι χρήστες υπάρχουν μέσα στην βάση τόσο θα αυξάνεται η λίστα). Πατάμε λοιπόν edit να δούμε τι γίνεται στο url. Όπως βλέπουμε, το URL δείχνει τον αριθμό 64 στην παράμετρο ID. Αυτό γίνεται επειδή πρίν στο href βάλαμε το $row['id'] όπως σας εξήγησα παραπάνω. Πάμε λοιπόν να βάλουμε ένα QUOTE στην παράμετρο να δούμε πως και ΓΙΑΤΙ αντιδράει η ιστοσελίδα με ERROR. Όσοι έχετε πάει να κάνετε SQL INJECTION επίθεση σίγουρα έχετε παρατηρίσει κάποιο τέτοιο error. To error αυτό ονομάζεται ERROR-BASED SQL INJECTION. Error based ονομάζεται όταν το quote (') «σπάει» το Syntax. Γι αυτό και γράφει "You have an error in your SQL Syntax". Πάμε να το εκμεταλλευτούμε αυτό; Θα είναι πανεύκολο γιατί ο απρόσεκτος Developer ξέχασε να βάλει τα φίλτρα στον κώδικά του οπότε εγώ σαν κακόβουλος θα μπορέσω να τον εκμεταλλευτώ... Πάμε και γράφουμε λοιπόν sqlmap -u "http://<target>.com/edit.php?id=1" --dbs Το --dbs είναι για να βρεί τις βάσεις δεδομένων. Μας πετάει cookies και πατάμε Y για να τα χρησιμοποιήσουμε. Πόσο ευχάριστο για εμάς ε; Εδώ μας λέει ΄΄οτι ΠΙΘΑΝΟΝ η παράμετρος ID να είναι ευπαθής και η ΠΙΘΑΝΗ Database είναι MySQL. Θέλουμε να κάνουμε skip τα άλλα payload tests για άλλες dbmses? Και πατάμε Yes. Διότι δεν χρειαζόμαστε κάτι άλλο. Τι είπαμε πριν; Error-based. Πάμε παρακάτω τα εξήγησα πρίν αυτά. Η παράμετρος ID είναι ευπαθής. Θές να τσεκάρεις κι άλλες παραμέτρους; (Δεν χρειάζεται οπότε NO) Τι κακό τον βρήκε....... Αν θυμάστε από τον προηγούμενο οδηγό η database λεγόταν ergasiasxol. Πάμε να μπούμε σε αυτήν γράφοντας sqlmap -u "http://<target>.com/edit.php?id=64" -D ergasiasxol --tables -D ergasiasxol για να μπούμε σε αυτήν την βάση, και το --tables για να μας εμφανίσει τα tables. Βλέπουμε πως υπάρχει το table users. Οπότε πάμε να μπούμε σε αυτό και να δούμε τα columns. sqlmap -u "http://<target>.com/edit.php?id=64" -D ergasiasxol -T users --columns Εδώ βλέπουμε τα columns. Εμείς χρειαζόμαστε μόνο το username και το password. Πάμε να τα κάνουμε DUMP για να τα δούμε. sqlmap -u "http://<target>.com/edit.php?id=64" -D ergasiasxol -T users -C username,password --dump Φτάσαμε στον στόχο μας. Βέβαια ο κωδικός είναι σε κρυπτογράφηση md5 έχω εξηγήσει εδώ πως το κάνουμε αυτό, οπότε απλά παίρνουμε το hash και το σπάμε (αν δεν υπάρχει σε online tool προτείνω crunch για να φτιάξετε λίστα). ############################################################ ΠΡΟΣΤΑΣΙΑ ########################################################### Πάμε λοιπόν τώρα να δούμε πως μπορούμε να προστατευτούμε από αυτήν την επίθεση. Πρέπει να πάμε ξανά στον κώδικά μας και να βρούμε που είναι το variable που έχουμε ορίσει για την $_GET['id']; . To user_id είναι το variable που έχουμε ορίσει για την GET. Το filtered_userid variable υπάρχει για να το προσθέσουμε μετά στο id=$filtered_userid στο query. Επίσης στο variable filtered_userid γράφουμε το εξής filter_var($user_id, FILTER_SANITIZE_NUMBER_INT); To filter_var είναι συνάρτηση της php η οποία χρησιμοποιείται για το φιλτράρισμα της μεταβλητής (variable). Στην περίπτωσή μας θέλουμε να φιλτράρουμε το variable $user_id που είναι της GET -> id=$row['id'] -> id=64 (στην προκειμένη περίπτωση). To FILTER_SANITIZE_NUMBER_INT αποτρέπει χαρακτήρες όπως το QUOTE. Πάμε λοιπόν τώρα να δούμε αν η σελίδα μας αντιδράει σε error. Απολύτως καμία αντίδραση. Πάμε να κάνουμε πάλι επίθεση λοιπόν CRITICAL. Δεν μας αφήνει να βρούμε βάση. Πάμε να δοκιμάσουμε και με risk και level και με v 6 Πάλι critical. Οπότε είμαστε καλυμμένοι. Θα βγάλω και οδηγό για το πως να προστατευτούμε από επίθεση XSS (CROSS SITE SCRIPTING) κάποια στιγμή. Be safe. 😀
  3. Use this unique book to leverage technology when conducting offensive security engagements. You will understand practical tradecraft, operational guidelines, and offensive security best practices as carrying out professional cybersecurity engagements is more than exploiting computers, executing scripts, or utilizing tools. Professional Red Teaming introduces you to foundational offensive security concepts. The importance of assessments and ethical hacking is highlighted, and automated assessment technologies are addressed. The state of modern offensive security is discussed in terms of the unique challenges present in professional red teaming. Best practices and operational tradecraft are covered so you feel comfortable in the shaping and carrying out of red team engagements. Anecdotes from actual operations and example scenarios illustrate key concepts and cement a practical understanding of the red team process. You also are introduced to counter advanced persistent threat red teaming (CAPTR teaming). This is a reverse red teaming methodology aimed at specifically addressing the challenges faced from advanced persistent threats (APTs) by the organizations they target and the offensive security professionals trying to mitigate them. What You’ll Learn Understand the challenges faced by offensive security assessments Incorporate or conduct red teaming to better mitigate cyber threats Initiate a successful engagement Get introduced to counter-APT red teaming (CAPTR) Evaluate offensive security processes Who This Book Is For Offensive security assessors and those who want a working knowledge of the process, its challenges, and its benefits. Current professionals will gain tradecraft and operational insight and non-technical readers will gain a high-level perspective of what it means to provide and be a customer of red team assessments. Professional Red Teaming Conducting Successful Cybersecurity Engagements by Jacob G. Oakley.Pdf
  4. This book explores a broad cross section of research and actual case studies to draw out new insights that may be used to build a benchmark for IT security professionals. This research takes a deeper dive beneath the surface of the analysis to uncover novel ways to mitigate data security vulnerabilities, connect the dots and identify patterns in the data on breaches. This analysis will assist security professionals not only in benchmarking their risk management programs but also in identifying forward looking security measures to narrow the path of future vulnerabilities. [James_Bone] Cognitive Hack The New Battleground in Cybersecurity… the Human Mind.pdf

ChatBox

ChatBox

Chatroom Rules

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