# Fuite en 1791

**Catégorie:** Web - **Difficulté:** Moyen

**Description:**

<figure><img src="https://4219205392-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fybn4btwQnvitOl9uXz9p%2Fuploads%2FmVlOVpYdx3NdWvi80ILu%2Fimage.png?alt=media&#x26;token=d3ffcb33-b341-4a8e-bb7a-07af22c17eba" alt=""><figcaption></figcaption></figure>

Lien : <https://ddfc.challenges.404ctf.fr/>

**Solution:**

Pour ce challenge, nous arrivons sur une page avec un lien redirigeant vers une autre page :&#x20;

<figure><img src="https://4219205392-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fybn4btwQnvitOl9uXz9p%2Fuploads%2Fl6iLyF01qywWkfoT7q40%2Fimage.png?alt=media&#x26;token=1a0ba05e-17a6-4b9a-bb49-d4878a554a2b" alt="" width="563"><figcaption></figcaption></figure>

Ici il n'y a rien d'intéressant, alors nous allons directement aller sur l'autre page :&#x20;

<figure><img src="https://4219205392-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fybn4btwQnvitOl9uXz9p%2Fuploads%2FsOo1XYwFbkCAmwwIbnp8%2Fimage.png?alt=media&#x26;token=49dd61be-0be6-4f4b-88de-b7ec2176cbd1" alt="" width="563"><figcaption></figcaption></figure>

Ah pas de bol, le lien utilisé n'est plus valide. Regardons le de plus près : \
`https://ddfc.challenges.404ctf.fr/ddfc?expiry=-5625891076&signature=wawF6dC4Hz9g5NyCc3j1KCDcfztFE/sp`

Nous pouvons y voir 2 paramètres : un `expiry` (qui est un timestamp) et une `signature`.

Si nous essayons de changer le timestamp `-5625891076` (qui correspond à la date du *21/09/1791 12:38:05*) par un plus récent, comme `5625891076` (qui correspond à la date du *11/04/2148 12:31:16*) nous avons une autre erreur :&#x20;

<figure><img src="https://4219205392-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fybn4btwQnvitOl9uXz9p%2Fuploads%2FshaDtsum6GT4Nvg21KuG%2Fimage.png?alt=media&#x26;token=2201184c-9864-48a0-a2cb-fc2e25a41f5f" alt="" width="563"><figcaption></figcaption></figure>

La signature n'est plus valide et nous empêche donc d'accéder à la page souhaitée.\
Ici nous allons donc devoir chercher des solutions pour contrer ces problèmes.

Au départ, nous pourrions penser à chercher comment est générée la signature en fonction du timestamp, mais ce n'est pas vraiment l'objectif d'un chall web ici...\
La deuxième solution  est de chercher s'il n'y a pas de vulnérabilités à exploiter avec les paramètres d'une URL. C'est là que nous tombons rapidement sur une vulnerabilité nommée : "[Parameter Pollution](https://book.hacktricks.xyz/pentesting-web/parameter-pollution)".

En lisant la documentation de site très bien fait, nous voyons le principe de cette attaque : ajouter des paramètres à la fin de l'URL pour bypasser les restrictions précédentes.

Dans notre cas, le seul paramètre auquel nous pouvons toucher car nous avons compris son fonctionnement c'est le paramètre `expiry`.\
Alors faisons cela avec l'URL suivante en mettant notre timestamp créé à la fin : \
`https://ddfc.challenges.404ctf.fr/ddfc?expiry=-5625891076&signature=wawF6dC4Hz9g5NyCc3j1KCDcfztFE/sp&expiry=5625891076`

Avec ce lien, nous pouvons enfin accéder à la DDFC :&#x20;

<figure><img src="https://4219205392-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fybn4btwQnvitOl9uXz9p%2Fuploads%2FEDb0rZTgjdzSNGSLf6Jf%2Fimage.png?alt=media&#x26;token=31386f07-902e-4acc-a955-4f75ca0446fe" alt="" width="563"><figcaption></figcaption></figure>

Et trouver le flag tout en bas de la page :&#x20;

<figure><img src="https://4219205392-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fybn4btwQnvitOl9uXz9p%2Fuploads%2FJP5DUOSolG5XARnxNmYu%2Fimage.png?alt=media&#x26;token=f891e959-b2d2-4f89-a541-f1a99144d915" alt="" width="563"><figcaption></figcaption></figure>

<details>

<summary>🚩 FLAG</summary>

```
404CTF{l4_p011uti0n_c_3st_m41}
```

</details>
