Orchestrated Artifact Evaluation

Orchestrated Artifact Evaluation

Automatically evaluating code artifacts from research papers

While there has been a strong push for adding reliable code artifacts to research papers since 2018, the process of evaluating them is still manual and often very tedious. Orchard proposes a standardized framework based on Docker to automatically evaluate those artifacts.

BenchmarkCode Analysis
Key facts
Maturity
Support
C4DT
Active
Lab
Unknown
  • Presentation
  • C4DT work

Starting in the late 2010s, security and computer-related conferences acknowledged the presence (or not) of software artifacts accompanying research papers. This move was motivated by the need to be able to reproduce results in research papers. However, for the conference committees, evaluating these artifacts is still a very time-intensive process. The artifacts need to be tested, potentially modified to actually run them, and then the required infrastructure needs to be available.

In order to streamline evaluation of these software artifacts, Mathias Payer decided to create a platform allowing researchers to submit their software artifacts. These will then be evaluated by the platform, and can be compared to other submitted artifacts. The C4DT Factory and Mathias Payer's lab started working on the "Orchestrated Artifact Evaluation", or Orchard for short.

System Description

The goal of Orchard is to provide a platform for software artifacts related to security papers describing fuzzing methods. For this purpose, it provides a Docker environment with configuration files, based on GitLab CI. In its current state, the platform is run by the "Research Computing Platform (RCP)" at EPFL on a rented server. It allows users to upload new artifacts, which are then evaluated on the server, and compared to other artifacts.

During 2025, the project will be tested with existing software artifacts, and semester student projects at EPFL will help adding more artifacts for testing and refining the use-cases.

If there is an interest from industry or from other entities to extend the system to other types of software artifacts, we're happy to listen to your suggestions.

HexHive Group

HexHive Group
Mathias Payer

Prof. Mathias Payer

Our research focuses on software and systems security. Despite efforts and improvements in bug discovery techniques, some exploitable vulnerabilities will remain. We target techniques that both enable developers to discover and remove bugs and make programs resilient against the exploitation of unknown or unpatched vulnerabilities.
To discover bugs we propose
  • (i) sanitization techniques that enforce a security property such as memory or type safety; given concrete program input, our sanitizers then flag any property violations
  • (ii) fuzzing techniques that leverage static and dynamic analysis to create program inputs to explore program areas that are not yet covered through existing test cases.
To protect against exploitable vulnerabilities, we focus on control-flow integrity using specific language semantics, enforcing type integrity, and protecting selective data. Under this premise, we focus on compiler-based, runtime-based, and language-based protection mechanisms and security policies that increase the resilience of applications against attacks (in the presence of software vulnerabilities).
All prototypes are released as open-source.

This page was last edited on 2024-11-22.