I am a Doctoral Researcher in Software Security and Software Engineering at the University of Luxembourg. I am part of the Interdisciplinary Centre for Security, Reliability and Trust (SnT) and member of TruX research group. Beforehand, I received my Master's degree in Computer and Information Systems Security from the University of Lorraine (France). My research interests are in the security aspects of software engineering, particularly in automatic malware and vulnerability detection using static code analysis. Currently, I am focusing on Android systems. My thesis is under the supervision of Prof. Jacques Klein and I am being advised by Prof. Tegawendé F. Bissyandé and Prof. Alexandre Bartel.
My research interests lie in Software engineering and Software Security with a emphasis on Android apps dissection:
Android code unification to perform comprehensive static analysis of Android apps: In Android apps, dex bytecode cohabits with native code which can be used through the Java Native Interface. Due to the challenge presented to analyze native code, it is most of the time overlooked by existing approaches. This limitation is a severe threat to validity since malicious behavior can be implemented in native code. Therefore, I have the ambition to propose a model unifying both the bytecode and the native code in Android apps. I proposed a first step toward this direction at the call-graph level and with more granularity at the statement level relying on heuristic-based defined statements.
Logic bomb detection in Android apps: Nowadays, one of the main goal of malware writers is to evade analyses. One prominent technique used to stay under the radar of dynamic analyzers is to use logic bombs. This mechanism triggers the malicious only under specific circumstances. As a challenging and unresolved problem, I tackle this problem with static approaches. After replicating existing approaches, I contributed to the research effort by proposing an hybrid approach combining static analysis and anomaly detection.
Improving Android apps Inter-Component Communication: Android apps are built upon several components that communicate together through Inter-Component Communication (ICC) mechanism. Modeling ICC is a key in Android apps static analysis to ensure data flow tracking through components, as reported by IccTA. However, a substantial number of ICC methods were overlook by the state of the art, leaving room to a lack of precision in app modeling. Indeed, I noticed that ICC can be triggered through what I called Atypical ICC methods (AICCM). To cope with this limitation, I built RAICC, an approach that is AICCM-aware. Hence, existing static approach can rely on RAICC to perform more complete analyses.
Jordan Samhi, Tegawendé F. Bissyandé, Jacques Klein.
Multi-System & Internet Security Cookbook (MISC 05/2021)
Jordan Samhi, Alexandre Bartel, Tegawendé F. Bissyandé, Jacques Klein.
43rd IEEE/ACM International Conference on Software Engineering, Madrid, Spain (ICSE 2021)
Jordan Samhi, Kevin Allix, Tegawendé F. Bissyandé, Jacques Klein.
Empirical Software Engineering, Springer (EMSE 2021)
Jordan Samhi, Alexandre Bartel.
Multi-System & Internet Security Cookbook (MISC 09/2020)
University of Luxembourg · Interdisciplinary Centre for Security, Reliability and Trust · TruX
Doctoral Researcher, November 2019 - Present
Supervisor: Prof. Jacques Klein
Research in the security aspects of software engineering with a particular focus on malware and vulnerability detection. Analysis of Android applications by reverse engineering and developing static analysis programs.
University of Luxembourg · Interdisciplinary Centre for Security, Reliability and Trust · SerVal
Research Intern, April 2019 - September 2019
Supervisor: Prof. Alexandre Bartel
Literature review on Static Analysis, Malware detection and Android Security. Reverse-engineering of Android applications. Study of anti-reverse-enrineering mecanisms. Open-source development of a solution based on pure static analysis to detect hidden malicious code.
University of Lorraine, France · March 2021 – September 2021
Master's degree in Information and Computer Security, Networks and Virtual Architectures.
Extracting Android apps information and building efficient query interface for selecting apps matching specific characteristics.
University of Luxembourg · February 2021 – August 2021
Master's degree in Information and Computer Science.
Mining source code samples from Pastebin public data.
University of Luxembourg · February 2020 – July 2020
Bachelor in Information and Computer Science.
Machine-learning based characterization of Android Malware.