FR | EN
Profile Picture

Jordan Samhi


Doctorant en Génie Logiciel et Sécurité Logicielle


À propos




Je suis Doctorant en sécurité logicielle et génie logiciel à l'Université du Luxembourg. Je fais partie du Centre interdisciplinaire pour la sécurité, la fiabilité et la confiance (SnT) et membre du groupe de recherche TruX. Auparavant, j'ai obtenu mon Master en Informatique et Sécurité des Systèmes d'Information de l'Université de Lorraine (France). Mes intérêts de recherche portent sur les aspects de sécurité du génie logiciel, en particulier dans la détection automatique des logiciels malveillants et des vulnérabilités à l'aide de l'analyse de code statique. Actuellement, je me concentre sur les systèmes Android. Ma thèse est sous la direction du Professeur Jacques Klein et je suis encadré par le Professeur Tegawendé F. Bissyandé et le Professeur Alexandre Bartel.

Mes intérêts de recherche portent sur le génie logiciel et la sécurité logicielle avec un accent sur la dissection des applications Android:

  • Unification du code Android pour effectuer une analyse statique complète des applications Android : Dans les applications Android, le bytecode dex cohabite avec le code natif qui peut être utilisé via l'Interface Java Native. En raison du défi présenté pour analyser le code natif, la plupart du temps, il est négligé par les approches existantes. Cette limitation constitue une grave menace pour la validité car un comportement malveillant peut être implémenté dans le code natif. J'ai donc l'ambition de proposer un modèle unifiant à la fois le bytecode et le code natif dans les applications Android. J'ai proposé un premier pas dans cette direction au niveau du graphe d'appel et avec plus de granularité au niveau des instructions en s'appuyant sur des instructions définies basées sur des heuristiques.
  • Détection de bombes logiques dans les applications Android : De nos jours, l'un des principaux objectifs des auteurs de logiciels malveillants est d'échapper aux analyses. Une technique importante utilisée pour rester sous le radar des analyseurs dynamiques consiste à utiliser des bombes logiques. Ce mécanisme ne déclenche le malveillant que dans des circonstances spécifiques. En tant que problème difficile et non résolu, j'aborde ce problème avec des approches statiques. Après avoir répliqué des approches existantes, j'ai contribué à l'effort de recherche en proposant une approche hybride combinant analyse statique et détection d'anomalies.
  • Amélioration de la communication inter-composants des applications Android : Les applications Android sont construites sur plusieurs composants qui communiquent ensemble via le mécanisme de communication inter-composants (ICC). La modélisation ICC est une clé dans l'analyse statique des applications Android pour assurer le suivi des flux de données à travers les composants, comme indiqué par IccTA. Cependant, un nombre important de méthodes ICC ont été négligées par l'état de l'art, laissant place à un manque de précision dans la modélisation des applications. En effet, j'ai remarqué que l'ICC peut être déclenché par ce que j'ai appelé les méthodes ICC atypiques (AICCM). Pour faire face à cette limitation, j'ai construit RAICC, une approche compatible AICCM. Par conséquent, l'approche statique existante peut s'appuyer sur le RAICC pour effectuer des analyses plus complètes.

TriggerZoo: A Dataset of Android Applications Automatically Infected with Logic Bombs

Jordan Samhi, Tegawendé F. Bissyandé, Jacques Klein.
19ème Conférence Internationale sur le Minage de Dépôt de Logiciels, Données, Pittsburgh, États-Unis (MSR 2022)

JuCify: A Step Towards Android Code Unification for Enhanced Static Analysis

Jordan Samhi, Jun Gao, Nadia Daoudi, Pierre Graux, Henri Hoyez, Xiaoyu Sun, Kevin Allix, Tegawendé F. Bissyandé, Jacques Klein.
44ème IEEE/ACM Conférence Internationale de Génie Logiciel, Pittsburgh, États-Unis (ICSE 2022)

Difuzer: Uncovering Suspicious Hidden Sensitive Operations in Android Apps

Jordan Samhi, Li Li, Tegawendé F. Bissyandé, Jacques Klein.
44ème IEEE/ACM Conférence Internationale de Génie Logiciel, Pittsburgh, États-Unis (ICSE 2022)

