Umeå University's logo

umu.sePublications
Change search
Link to record
Permanent link

Direct link
Kreyssig, Bruno
Alternative names
Publications (6 of 6) Show all publications
Riom, T., Houy, S., Kreyssig, B. & Bartel, A. (2025). Evaluating the maintainability of forward-porting vulnerabilities in fuzzer benchmarks. In: Proceedings. 2025 IEEE International Conference on Software Maintenance and Evolution,: ICSME 2025. Paper presented at 41st IEEE International Conference on Software Maintenance and Evolution, ICSME 2025, Auckland, New Zealand, September 7-12, 2025 (pp. 1-12). IEEE, Article ID 11185945.
Open this publication in new window or tab >>Evaluating the maintainability of forward-porting vulnerabilities in fuzzer benchmarks
2025 (English)In: Proceedings. 2025 IEEE International Conference on Software Maintenance and Evolution,: ICSME 2025, IEEE, 2025, p. 1-12, article id 11185945Conference paper, Published paper (Refereed)
Abstract [en]

Fuzzing is a well-established technique for detecting bugs and vulnerabilities. With the surge of fuzzers and fuzzer platforms being developed such as AFL and OSSFuzz rises the necessity to benchmark these tools' performance. A common problem is that vulnerability benchmarks are based on bugs in old software releases. For this very reason, Magma introduced the notion of forward-porting to reintroduce vulnerable code in current software releases. While their results are promising, the state-of-the-art lacks an update on the maintainability of this approach over time. Indeed, adding the vulnerable code to a recent software version might either break its functionality or make the vulnerable code no longer reachable. We characterise the challenges with forward-porting by reassessing the portability of Magma's CVEs four years after its release and manually reintroducing the vulnerabilities in the current software versions. We find the straightforward process efficient for 17 of the 32 CVEs in our study. We further investigate why a trivial forward-porting process fails in the 15 other CVEs. This involves identifying the commits breaking the forward-porting process and reverting them in addition to the bug fix. While we manage to complete the process for nine of these CVEs, we provide an update on all 15 and explain the challenges we have been confronted with in this process. Thereby, we give the basis for future work towards a sustainable forward-ported fuzzing benchmark.

Place, publisher, year, edition, pages
IEEE, 2025
Series
Proceedings - Conference on Software Maintenance, ISSN 1063-6773, E-ISSN 2576-3148
National Category
Software Engineering
Identifiers
urn:nbn:se:umu:diva-246995 (URN)10.1109/ICSME64153.2025.00011 (DOI)2-s2.0-105022458364 (Scopus ID)979-8-3315-9587-6 (ISBN)979-8-3315-9588-3 (ISBN)
Conference
41st IEEE International Conference on Software Maintenance and Evolution, ICSME 2025, Auckland, New Zealand, September 7-12, 2025
Funder
The Kempe FoundationsWallenberg AI, Autonomous Systems and Software Program (WASP)
Available from: 2025-12-03 Created: 2025-12-03 Last updated: 2025-12-03Bibliographically approved
Kreyssig, B. & Bartel, A. (2025). Gleipner: A benchmark for gadget chain detection in Java Deserialization Vulnerabilities. Paper presented at ACM International Conference on the Foundations of Software Engineering (FSE), Trondheim, Norway, June 23-27, 2025. Proceedings of the ACM on Software Engineering, 2(FSE001), 1-21
Open this publication in new window or tab >>Gleipner: A benchmark for gadget chain detection in Java Deserialization Vulnerabilities
2025 (English)In: Proceedings of the ACM on Software Engineering, E-ISSN 2994-970, Vol. 2, no FSE001, p. 1-21Article in journal (Refereed) Published
Abstract [en]

While multiple recent publications on detecting Java Deserialization Vulnerabilities highlight an increasing relevance of the topic, until now no proper benchmark has been established to evaluate the individual approaches. Hence, it has become increasingly difficult to show improvements over previous tools and trade-offs that were made. In this work, we synthesize the main challenges in gadget chain detection. More specifically, this unveils the constraints program analysis faces in the context of gadget chain detection. From there, we develop Gleipner: the first synthetic, large-scale and systematic benchmark to validate the effectiveness of algorithms for detecting gadget chains in the Java programming language. We then benchmark seven previous publications in the field using Gleipner. As a result, it shows, that (1) our benchmark provides a transparent, qualitative, and sound measurement for the maturity of gadget chain detecting tools, (2) Gleipner alleviates severe benchmarking flaws which were previously common in the field and (3) state-of-the-art tools still struggle with most challenges in gadget chain detection.

