Staff

Dominik Helm M.Sc.

Software Technology Group

Contact

work +49 6151 16-21369

Work S2|02 A216
Hochschulstr. 10
64289 Darmstadt

I am a doctoral researcher at the Software Technology Group at TU Darmstadt. I am currently working on modular static analyses for finding bugs and vulnarabilities of Java Bytecode.

Projects

I am a member of ATHENE. ATHENE accompanies and supports the digital transformation of society, business and the public sector to improve cybersecurity and data protection.

ATHENE develops security solutions, regularly advises business and public administration, and supports company founders and startups. In doing so, the knowledge gained from basic research at universities flows into further application-oriented research. With its research and development work, ATHENE covers a very wide range of expertise relevant to various technologies and application areas, such as the security of systems, software, applications, processes, hardware, data or the Internet infrastructures. The research center works in an agile and efficient manner and is thus able to respond to new challenges and changing threat situations even at short notice.

ATHENE is a research facility of the Fraunhofer-Gesellschaft with the participation of the Fraunhofer Institutes SIT and IGD as well as the universities TU Darmstadt and Hochschule Darmstadt. The center is funded by the German Federal Ministry of Education and Research (BMBF) and the Hessian Ministry of Science and the Arts (HMWK) and is located in the city of science Darmstadt, Germany's premier address for cybersecurity research.

I am a member of CRISP. The core focus of CRISP is the topic “Security at Large”.

Through this, CRISP is pursuing an entirely new objective and redefining the focus of research conducted at Darmstadt, taking developments in diverse fields of application into account.

Cybersecurity research to date has generally only considered isolated characteristics and moderately sized systems. CRISP sets out to research security for large systems – from their individual components all the way up to their interaction within comprehensive security solutions.

Teaching

Term Courses
Winter 2021/22
  • Lecturer for 'Program Analysis'
  • Advisor for the team Seresy in 'Software Engineering Project'
  • Topic instructor 'Java 17 Support for OPAL' in 'Software Development Tools'
Winter 2020/21
  • Advisor for the team Megaphone Technologies in 'Software Engineering Project'
Winter 2019/20
  • Advisor for the team Die ConTrolle in 'Software Engineering Project'
  • Teaching Assistant 'Software Engineering'
Winter 2018/19
  • Teaching Assistant 'Software Engineering'
  • Bachelor Thesis, Master Thesis

    OPAL is a comprehensive library for static analyses that is developed in Scala to facilitate the writing of a wide range of different kinds of analyses. OPAL supports the development of analyses ranging from bug/bug pattern detection up to full-scale data-flow analyses.

    In the context of this project we are always searching for students who are interested in static analysis and want to implement them using Scala. Topics of interest are, e.g., to develop needed base static analyses such as Call Graph Algorithm, analyses to find security issues or to visualize software.

    If you are interested in OPAL, do not hesitate to contact Dominik Helm. For further information, you can also go to The OPAL Project

    Examiner: Prof. Dr.-Ing. Mira Mezini

    Supervisors: Dominik Helm, M.Sc., Tobias Roth, M.Sc.

  • Bachelor Thesis

    The goal of this thesis is to develop a hybrid taint analysis of Java and JavaScript based programs.

    Taint analyses are (static) analyses that track the flow of 'tainted' values, such as unsanitized user inputs or private data. With more and more hybrid software built using two or more programming languages, taint analysis must be extended to handle such applications.

    Examiner: Prof. Dr.-Ing. Mira Mezini

    Supervisors: Tobias Roth, M.Sc., Dominik Helm, M.Sc.

  • Master Thesis

    The goal of this thesis is to develop a set of modular immutability analyses using our OPALstatic analysis framework.

    Immutability covers a wide range of different programming language constructs, including fields and classes. These different kinds of immutability interact and depend on each other, making them a prime target for modularly collaborating analyses.

    The thesis should provide unifying definitions of different kinds of immutability and develop corresponding modular analyses for Java bytecode.

    Examiner: Prof. Dr.-Ing. Mira Mezini

    Supervisors: Dominik Helm, M.Sc., Dr.-Ing. Michael Reif

  • Master Thesis

    The goal of this thesis is to develop a new implementation strategy for IFDS analyses using the OPAL static analysis framework.

    IFDS (or interprocedural, finite, distributive, subset problems) is a graph-reachability based algorithm for dataflow analysis that has gained popularity in recent years.

    In this thesis, a new implementation strategy is to be developed and evaluated that can be efficiently parallelized using OPAL's fixed-point solver.

    Examiner: Prof. Dr.-Ing. Mira Mezini

    Supervisors: Dominik Helm, M.Sc., Dr.-Ing. Michael Eichberg

  • Master Thesis

    The goal of this thesis is to develop a static analysis to describe the contents and shapes of Strings in Java Bytecode based programs.

    String contents play an important role, e.g., in determining the targets of reflective method calls or the usage of cryptographic APIs.

    The analysis will be developed as a part of OPAL, a static analysis framework developed at the Software Technology group. It will provide a basis for other analyses in OPAL, such as reflection analyses.

    Examiner: Prof. Dr.-Ing. Mira Mezini

    Supervisors: Dr.-Ing. Michael Eichberg, Dominik Helm, M.Sc.

  • Master Thesis

    The goal of this thesis is to extend the Reactive Async programming model to support static analyses.

    Static analyses performance can benefit greatly from parallelization, but static analyses pose specific requirements to be easily and efficiently parallelized. Reactive Async is a programming model for parallel computations. This thesis should develop extensions to this programming model that ease the implementation of static analyses using Reactive Async. Additionally, different strategies for scheduling individual parallel tasks should be evaluated in order to increase static analysis performance further.

    Examiner: Prof. Dr.-Ing. Mira Mezini

    Supervisors: Dr.-Ing. Michael Eichberg, Dominik Helm, M.Sc.

Publications

Loading...
Loading data from TUbiblio…

Error on loading data

An error has occured when loading publications data from TUbiblio. Please try again later.

  • {{ year }}

    • ({{ publication.date.toString().substring(0,4) }}):
      {{ publication.title }}. ({{ labels[publication.doc_status] }})
      In: {{ publication.book_title }}, {{ publication.number}} ({{ publication.journal_volume }}), {{ publication.volume }}, In: {{ publication.series }}, {{ publication.volume }}, ppp. {{ publication.pagerange }}, {{ publication.place_of_pub }}, {{ publication.publisher }}, {{ publication.institution }}, {{ publication.event_location }}, {{ publication.event_dates }}, ISSN: {{ publication.issn }}, ISBN: {{ publication.isbn }}, [{{ labels[publication.type]?labels[publication.type]:publication.type }}]
    • […]

Number of items in this list: {{ publicationsList.length }}
Only the {{publicationsList.length}} latest publications are displayed here.

View complete list at TUbiblio View this list at TUbiblio