# AWS - CloudFront Post Exploitation

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

## CloudFront

Per ulteriori informazioni consulta:

{{#ref}}
../../aws-services/aws-cloudfront-enum.md
{{#endref}}

### `cloudfront:Delete*`
An attacker granted cloudfront:Delete* can delete distributions, policies and other critical CDN configuration objects — for example distributions, cache/origin policies, key groups, origin access identities, functions/configs, and related resources. This can cause service disruption, content loss, and removal of configuration or forensic artifacts.

Per eliminare una distribution, un attacker potrebbe usare:
```bash
aws cloudfront delete-distribution \
--id <DISTRIBUTION_ID> \
--if-match <ETAG>
```
### Man-in-the-Middle

This [**blog post**](https://medium.com/@adan.alvarez/how-attackers-can-misuse-aws-cloudfront-access-to-make-it-rain-cookies-acf9ce87541c) propone un paio di scenari diversi in cui una **Lambda** potrebbe essere aggiunta (o modificata se è già in uso) in una **comunicazione tramite CloudFront** con lo scopo di **rubare** informazioni degli utenti (come il **cookie** di sessione) e **modificare** la **risposta** (iniettando uno script JS malevolo).

#### scenario 1: MitM where CloudFront is configured to access some HTML of a bucket

- **Crea** la **funzione** malevola.
- **Associala** alla CloudFront distribution.
- Imposta il **tipo di evento su "Viewer Response"**.

Accedendo alla risposta potresti rubare il cookie degli utenti e iniettare un JS malevolo.

#### scenario 2: MitM where CloudFront is already using a lambda function

- **Modifica il codice** della funzione lambda per rubare informazioni sensibili

You can check the [**tf code to recreate this scenarios here**](https://github.com/adanalvarez/AWS-Attack-Scenarios/tree/main).

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