# AWS - S3 Persistencija

{{#include ../../../banners/hacktricks-training.md}}

## S3

Za više informacija pogledajte:

{{#ref}}
../aws-services/aws-s3-athena-and-glacier-enum.md
{{#endref}}

### KMS Klijentska Enkripcija

Kada je proces enkripcije završen, korisnik će koristiti KMS API da generiše novi ključ (`aws kms generate-data-key`) i on će **sacuvati generisani enkriptovani ključ unutar metapodataka** datoteke ([python code example](https://aioboto3.readthedocs.io/en/latest/cse.html#how-it-works-kms-managed-keys)) tako da kada dođe do dekripcije, može ponovo da ga dekriptuje koristeći KMS:

<figure><img src="../../../images/image (226).png" alt=""><figcaption></figcaption></figure>

Stoga, napadač bi mogao da dobije ovaj ključ iz metapodataka i dekriptuje ga sa KMS (`aws kms decrypt`) da bi dobio ključ koji je korišćen za enkripciju informacija. Na ovaj način, napadač će imati ključ za enkripciju i ako se taj ključ ponovo koristi za enkripciju drugih datoteka, moći će da ga iskoristi.

### Korišćenje S3 ACL-a

Iako su obično ACL-ovi kanti onemogućeni, napadač sa dovoljno privilegija mogao bi da ih zloupotrebi (ako su omogućeni ili ako napadač može da ih omogući) da zadrži pristup S3 kanti.

{{#include ../../../banners/hacktricks-training.md}}
