> For the complete documentation index, see [llms.txt](https://writeups.ayweth20.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://writeups.ayweth20.com/2023/404ctf-2023/analyse-forensique/le-mystere-du-roman-damour.md).

# Le Mystère du roman d'amour

**Catégorie:** Forensic - **Difficulté:** Facile

{% file src="/files/jSVQdd9JhlzHHkq6TBf1" %}

**Description:**

<figure><img src="/files/N0lf2e76j5hRd2BeNJxD" alt=""><figcaption></figcaption></figure>

**Solution:**

Pour ce challenge, ne connaissant pas les fichiers .swp (car je n'utilise que *nano*), j'ai donc fait un `file fichier-etrange.swp` dessus (comme je fais à chaque fois que je ne connais pas un type de fichier) :&#x20;

<figure><img src="/files/LVpL54G2hGieLxy4QZ4t" alt=""><figcaption></figcaption></figure>

Grâce à cette commande, nous récupérons déjà 4 éléments sur les 5 attendus : \
\- Le PID : *168*\
\- L'utilisateur : *jaqueline*\
\- Le nom de la machine : *aime\_ecrire*\
\- Le chemin relatif du fichier : *\~jaqueline/Documents/Livres/404 Histoires d'Amour pour les bibliophiles au coeur d'artichaut/brouillon.txt*

Maintenant il faut récupérer le contenu du fichier. Pour ce faire nous allons utiliser l'outil vim directement avec cette commande `vim -r fichier-etrange.swp` :&#x20;

<figure><img src="/files/mYzCnlpu3J7HTRSTtaJF" alt=""><figcaption></figcaption></figure>

En regardant très vite le contenu du fichier, nous comprenons qu'il s'agit d'une image .png. Nous allons donc enregistrer directement le contenu dans une image pour pourvoir l'utiliser après :&#x20;

<figure><img src="/files/xDwqk0IUqldVfnwkAVid" alt=""><figcaption></figcaption></figure>

Une fois enregistré, nous avons une image PNG prête à l'emploi :&#x20;

<figure><img src="/files/PiYSfXp1xJoIeiRBPpWJ" alt="" width="188"><figcaption></figcaption></figure>

Ici il n'y a pas de flag visible donc nous allons devoir faire un peu de stegano dessus avec [Aperisolve](https://www.aperisolve.com/).

Quand nous l'envoyons sur ce site, nous voyons qu'il y a un QR Code masqué dans l'image :&#x20;

<figure><img src="/files/eER3f1jnaYj3Qf6GpVPs" alt="" width="188"><figcaption></figcaption></figure>

Une fois ce QR Code en main, nous allons essayer d'en extraire son contenu.\
Pour ce faire, nous utilisons simplement notre smartphone ou bien [ce site](https://products.aspose.app/barcode/recognize/qr#/recognized).\
Une fois fait, nous récupérons ce message qui contient la dernière partie du flag que nous cherchions :&#x20;

<figure><img src="/files/OpfELQMFAhoGHy1Yt2qY" alt=""><figcaption></figcaption></figure>

Maintenant avec les 5 parties en main, nous allons pouvoir reconstituer le flag.

Pour rappel :&#x20;

\- Le PID : *168*\
\- L'utilisateur : *jaqueline*\
\- Le nom de la machine : *aime\_ecrire*\
\- Le chemin relatif du fichier : *\~jaqueline/Documents/Livres/404 Histoires d'Amour pour les bibliophiles au coeur d'artichaut/brouillon.txt*\
*-* Contenu du fichier : *3n\_V01L4\_Un\_Dr0l3\_D3\_R0m4N*

<details>

<summary>🚩 FLAG</summary>

```
404CTF{168-~jaqueline/Documents/Livres/404 Histoires d'Amour pour les bibliophiles au coeur d'artichaut/brouillon.txt-jaqueline-aime_ecrire-3n_V01L4_Un_Dr0l3_D3_R0m4N}
```

</details>