Place, publisher, year, edition, pages
New York: Association for Computing Machinery (ACM), 2025
Keywords
Java, benchmark, deserialization, gadget chain, program analysis, vulnerabilitiy
National Category
Security, Privacy and Cryptography
Research subject
Computer Science
Identifiers
urn:nbn:se:umu:diva-249205 (URN)10.1145/3715711 (DOI)
Conference
ACM International Conference on the Foundations of Software Engineering (FSE), Trondheim, Norway, June 23-27, 2025
Funder
Wallenberg AI, Autonomous Systems and Software Program (WASP)
Available from: 2026-01-30 Created: 2026-01-30 Last updated: 2026-02-02Bibliographically approved
Kreyssig, B., Houy, S., Riom, T. & Bartel, A. (2025). Sleeping giants: activating dormant java deserialization gadget chains through stealthy code changes. In: CCS 2025 - Proceedings of the 2025 ACM SIGSAC Conference on Computer and Communications Security: . Paper presented at 32nd ACM SIGSAC Conference on Computer and Communications Security, CCS 2025, Taipei, Taiwan, October 13-17, 2025. (pp. 2668-2682). Association for Computing Machinery (ACM)
Open this publication in new window or tab >>Sleeping giants: activating dormant java deserialization gadget chains through stealthy code changes
2025 (English)In: CCS 2025 - Proceedings of the 2025 ACM SIGSAC Conference on Computer and Communications Security, Association for Computing Machinery (ACM), 2025, p. 2668-2682Conference paper, Published paper (Refereed)
Abstract [en]

Java deserialization gadget chains are a well-researched critical software weakness. The vast majority of known gadget chains rely on gadgets from software dependencies. Furthermore, it has been shown that small code changes in dependencies have enabled these gadget chains. This makes gadget chain detection a purely reactive endeavor. Even if one dependency's deployment pipeline employs gadget chain detection, a gadget chain can still result from gadgets in other dependencies. In this work, we assess how likely small code changes are to enable a gadget chain. These changes could either be accidental or intentional as part of a supply chain attack. Specifically, we show that class serializability is a strongly fluctuating property over a dependency's evolution. Then, we investigate three change patterns by which an attacker could stealthily introduce gadgets into a dependency. We apply these patterns to 533 dependencies and run three state-of-the-art gadget chain detectors both on the original and the modified dependencies. The tools detect that applying the modification patterns can activate/inject gadget chains in 26.08% of the dependencies we selected. Finally, we verify the newly detected chains. As such, we identify dormant gadget chains in 53 dependencies that could be added through minor code modifications. This both shows that Java deserialization gadget chains are a broad liability to software and proves dormant gadget chains as a lucrative supply chain attack vector.

Place, publisher, year, edition, pages
Association for Computing Machinery (ACM), 2025
Keywords
Bug Injection, Dependency, Deserialization, Gadget Chain, Java, Serializable, Software Supply Chain
National Category
Probability Theory and Statistics
Identifiers
urn:nbn:se:umu:diva-247646 (URN)10.1145/3719027.3765031 (DOI)2-s2.0-105023841964 (Scopus ID)9798400715259 (ISBN)
Conference
32nd ACM SIGSAC Conference on Computer and Communications Security, CCS 2025, Taipei, Taiwan, October 13-17, 2025.
Funder
Wallenberg AI, Autonomous Systems and Software Program (WASP)
Available from: 2025-12-19 Created: 2025-12-19 Last updated: 2025-12-19Bibliographically approved
Houy, S., Kreyssig, B., Riom, T., Bartel, A. & McDaniel, P. (2025). SoK: a practical guideline and taxonomy to LLVM’s control flow integrity. In: Proceedings - 2025 IEEE Secure Development Conference, SecDev 2025: . Paper presented at 2025 IEEE Secure Development Conference, SecDev 2025, Indianapolis, IN, USA, 14-16 October, 2025. (pp. 129-141). Institute of Electrical and Electronics Engineers (IEEE)
Open this publication in new window or tab >>SoK: a practical guideline and taxonomy to LLVM’s control flow integrity
Show others...
2025 (English)In: Proceedings - 2025 IEEE Secure Development Conference, SecDev 2025, Institute of Electrical and Electronics Engineers (IEEE), 2025, p. 129-141Conference paper, Published paper (Refereed)
Abstract [en]

