Nous recherchons de nouvelles solutions dans le domaine de la sécurité des smartphones. La technologie n'a pas besoin d'être totalement affinée, mais une preuve de concept convaincante devrait pouvoir être mise en œuvre en moins d'un an et avec moins de CHF 100'000.
Le but est que cette technologie aide à analyser de façon efficace et de manière exhaustive la sécurité d’applications pour smartphone créées par une tierce partie, ainsi que les menaces qu'elles peuvent représenter. Cela vise aussi à tester la façon dont les applications se comportent dans un système d’exploitation non modifié (non rooté), tout en offrant la possibilité de les tester dynamiquement.
Vous trouverez ci-dessous quelques exemples de technologies pour la sécurité des smartphones qui présentent de l'intérêt. Nous restons tout de même ouverts à découvrir des technologies, qui ne seraient pas listées, en rapport avec le thème proposé.
Exemple: Tests boîte noire (black-box)
Tester une application sans la décompiler, sans rétro-ingénierie ou sans avoir accès à son code interne ou sa structure. Les tests sont effectués en interagissant avec l'interface utilisateur (UI) et en observant comment l'application interagit avec le réseau ou le téléphone afin de détecter les comportements malveillants. Une approche possible consisterait à utiliser l'apprentissage par renforcement profond (Deep Reinforcement Learning) pour prédire les interactions de l'application, détecter les éléments de l'interface utilisateur ou générer des entrées pour remplir des formulaires ou des modules d'inscription..
Exemple: Protection de la vie privée des utilisateurs grâce aux tests boîte noire (black-box)
L'utilisation de tests black-box des applications permet de détecter les risques liés à la vie privée de l'utilisateur, tel que détecter les permissions dangereuses accordées aux applications (par exemple, lecture de l'état du téléphone, localisation fine...). Les tests black-box pourraient permettre d'évaluer s'il existe une élévation dangereuse des privilèges d'une application (par l'exploitation d'une application légitime ou par l'application malveillante elle-même) par rapport à sa fonctionnalité définie.
Exemple: Tests d'application dynamiques
L'application est testée en cours d'exécution de manière entièrement automatisée. Outre les tests en black-box, il existe d'autres façons de tester dynamiquement les applications, avec ou sans utilisation de l'interface utilisateur. Par exemple, avec l'utilisation de fuzzing ou d'autres techniques d'analyse dynamique.
Exemple : Test du système d'exploitation du smartphone
L'objectif pourrait être de tester le système d'exploitation standard d'un smartphone. Ce serait pour détecter les comportements malveillants ou involontaires du système d'exploitation ou des applications installées par défaut. Les tests pourraient être effectués en interagissant avec l'interface utilisateur ou en détectant les altérations induites par les applications, telles que les changements de permissions ou d'autres propriétés.