2.1 KiB
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:
- Implémenter l'API en NodeJS
- Identifier et proposer des métriques pour détecter les scénarios d'attaque
- 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
- 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.
- 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.
- 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