137 lines
14 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Pentesting Methodology
{{#include ../banners/hacktricks-training.md}}
## Pentesting Methodology
<figure><img src="../images/HACKTRICKS-logo.svg" alt=""><figcaption></figcaption></figure>
_Hacktricks logos designed by_ [_@ppiernacho_](https://www.instagram.com/ppieranacho/)_._
### **0- Φυσικές Επιθέσεις**
Έχετε **φυσική πρόσβαση** στη μηχανή που θέλετε να επιτεθείτε; Πρέπει να διαβάσετε μερικά [**tricks για φυσικές επιθέσεις**](../hardware-physical-access/physical-attacks.md) και άλλα σχετικά με [**διαφυγή από εφαρμογές GUI**](../hardware-physical-access/escaping-from-gui-applications.md).
### **1-** [**Ανακάλυψη hosts μέσα στο δίκτυο**](pentesting-network/index.html#discovering-hosts)/ [Ανακάλυψη Περιουσιακών Στοιχείων της εταιρείας](external-recon-methodology/index.html)
**Ανάλογα** με το αν η **δοκιμή** που εκτελείτε είναι **εσωτερική ή εξωτερική**, μπορεί να σας ενδιαφέρει να βρείτε **hosts μέσα στο δίκτυο της εταιρείας** (εσωτερική δοκιμή) ή **να βρείτε περιουσιακά στοιχεία της εταιρείας στο διαδίκτυο** (εξωτερική δοκιμή).
> [!NOTE]
> Σημειώστε ότι αν εκτελείτε μια εξωτερική δοκιμή, μόλις καταφέρετε να αποκτήσετε πρόσβαση στο εσωτερικό δίκτυο της εταιρείας, θα πρέπει να επανεκκινήσετε αυτόν τον οδηγό.
### **2-** [**Διασκεδάζοντας με το δίκτυο**](pentesting-network/index.html) **(Εσωτερική)**
**Αυτή η ενότητα ισχύει μόνο αν εκτελείτε μια εσωτερική δοκιμή.**\
Πριν επιτεθείτε σε έναν host, ίσως προτιμήσετε να **κλέψετε κάποια διαπιστευτήρια** **από το δίκτυο** ή να **sniff** κάποια **δεδομένα** για να μάθετε **παθητικά/ενεργά (MitM)** τι μπορείτε να βρείτε μέσα στο δίκτυο. Μπορείτε να διαβάσετε [**Pentesting Network**](pentesting-network/index.html#sniffing).
### **3-** [**Σάρωση Θυρών - Ανακάλυψη υπηρεσιών**](pentesting-network/index.html#scanning-hosts)
Το πρώτο πράγμα που πρέπει να κάνετε όταν **ψάχνετε για ευπάθειες σε έναν host** είναι να γνωρίζετε ποιες **υπηρεσίες εκτελούνται** σε ποιες θύρες. Ας δούμε τα [**βασικά εργαλεία για σάρωση θυρών hosts**](pentesting-network/index.html#scanning-hosts).
### **4-** [Αναζητώντας exploits εκδόσεων υπηρεσιών](../generic-hacking/search-exploits.md)
Μόλις γνωρίζετε ποιες υπηρεσίες εκτελούνται, και ίσως την έκδοσή τους, πρέπει να **αναζητήσετε γνωστές ευπάθειες**. Ίσως να έχετε τύχη και να υπάρχει ένα exploit που να σας δώσει ένα shell...
### **5-** Υπηρεσίες Pentesting
Αν δεν υπάρχει κάποιο fancy exploit για καμία εκτελούμενη υπηρεσία, θα πρέπει να αναζητήσετε **κοινές κακοδιαμορφώσεις σε κάθε εκτελούμενη υπηρεσία.**
**Μέσα σε αυτό το βιβλίο θα βρείτε έναν οδηγό για να pentest τις πιο κοινές υπηρεσίες** (και άλλες που δεν είναι τόσο κοινές). **Παρακαλώ, αναζητήστε στην αριστερή ευρετήριο την** _**ΠΕΝΤΕΣΤΙΝΓΚ**_ **ενότητα** (οι υπηρεσίες είναι ταξινομημένες κατά τις προεπιλεγμένες θύρες τους).
**Θέλω να κάνω μια ειδική αναφορά στην** [**Pentesting Web**](../network-services-pentesting/pentesting-web/index.html) **ενότητα (καθώς είναι η πιο εκτενής).**\
Επίσης, μπορείτε να βρείτε εδώ έναν μικρό οδηγό για το πώς να [**βρείτε γνωστές ευπάθειες σε λογισμικό**](../generic-hacking/search-exploits.md).
**Αν η υπηρεσία σας δεν είναι μέσα στο ευρετήριο, αναζητήστε στο Google** για άλλους οδηγούς και **ενημερώστε με αν θέλετε να την προσθέσω.** Αν **δεν μπορείτε να βρείτε τίποτα** στο Google, εκτελέστε το **δικό σας blind pentesting**, μπορείτε να ξεκινήσετε με το **να συνδεθείτε στην υπηρεσία, να την fuzz και να διαβάσετε τις απαντήσεις** (αν υπάρχουν).
#### 5.1 Αυτόματα Εργαλεία
Υπάρχουν επίσης αρκετά εργαλεία που μπορούν να εκτελέσουν **αυτόματες αξιολογήσεις ευπαθειών**. **Σας προτείνω να δοκιμάσετε** [**Legion**](https://github.com/carlospolop/legion)**, το οποίο είναι το εργαλείο που έχω δημιουργήσει και βασίζεται στις σημειώσεις σχετικά με τις υπηρεσίες pentesting που μπορείτε να βρείτε σε αυτό το βιβλίο.**
#### **5.2 Brute-Forcing υπηρεσιών**
Σε ορισμένα σενάρια, μια **Brute-Force** μπορεί να είναι χρήσιμη για να **συμβιβάσει** μια **υπηρεσία**. [**Βρείτε εδώ ένα CheatSheet για διαφορετικές υπηρεσίες brute forcing**](../generic-hacking/brute-force.md)**.**
### 6- [Phishing](phishing-methodology/index.html)
Αν μέχρι αυτό το σημείο δεν έχετε βρει καμία ενδιαφέρουσα ευπάθεια, **μπορεί να χρειαστεί να δοκιμάσετε κάποιο phishing** για να μπείτε στο δίκτυο. Μπορείτε να διαβάσετε τη μεθοδολογία phishing μου [εδώ](phishing-methodology/index.html):
### **7-** [**Λήψη Shell**](../generic-hacking/reverse-shells/index.html)
Με κάποιο τρόπο θα πρέπει να έχετε βρει **κάποιον τρόπο να εκτελέσετε κώδικα** στο θύμα. Στη συνέχεια, [μια λίστα με πιθανά εργαλεία μέσα στο σύστημα που μπορείτε να χρησιμοποιήσετε για να αποκτήσετε ένα reverse shell θα ήταν πολύ χρήσιμη](../generic-hacking/reverse-shells/index.html).
Ιδιαίτερα στα Windows, μπορεί να χρειαστείτε κάποια βοήθεια για να **αποφύγετε τα antivirus**: [**Ελέγξτε αυτή τη σελίδα**](../windows-hardening/av-bypass.md)**.**
### 8- Μέσα
Αν έχετε προβλήματα με το shell, μπορείτε να βρείτε εδώ μια μικρή **συλλογή από τις πιο χρήσιμες εντολές** για pentesters:
- [**Linux**](../linux-hardening/useful-linux-commands.md)
- [**Windows (CMD)**](../windows-hardening/basic-cmd-for-pentesters.md)
- [**Windows (PS)**](../windows-hardening/basic-powershell-for-pentesters/index.html)
### **9-** [**Εξαγωγή**](../generic-hacking/exfiltration.md)
Πιθανώς θα χρειαστεί να **εξάγετε κάποια δεδομένα από το θύμα** ή ακόμα και **να εισάγετε κάτι** (όπως scripts ανύψωσης προνομίων). **Εδώ έχετε ένα** [**post σχετικά με κοινά εργαλεία που μπορείτε να χρησιμοποιήσετε για αυτούς τους σκοπούς**](../generic-hacking/exfiltration.md)**.**
### **10- Ανύψωση Προνομίων**
#### **10.1- Τοπική Ανύψωση Προνομίων**
Αν δεν είστε **root/Διαχειριστής** μέσα στο σύστημα, θα πρέπει να βρείτε έναν τρόπο να **ανυψώσετε τα προνόμια.**\
Εδώ μπορείτε να βρείτε έναν **οδηγό για την ανύψωση προνομίων τοπικά σε** [**Linux**](../linux-hardening/privilege-escalation/index.html) **και σε** [**Windows**](../windows-hardening/windows-local-privilege-escalation/index.html)**.**\
Πρέπει επίσης να ελέγξετε αυτές τις σελίδες σχετικά με το πώς λειτουργεί το **Windows**:
- [**Αυθεντικοποίηση, Διαπιστευτήρια, Προνομία Token και UAC**](../windows-hardening/authentication-credentials-uac-and-efs/index.html)
- Πώς λειτουργεί το [**NTLM**](../windows-hardening/ntlm/index.html)
- Πώς να [**κλέψετε διαπιστευτήρια**](https://github.com/carlospolop/hacktricks/blob/master/generic-methodologies-and-resources/broken-reference/README.md) στα Windows
- Μερικά tricks σχετικά με [_**Active Directory**_](../windows-hardening/active-directory-methodology/index.html)
**Μην ξεχάσετε να ελέγξετε τα καλύτερα εργαλεία για να απαριθμήσετε τις τοπικές διαδρομές ανύψωσης προνομίων σε Windows και Linux:** [**Suite PEAS**](https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite)
#### **10.2- Ανύψωση Προνομίων Τομέα**
Εδώ μπορείτε να βρείτε μια [**μεθοδολογία που εξηγεί τις πιο κοινές ενέργειες για την απαρίθμηση, ανύψωση προνομίων και επιμονή σε ένα Active Directory**](../windows-hardening/active-directory-methodology/index.html). Ακόμα και αν αυτή είναι απλώς μια υποενότητα μιας ενότητας, αυτή η διαδικασία θα μπορούσε να είναι **εξαιρετικά λεπτή** σε μια αποστολή Pentesting/Red Team.
### 11 - POST
#### **11**.1 - Ληστεία
Ελέγξτε αν μπορείτε να βρείτε περισσότερους **κωδικούς πρόσβασης** μέσα στον host ή αν έχετε **πρόσβαση σε άλλες μηχανές** με τα **προνόμια** του **χρήστη** σας.\
Βρείτε εδώ διάφορους τρόπους για να [**dump passwords σε Windows**](https://github.com/carlospolop/hacktricks/blob/master/generic-methodologies-and-resources/broken-reference/README.md).
#### 11.2 - Επιμονή
**Χρησιμοποιήστε 2 ή 3 διαφορετικούς τύπους μηχανισμών επιμονής ώστε να μην χρειαστεί να εκμεταλλευτείτε ξανά το σύστημα.**\
**Εδώ μπορείτε να βρείτε μερικά** [**tricks επιμονής σε active directory**](../windows-hardening/active-directory-methodology/index.html#persistence)**.**
TODO: Complete persistence Post in Windows & Linux
### 12 - Pivoting
Με τα **συγκεντρωμένα διαπιστευτήρια** θα μπορούσατε να έχετε πρόσβαση σε άλλες μηχανές, ή ίσως χρειαστεί να **ανακαλύψετε και να σαρώσετε νέους hosts** (ξεκινήστε ξανά τη Μεθοδολογία Pentesting) μέσα σε νέα δίκτυα όπου είναι συνδεδεμένο το θύμα σας.\
Σε αυτή την περίπτωση, η σήραγγα μπορεί να είναι απαραίτητη. Εδώ μπορείτε να βρείτε [**ένα post που μιλάει για σήραγγες**](../generic-hacking/tunneling-and-port-forwarding.md).\
Πρέπει επίσης να ελέγξετε το post σχετικά με τη [Μεθοδολογία pentesting Active Directory](../windows-hardening/active-directory-methodology/index.html). Εκεί θα βρείτε ωραία tricks για να μετακινηθείτε οριζόντια, να ανυψώσετε προνόμια και να dump διαπιστευτήρια.\
Ελέγξτε επίσης τη σελίδα σχετικά με το [**NTLM**](../windows-hardening/ntlm/index.html), μπορεί να είναι πολύ χρήσιμη για pivoting σε περιβάλλοντα Windows.
### ΠΕΡΙΣΣΟΤΕΡΑ
#### [Εφαρμογές Android](../mobile-pentesting/android-app-pentesting/index.html)
#### **Εκμετάλλευση**
- [**Βασική Εκμετάλλευση Linux**](broken-reference/index.html)
- [**Βασική Εκμετάλλευση Windows**](../binary-exploitation/windows-exploiting-basic-guide-oscp-lvl.md)
- [**Βασικά εργαλεία εκμετάλλευσης**](../binary-exploitation/basic-stack-binary-exploitation-methodology/tools/index.html)
#### [**Βασική Python**](python/index.html)
#### **Tricks Κρυπτογράφησης**
- [**ECB**](../crypto-and-stego/electronic-code-book-ecb.md)
- [**CBC-MAC**](../crypto-and-stego/cipher-block-chaining-cbc-mac-priv.md)
- [**Padding Oracle**](../crypto-and-stego/padding-oracle-priv.md)
{{#include ../banners/hacktricks-training.md}}