Introduction au dossier : Sécurité des applications web

Magazine
Marque
MISC
Numéro
101
|
Mois de parution
janvier 2019
|
Domaines


Résumé
Tôt ou tard, tout expert en sécurité informatique sera confronté à une MEAN, mais avant de déclencher l’alerte à la bombe ou de tirer le signal d’alarme, nous vous invitons à lire ce dossier.

Body

Le terme MEAN désigne un ensemble de composants (MongoDB, Express, Angular et Node.js) constituant un socle technique pour développer des applications en JavaScript. Pour un expert en sécurité informatique, l’utilisation de ce langage de programmation n’est pas très rassurante : langage non typé, problème de transitivité des opérateurs…

Pour un joueur de démineur expérimenté (sous Windows 95/98), le JavaScript est un langage de programmation limité à de simples fonctions basiques comme OnClick() ou Alert() et dont l’usage est purement cosmétique (défilement de texte, titre clignotant…).

Mais depuis, les moteurs d’exécution JavaScript ont bien évolué et les optimisations apportées permettent d’augmenter considérablement les performances et par conséquent, d’en adapter les usages. C’est ainsi que le JavaScript se retrouve utilisé côté serveur (SSJS : Server-Side JavaScript). Il existe de nombreux moteurs pour créer un back-end en JavaScript dont le plus connu est Node.js qui utilise le moteur V8 de Google.

Et ainsi, il devient facile de devenir un développeur « full stack » en JavaScript. Les entreprises recherchent activement ce profil de personne capable d’agir du front-end à la base de données en passant par le back-end. Mais pourtant, un vrai développeur full-stack ça n’existe pas vraiment. Il est très difficile de connaître l’ensemble des technologies nécessaires pour développer un site web. Entre MongoDB, Express, Angular et Node.js, c’est le grand écart !

Ce dossier s’adresse aussi bien aux développeurs « full stack » qu’aux personnes curieuses de mettre en œuvre cette technologie, ils y trouveront un ensemble de bonnes pratiques de développement pour sécuriser leurs applications. Les experts en sécurité applicative pourront s’appuyer sur ce dossier pour conseiller les développeurs.

Ce dossier est accompagné de nombreux prototypes disponibles sur GitHub : https://github.com/MiscMag101. Vous pouvez vous y référer à tout moment pour avoir une vue d’ensemble du code source et tester rapidement les prototypes.


Sur le même sujet

Contournement de l'API Google Play Billing

Magazine
Marque
MISC
Numéro
106
|
Mois de parution
novembre 2019
|
Domaines
Résumé

D'après le blog [INVESP], le montant global des paiements dits « in-app » représentait environ 37 milliards de dollars (USD) en 2017 pour les applications mobiles (Android et Apple). Ce montant représente quasiment la moitié des revenus générés par les applications mobiles (48,2%), dépassant les revenus générés par les régies publicitaires (14%), ainsi que l'achat d'applications (37,8%). Il est donc important que la sécurité de ces paiements soit correctement implémentée afin d'éviter un manque à gagner pour les développeurs des applications. Dans le cadre de cet article, nous avons passé en revue 50 applications Android afin d'étudier le fonctionnement de l'API Google Play Billing et d'identifier les vulnérabilités liées à une mauvaise implémentation. Nous détaillerons en exemple des applications vulnérables.

Introduction au dossier : éprouver la sécurité des applications mobiles

Magazine
Marque
MISC
Numéro
106
|
Mois de parution
novembre 2019
|
Domaines
Résumé

Il serait difficile de vous convaincre qu’aujourd’hui les applications mobiles ne représentent qu’une part minime de nos usages « numériques », et qu’il n’y a aucun risque de sécurité associé. La réalité est en effet bien différente, et dans le domaine des statistiques de la démesure, le volume de smartphones vendus a de quoi impressionner : plus d’un milliard par an depuis 2015.

L’intégration du « Privacy by Design » et de la SSI dans la gestion de projets en mode V ou Agile

Magazine
Marque
MISC
Numéro
106
|
Mois de parution
novembre 2019
|
Domaines
Résumé

L’analyse de l’actualité ne cesse de nous alerter sur la très faible prise en compte de la sécurité native dans un grand nombre de projets et plus particulièrement sur la sous-estimation de l’intégration des exigences de protection de la vie privée.Les articles 25 du RGPD « Protection des données dès la conception et protection des données par défaut » et 32 « Sécurité du traitement », formalisent l’obligation pour le responsable du traitement de prendre en compte les exigences juridiques et techniques pendant toutes les phases des projets de la conception jusqu’à la fin de vie du système cible.Nous nous attacherons à identifier les principaux acteurs concernés et leurs modes de concertation dans les gestions de projets en V ou Agile.Nous chercherons à souligner les points d’attention et d’amélioration dans les deux méthodes.

Élévation de privilèges sur macOS avec CVE-2018-4193

Magazine
Marque
MISC
Numéro
106
|
Mois de parution
novembre 2019
|
Domaines
Résumé

Cet article explique comment exploiter la CVE-2018-4193, une élévation de privilèges affectant les versions de macOS inférieures à 10.13.5, en moins de 10 secondes. Les différents prérequis nécessaires à la compréhension de l’exploit seront détaillés de sorte qu’aucune connaissance préalable de macOS ne soit nécessaire, ce qui permet d’aborder l’exploitation de vulnérabilités dans les démons macOS en général.

Par le même auteur

Contrôle d’identité avec Passport

Magazine
Marque
MISC
Numéro
101
|
Mois de parution
janvier 2019
|
Domaines
Résumé
On ne plaisante pas avec un contrôle d’identité ! Il en va de même en sécurité applicative où l’authentification est une fonctionnalité primordiale à mettre en œuvre. Mais quand il faut s’y mettre, le développeur sera confronté à de nombreuses problématiques et se posera beaucoup de questions sans y trouver de réponses, faute d’avoir un expert en sécurité applicative à sa disposition.Tout au long de cet article, vous suivrez pas à pas le questionnement d’un développeur back end accompagné d’un expert sécurité pour l’aider dans son raisonnement.

Les fondamentaux pour sécuriser une (application) MEAN ?

Magazine
Marque
MISC
Numéro
101
|
Mois de parution
janvier 2019
|
Domaines
Résumé
MEAN est un socle technique composé de MongoDB, Express, Angular et Node.js. Ces quatre composants ont un point commun : le JavaScript ! La connaissance de cet unique langage de programmation vous permet désormais de créer une application web dynamique et moderne. Ce socle technique est donc largement utilisé par les développeurs « full stack » et c’est ainsi que de nombreuses applications MEAN viennent s’installer progressivement dans les SI des entreprises. Mais voilà ! Ce socle technique est-il suffisant pour développer des applications sécurisées qui seront amenées à manipuler des données sensibles (carte bancaire, santé…) ?