Comment sécuriser une application mobile

3 mai 2016 / Développement / Stratégie / 0 commentaire

Avec l’expansion forte du marché applicatif tant pour les particuliers que pour les entreprises, la mobilité est devenue une nouvelle cible de piratage. Mais comment sécuriser une application mobile ?

1. La sécurité en interne de l’application mobile

Une partie des données d’une application peuvent être stockées en interne, c’est-à-dire sur le Smartphone ou la tablette sur lequel elle est installée. Il faut savoir que ces données peuvent facilement être accessibles via divers outils si on est en possession de la tablette ou du Smartphone.

Pour une application hybride, divers moyens existent pour ralentir l’accès aux données et au code, comme minimifier (rendre "compact") le code, ou obfusquer le code (renommer le nom des classes, variables, etc.). Le code devient alors moins lisible et moins accessible.

Une application native sera plus facile à sécuriser par rapport à une application hybride : elle nécessite en effet une étape supplémentaire pour accéder au code (décompilation) ; elle apporte dans les cas extrêmes les possibilités de crypter l’application (utilisé cependant rarement), compiler une partie du code en binaire (plus difficilement accessible), ou encore stocker des classes sur un serveur externe à l’application.

La sécurité peut alors être un paramètre lors du choix de la technologie de développement d’une application.

2. Une sécurité qui dépend également du Système d’Information (SI) externe

La sécurité va dépendre également de la sécurisation des échanges entre l’application mobile et le Système d'Information (SI) de l’entreprise sur lequel elle se connecte. Des protocoles existent pour sécuriser ces échanges : des protocoles d’authentification et d’autorisation tels que WS-Federation, OAuth 2.0, SAML 2.0, ainsi que des protocoles de transfert comme HTTPS.

La mise en place de tels protocoles est régie côté SI : le mobile s’adapte ensuite. Dans le cadre d’une application communiquant sur un SI, si aucune mesure particulière n’a été prise pour sécuriser les échanges sur le SI, le mobile sera inapte à le faire de lui-même.

3. Adapter le niveau de sécurité en fonction du besoin

Cependant, la sécurisation d’une application ou des échanges peut coûter : il est important d’adapter la sécurité en fonction du besoin.

Dans le cas d’une application interne, concernant des domaines de l’entreprise peu sensibles, sur des devices utilisés uniquement en interne, et accédant à une partie restreinte du SI de l’entreprise, le niveau de sécurité requis sera relativement faible. Toute technologie mobile et le minimum en termes de sécurisation des échanges conviennent : une authentification classique peut suffire face aux protocoles de sécurité qui peuvent parfois s’avérer lourds.

A partir du moment où l’application peut communiquer via le réseau externe, ou que les données récupérées du SI sont sensibles (données sur des personnes, clients, produits, etc.), il devient important de prévoir un niveau de sécurité assez fort, par exemple par la mise en place de protocoles d’échanges. Si le terminal mobile sur lequel est l’application est susceptible d’être utilisé par des personnes tierces, autres que les utilisateurs finaux, il est important de limiter le stockage de données sensibles sur celui-ci.

Dans le cadre d’un besoin qui requiert un niveau de sécurité critique (maximal), il est préférable d’adopter une solution native, avec (dans les cas extrêmes) un cryptage de l’application, et une sécurisation maximale des échanges via les protocoles.


Qu'avez vous pensé de cet article ?

FacebookTwitterLinkedInPinterestViadeo

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

*

François Colin

Co-fondateur chez huco

Catégories Développement Stratégie.

Même catégorie

Application WeWay : 1 an après
L’innovation dans le coworking
Technologie native, technologie hybride
#GoogleIO2016 : les points clés