Parmi les propositions suivantes laquelle est correcte ?
La sécurité est indispensable à la sûreté
La sûreté est indispensable à la sécurité
Elles sont indispensables l’une pour l’autre
réponse
Choix 2.En effet, en informatique la sûreté signifie que le système fait exactement ce que nous attendons de lui. S’il est faillible sur ce point, c’est déjà une source de vulnérabilité qui met à mal la sécurité. Ainsi, la sécurité a besoin, d’abord, de la sûreté de fonctionnement.
Quelle est la bonne réponse parmi les propositions suivantes ?
Le virus est un malware
Le malware est un virus
Malware et virus, c'est la même chose
Réponse
Choix 1. Comme cela a été présenté dans le cours, le virus n’est qu’une catégorie de malware. Le virus est un malware visant à nuire le fonctionnement du système avec la possibilité de contamination.
Quelle est la plus grande motivation des attaquants ?
Challenge intellectuel
Espionnage industriel
Appât du gain
Réponse
Choix 3. En effet, c’est derniers temps l’activité d’attaques cybernétiques a été industrialisée dans le but d’engendrer des gains.
Quel facteur augmente la surface d'attaque ?
Les bases de données de vulnérabilité
La course à la digitalisation
Le manque de compétence en sécurité
Réponse
Choix 2. La digitalisation vise la numérisation des activités humaines, et donc, automatiser un maximum de tâches. A chaque fois qu’une tâche humaine est automatisée, il y a risque de vulnérabilités dans sa conception et donc la possibilité de nouvelles attaques.
Quelles sont les propriétés qui font parties de la sécurité de l’information ?
Intégrité
Disponibilité
Consistance
Attention : plusieurs réponses sont attendues pour cette question
Réponse
Choix 1,2. Le manque de consistance peut nuire à la qualité de l’information, mais n’est en aucun cas un facteur de sécurité.
Quelles sont les bonnes stratégies de cybersécurité logicielle ?
Corriger les vulnérabilités lors du développement
Diversifier l'origine des développeurs de logiciels
Partager la connaissance sur les vulnérabilités
Attention : plusieurs réponses sont attendues pour cette question
Réponse
Choix 1,3. La diversification de l'origine des développeurs de logiciels, peut constituer en elle-même une source de vulnérabilité, contrairement aux deux autres propositions. En effet, cette diversification peut mener à des inconsistances dans le code, qui peuvent mener à des vulnérabilités
La sécurité logicielle est une :
Propriété non fonctionnelle
Fonction intégrée dans le système
Fonction ajoutée au système
Réponse
Est-ce que la connaissance du top 10 d’OWASP est suffisante pour l’identification des vulnérabilités logicielles ?
Oui
Non
Cela dépend du type de logiciel
Réponse
Choix 2. Le top 10 d’OWASP donne une information synthétique sur l’ensemble des attaques collectées. Mais, cette information concerne des logiciels venant de domaines diverses. Pour son propre logiciel, nous devons nous concentrer sur les vulnérabilités qui concerne son domaine applicatif, et cela peut nous amener à voir des vulnérabilités qui sont moins bien classées.
À quel moment, du cycle de développement, doit-on définir le plan de tests de sécurité ?
Juste avant le déploiement
À la fin du codage
Lors de la spécification
Réponse
Choix 3. Le test de sécurité concerne aussi des aspects métiers du système. Ainsi, nous devons le spécifier en collaboration avec le client (expert du domaine applicatif). De plus, le plan de test constitue, en sois, des objectifs à atteindre lors du développement. Tout ceci milite pour que le plan de test soit réalisé en tout début du cycle de développement.
Tester tout au long du cycle de vie du développement logiciel permet :
D’identifier un maximum de vulnérabilités
De mieux répartir la charge de travail
De mutualiser le travail d’identification
Réponse
Choix 1. En effet, comme cela avait été dit lors du cours, tout au long du cycle de développement le système est enrichie. Mais cette enrichissement peut être source d’introduction de nouvelles vulnérabilités. D’où la nécessité de ce test permanent.
Qu’est –ce qui est caractéristique des outils d’évaluation de la sécurité ?
Ils évitent des oublis
Ils sont matures et complets
Ils sont d’une bonne aide
Attention : plusieurs réponses sont attendues pour cette question
Réponse
Choix 1,3. La deuxième réponse n’est pas une caractéristique de ce type d’outils, car comme nous l’avons déjà vu, ils ne couvrent pas toutes les vulnérabilités et produisent beaucoup de faux positifs.
Quelle est la personne la plus à même de réaliser la revue de code ?
Celle qui a écrit le code
Une autre personne du même projet
Une autre personne n'ayant aucune connaissance du projet
Réponse
Choix 2. Comme expliqué dans le cours, la personne qui a écrit le code est plus concentrée sur la logique métier, et par conséquent, elle peut passer à coté de quelques éléments de sécurité. Si la personne qui doit relire le code n’a aucune connaissance du projet, peut passer à coté des vulnérabilités liées à la logique métier. Ainsi, comme cela avait été expliqué dans le cours, la deuxième réponse est la seule valable.
Un bad smell logicielle est :
Une erreur de codage
Une vulnérabilité répétée
Une erreur potentielle
Réponse
Les métriques logicielles permettent :
D’identifier de possibles erreurs dans un code
De mesurer le niveau de vulnérabilité d’un code
De calculer le nombre de vulnérabilités par type
Réponse
Choix 1. Initialement, les métriques logicielles avaient été crées pour mesurer la qualité du code. Ainsi, elle vont pouvoir repérer de possibles erreurs qui peuvent être des sources de vulnérabilité. Mais, cela ne peut correspondre à un niveau de vulnérabilité et encore moins à l’identification d’une vulnérabilité particulière.
Quel type de vulnérabilités est difficilement détectable par les outils ?
Celles qui sont liées à la logique métiers
Celles qui sont liées à l’utilisation du réseau
Celles qui sont liées à l’interaction avec l’utilisateur
Réponse
Choix1. En effet, les outils sont génériques et n’ont aucune connaissance sur les différents métiers concernés par les logiciels que nous développons. Ainsi, il est même, parfois, impossible de détecter automatiquement ce type de vulnérabilités.
Quel est l’intérêt du test d’intrusions lors du développement ?
Vérifier que le logiciel ne contient pas de cheval de Troie
Vérifier qu’il n’existe pas de vulnérabilités après le déploiement
Identifier, lors de la maintenance, les possibles attaques réussies
Réponse
Choix 2. Comme cela a avait été vu dans le cours, le test d’intrusion est le dernier élément du plan de test. Il nous permet de vérifier que nous n’avons rien oublié lors des étapes précédentes et que l’intégration du système dans son environnement n’introduit pas de vulnérabilités.
Un test d'intrusions permet :
De trouver un exploit lié à une vulnérabilité
De trouver une cause commune à différentes vulnérabilités
D’assurer une bonne couverture du test
Réponse
Choix 1. Comme cela avait été mentionné lors du cours, un test d’intrusion ne permet pas de trouver une cause commune à plusieurs vulnérabilités. Il ne permet pas non plus d’assurer que notre couverture de test soit bonne. Comme le test d’intrusion est construit, majoritairement, sur la base d’exploits connus, il va nous permettre de trouver un lien entre un exploit et une potentiel vulnérabilité dans notre système.
Parmi les propositions suivantes, lesquelles correspondent à une phase du cycle de développement logiciel ?
Conception
Codage
Utilisation
Attention : plusieurs réponses sont attendues pour cette question
Réponse
L’utilisation du système ne fait pas partie de sa phase de conception.
Quelles propositions font partie des objectifs de rejouer le test d’intrusions lors de la maintenance :
Vérifier qu’il y a eu une progression
Vérifier qu’il n’y a pas eu de régression
Identifier une attaque visant la maintenance
Attention : plusieurs réponses sont attendues pour cette question
Réponse
Choix 1,2. Comme cela avait été expliqué lors du cours, il est nécessaire de vérifier que les vulnérabilités identifiées ont bien été corrigées (progression), et que entre temps nous n’avons pas introduit de nouvelles (non régression). Aucune attaque ne peut viser la phase de conception, et donc l’une de ses étape comme la maintenance.
Le terme anglophone Secure by design fait référence au fait que la sécurité est définie :
Lors de la phase de conception du cycle de développement
Comme un élément inhérent du logiciel
Au niveau des interfaces utilisateurs du logiciel
Réponse
Choix 2. Attention, la première réponse peut induire en erreur. En effet, le secure by design vise une sécurisation du système lors de son développement, et non que lors d’une seule étape (ex. conception) de ce dernier. La sécurisation des interactions avec l’utilisateur ne couvre qu’une partie des objectifs du « secure by design ». Ainsi, rendre la sécurité comme élément inhérent du logiciel est le principal objectif de l’approche « secure by design ».
◁ Précédent | ⌂ Sommaire | Suivant ▷