formations/diiage/C3-2_Sécurité_SI/20171222_Métrologie/tp.md

2.1 KiB

TP - Métrologie appliquée à la sécurité

Objectifs

  • En fonction de scénarios d'attaque identifiés dans une application Web, proposer et implémenter des métriques permettant de détecter ceux ci.

Contexte et contraintes

Soit une application simpliste de "trading" de cryptomonnaie fictive FakeCoin© et les scénarios d'attaque ci dessous:

  1. Implémenter l'API en NodeJS
  2. Identifier et proposer des métriques pour détecter les scénarios d'attaque
  3. Mettre en place les sondes dans l'application et proposer des requêtes avec leur seuil de déclenchement pour l'émission d'alertes.

### API de l'application

  • URL GET /wallet

    Données retournées

    Total de FakeCoins présents dans le portefeuille de l'utilisateur.

  • URL POST /sell

    Paramètres

    amount Nombre de FakeCoins à vendre (à retirer du portefeuille)

    Données retournées

    Total de FakeCoins vendus, si la vente a réussie.

    Contraintes

    • On ne peut pas vendre plus de FakeCoins que l'on en possède dans son portefeuille.
  • URL POST /buy

    Paramètres

    amount Nombre de FakeCoins à acheter (à ajouter au portefeuille)

Scénarios d'attaque

  1. Vol de compte Un attaquant a réussi à obtenir les identifiants d'accès au compte d'un utilisateur et tente d'effectuer des ordres de ventes depuis une autre adresse IP.
  2. Tentative d'abus sur le mécanisme de vente Un utilisateur mal intentionné tente d'effectuer un grand nombre d'ordres de vente en parallèle afin d'exploiter une vulnérabilité sur l'application de la contrainte de vente.
  3. Tentative de blanchiment d'argent Un utilisateur mal intentionné tente d'effectuer du blanchiment d'argent via la plateforme en lançant des ordres d'achat de FakeCoins avec des montants anormalement hauts.

## Ressources