# Roomba tricheur

**Catégorie:** Misc\
**Difficulté:** -\
**Flag:** CYBN{FLYING\_R0OMB4}

## Challenge

{% hint style="info" %}
**Description**

***

Terminez Roomba Simulator.

https://roombaverse.cybernight-c.tf/roombaverse-simulator
{% endhint %}

{% hint style="warning" %}
Ce challenge nécéssite un exécutable qui n'est plus disponible
{% endhint %}

## Solution

Plusieurs façons de faire comme trouver un glitch dans le jeu ou modifier son score via un logiciel comme CheatEngine. Voici deux solutions :

### Glitch

La gravité est intentionnellement mal codée, ce qui permet en montant sur le pouf au sol de voler jusqu'au canapé pour récupérer la dernière boule jaune.

<figure><img src="https://2344605990-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5vTwbgJFy6k3bN4a9ntp%2Fuploads%2FzVObPrNsSr2hrU0OH2HO%2Fglitch.gif?alt=media&#x26;token=6373e32b-c511-4893-9f6a-5c94c8c9cb17" alt=""><figcaption></figcaption></figure>

### CheatEngine

Première étape on démarre le jeu et CheatEngine. Ensuite on attache le processus du jeu dans CheatEngine.

<figure><img src="https://2344605990-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5vTwbgJFy6k3bN4a9ntp%2Fuploads%2Fvz1Kx46oHKvb2Xa7eSzQ%2Fimage.png?alt=media&#x26;token=3dff81eb-0e0a-4b0d-9289-6ab33a3432b9" alt=""><figcaption></figcaption></figure>

<figure><img src="https://2344605990-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5vTwbgJFy6k3bN4a9ntp%2Fuploads%2FuPFIRUHpM2FHgce1NCyF%2Fimage.png?alt=media&#x26;token=d1aede3a-768e-4141-b923-ca740545d9a0" alt=""><figcaption></figcaption></figure>

On fait une première recherche de notre score actuel (**0**) dans CheatEngine. Comme c'est une valeur entière, on peut parier sur le fait que c'est codé en tant que Integer, donc 4 bytes.

<figure><img src="https://2344605990-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5vTwbgJFy6k3bN4a9ntp%2Fuploads%2FlMLpaKlHCqUi7jgolhyG%2Fimage.png?alt=media&#x26;token=f39c8cfd-5f8c-4e30-8595-999c730fddc5" alt=""><figcaption></figcaption></figure>

Maintenant on ramasse une boule jaune dans le jeu pour faire augmenter notre score à 1, puis on relance une recherche avec **Next Scan** sur la valeur 1.

<figure><img src="https://2344605990-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5vTwbgJFy6k3bN4a9ntp%2Fuploads%2FLFk40l9bCPfRIOPmP0ZV%2Fimage.png?alt=media&#x26;token=575a6c74-ee5b-44a2-8d2e-a5c32bea2d3d" alt=""><figcaption></figcaption></figure>

6666 adresses compatibles, c'est trop donc on répète l'opération. On augmente notre score à 2 et l'on recherche la valeur, de mon côté je trouve une soixantaine d'adresses, donc je répète avec mon score à 3 et je trouve finalement 4 adresses :

<figure><img src="https://2344605990-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5vTwbgJFy6k3bN4a9ntp%2Fuploads%2F2Sqq2SOSHByGxuklJuhO%2Fimage.png?alt=media&#x26;token=3f3d6aec-e96a-47fa-99ea-1b9b0ca45bf4" alt=""><figcaption></figcaption></figure>

Maintenant on ajoute ces adresses à notre liste :

<figure><img src="https://2344605990-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5vTwbgJFy6k3bN4a9ntp%2Fuploads%2FmEF8AsQbhXWiOaT1WF5t%2Fimage.png?alt=media&#x26;token=ea198ece-77b9-4170-8b08-6761ad6fea93" alt=""><figcaption></figcaption></figure>

On modifie la valeur des 4 adresses de notre liste en pour les mettre à 5 :

<figure><img src="https://2344605990-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5vTwbgJFy6k3bN4a9ntp%2Fuploads%2FV5mtslDCorHihzZZOu3q%2Fimage.png?alt=media&#x26;token=74dc7117-3f61-4ffe-89d8-aefe33e31ee4" alt=""><figcaption></figcaption></figure>

Enfin, on ramasse une boule jaune, ce qui incrémentera notre score à 6 :

<figure><img src="https://2344605990-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5vTwbgJFy6k3bN4a9ntp%2Fuploads%2F46pGCScslzJFaydKntm1%2Fimage.png?alt=media&#x26;token=779d8dd3-9ea7-4df2-b220-8748c34725e9" alt=""><figcaption></figcaption></figure>
