Présentation de l'activité
En tant qu'analyste de sécurité, vous aurez régulièrement besoin d'interroger des nombres et des dates.
Par exemple, vous pouvez être amené à filtrer les dates de correctif pour trouver les machines qui ont besoin d'une mise à jour, ou à filtrer les tentatives de connexion correspondant à une certaine période pour enquêter sur un incident de sécurité.
Les opérateurs courants liés aux nombres, aux dates et à d'autres données temporelles vous aideront à filtrer vos données de manière plus précise. Voici certains des opérateurs que vous allez utiliser :
-
= (égal à)
-
> (supérieur à)
-
< (inférieur à)
-
<> (pas égal à)
-
>= (supérieur ou égal à)
-
<= (inférieur ou égal à)
Dans cette activité, vous allez appliquer ces opérateurs pour filtrer plus précisément des nombres et des dates.
Remarque : Les termes ligne et enregistrement sont utilisés de manière interchangeable tout le long de cette activité.
Scénario
Dans ce scénario, vous enquêterez sur un incident de sécurité récent.
Vous aurez besoin de rassembler des informations liées aux tentatives de connexions pour certaines dates et heures. Cela vous aidera à résoudre l'incident.
Voici comment procéder : premièrement, récupérez les événements de connexion apparus après une certaine date. Deuxièmement, précisez votre recherche en filtrant les connexions correspondant à une plage de dates spécifique. Troisièmement, enquêtez sur les connexions qui ont été effectuées à certaines heures. Quatrièmement, filtrez les tentatives de connexion selon leur ID d'événement.
Il est temps de vous lancer et d'utiliser les opérateurs pour filtrer les données d'un tableau.
Remarque : Dans cet atelier, vous travaillerez avec la base de données "organization" et les tables qu'elle contient.
L'atelier démarre avec la base de données "organization" déjà ouverte dans le shell MariaDB. Vous pouvez commencer l'exercice dès que vous avez cliqué sur le bouton Start Lab (Démarrer l'atelier).
Si vous quittez par inadvertance la base de données "organization" dans le shell MariaDB, vous pouvez vous reconnecter en utilisant la commande sudo mysql organization.
Avis de non-responsabilité : Pour des performances et une compatibilité optimales, nous vous invitons à utiliser Google Chrome ou Mozilla Firefox pour accéder aux ateliers.
Démarrer l'atelier
Vous devez démarrer l'atelier pour accéder aux supports de cours. Pour cela, cliquez sur le bouton vert "Démarrer l'atelier" en haut de l'écran.

Après avoir cliqué sur le bouton Démarrer l'atelier, vous verrez une interface système où vous pourrez suivre les prochaines étapes de l'atelier. Elle devrait se présenter comme suit :

Une fois que vous avez terminé toutes les tâches, reportez-vous à la section Terminer l'atelier qui suit les tâches pour savoir comment mettre fin à l'atelier.
Tâche 1 : Récupérer les tentatives de connexion effectuées après une certaine date
Dans cette tâche, vous devrez enquêter sur un récent incident de sécurité. Pour ce faire, vous collecterez des informations sur les tentatives de connexion effectuées après une certaine date.
- Remplissez la requête SQL de façon à récupérer les données liées aux tentatives de connexion effectuées après le
'2022-05-09' (9 mai 2022). Remplacez X par l'opérateur adéquat :
SELECT *
FROM log_in_attempts
WHERE login_date X '2022-05-09';
Voici la requête appropriée pour résoudre cette étape :
SELECT * FROM
log_in_attempts
WHERE login_date > '2022-05-09';
Réponse : le nombre de tentatives de connexion réalisées après le 9 mai 2022 est de 125.
Ensuite, d'après votre première requête, vous avez besoin d'étendre la plage de dates pour inclure le 9 mai 2022 (2022-05-09) dans votre recherche.
- Remplissez la requête SQL pour récupérer les données liées aux tentatives de connexion effectuées le
'2022-05-09' (9 mai 2022) ou après. Remplacez X par l'opérateur adéquat :
SELECT *
FROM log_in_attempts
WHERE login_date X '2022-05-09';
Voici la requête appropriée pour résoudre cette étape :
SELECT *
FROM log_in_attempts
WHERE login_date >= '2022-05-09';
Réponse : le nombre de tentatives de connexion réalisées à partir du 9 mai 2022 inclus est de 165.
Cliquez surVérifier ma progressionpour vérifier que vous avez correctement effectué cette tâche.
Récupérer les tentatives de connexion effectuées après une certaine date
Tâche 2 : Récupérer les connexions pour une plage de dates
Dans cette tâche, vous devrez préciser la recherche. Les tentatives de connexion effectuées après le 11 mai 2022 (2022-05-11) ne devront pas être incluses. Utilisez les opérateurs BETWEEN et AND pour renvoyer des résultats entre le '2022-05-09' et le '2022-05-11'.
- Exécutez la requête pour récupérer les enregistrements requis. Remplacez
X et Y par les dates requises :
SELECT *
FROM log_in_attempts
WHERE login_date BETWEEN 'X' AND 'Y';
Voici la requête appropriée pour résoudre cette étape :
SELECT *
FROM log_in_attempts
WHERE login_date BETWEEN '2022-05-09' AND '2022-05-11';
Réponse : 123 tentatives de connexion ont eu lieu entre le 9 et le 11 mai 2022.
Cliquez surVérifier ma progressionpour vérifier que vous avez correctement effectué cette tâche.
Récupérer les connexions pour une plage de dates
Tâche 3 : Enquêter sur les connexions à certaines heures
Dans cette tâche, vous devrez enquêter sur les connexions effectuées à certaines heures. Pour ce faire, filtrez les données du tableau log_in_attempts selon l'heure de connexion (login_time).
Premièrement, les heures de travail habituelles de votre organisation commencent à 7h (07:00:00). Récupérez toutes les tentatives de connexion effectuées avant 7h (07:00:00) pour en apprendre plus sur les utilisateurs qui se connectent en dehors des heures de travail habituelles.
- Rédigez une requête SQL qui permet de récupérer les données des tentatives de connexion effectuées avant
'07:00:00' (7h).
Remarque : Placez les données temporelles entre guillemets simples.
Voici la requête appropriée pour résoudre cette étape :
SELECT *
FROM log_in_attempts
WHERE login_time < '07:00:00';
Réponse : le nom d'utilisateur du cinquième enregistrement renvoyé par cette requête est eraab.
La requête de l'étape précédente a renvoyé plus de résultats que nécessaire.
- Modifiez la requête pour qu'elle renvoie les connexions entre
'06:00:00' et '07:00:00' (6h et 7h).
Voici la requête appropriée pour résoudre cette étape :
SELECT *
FROM log_in_attempts
WHERE login_time BETWEEN '06:00:00' AND '07:00:00';
Réponse : la première connexion a eu lieu à 06:01:31.
Cliquez surVérifier ma progressionpour vérifier que vous avez correctement effectué cette tâche.
Enquêter sur les connexions à certaines heures
Tâche 4 : Enquêter sur les connexions selon leur ID d'événement
Dans cette tâche, vous enquêterez sur les tentatives de connexion selon leur ID d'événement. Avec cette requête, vous souhaitez que seuls les champs event_id, username et login_date du tableau log_in_attempts soient renvoyés.
Remarque : La colonne event_id contient des données numériques. Ne placez pas ce type de données entre guillemets.
- Rédigez une requête qui renvoie les tentatives de connexion dont l'
event_id est supérieur ou égal à 100.
Voici la requête appropriée pour résoudre cette étape :
SELECT event_id, username, login_date
FROM log_in_attempts
WHERE event_id >= 100;
Réponse : la date de connexion du troisième résultat retourné est 2022-05-09.
La requête de l'étape précédente a renvoyé plus de données que nécessaire.
- Modifiez la requête pour qu'elle renvoie uniquement les tentatives de connexion dont l'
event_id est compris entre 100 et 150.
Voici la requête appropriée pour résoudre cette étape :
SELECT event_id, username, login_date
FROM log_in_attempts
WHERE event_id BETWEEN 100 AND 150;
Réponse : le nom d'utilisateur du septième résultat est tmitchel.
Cliquez surVérifier ma progressionpour vérifier que vous avez correctement effectué cette tâche.
Enquêter sur les connexions selon leur ID d'événement
Conclusion
Bravo !
Vous avez complété cette activité et vous êtes entraîné à appliquer
- le mot clé
WHERE ;
- les opérateurs
BETWEEN et AND ; et
- les opérateurs liés aux nombres, dates et autres données temporelles (par exemple,
=, >, >=)
afin de filtrer les données d'un tableau.
Filtrer les nombres et les dates pour extraire toute sorte de données n'a dorénavant plus de secrets pour vous !
Terminer l'atelier
Avant de terminer l'atelier, assurez-vous d'avoir accompli toutes les tâches à votre convenance et prenez connaissance des étapes ci-dessous :
- Cliquez sur End Lab (Terminer l'atelier), puis sur Submit (Envoyer). La fermeture de l'atelier supprimera votre accès au shell bash. Vous ne pourrez plus accéder au travail que vous y avez accompli.
- Après la fermeture de l'atelier, une boîte de dialogue d'enquête apparaît. Vous pouvez y noter l'atelier et laisser vos commentaires, si vous le souhaitez.
- Fermez l'onglet de navigateur de l'atelier pour revenir à votre cours.
- Rafraîchissez l'onglet de navigateur du cours après avoir indiqué que cet élément est terminé.