Quiz - Module 10 : Communication IPC
Testez vos connaissances sur la communication interprocessus !
Question 1
Que signifie IPC ?
- A) Internet Protocol Connection
- B) Inter-Process Communication
- C) Internal Process Control
- D) Input Process Channel
Voir la réponse
Réponse : B) Inter-Process Communication
IPC désigne les mécanismes de communication entre processus.
Question 2
Qu'est-ce qu'un pipe (tube) ?
- A) Un virus
- B) Un canal de communication unidirectionnel entre processus
- C) Un fichier
- D) Un protocole réseau
Voir la réponse
Réponse : B) Un canal de communication unidirectionnel entre processus
Les pipes permettent de passer des données entre processus.
Question 3
Qu'est-ce qu'un named pipe (tube nommé) ?
- A) Un fichier temporaire
- B) Un pipe avec un nom accessible par plusieurs processus
- C) Un virus
- D) Un protocole
Voir la réponse
Réponse : B) Un pipe avec un nom accessible par plusieurs processus
Les named pipes persistent et sont accessibles par leur nom.
Question 4
Où sont les named pipes sous Windows ?
- A) C:\Pipes
- B) \.\pipe\
- C) /tmp/
- D) C:\Windows\Pipes
Voir la réponse
Réponse : B) \.\pipe\
Les named pipes Windows sont dans l'espace de noms \.\pipe.
Question 5
Qu'est-ce qu'un socket ?
- A) Un fichier
- B) Un point de communication réseau bidirectionnel
- C) Un virus
- D) Un type de RAM
Voir la réponse
Réponse : B) Un point de communication réseau bidirectionnel
Les sockets permettent la communication locale ou réseau.
Question 6
Quelle est la différence entre TCP et UDP pour les sockets ?
- A) Aucune
- B) TCP est connecté et fiable, UDP est sans connexion et rapide
- C) UDP est plus sécurisé
- D) TCP est plus rapide
Voir la réponse
Réponse : B) TCP est connecté et fiable, UDP est sans connexion et rapide
TCP garantit la livraison, UDP ne le garantit pas.
Question 7
Qu'est-ce que la mémoire partagée ?
- A) Un virus
- B) Une zone mémoire accessible par plusieurs processus
- C) Un fichier
- D) Un protocole
Voir la réponse
Réponse : B) Une zone mémoire accessible par plusieurs processus
La mémoire partagée est le moyen IPC le plus rapide.
Question 8
Qu'est-ce qu'un sémaphore ?
- A) Un virus
- B) Un mécanisme de synchronisation entre processus
- C) Un fichier
- D) Un protocole
Voir la réponse
Réponse : B) Un mécanisme de synchronisation entre processus
Les sémaphores contrôlent l'accès aux ressources partagées.
Question 9
Qu'est-ce qu'un mutex ?
- A) Un virus
- B) Mutual Exclusion - verrou pour un seul processus à la fois
- C) Un fichier
- D) Un protocole
Voir la réponse
Réponse : B) Mutual Exclusion
Un mutex assure qu'un seul thread/processus accède à une ressource.
Question 10
Qu'est-ce qu'un RAT ?
- A) Un rongeur
- B) Remote Access Trojan - cheval de Troie d'accès distant
- C) Un protocole officiel
- D) Un type de RAM
Voir la réponse
Réponse : B) Remote Access Trojan
Un RAT permet à un attaquant de contrôler une machine à distance.
Question 11
Comment un RAT communique-t-il généralement ?
- A) Par email
- B) Via des sockets réseau (connexion inverse ou directe)
- C) Par SMS
- D) Par Bluetooth uniquement
Voir la réponse
Réponse : B) Via des sockets réseau
Les RATs utilisent souvent des reverse shells via TCP.
Question 12
Qu'est-ce qu'un reverse shell ?
- A) Un virus email
- B) Une connexion où la victime se connecte à l'attaquant
- C) Un shell inverse l'ordre des commandes
- D) Un protocole de sécurité
Voir la réponse
Réponse : B) Une connexion où la victime se connecte à l'attaquant
Le reverse shell contourne les pare-feux en initiant la connexion sortante.
Question 13
Qu'est-ce qu'un bind shell ?
- A) Un virus
- B) Un shell qui écoute sur un port, l'attaquant s'y connecte
- C) Un shell graphique
- D) Un protocole
Voir la réponse
Réponse : B) Un shell qui écoute sur un port
Le bind shell ouvre un port sur la victime (souvent bloqué par les pare-feux).
Question 14
Quelle fonction Windows crée un named pipe ?
- A) CreateFile
- B) CreateNamedPipe
- C) MakePipe
- D) NewPipe
Voir la réponse
Réponse : B) CreateNamedPipe
CreateNamedPipe crée un serveur de named pipe.
Question 15
Quelle fonction se connecte à un named pipe ?
- A) OpenPipe
- B) CreateFile avec le chemin du pipe
- C) ConnectPipe
- D) JoinPipe
Voir la réponse
Réponse : B) CreateFile avec le chemin du pipe
On utilise CreateFile("\\.\pipe\NomDuPipe", ...).
Question 16
Qu'est-ce que le modèle client-serveur ?
- A) Un virus
- B) Un modèle où le serveur fournit des services aux clients
- C) Un fichier
- D) Un protocole email
Voir la réponse
Réponse : B) Un modèle où le serveur fournit des services aux clients
Le client demande, le serveur répond.
Question 17
Quelle bibliothèque Python est utilisée pour les sockets ?
- A) os
- B) socket
- C) network
- D) tcp
Voir la réponse
Réponse : B) socket
import socket permet de créer des sockets en Python.
Question 18
Quelle méthode socket écoute les connexions entrantes ?
- A) socket.wait()
- B) socket.listen()
- C) socket.hear()
- D) socket.receive()
Voir la réponse
Réponse : B) socket.listen()
listen() met le socket en mode écoute.
Question 19
Quelle méthode accepte une connexion entrante ?
- A) socket.get()
- B) socket.accept()
- C) socket.receive()
- D) socket.take()
Voir la réponse
Réponse : B) socket.accept()
accept() bloque jusqu'à une nouvelle connexion et retourne le socket client.
Question 20
Quelle méthode envoie des données via socket ?
- A) socket.put()
- B) socket.send()
- C) socket.write()
- D) socket.push()
Voir la réponse
Réponse : B) socket.send()
send() ou sendall() envoient des données.
Question 21
Quelle méthode reçoit des données via socket ?
- A) socket.get()
- B) socket.recv()
- C) socket.read()
- D) socket.pull()
Voir la réponse
Réponse : B) socket.recv()
recv(buffer_size) reçoit des données.
Question 22
Qu'est-ce que localhost ?
- A) Un serveur distant
- B) L'adresse de la machine locale (127.0.0.1)
- C) Un virus
- D) Un protocole
Voir la réponse
Réponse : B) L'adresse de la machine locale (127.0.0.1)
localhost pointe vers la machine elle-même.
Question 23
Qu'est-ce qu'un port ?
- A) Un fichier
- B) Un numéro identifiant un service sur une machine
- C) Un virus
- D) Un câble
Voir la réponse
Réponse : B) Un numéro identifiant un service sur une machine
Les ports permettent de distinguer les services (80=HTTP, 443=HTTPS...).
Question 24
Quelle plage de ports est réservée aux services système ?
- A) 0-1023
- B) 1024-49151
- C) 49152-65535
- D) 0-65535
Voir la réponse
Réponse : A) 0-1023
Les ports 0-1023 sont les ports "bien connus" réservés.
Question 25
Qu'est-ce que la sérialisation ?
- A) Un virus
- B) La conversion d'objets en format transmissible
- C) Un protocole
- D) Un type de RAM
Voir la réponse
Réponse : B) La conversion d'objets en format transmissible
La sérialisation permet d'envoyer des structures de données complexes.
Question 26
Qu'est-ce que JSON ?
- A) Un virus
- B) JavaScript Object Notation - format d'échange de données
- C) Un protocole réseau
- D) Un langage de programmation
Voir la réponse
Réponse : B) JavaScript Object Notation
JSON est un format texte léger pour l'échange de données.
Question 27
Pourquoi encoder les données en bytes pour les sockets ?
- A) Pour la sécurité
- B) Les sockets transmettent des octets, pas des chaînes
- C) Pour la compression
- D) C'est optionnel
Voir la réponse
Réponse : B) Les sockets transmettent des octets, pas des chaînes
Il faut encoder (str.encode()) et décoder (bytes.decode()).
Question 28
Qu'est-ce qu'un deadlock ?
- A) Un virus
- B) Un blocage mutuel où plusieurs processus s'attendent indéfiniment
- C) Un fichier
- D) Un protocole
Voir la réponse
Réponse : B) Un blocage mutuel
Le deadlock survient quand des processus s'attendent mutuellement.
Question 29
Comment éviter les race conditions ?
- A) Utiliser plus de RAM
- B) Utiliser des mécanismes de synchronisation (mutex, sémaphores)
- C) Redémarrer le PC
- D) Supprimer les fichiers
Voir la réponse
Réponse : B) Utiliser des mécanismes de synchronisation
Mutex, sémaphores et verrous évitent les conflits d'accès.
Question 30
Quelle commande liste les named pipes sous Windows ?
- A) dir pipes
- B) Get-ChildItem \.\pipe\ (PowerShell)
- C) list pipes
- D) show pipes
Voir la réponse
Réponse : B) Get-ChildItem \.\pipe\
Get-ChildItem \\.\pipe\ ou [System.IO.Directory]::GetFiles("\\.\pipe\").
Score
| Score | Niveau |
|---|---|
| 27-30 | Excellent ! |
| 22-26 | Très bien ! |
| 17-21 | Bien |
| 12-16 | Correct |
| 0-11 | À revoir |
Quiz du Module 10 - Communication IPC - 30 questions