Memory corruption vulnerabilities remain one of the most severe threats to software security. They often allow attackers to achieve arbitrary code execution by redirecting a vulnerable program’s control flow. While Control Flow Integrity (CFI) has gained traction to mitigate this exploitation path, developers are not provided with any direction on how to apply CFI to real-world software. In this work, we establish a taxonomy mapping LLVM’s forward-edge CFI variants to memory corruption vulnerability classes, offering actionable guidance for developers seeking to deploy CFI incrementally in existing codebases. Based on the Top 10 Known Exploited Vulnerabilities (KEV) list, we identify four high-impact vulnerability categories and select one representative CVE for each. We evaluate LLVM’s CFI against each CVE and explain why CFI blocks exploitation in two cases while failing in the other two, illustrating its potential and current limitations. Our findings support informed deployment decisions and provide a foundation for improving the practical use of CFI in production systems.

Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers (IEEE), 2025
National Category
Computer Sciences
Identifiers
urn:nbn:se:umu:diva-248183 (URN)10.1109/SecDev66745.2025.00024 (DOI)2-s2.0-105025202216 (Scopus ID)9798331595951 (ISBN)
Conference
2025 IEEE Secure Development Conference, SecDev 2025, Indianapolis, IN, USA, 14-16 October, 2025.
Funder
Wallenberg AI, Autonomous Systems and Software Program (WASP)
Available from: 2026-01-12 Created: 2026-01-12 Last updated: 2026-01-20Bibliographically approved
Kreyßig, B. & Bartel, A. (2024). Analyzing prerequistes of known deserializtion vulnerabilities on java applications. In: EASE '24: proceedings of the 28th international conference on evaluation and assessment in software engineering. Paper presented at 28th International Conference on Evaluation and Assessment in Software Engineering, Salerno, Italy, June 18-21, 2024 (pp. 28-37). New York: Association for Computing Machinery (ACM)
Open this publication in new window or tab >>Analyzing prerequistes of known deserializtion vulnerabilities on java applications
2024 (English)In: EASE '24: proceedings of the 28th international conference on evaluation and assessment in software engineering, New York: Association for Computing Machinery (ACM), 2024, p. 28-37Conference paper, Published paper (Refereed)
Abstract [en]

We analyze known deserialization exploits targeting applications developed in the Java programming language. As previous research implies, fully comprehending this type of vulnerability is no easy task due to the complexity of exploitation, mostly relying on so-called gadget chains. Even considering known gadget chains, knowledge about their prerequisites is rather limited. In particular, the full range of external library versions, adding exploitable gadgets to the Java classpath was formerly only partially examined. We contribute an in-depth analysis of publicly available Java deserialization vulnerabilities. Specifically, we experimentally assess the prerequisites for exploitation, using 46 different gadget chains on 244 JDK and 5,455 Java dependency versions. Previous research only covered 19 of these gadget chains. Furthermore, we develop a command line tool, Gadgecy, for lightweight detection of whether a given Java project contains dependency combinations that enable gadget chains. Using this tool, we conduct an analysis of 2,211 projects from the Apache Distribution directory and 400 well-known Github repositories. The outcome reveals that (1) deserialization exploits apply to recent JDK and library versions, (2) these gadget chains are not being fully reported, and (3) are frequently present in popular Java projects (such as Apache Kafka or Hadoop).

Place, publisher, year, edition, pages
New York: Association for Computing Machinery (ACM), 2024
Keywords
dependency, deserialization, gadget chain, Java, serialization, vulnerabilitiy
National Category
Software Engineering Computer Sciences
Identifiers
urn:nbn:se:umu:diva-227817 (URN)10.1145/3661167.3661176 (DOI)001253340600009 ()2-s2.0-85197420952 (Scopus ID)9798400717017 (ISBN)
Conference
28th International Conference on Evaluation and Assessment in Software Engineering, Salerno, Italy, June 18-21, 2024
Funder
Wallenberg AI, Autonomous Systems and Software Program (WASP)
Available from: 2024-07-12 Created: 2024-07-12 Last updated: 2025-04-24Bibliographically approved
Houy, S., Kreyssig, B. & Bartel, A.CFIghter: automated control-flow integrity enablement and evaluation for legacy C/C++ systems.
Open this publication in new window or tab >>CFIghter: automated control-flow integrity enablement and evaluation for legacy C/C++ systems
(English)Manuscript (preprint) (Other academic)
Abstract [en]

Compiler-based Control-Flow Integrity (CFI) offers strong forward-edge protection but remains challenging to deploy in large C/C++ software due to visibility mismatches, type inconsistencies, and unintended behavioral failures. We present CFIghter, the first fully automated system that enables strict, type-based CFI in real-world projects by detecting, classifying, and repairing unintended policy violations exposed by the test suite. CFIghter integrates whole-program analysis with guided runtime monitoring and iteratively applies the minimal necessary adjustments to CFI enforcement only where required, stopping once all tests pass or remaining failures are deemed unresolvable.

We evaluate CFIghter on four GNU projects. It resolves all visibility-related build errors and automatically repairs 95.8% of unintended CFI violations in the large, multi-library util-linux codebase, while retaining strict enforcement at over 89% of indirect control-flow sites. Across all subjects, CFIghter preserves strict type-based CFI for the majority of the codebase without requiring manual source-code changes, relying only on automatically generated visibility adjustments and localized enforcement scopes where necessary. These results show that automated compatibility repair makes strict compiler CFI practically deployable in mature, modular C software. 

Keywords
control flow integrity, software secuurity, static analysis, program analysis, mitigations, memory corruption
National Category
Security, Privacy and Cryptography
Research subject
Computer Science
Identifiers
urn:nbn:se:umu:diva-248697 (URN)10.48550/arXiv.2512.22701 (DOI)
Available from: 2026-01-19 Created: 2026-01-19 Last updated: 2026-01-20Bibliographically approved
Organisations

Search in DiVA

Show all publications