Skip to content

Projet cybersécurité (programmation Python) : Sujets

Dans chaque sujet, un menu est créé par votre programme avec les différentes fonctionnalités proposées. Ce menu s'affiche tant que l'utilisateur n'a pas indiqué qu'il voulait quitter le programme.

Sujet 1 : Le répertoire d'identifiants

Aujourd'hui, beaucoup de sites Web nécessitent une inscription. Ils peuvent avoir des règles différentes par rapport aux symboles acceptés pour les identifiants et les mots de passe, et il faut les faire varier ! C'est donc une bonne idée de répertorier ces informations, pour pouvoir les retrouver efficacement.

Créer un programme qui réalisera les fonctions suivantes :

  • Entrer de nouveaux identifiants
  • Rechercher des identifiants
  • Entrer une alerte

Le programme stockera les identifiants dans un fichier, et ira rechercher dans ce fichier pour récupérer les informations.

L'alerte permet d'indiquer que les identifiants d'un site Web se sont fait hacker : elle indique à l'utilisateur quels autres identifiants doivent être changés, c'est-à-dire ceux qui sont identiques à ceux qui sont entre de mauvaises mains.


Sujet 2 : Le générateur de mots de passe

L'utilisation d'un mot de passe trop simple vous désigne comme une cible idéale pour un piratage de compte. Pour en créer des qui soient sécurisés à coup sûr, il est d'autant plus efficace de déléguer cette tâche à l'ordinateur.

Créer un programme qui réalisera les fonctions suivantes : - Générer un nouveau mot de passe - Générer un nouveau mot de passe très sécurisé - Evaluer le niveau de sécurité d'un mot de passe

Le mot de passe généré sera en partie aléatoire : il faudra notamment utiliser les bibliothèques random et string de Python dont vous trouverez la documentation en ligne.

Il vous faudra rechercher ce qu'est un mot de passe sécurisé : basez-vous notamment sur les informations de l'ANSSI (l'Agence Nationale de la Sécurité des Systèmes d'Information).

Les mots de passe générés seront stockés dans un fichier avec les autres mots de passe ayant le même niveau de sécurité.


Sujet 3 : Testeur de sécurité numérique

Les bonnes pratiques permettant de limiter les traces laissées sur le Web, ainsi que celles nous permettant de nous protéger au maximum des attaques, ne sont pas connues de tous dans la population. Evaluer nos pratiques dans ce domaine peut nous permettre de nous améliorer.

Créer un programme qui proposera une série de questions à réponses multiples (au moins 10), évaluant les bonnes pratiques de l'utilisateur en terme de cybersécurité. Chaque réponse est associée à un score, et le total est calculé automatiquement.

Les questions et les points associées aux réponses doivent provenir d'une recherche sur le sujet.

Au début du test, il est demandé à l'utilisateur un identifiant, et son score final est stocké dans un fichier, avec cet identifiant. On doit aussi pouvoir retrouver le score d'un utilisateur donné.


Sujet 4 : Evaluateur de site Web

La gestion des données personnelles par les grandes entreprises du Web (les réseaux sociaux en particulier) commence à être régulée, notamment grâce aux réglementations européennes. Pour un utilisateur du Web, il est important de savoir quel site est un bon élève, et qui l'est moins.

Créer un programme qui évalue la bonne gestion des données par un site web. Il pose pour cela une série de questions (au moins 10) à réponses multiples, qui doivent être identifiées grâce à une recherche. L'objectif est d'identifier si le site respecte bien les règles comme celles du RGPD.

A la fin du questionnaire, une note est attribuée au site en fonction des réponses fournies et est stockée avec le nom du site dans un fichier. Votre programme permet aussi de retrouver la note attribuée à un site donné.


Sujet 5 : Chiffrement des communications

Ce sujet nécessite plus de compétences en programmation et est destiné aux élèves plus avancés.

Envoyer des messages sur un réseau sans les transformer fait que leur interception peut causer des dégâts, en fonction des informations transmises. Il est aujourd'hui nécessaire de chiffrer les communications pour ne pas qu'elles puissent être comprises par n'importe qui.

Chiffrer un message consiste à le transformer pour le rendre illisible par quelqu'un qui ne connaîtrait pas le moyen de le déchiffrer. Il existe plusieurs façons de le faire : le chiffrement de César, de Vigenère, RSA, avec le XOR...

Choisir une méthode de chiffrement (ou plusieurs) et créer un programme qui chiffre et déchiffre un message qui lui est donné par l'utilisateur, et stocke le résultat dans un fichier, récupérable par celui-ci.