On The (In)Effectiveness of Static Logic Bomb Detector for Android Apps

Jordan Samhi, Alexandre Bartel.
IEEE Informatique Fiable et Sécurisée (TDSC 2021)

DexRay: A Simple, yet Effective Deep Learning Approach to Android Malware Detection based on Image Representation of Bytecode

Nadia Daoudi, Jordan Samhi, Abdoul Kader Kaboré, Kevin Allix, Tegawendé F. Bissyandé, Jacques Klein.
2ème Séminaire International sur l'Apprentissage Automatique pour la Sécurité et la Défense, Singapour, Août 2021 (MLHat @KDD)

Les dangers de Pastebin

Jordan Samhi, Tegawendé F. Bissyandé, Jacques Klein.
Multi-System & Internet Security Cookbook (MISC 05/2021)

RAICC: Revealing Atypical Inter-Component Communication in Android Apps

Jordan Samhi, Alexandre Bartel, Tegawendé F. Bissyandé, Jacques Klein.
43ème IEEE/ACM Conférence Internationale de Génie Logiciel, Madrid, Espagne (ICSE 2021)

A first look at Android applications in Google Play related to COVID-19

Jordan Samhi, Kevin Allix, Tegawendé F. Bissyandé, Jacques Klein.
Génie Logiciel Empirique, Springer (EMSE 2021)

Désamorcer des bombes logiques

Jordan Samhi, Alexandre Bartel.
Multi-System & Internet Security Cookbook (MISC 09/2020)

Université du Luxemborug · Centre Interdisciplinaire pour la Sécurité, la Fiabilité et la Confiance · TruX

Doctorant , Novembre 2019 - Présent
Supervisors: Prof. Jacques Klein, Prof. Tegawendé F. Bissyandé

Recherche dans les aspects de sécurité du génie logiciel avec un accent particulier sur la détection des logiciels malveillants et des vulnérabilités. Analyse d'applications Android par rétro-ingénierie et développement de programmes d'analyse statique.

University of Washington · Computer Science & Engineering · Groupe Langages de Programmation et Génie Logiciel · PLSE

Doctorant Visiteur , Février 2022 - Juin 2022
Supervisors: Prof. Jacques Klein, Prof. Tegawendé F. Bissyandé, Prof. Michael Ernst, Prof. René Just

Recherche sur le framework Android pour trouver de nouvelles façons d'activer des bombes logiques sans instruction conditionnelle.

Université du Luxemborug · Centre Interdisciplinaire pour la Sécurité, la Fiabilité et la Confiance · TruX

Stagiaire de Recherche , Avril 2019 - Septembre 2019
Supervisors: Prof. Alexandre Bartel

Revue de la littérature sur l'analyse statique, la détection des logiciels malveillants et la sécurité Android. Rétro-ingénierie d'applications Android. Étude des mécanismes anti-rétro-ingénierie. Développement open-source d'une solution basée sur l'analyse statique pour détecter du code malveillant caché.

Pedro Ruiz Jiménez

Job Étudiant

Université du Luxembourg · Juillet 2022 – Août 2022

Master en Informatique et Science de l'Information.
Étude empirique pour caractériser l'utilisation des fichiers dans les applications Android

Claude Ohlhoff

Thèse de Master

Université du Luxembourg · Avril 2022 – Septembre 2022

Master en Informatique et Science de l'Information.
Détection des vulnérabilités Javascript à l'aide de l'analyse statique.

Fernandez Oliva Cesar Francisco

Stage

Université du Luxembourg · Février 2023 – Septembre 2022

Master en Entrepreneuriat et Innovation.
Développement commercial d'un projet de spin-off de l'Université du Luxembourg

Ye Qiu

Thèse de Master

Université du Luxembourg · Février 2022 – Juin 2022

Master en Informatique et Science de l'Information.
Rechercher dans le Framework Android pour trouver des moyens de déclencher des bombes logiques

François Jullion

Stage

École Nationale Supérieure d’Ingénieurs de Bretagne-Sud (ENSIBS), France · Juin 2021 – Août 2021

