diff --git a/src/pentesting-ci-cd/terraform-security.md b/src/pentesting-ci-cd/terraform-security.md
index 5fe03d7e6..7a3c55553 100644
--- a/src/pentesting-ci-cd/terraform-security.md
+++ b/src/pentesting-ci-cd/terraform-security.md
@@ -6,7 +6,7 @@
[Από τα έγγραφα:](https://developer.hashicorp.com/terraform/intro)
-HashiCorp Terraform είναι ένα **εργαλείο υποδομής ως κώδικα** που σας επιτρέπει να ορίζετε τόσο **πόρους cloud όσο και on-prem** σε αρχεία διαμόρφωσης που είναι αναγνώσιμα από ανθρώπους και μπορείτε να εκδόσετε, να επαναχρησιμοποιήσετε και να μοιραστείτε. Στη συνέχεια, μπορείτε να χρησιμοποιήσετε μια συνεπή ροή εργασίας για να προμηθεύσετε και να διαχειριστείτε όλη την υποδομή σας καθ' όλη τη διάρκεια ζωής της. Το Terraform μπορεί να διαχειριστεί χαμηλού επιπέδου στοιχεία όπως υπολογιστική ισχύ, αποθήκευση και πόρους δικτύωσης, καθώς και υψηλού επιπέδου στοιχεία όπως καταχωρίσεις DNS και χαρακτηριστικά SaaS.
+HashiCorp Terraform είναι ένα **εργαλείο υποδομής ως κώδικα** που σας επιτρέπει να ορίζετε τόσο **πόρους cloud όσο και on-prem** σε αρχεία διαμόρφωσης που είναι αναγνώσιμα από ανθρώπους και μπορείτε να εκδόσετε, να επαναχρησιμοποιήσετε και να μοιραστείτε. Στη συνέχεια, μπορείτε να χρησιμοποιήσετε μια συνεπή ροή εργασίας για να προμηθεύσετε και να διαχειριστείτε όλη την υποδομή σας καθ' όλη τη διάρκεια του κύκλου ζωής της. Το Terraform μπορεί να διαχειριστεί χαμηλού επιπέδου συστατικά όπως υπολογιστική ισχύ, αποθήκευση και πόρους δικτύωσης, καθώς και υψηλού επιπέδου συστατικά όπως καταχωρίσεις DNS και χαρακτηριστικά SaaS.
#### Πώς λειτουργεί το Terraform;
@@ -18,7 +18,7 @@ HashiCorp Terraform είναι ένα **εργαλείο υποδομής ως
Η βασική ροή εργασίας του Terraform αποτελείται από τρία στάδια:
-- **Γράψτε:** Ορίζετε πόρους, οι οποίοι μπορεί να είναι σε πολλούς παρόχους cloud και υπηρεσίες. Για παράδειγμα, μπορεί να δημιουργήσετε μια διαμόρφωση για να αναπτύξετε μια εφαρμογή σε εικονικές μηχανές σε ένα δίκτυο Virtual Private Cloud (VPC) με ομάδες ασφαλείας και έναν ελεγκτή φορτίου.
+- **Γράψτε:** Ορίζετε πόρους, οι οποίοι μπορεί να είναι σε πολλούς παρόχους cloud και υπηρεσίες. Για παράδειγμα, μπορεί να δημιουργήσετε μια διαμόρφωση για να αναπτύξετε μια εφαρμογή σε εικονικές μηχανές σε ένα δίκτυο Virtual Private Cloud (VPC) με ομάδες ασφαλείας και έναν ελεγκτή φόρτου.
- **Σχέδιο:** Το Terraform δημιουργεί ένα σχέδιο εκτέλεσης που περιγράφει την υποδομή που θα δημιουργήσει, θα ενημερώσει ή θα καταστρέψει με βάση την υπάρχουσα υποδομή και τη διαμόρφωσή σας.
- **Εφαρμογή:** Με την έγκριση, το Terraform εκτελεί τις προτεινόμενες ενέργειες με τη σωστή σειρά, σεβόμενο οποιεσδήποτε εξαρτήσεις πόρων. Για παράδειγμα, αν ενημερώσετε τις ιδιότητες ενός VPC και αλλάξετε τον αριθμό των εικονικών μηχανών σε αυτό το VPC, το Terraform θα αναδημιουργήσει το VPC πριν κλιμακώσει τις εικονικές μηχανές.
@@ -34,7 +34,7 @@ HashiCorp Terraform είναι ένα **εργαλείο υποδομής ως
Το Terraform **δεν έχει μια πλατφόρμα που να εκθέτει μια ιστοσελίδα ή μια υπηρεσία δικτύου** που μπορούμε να καταγράψουμε, επομένως, ο μόνος τρόπος για να συμβιβαστεί το terraform είναι να **μπορείτε να προσθέσετε/τροποποιήσετε αρχεία διαμόρφωσης του terraform** ή να **μπορείτε να τροποποιήσετε το αρχείο κατάστασης του terraform** (βλ. κεφάλαιο παρακάτω).
-Ωστόσο, το terraform είναι ένα **πολύ ευαίσθητο στοιχείο** προς συμβιβασμό επειδή θα έχει **προνομιακή πρόσβαση** σε διάφορες τοποθεσίες ώστε να λειτουργεί σωστά.
+Ωστόσο, το terraform είναι ένα **πολύ ευαίσθητο συστατικό** για να συμβιβαστεί επειδή θα έχει **προνομιακή πρόσβαση** σε διάφορες τοποθεσίες ώστε να μπορεί να λειτουργεί σωστά.
Ο κύριος τρόπος για έναν επιτιθέμενο να μπορέσει να συμβιβάσει το σύστημα όπου εκτελείται το terraform είναι να **συμβιβάσει το αποθετήριο που αποθηκεύει τις διαμορφώσεις του terraform**, επειδή σε κάποιο σημείο θα **ερμηνευτούν**.
@@ -44,7 +44,7 @@ HashiCorp Terraform είναι ένα **εργαλείο υποδομής ως
atlantis-security.md
{{#endref}}
-Αν μπορείτε να συμβιβάσετε ένα αρχείο terraform, υπάρχουν διάφοροι τρόποι που μπορείτε να εκτελέσετε RCE όταν κάποιος εκτελεί `terraform plan` ή `terraform apply`.
+Αν μπορείτε να συμβιβάσετε ένα αρχείο terraform, υπάρχουν διάφοροι τρόποι να εκτελέσετε RCE όταν κάποιος εκτελεί `terraform plan` ή `terraform apply`.
### Terraform plan
@@ -124,15 +124,15 @@ value = nonsensitive(var.do_token)
```
## Κατάχρηση Αρχείων Κατάστασης Terraform
-Σε περίπτωση που έχετε δικαιώματα εγγραφής στα αρχεία κατάστασης terraform αλλά δεν μπορείτε να αλλάξετε τον κώδικα terraform, [**αυτή η έρευνα**](https://blog.plerion.com/hacking-terraform-state-privilege-escalation/) προσφέρει μερικές ενδιαφέρουσες επιλογές για να εκμεταλλευτείτε το αρχείο. Ακόμα και αν έχετε δικαιώματα εγγραφής στα αρχεία ρυθμίσεων, η χρήση του διανύσματος των αρχείων κατάστασης είναι συχνά πολύ πιο ύπουλη, καθώς δεν αφήνετε ίχνη στην ιστορία του `git`.
+Σε περίπτωση που έχετε δικαιώματα εγγραφής στα αρχεία κατάστασης terraform αλλά δεν μπορείτε να αλλάξετε τον κώδικα terraform, [**αυτή η έρευνα**](https://blog.plerion.com/hacking-terraform-state-privilege-escalation/) προσφέρει μερικές ενδιαφέρουσες επιλογές για να εκμεταλλευτείτε το αρχείο. Ακόμα και αν έχετε δικαιώματα εγγραφής στα αρχεία ρυθμίσεων, η χρήση του διαύλου των αρχείων κατάστασης είναι συχνά πολύ πιο ύπουλη, καθώς δεν αφήνετε ίχνη στην ιστορία του `git`.
### RCE στο Terraform: δηλητηρίαση αρχείου ρυθμίσεων
Είναι δυνατόν να [δημιουργήσετε έναν προσαρμοσμένο πάροχο](https://developer.hashicorp.com/terraform/tutorials/providers-plugin-framework/providers-plugin-framework-provider) και απλώς να αντικαταστήσετε έναν από τους παρόχους στο αρχείο κατάστασης terraform με τον κακόβουλο ή να προσθέσετε μια ψεύτικη πόρο που αναφέρεται στον κακόβουλο πάροχο.
-Ο πάροχος [statefile-rce](https://registry.terraform.io/providers/offensive-actions/statefile-rce/latest) βασίζεται στην έρευνα και οπλίζει αυτή την αρχή. Μπορείτε να προσθέσετε μια ψεύτικη πόρο και να δηλώσετε την αυθαίρετη εντολή bash που θέλετε να εκτελέσετε στην ιδιότητα `command`. Όταν ενεργοποιηθεί η εκτέλεση του `terraform`, αυτό θα διαβαστεί και θα εκτελεστεί τόσο στα βήματα `terraform plan` όσο και `terraform apply`. Σε περίπτωση του βήματος `terraform apply`, το `terraform` θα διαγράψει την ψεύτικη πόρο από το αρχείο κατάστασης μετά την εκτέλεση της εντολής σας, καθαρίζοντας μετά από τον εαυτό του. Περισσότερες πληροφορίες και μια πλήρη επίδειξη μπορείτε να βρείτε στο [GitHub repository που φιλοξενεί τον πηγαίο κώδικα για αυτόν τον πάροχο](https://github.com/offensive-actions/terraform-provider-statefile-rce).
+Ο πάροχος [statefile-rce](https://registry.terraform.io/providers/offensive-actions/statefile-rce/latest) βασίζεται στην έρευνα και οπλίζει αυτή την αρχή. Μπορείτε να προσθέσετε μια ψεύτικη πόρο και να δηλώσετε την αυθαίρετη εντολή bash που θέλετε να εκτελέσετε στο χαρακτηριστικό `command`. Όταν ενεργοποιηθεί η εκτέλεση του `terraform`, αυτό θα διαβαστεί και θα εκτελεστεί τόσο στα βήματα `terraform plan` όσο και `terraform apply`. Σε περίπτωση του βήματος `terraform apply`, το `terraform` θα διαγράψει την ψεύτικη πόρο από το αρχείο κατάστασης μετά την εκτέλεση της εντολής σας, καθαρίζοντας μετά από τον εαυτό του. Περισσότερες πληροφορίες και μια πλήρη επίδειξη μπορείτε να βρείτε στο [GitHub repository που φιλοξενεί τον πηγαίο κώδικα για αυτόν τον πάροχο](https://github.com/offensive-actions/terraform-provider-statefile-rce).
-Για να το χρησιμοποιήσετε άμεσα, απλώς συμπεριλάβετε τα παρακάτω σε οποιαδήποτε θέση του πίνακα `resources` και προσαρμόστε τις ιδιότητες `name` και `command`:
+Για να το χρησιμοποιήσετε άμεσα, απλώς συμπεριλάβετε τα παρακάτω σε οποιαδήποτε θέση του πίνακα `resources` και προσαρμόστε τα χαρακτηριστικά `name` και `command`:
```json
{
"mode": "managed",
@@ -152,7 +152,7 @@ value = nonsensitive(var.do_token)
]
}
```
-Τότε, μόλις εκτελεστεί το `terraform`, ο κώδικάς σας θα τρέξει.
+Τότε, μόλις εκτελεστεί το `terraform`, ο κώδικάς σας θα εκτελεστεί.
### Διαγραφή πόρων
@@ -182,7 +182,7 @@ value = nonsensitive(var.do_token)
### Αντικαταστήστε τον μαυρισμένο πάροχο
-Σε περίπτωση που συναντήσετε μια κατάσταση όπου το `hashicorp/external` έχει μαυριστεί, μπορείτε να επαναφέρετε τον πάροχο `external` κάνοντας τα εξής. Σημείωση: Χρησιμοποιούμε ένα fork του external provider που δημοσιεύθηκε από https://registry.terraform.io/providers/nazarewk/external/latest. Μπορείτε επίσης να δημοσιεύσετε το δικό σας fork ή επαναφορά.
+Σε περίπτωση που συναντήσετε μια κατάσταση όπου το `hashicorp/external` έχει μαυριστεί, μπορείτε να επαναφέρετε τον πάροχο `external` κάνοντας τα εξής. Σημείωση: Χρησιμοποιούμε ένα fork του πάροχου external που δημοσιεύθηκε από https://registry.terraform.io/providers/nazarewk/external/latest. Μπορείτε επίσης να δημοσιεύσετε το δικό σας fork ή επαναφορά.
```terraform
terraform {
required_providers {
@@ -203,7 +203,7 @@ program = ["sh", "-c", "whoami"]
### [**Snyk Infrastructure as Code (IaC)**](https://snyk.io/product/infrastructure-as-code-security/)
-Η Snyk προσφέρει μια ολοκληρωμένη λύση σάρωσης Infrastructure as Code (IaC) που ανιχνεύει ευπάθειες και κακές ρυθμίσεις σε Terraform, CloudFormation, Kubernetes και άλλες μορφές IaC.
+Snyk προσφέρει μια ολοκληρωμένη λύση σάρωσης Infrastructure as Code (IaC) που ανιχνεύει ευπάθειες και κακές ρυθμίσεις σε Terraform, CloudFormation, Kubernetes και άλλες μορφές IaC.
- **Χαρακτηριστικά:**
- Σάρωση σε πραγματικό χρόνο για ευπάθειες ασφαλείας και ζητήματα συμμόρφωσης.
@@ -223,21 +223,21 @@ snyk iac test /path/to/terraform/code
Σαρώσει την υποδομή cloud που παρέχεται χρησιμοποιώντας [Terraform](https://terraform.io/), [Terraform plan](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Terraform%20Plan%20Scanning.md), [Cloudformation](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Cloudformation.md), [AWS SAM](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/AWS%20SAM.md), [Kubernetes](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Kubernetes.md), [Helm charts](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Helm.md), [Kustomize](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Kustomize.md), [Dockerfile](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Dockerfile.md), [Serverless](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Serverless%20Framework.md), [Bicep](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Bicep.md), [OpenAPI](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/OpenAPI.md), [ARM Templates](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Azure%20ARM%20templates.md), ή [OpenTofu](https://opentofu.org/) και ανιχνεύει παραβιάσεις ασφάλειας και συμμόρφωσης χρησιμοποιώντας σάρωση βασισμένη σε γραφήματα.
-Εκτελεί [Software Composition Analysis (SCA) scanning](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Sca.md) που είναι μια σάρωση ανοιχτών πακέτων και εικόνων για Κοινές Ευπάθειες και Έκθεσεις (CVEs).
+Εκτελεί [Software Composition Analysis (SCA) scanning](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Sca.md) που είναι μια σάρωση ανοιχτών πακέτων και εικόνων για Κοινές Ευπάθειες και Εκθέσεις (CVEs).
```bash
pip install checkov
checkov -d /path/to/folder
```
### [terraform-compliance](https://github.com/terraform-compliance/cli)
-Από τα [**docs**](https://github.com/terraform-compliance/cli): `terraform-compliance` είναι ένα ελαφρύ, εστιασμένο σε ασφάλεια και συμμόρφωση πλαίσιο δοκιμών κατά του terraform για να επιτρέψει τη δυνατότητα αρνητικής δοκιμής για την υποδομή σας ως κώδικα.
+Από τα [**docs**](https://github.com/terraform-compliance/cli): `terraform-compliance` είναι ένα ελαφρύ, επικεντρωμένο στην ασφάλεια και τη συμμόρφωση πλαίσιο δοκιμών κατά του terraform για να επιτρέψει τη δυνατότητα αρνητικής δοκιμής για την υποδομή σας ως κώδικα.
-- **συμμόρφωση:** Διασφαλίστε ότι ο υλοποιημένος κώδικας ακολουθεί τα πρότυπα ασφάλειας, τα δικά σας προσαρμοσμένα πρότυπα
-- **ανάπτυξη με βάση τη συμπεριφορά:** Έχουμε BDD για σχεδόν τα πάντα, γιατί όχι για IaC;
-- **φορητό:** απλά εγκαταστήστε το από το `pip` ή εκτελέστε το μέσω `docker`. Δείτε [Εγκατάσταση](https://terraform-compliance.com/pages/installation/)
-- **προ-ανάπτυξη:** επικυρώνει τον κώδικά σας πριν αναπτυχθεί
-- **εύκολη ενσωμάτωση:** μπορεί να εκτελείται στη ροή σας (ή σε git hooks) για να διασφαλίσει ότι όλες οι αναπτύξεις είναι επικυρωμένες.
-- **διαχωρισμός καθηκόντων:** μπορείτε να διατηρήσετε τις δοκιμές σας σε ένα διαφορετικό αποθετήριο όπου μια ξεχωριστή ομάδα είναι υπεύθυνη.
+- **compliance:** Διασφαλίστε ότι ο υλοποιημένος κώδικας ακολουθεί τα πρότυπα ασφαλείας, τα δικά σας προσαρμοσμένα πρότυπα
+- **behaviour driven development:** Έχουμε BDD για σχεδόν τα πάντα, γιατί όχι για IaC;
+- **portable:** απλά εγκαταστήστε το από το `pip` ή εκτελέστε το μέσω `docker`. Δείτε [Installation](https://terraform-compliance.com/pages/installation/)
+- **pre-deploy:** επικυρώνει τον κώδικά σας πριν αναπτυχθεί
+- **easy to integrate:** μπορεί να εκτελείται στη ροή εργασιών σας (ή σε git hooks) για να διασφαλίσει ότι όλες οι αναπτύξεις είναι επικυρωμένες.
+- **segregation of duty:** μπορείτε να διατηρήσετε τις δοκιμές σας σε ένα διαφορετικό αποθετήριο όπου μια ξεχωριστή ομάδα είναι υπεύθυνη.
> [!NOTE]
> Δυστυχώς, αν ο κώδικας χρησιμοποιεί κάποιους παρόχους στους οποίους δεν έχετε πρόσβαση, δεν θα μπορείτε να εκτελέσετε το `terraform plan` και να τρέξετε αυτό το εργαλείο.
diff --git a/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-dynamodb-privesc.md b/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-dynamodb-privesc.md
index c40956024..cff42367f 100644
--- a/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-dynamodb-privesc.md
+++ b/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-dynamodb-privesc.md
@@ -18,7 +18,7 @@
Η παραχώρηση του `dynamodb:PutResourcePolicy` σε έναν τυχαίο κύριο συμβαίνει συχνά κατά λάθος, αν οι διαχειριστές νομίζουν ότι η παραχώρηση του `dynamodb:Put*` θα επιτρέψει μόνο στον κύριο να προσθέσει στοιχεία στη βάση δεδομένων - ή αν παραχώρησαν αυτό το σύνολο δικαιωμάτων πριν από τον Μάρτιο του 2024...
-Ιδανικά, έχετε επίσης το `dynamodb:GetResourcePolicy`, ώστε να μην αντικαταστήσετε άλλες πιθανώς ζωτικές άδειες, αλλά μόνο να εισάγετε τις πρόσθετες άδειες που χρειάζεστε:
+Ιδανικά, έχετε επίσης το `dynamodb:GetResourcePolicy`, ώστε να μην αντικαταστήσετε άλλες δυνητικά ζωτικές άδειες, αλλά μόνο να εισάγετε τις πρόσθετες άδειες που χρειάζεστε:
```bash
# get the current resource based policy (if it exists) and save it to a file
aws dynamodb get-resource-policy \
@@ -47,9 +47,9 @@ aws dynamodb get-resource-policy \
]
}
```
-Αν χρειαστεί να το προσαρμόσετε, εδώ είναι μια λίστα με όλες τις δυνατές ενέργειες DynamoDB: [AWS Documentation](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Operations.html). Και εδώ είναι μια λίστα με όλες τις ενέργειες που μπορούν να επιτραπούν μέσω μιας πολιτικής βασισμένης σε πόρους *ΚΑΙ ποιες από αυτές μπορούν να χρησιμοποιηθούν διασυνοριακά (σκεφτείτε την εξαγωγή δεδομένων!)*: [AWS Documentation](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-iam-actions.html)
+Αν χρειάζεστε να το προσαρμόσετε, εδώ είναι μια λίστα με όλες τις δυνατές ενέργειες DynamoDB: [AWS Documentation](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Operations.html). Και εδώ είναι μια λίστα με όλες τις ενέργειες που μπορούν να επιτραπούν μέσω μιας πολιτικής βασισμένης σε πόρους *ΚΑΙ ποιες από αυτές μπορούν να χρησιμοποιηθούν διασυνοριακά (σκεφτείτε την εξαγωγή δεδομένων!)*: [AWS Documentation](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-iam-actions.html)
-Τώρα, με το έγγραφο πολιτικής `policy.json` έτοιμο, τοποθετήστε την πολιτική πόρου:
+Τώρα, με το έγγραφο πολιτικής `policy.json` έτοιμο, βάλτε την πολιτική πόρου:
```bash
# put the new policy using the prepared policy file
# dynamodb does weirdly not allow a direct file upload
diff --git a/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-s3-privesc.md b/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-s3-privesc.md
index aa23bfa49..d78cf5d2e 100644
--- a/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-s3-privesc.md
+++ b/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-s3-privesc.md
@@ -6,7 +6,7 @@
### `s3:PutBucketNotification`, `s3:PutObject`, `s3:GetObject`
-Ένας επιτιθέμενος με αυτές τις άδειες σε ενδιαφέροντα buckets μπορεί να είναι σε θέση να καταλάβει πόρους και να κλιμακώσει προνόμια.
+Ένας επιτιθέμενος με αυτές τις άδειες σε ενδιαφέροντα buckets μπορεί να είναι σε θέση να καταλάβει πόρους και να αναβαθμίσει τα προνόμια.
Για παράδειγμα, ένας επιτιθέμενος με αυτές τις **άδειες σε ένα cloudformation bucket** που ονομάζεται "cf-templates-nohnwfax6a6i-us-east-1" θα είναι σε θέση να καταλάβει την ανάπτυξη. Η πρόσβαση μπορεί να δοθεί με την ακόλουθη πολιτική:
```json
@@ -34,7 +34,7 @@
]
}
```
-Και η κατάληψη είναι δυνατή επειδή υπάρχει ένα **μικρό χρονικό παράθυρο από τη στιγμή που το πρότυπο ανεβαίνει** στον κάδο μέχρι τη στιγμή που το **πρότυπο αναπτύσσεται**. Ένας επιτιθέμενος μπορεί απλώς να δημιουργήσει μια **lambda function** στον λογαριασμό του που θα **ενεργοποιείται όταν σταλεί μια ειδοποίηση κάδου**, και **καταλαμβάνει** το **περιεχόμενο** αυτού του **κάδου**.
+Και η κατάληψη είναι δυνατή επειδή υπάρχει ένα **μικρό χρονικό παράθυρο από τη στιγμή που το πρότυπο ανεβαίνει** στο bucket μέχρι τη στιγμή που το **πρότυπο αναπτύσσεται**. Ένας επιτιθέμενος μπορεί απλώς να δημιουργήσει μια **lambda function** στον λογαριασμό του που θα **ενεργοποιείται όταν σταλεί μια ειδοποίηση bucket**, και να **καταλάβει** το **περιεχόμενο** αυτού του **bucket**.
.png>)
@@ -45,17 +45,17 @@
Αυτές είναι οι άδειες για **λήψη και ανέβασμα αντικειμένων στο S3**. Πολλές υπηρεσίες μέσα στο AWS (και εκτός αυτού) χρησιμοποιούν αποθήκευση S3 για να αποθηκεύσουν **αρχεία ρυθμίσεων**.\
Ένας επιτιθέμενος με **δικαιώματα ανάγνωσης** σε αυτά μπορεί να βρει **ευαίσθητες πληροφορίες** σε αυτά.\
-Ένας επιτιθέμενος με **δικαιώματα εγγραφής** σε αυτά θα μπορούσε να **τροποποιήσει τα δεδομένα για να καταχραστεί κάποια υπηρεσία και να προσπαθήσει να κλιμακώσει τα δικαιώματα**.\
+Ένας επιτιθέμενος με **δικαιώματα εγγραφής** σε αυτά θα μπορούσε να **τροποποιήσει τα δεδομένα για να εκμεταλλευτεί κάποια υπηρεσία και να προσπαθήσει να κλιμακώσει τα δικαιώματα**.\
Αυτά είναι μερικά παραδείγματα:
-- Αν μια EC2 instance αποθηκεύει τα **δεδομένα χρήστη σε έναν κάδο S3**, ένας επιτιθέμενος θα μπορούσε να το τροποποιήσει για να **εκτελέσει αυθαίρετο κώδικα μέσα στην EC2 instance**.
+- Αν μια EC2 instance αποθηκεύει τα **δεδομένα χρήστη σε ένα S3 bucket**, ένας επιτιθέμενος θα μπορούσε να το τροποποιήσει για να **εκτελέσει αυθαίρετο κώδικα μέσα στην EC2 instance**.
-### `s3:PutObject`, `s3:GetObject` (προαιρετικά) πάνω από το αρχείο κατάστασης terraform
+### `s3:PutObject`, `s3:GetObject` (προαιρετικό) πάνω από το αρχείο κατάστασης terraform
-Είναι πολύ συνηθισμένο τα [terraform](https://cloud.hacktricks.wiki/en/pentesting-ci-cd/terraform-security.html) αρχεία κατάστασης να αποθηκεύονται σε blob storage παρόχων cloud, π.χ. AWS S3. Η κατάληξη αρχείου για ένα αρχείο κατάστασης είναι `.tfstate`, και τα ονόματα των κάδων συχνά αποκαλύπτουν ότι περιέχουν αρχεία κατάστασης terraform. Συνήθως, κάθε λογαριασμός AWS έχει έναν τέτοιο κάδο για να αποθηκεύει τα αρχεία κατάστασης που δείχνουν την κατάσταση του λογαριασμού.
+Είναι πολύ συνηθισμένο τα [terraform](https://cloud.hacktricks.wiki/en/pentesting-ci-cd/terraform-security.html) αρχεία κατάστασης να αποθηκεύονται σε blob storage παρόχων cloud, π.χ. AWS S3. Η κατάληξη αρχείου για ένα αρχείο κατάστασης είναι `.tfstate`, και τα ονόματα των buckets συχνά αποκαλύπτουν ότι περιέχουν αρχεία κατάστασης terraform. Συνήθως, κάθε λογαριασμός AWS έχει ένα τέτοιο bucket για να αποθηκεύει τα αρχεία κατάστασης που δείχνουν την κατάσταση του λογαριασμού.
Επίσης, συνήθως, σε πραγματικούς λογαριασμούς σχεδόν πάντα όλοι οι προγραμματιστές έχουν `s3:*` και μερικές φορές ακόμη και οι επιχειρηματικοί χρήστες έχουν `s3:Put*`.
-Έτσι, αν έχετε τις άδειες που αναφέρονται πάνω από αυτά τα αρχεία, υπάρχει ένα επιθετικό vector που σας επιτρέπει να αποκτήσετε RCE στην pipeline με τα δικαιώματα του `terraform` - τις περισσότερες φορές `AdministratorAccess`, κάνοντάς σας τον διαχειριστή του λογαριασμού cloud. Επίσης, μπορείτε να χρησιμοποιήσετε αυτό το vector για να κάνετε μια επίθεση άρνησης υπηρεσίας κάνοντάς το `terraform` να διαγράψει νόμιμους πόρους.
+Έτσι, αν έχετε τις άδειες που αναφέρονται πάνω από αυτά τα αρχεία, υπάρχει ένα επιθετικός παράγοντας που σας επιτρέπει να αποκτήσετε RCE στην pipeline με τα δικαιώματα του `terraform` - τις περισσότερες φορές `AdministratorAccess`, κάνοντάς σας τον διαχειριστή του λογαριασμού cloud. Επίσης, μπορείτε να χρησιμοποιήσετε αυτόν τον παράγοντα για να κάνετε μια επίθεση άρνησης υπηρεσίας κάνοντάς τον `terraform` να διαγράψει νόμιμους πόρους.
Ακολουθήστε την περιγραφή στην ενότητα *Abusing Terraform State Files* της σελίδας *Terraform Security* για άμεσα χρησιμοποιήσιμο κώδικα εκμετάλλευσης:
@@ -65,7 +65,7 @@ terraform-security.md#abusing-terraform-state-files
### `s3:PutBucketPolicy`
-Ένας επιτιθέμενος, που πρέπει να είναι **από τον ίδιο λογαριασμό**, αν όχι, το σφάλμα `The specified method is not allowed will trigger`, με αυτή την άδεια θα είναι σε θέση να παραχωρήσει στον εαυτό του περισσότερες άδειες πάνω στους κάδους επιτρέποντάς του να διαβάσει, να γράψει, να τροποποιήσει, να διαγράψει και να εκθέσει κάδους.
+Ένας επιτιθέμενος, που πρέπει να είναι **από τον ίδιο λογαριασμό**, αν όχι, το σφάλμα `The specified method is not allowed will trigger`, με αυτή την άδεια θα είναι σε θέση να παραχωρήσει στον εαυτό του περισσότερες άδειες πάνω από τα bucket(s) επιτρέποντάς του να διαβάσει, να γράψει, να τροποποιήσει, να διαγράψει και να εκθέσει buckets.
```bash
# Update Bucket policy
aws s3api put-bucket-policy --policy file:///root/policy.json --bucket