Diplôme d'ingénieur en Sécurité Logicielle.
Extraction automatique du code protégé de bombes logiques à l'aide de l' analyse statique pour créer une application Android minimale pour une analyse dynamique plus poussée

Nahom Belay

Job Étudiant

National Institute of Applied Sciences of Toulouse (INSA), France · Juin 2021 – Août 2021

Master en Sécurité Logicielle.
Caractérisation manuelle des familles de logiciels malveillants Android à l'aide d'outils de rétro-ingénierie

Ye Qiu

Job Étudiant

Université du Luxembourg · Mai 2021 – Juillet 2021

Master en Informatique et Science de l'Information.
Caractérisation manuelle des familles de logiciels malveillants Android à l'aide d'outils de rétro-ingénierie

Mansaf Bourkaib

Thèse de Master

Université de Lorraine, France · Mars 2021 – Septembre 2021

Master en Informatique, Sécurité, Réseaux et Architectures Virtuelles.
Extraire des informations sur les applications Android et créer une interface de requête efficace pour sélectionner des applications correspondant à des caractéristiques spécifiques.

Vanitha Varadharajan

Thèse de Master

Université du Luxembourg · Février 2021 – Août 2021

Master en Informatique et Science de l'Information.
Extraction d'échantillons de code source à partir de données publiques Pastebin.

Sean Achtatou

Projet de Licence

Université du Luxembourg · Février 2020 – Juillet 2020

Licence en Informatique et Science de l'Information.
Caractérisation basée sur l'apprentissage automatique des logiciels malveillants Android

Éducation




Doctorat

Université du Luxembourg

Ingénierie logicielle et sécurité logicielle avec un accent sur les applications Android

Novembre 2019 - Présent

Deuxième année de Master

Université de Lorraine, France

Sécurité des Systèmes d'Information

Mention très bien · 1/35 Septembre 2018 - Septembre 2019

Première année de Master

Université de Lorraine, France

Sécurité des Systèmes d'Information

Mention très bien · 1/79 Septembre 2017 - Juin 2018

Licence

Université de Lorraine, France

Informatique et Sciences de l'Information

Mention très bien · 1/88 Septembre 2016 - Juin 2017

Service






Enseignement




Enseignement

Introduction à l'Analyse Statique de Programmes · Février 2022 - Juin 2022

Université du Luxembourg · Master en Informatique et Science de l'Information (MICS2-40)

Introduction à l'Analyse Statique de Programmes et Détection de Logiciels Malveillants · Juin 2021 - Juillet 2021

Université du Luxembourg · Programme Doctoral en Informatique et Génie Informatique

Introduction à l'Analyse Statique de Programmes · Février 2021 - Juin 2021

· Master en Informatique et Science de l'Information (MICS2-40)

Introduction à l'Analyse Statique de Programmes · Février 2020 - Juin 2020

Université du Luxembourg · Master en Informatique et Science de l'Information (MICS2-40)

Projets




Sparta

SPARTA est soutenu par le programme européen H2020, avec l'objectif de développer et de mettre en œuvre une recherche de haut niveau et de concevoir et tester un mécanisme efficace au niveau européen pour la gouvernance et la coordination de la recherche. Fortement guidé par des défis concrets formant une feuille de route ambitieuse pour la recherche et l'innovation en matière de cybersécurité, SPARTA mettra en place des moyens de collaboration uniques, ouvrant la voie à la création de capacités de transformation et à la formation d'un «réseau de compétences» de premier plan à travers le monde.

Onniva

ONNIVA est soutenu par le Fonds National de la Recherche du Luxembourg, dans le but de développer de nouvelles approches pour détecter les vulnérabilités Java. Ce projet se concentre sur les vulnérabilités de désérialisation qui se produisent lorsqu'une application Java accepte des fichiers sérialisés provenant de sources non fiables. Les approches développées dans le cadre de ce projet portent sur les techniques d'analyse statique.

Récompenses





Bourse Doctorale Individuelles Luxembourg
Dissection des Applications Android à l'Aide de l'Analyse Statique - Financement de 44 mois pour un Doctorat.

Mars 2020 - Novembre 2023


Programme FNR JUMP21 Luxembourg
Project Secubox - 250 000€ - Projet de création d'une Start-up

Février 2022 - Juillet 2023