VLDB 2026 Research / reviewers in the wild / expert
Mila Dalla Preda
dblp:72/6805
· DBLP profile ↗
36ranked-venue papers
22as first author
12since 2021 · last 2026
0000-0003-2761-4347ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 21 · 12 first-author · 7 since 2021Security and privacy · 7 · 3 first-author · 4 since 2021Theory of computation · 6 · 5 first-authorDatabases, data management, data science and information retrieval · 1 · 1 first-author · 1 since 2021
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | A Logic for the Imprecision of Abstract InterpretationsabstractIn numerical analysis, error propagation refers to how small inaccuracies in input data or intermediate computations accumulate and affect the final result, typically governed by the stability and sensitivity of the algorithm with respect to some perturbations. The definition of a similar concept in approximated program analysis is still a challenge. In abstract interpretation, inaccuracy arises from the abstraction itself, and the propagation of this error is dictated by the abstract interpreter. In most cases, such imprecision is inevitable. In this paper we introduce a logic for deriving (upper) bounds on the inaccuracy of an abstract interpretation. We are able to derive a function that bounds the imprecision of the result of an abstract interpreter from the imprecision of its input data. When this holds we have what we call partial local completeness of the abstract interpreter, a weaker form of completeness known in the literature. To this end, we introduce the notion of a generator for a property represented in the abstract domain. Generators allow us to restrict the search space when verifying whether the bounding function holds for a given program and input. We then introduce a program logic, called Error Propagation Logic (EPL), for propagating the error bounds produced by an abstract interpretation. This logic is a combination of correctness and incorrectness logics and a logic for program ω - continuity that is also introduced in this paper. Marco Campion, Mila Dalla Preda, Roberto Giacobazzi, Caterina Urban |
Proc. ACM Program. Lang. | 2 |
| 2025 | Light sensor based covert channels on mobile devices
Mila Dalla Preda, Claudia Greco, Michele Ianni, Francesco Lupia, Andrea Pugliese 0001 |
Inf. Sci. | 1 |
| 2024 | On the Role of Cognizance in Responsibility
Laura Canaia, Mila Dalla Preda |
SAS | 2 |
| 2024 | Editorial: Special issue on software protection and attacks
Michele Ianni, Mila Dalla Preda, Kim-Kwang Raymond Choo, Miguel Correia 0001 |
J. Inf. Secur. Appl. | 2 |
| 2024 | Monotonicity and the Precision of Program AnalysisabstractIt is widely known that the precision of a program analyzer is closely related to intensional program properties, namely, properties concerning how the program is written. This explains, for instance, the interest in code obfuscation techniques, namely, tools explicitly designed to degrade the results of program analysis by operating syntactic program transformations. Less is known about a possible relation between what the program extensionally computes, namely, its input-output relation, and the precision of a program analyzer. In this paper we explore this potential connection in an effort to isolate program fragments that can be precisely analyzed by abstract interpretation, namely, programs for which there exists a complete abstract interpretation. In the field of static inference of numeric invariants, this happens for programs, or parts of programs, that manifest a monotone (either non-decreasing or non-increasing) behavior. We first formalize the notion of program monotonicity with respect to a given input and a set of numerical variables of interest. A sound proof system is then introduced with judgments specifying whether a program is monotone relatively to a set of variables and a set of inputs. The interest in monotonicity is justified because we prove that the family of monotone programs admits a complete abstract interpretation over a specific class of non-trivial numerical abstractions and inputs. This class includes all non-relational abstract domains that refine interval analysis (i.e., at least as precise as the intervals abstraction) and that satisfy a topological convexity hypothesis. Marco Campion, Mila Dalla Preda, Roberto Giacobazzi, Caterina Urban |
Proc. ACM Program. Lang. | 2 |
| 2023 | Towards Obfuscation of Programmable Logic ControllersabstractRecently published scan data on Shodan shows how 105K Industrial Control Systems (ICSs) around the world are directly accessible from the Internet. In particular, highly sensitive components, such as Programmable Logic Controllers (PLCs), are potentially accessible to attackers who can implement several kinds of attacks. On the other hand, to accomplish non-trivial cyber-physical attacks the attacker must possess a sufficient degree of process comprehension on the physical processes within the target ICS. Vittoria Cozza, Mila Dalla Preda, Marco Lucchese, Massimo Merro, Nicola Zannone |
ARES | 2 |
| 2023 | Exploring NFT Validation through Digital WatermarkingabstractBlockchain technology has brought notable advancements to diverse industries. The introduction of non-fungible tokens (NFTs) has particularly led to a lucrative market for unique digital asset ownership verification, including digital artworks. However, this trend has also given rise to concerns such as fraud, stolen works, authenticity, and copyright issues. Illicit traders exploit the market by trading unauthorized copies of digital objects as NFTs. In this study, we propose the use of digital watermarking as a means to establish the authenticity of NFTs and enhance the marketplace’s credibility. Mila Dalla Preda, Francesco Masaia |
ARES | 1 |
| 2023 | A Formal Framework to Measure the Incompleteness of Abstract Interpretations
Marco Campion, Caterina Urban, Mila Dalla Preda, Roberto Giacobazzi |
SAS | 3 |
| 2023 | Enhancing Ethereum smart-contracts static analysis by computing a precise Control-Flow Graph of Ethereum bytecodeabstractThe immutable nature of Ethereum transactions, and consequently Ethereum smart-contracts, has stimulated the proliferation of many approaches aiming at detecting defects and security issues before the deployment of smart-contracts on the blockchain. Indeed, the actions performed by smart-contracts instantiated on the blockchain, possibly involving substantial financial value, cannot be undone. Unfortunately, smart-contracts source code is not always available, hence approaches based on static analysis have very often to face the problem of inspecting the compiled Ethereum Virtual Machine (EVM) bytecode, retrieved directly from the blockchain. However, due to the intrinsic complexity of EVM bytecode (especially in jumps address resolution), the state-of-the-art static analysis-based solutions have poor accuracy in the automated detection of Ethereum smart-contracts programming defects and vulnerabilities. This paper presents a novel approach based on symbolic execution of the EVM operands stack that allows to resolve jumps address in the EVM bytecode and to construct a precise Control-Flow Graph (CFG) of compiled smart-contracts. Many static analysis techniques are based on a CFG-based representation of the smart-contract to validate, and would therefore benefit from our approach. We have implemented the CFG reconstruction algorithm in a tool called EtherSolve . Then, we have validated the tool on a large dataset of real-world Ethereum smart-contracts, showing that EtherSolve extracts more precise CFGs, w.r.t. state-of-the-art available approaches. Finally, we have extended EtherSolve with two detectors for two of the most prominent Ethereum smart-contracts vulnerabilities (Reentrancy and Tx.origin). Experimental results show that exploiting the proposed CFG reconstruction static analysis, leads to more accurate vulnerabilities detection, w.r.t. state-of-the-art security tools. Editor’s note: Open Science material was validated by the Journal of Systems and Software Open Science Board. Michele Pasqua, Andrea Benini, Filippo Contro, Marco Crosara, Mila Dalla Preda, Mariano Ceccato |
J. Syst. Softw. | 5 |
| 2023 | Dataset Characteristics for Reliable Code Authorship AttributionabstractCode authorship attribution aims to identify the author of software source code according to the author’s unique coding style characteristics. The lack of benchmark data in the field, forced researchers to employ various resources that often did not reflect real programming practices. Throughout the years, research studies have used textbook examples, students’ programming assignments, faculty code samples, code from programming competitions and files retrieved from open-source repositories as research objects. The diversity of the data raised concerns about the feasibility of capturing the appropriate data characteristics to reliably evaluate code attribution. In this paper, we investigate these concerns and analyze the effect of the dataset characteristics and feature elimination techniques on the accuracy of code attribution. Unlike the majority of the work done in this field, which mainly concentrates on designing new features, we explore the nature of the data used in previous studies and assess the factors that influence the attribution task. Within this analysis, we investigate the robustness of three feature sets regarded as reliable benchmarks in the attribution research. Based on our findings, we define a process for deriving a reduced set of features for accurate and predictable attribution and make recommendations on the dataset characteristics. Farzaneh Abazari, Enrico Branca, Norah Ridley, Natalia Stakhanova, Mila Dalla Preda |
IEEE Trans. Dependable Secur. Comput. | 5 |
| 2022 | Partial (In)Completeness in abstract interpretation: limiting the imprecision in program analysisabstractImprecision is inherent in any decidable (sound) approximation of undecidable program properties. In abstract interpretation this corresponds to the release of false alarms, e.g., when it is used for program analysis and program verification. As all alarming systems, a program analysis tool is credible when few false alarms are reported. As a consequence, we have to live together with false alarms, but also we need methods to control them. As for all approximation methods, also for abstract interpretation we need to estimate the accumulated imprecision during program analysis. In this paper we introduce a theory for estimating the error propagation in abstract interpretation, and hence in program analysis. We enrich abstract domains with a weakening of a metric distance. This enriched structure keeps coherence between the standard partial order relating approximated objects by their relative precision and the effective error made in this approximation. An abstract interpretation is precise when it is complete. We introduce the notion of partial completeness as a weakening of precision. In partial completeness the abstract interpreter may produce a bounded number of false alarms. We prove the key recursive properties of the class of programs for which an abstract interpreter is partially complete with a given bound of imprecision. Then, we introduce a proof system for estimating an upper bound of the error accumulated by the abstract interpreter during program analysis. Our framework is general enough to be instantiated to most known metrics for abstract domains. Marco Campion, Mila Dalla Preda, Roberto Giacobazzi |
Proc. ACM Program. Lang. | 2 |
| 2021 | EtherSolve: Computing an Accurate Control-Flow Graph from Ethereum BytecodeabstractMotivated by the immutable nature of Ethereum smart contracts and of their transactions, quite many approaches have been proposed to detect defects and security problems before smart contracts become persistent in the blockchain and they are granted control on substantial financial value. Because smart contracts source code might not be available, static analysis approaches mostly face the challenge of analysing compiled Ethereum bytecode, that is available directly from the official blockchain. However, due to the intrinsic complexity of Ethereum bytecode (especially in jump resolution), static analysis encounters significant obstacles that reduce the accuracy of exiting automated tools. This paper presents a novel static analysis algorithm based on the symbolic execution of the Ethereum operand stack that allows us to resolve jumps in Ethereum bytecode and to construct an accurate control-flow graph (CFG) of the compiled smart contracts. EtherSolve is a prototype implementation of our approach. Experimental results on a significant set of real world Ethereum smart contracts show that EtherSolve improves the accuracy of the execrated CFGs with respect to the state of the art available approaches. Many static analysis techniques are based on the CFG representation of the code and would therefore benefit from the accurate extraction of the CFG. For example, we implemented a simple extension of EtherSolve that allows to detect instances of the re-entrancy vulnerability. Filippo Contro, Marco Crosara, Mariano Ceccato, Mila Dalla Preda |
ICPC | 4 |
| 2020 | Formal Framework for Reasoning About the Precision of Dynamic Analysis
Mila Dalla Preda, Roberto Giacobazzi, Niccolò Marastoni |
SAS | 1 |
| 2019 | Adversarial Authorship Attribution in Open-Source ProjectsabstractOpen-source software is open to anyone by design, whether it is a community of developers, hackers or malicious users. Authors of open-source software typically hide their identity through nicknames and avatars. However, they have no protection against authorship attribution techniques that are able to create software author profiles just by analyzing software characteristics. In this paper we present an author imitation attack that allows to deceive current authorship attribution systems and mimic a coding style of a target developer. Withing this context we explore the potential of the existing attribution techniques to be deceived. Our results show that we are able to imitate the coding style of the developers based on the data collected from the popular source code repository, GitHub. To subvert author imitation attack, we propose a novel author obfuscation approach that allows us to hide the coding style of the author. Unlike existing obfuscation tools, this new obfuscation technique uses transformations that preserve code readability. We assess the effectiveness of our attacks on several datasets produced by actual developers from GitHub, and participants of the GoogleCodeJam competition. Throughout our experiments we show that the author hiding can be achieved by making sensible transformations which significantly reduce the likelihood of identifying the author's style to 0% by current authorship attribution systems. Alina Matyukhina, Natalia Stakhanova, Mila Dalla Preda, Celine Perley |
CODASPY | 3 |
| 2019 | Abstract Interpretation of Indexed Grammars
Marco Campion, Mila Dalla Preda, Roberto Giacobazzi |
SAS | 2 |
| 2019 | Semantics-based software watermarking by abstract interpretationabstractSoftware watermarking is a software protection technique used to defend the intellectual property of proprietary code. In particular, software watermarking aims at preventing software piracy by embedding a signature, i.e. an identifier reliably representing the owner, in the code. When an illegal copy is made, the owner can claim his/her identity by extracting the signature. It is important to hide the signature in the program in order to make it difficult for the attacker to detect, tamper or remove it. In this work, we present a formal framework for software watermarking, based on program semantics and abstract interpretation, where attackers are modelled as abstract interpreters. In this setting, we can prove that the ability to identify signatures can be modelled as a completeness property of the attackers in the abstract interpretation framework. Indeed, hiding a signature in the code corresponds to embed it as a semantic property that can be retrieved only by attackers that are complete for it. Any abstract interpreter that is not complete for the property specifying the signature cannot detect, tamper or remove it. We formalize in the proposed framework the major quality features of a software watermarking technique: secrecy, resilience, transparence and accuracy. This provides a unifying framework for interpreting both watermarking schemes and attacks, and it allows us to formally compare the quality of different watermarking techniques. Indeed, a large number of watermarking techniques exist in the literature and they are typically evaluated with respect to their secrecy, resilience, transparence and accuracy to attacks. Formally identifying the attacks for which a watermarking scheme is secret, resilient, transparent or accurate can be a complex and error-prone task, since attacks and watermarking schemes are typically defined in different settings and using different languages (e.g. program transformation vs. program analysis), complicating the task of comparing one against the others. Mila Dalla Preda, Michele Pasqua |
Math. Struct. Comput. Sci. | 1 |
| 2018 | Characterizing a property-driven obfuscation strategyabstractIn recent years, code obfuscation has attracted both researchers and software developers as a useful technique for protecting secret properties of proprietary programs. The idea of code obfuscation is to modify a program, while preserving its functionality, in order to make it more difficult to analyze. Thus, the aim of code obfuscation is to conceal certain properties to an attacker, while revealing its intended behavior. However, a general methodology for deriving an obfuscating transformation from the properties to conceal and reveal is still missing. In this work, we start to address this problem by studying the existence and the characterization of function transformers that minimally or maximally modify a program in order to reveal or conceal a certain property. Based on this general formal framework, we are able to provide a characterization of the maximal obfuscating strategy for transformations concealing a given property while revealing the desired observational behavior. To conclude, we discuss the applicability of the proposed characterization by showing how some common obfuscation techniques can be interpreted in this framework. Moreover, we show how this approach allows us to deeply understand what are the behavioral properties that these transformations conceal, and therefore protect, and which are the ones that they reveal, and therefore disclose. Mila Dalla Preda, Isabella Mastroeni |
J. Comput. Secur. | 1 |
| 2017 | Maximal incompleteness as obfuscation potencyabstractAbstract Obfuscation is the art of making code hard to reverse engineer and understand. In this paper, we propose a formal model for specifying and understanding the strength of obfuscating transformations with respect to a given attack model. The idea is to consider the attacker as an abstract interpreter willing to extract information about the program’s semantics. In this scenario, we show that obfuscating code is making the analysis imprecise, namely making the corresponding abstract domain incomplete. It is known that completeness is a property of the abstract domain and the program to analyse. We introduce a framework for transforming abstract domains, i.e., analyses, towards incompleteness. The family of incomplete abstractions for a given program provides a characterisation of the potency of obfuscation employed in that program, i.e., its strength against the attack specified by those abstractions. We show this characterisation for known obfuscating transformations used to inhibit program slicing and automated disassembly. Roberto Giacobazzi, Isabella Mastroeni, Mila Dalla Preda |
Formal Aspects Comput. | 3 |
| 2016 | Completeness in Approximate Transduction
Mila Dalla Preda, Roberto Giacobazzi, Isabella Mastroeni |
SAS | 1 |
| 2015 | Dynamic Choreographies - Safe Runtime Updates of Distributed Applications
Mila Dalla Preda, Maurizio Gabbrielli, Saverio Giallorenzo, Ivan Lanese, Jacopo Mauro |
COORDINATION | 1 |
| 2015 | Abstract Symbolic Automata: Mixed syntactic/semantic similarity analysis of executablesabstractWe introduce a model for mixed syntactic/semantic approximation of programs based on symbolic finite automata (SFA). The edges of SFA are labeled by predicates whose semantics specifies the denotations that are allowed by the edge. We introduce the notion of abstract symbolic finite automaton (ASFA) where approximation is made by abstract interpretation of symbolic finite automata, acting both at syntactic (predicate) and semantic (denotation) level. We investigate in the details how the syntactic and semantic abstractions of SFA relate to each other and contribute to the determination of the recognized language. Then we introduce a family of transformations for simplifying ASFA. We apply this model to prove properties of commonly used tools for similarity analysis of binary executables. Following the structure of their control flow graphs, disassembled binary executables are represented as (concrete) SFA, where states are program points and predicates represent the (possibly infinite) I/O semantics of each basic block in a constraint form. Known tools for binary code analysis are viewed as specific choices of symbolic and semantic abstractions in our framework, making symbolic finite automata and their abstract interpretations a unifying model for comparing and reasoning about soundness and completeness of analyses of low-level code. Mila Dalla Preda, Roberto Giacobazzi, Arun Lakhotia, Isabella Mastroeni |
POPL | 1 |
| 2015 | Developing correct, distributed, adaptive software
Mila Dalla Preda, Maurizio Gabbrielli, Saverio Giallorenzo, Ivan Lanese, Jacopo Mauro |
Sci. Comput. Program. | 1 |
| 2015 | Unveiling metamorphism by abstract interpretation of code properties
Mila Dalla Preda, Roberto Giacobazzi, Saumya K. Debray |
Theor. Comput. Sci. | 1 |
| 2014 | AIOCJ: A Choreographic Framework for Safe Adaptive Distributed Applications
Mila Dalla Preda, Saverio Giallorenzo, Ivan Lanese, Jacopo Mauro, Maurizio Gabbrielli |
SLE | 1 |
| 2013 | A Formal Framework for Property-Driven Obfuscation Strategies
Mila Dalla Preda, Isabella Mastroeni, Roberto Giacobazzi |
FCT | 1 |
| 2011 | Hunting Distributed Malware with the κ-Calculus
Mila Dalla Preda, Cinzia Di Giusto |
FCT | 1 |
| 2011 | Graceful Interruption of Request-Response Service Interactions
Mila Dalla Preda, Maurizio Gabbrielli, Ivan Lanese, Jacopo Mauro, Gianluigi Zavattaro |
ICSOC | 1 |
| 2010 | Modelling Metamorphism by Abstract Interpretation
Mila Dalla Preda, Roberto Giacobazzi, Saumya K. Debray, Kevin Coogan, Gregg M. Townsend |
SAS | 1 |
| 2009 | Trading-off security and performance in barrier slicing for remote software entrusting
Mariano Ceccato, Mila Dalla Preda, Jasvir Nagra, Christian S. Collberg, Paolo Tonella |
Autom. Softw. Eng. | 2 |
| 2009 | Semantics-based code obfuscation by abstract interpretationabstractIn recent years code obfuscation has attracted research interest as a promising technique for protecting secret properties of programs. The basic idea of code obfuscation is to transform programs in order to hide their sensitive information while preserving their functionality. One of the major drawbacks of code obfuscation is the lack of a rigorous theoretical framework that makes it difficult to formally analyze and certify the effectiveness of obfuscating techniques. We face this problem by providing a formal framework for code obfuscation based on abstract interpretation and program semantics. In particular, we show that what is hidden and what is preserved by an obfuscating transformation can be expressed as abstract interpretations of program semantics. Being able to specify what is masked and what is preserved by an obfuscation allows us to understand its potency, namely the amount of obscurity that the transformation adds to programs. In the proposed framework, obfuscation and attackers are modeled as approximations of program semantics and the lattice of abstract interpretations provides a formal tool for comparing obfuscations with respect to their potency. In particular, we prove that our framework provides an adequate setting to measure not only the potency of an obfuscation but also its resilience, i.e., the difficulty of undoing the obfuscation. We consider code obfuscation by opaque predicate insertion and we show how the degree of abstraction needed to disclose different opaque predicates allows us to compare their potency and resilience. Mila Dalla Preda, Roberto Giacobazzi |
J. Comput. Secur. | 1 |
| 2008 | Hiding Software Watermarks in Loop Structures
Mila Dalla Preda, Roberto Giacobazzi, Enrico Visentini |
SAS | 1 |
| 2008 | A semantics-based approach to malware detectionabstractMalware detection is a crucial aspect of software security. Current malware detectors work by checking for signatures , which attempt to capture the syntactic characteristics of the machine-level byte sequence of the malware. This reliance on a syntactic approach makes current detectors vulnerable to code obfuscations, increasingly used by malware writers, that alter the syntactic properties of the malware byte sequence without significantly affecting their execution behavior. This paper takes the position that the key to malware identification lies in their semantics. It proposes a semantics-based framework for reasoning about malware detectors and proving properties such as soundness and completeness of these detectors. Our approach uses a trace semantics to characterize the behavior of malware as well as that of the program being checked for infection, and uses abstract interpretation to “hide” irrelevant aspects of these behaviors. As a concrete application of our approach, we show that (1) standard signature matching detection schemes are generally sound but not complete, (2) the semantics-aware malware detector proposed by Christodorescu et al. is complete with respect to a number of common obfuscations used by malware writers and (3) the malware detection scheme proposed by Kinder et al. and based on standard model-checking techniques is sound in general and complete on some, but not all, obfuscations handled by the semantics-aware malware detector. Mila Dalla Preda, Mihai Christodorescu, Somesh Jha, Saumya K. Debray |
ACM Trans. Program. Lang. Syst. | 1 |
| 2007 | A semantics-based approach to malware detectionabstractMalware detection is a crucial aspect of software security. Current malware detectors work by checking for "signatures," which attempt to capture (syntactic) characteristics of the machine-level byte sequence of the malware. This reliance on a syntactic approach makes such detectors vulnerable to code obfuscations, increasingly used by malware writers, that alter syntactic properties of the malware byte sequence without significantly affecting their execution behavior.This paper takes the position that the key to malware identification lies in their semantics. It proposes a semantics-based framework for reasoning about malware detectors and proving properties such as soundness and completeness of these detectors. Our approach uses a trace semantics to characterize the behaviors of malware as well as the program being checked for infection, and uses abstract interpretation to "hide" irrelevant aspects of these behaviors. As a concrete application of our approach, we show that the semantics-aware malware detector proposed by Christodorescu et al. is complete with respect to a number of common obfuscations used by malware writers. Mila Dalla Preda, Mihai Christodorescu, Somesh Jha, Saumya K. Debray |
POPL | 1 |
| 2005 | Semantic-Based Code Obfuscation by Abstract Interpretation
Mila Dalla Preda, Roberto Giacobazzi |
ICALP | 1 |
| 2005 | Control Code Obfuscation by Abstract InterpretationabstractControl code obfuscation is intended to prevent malicious reverse engineering of software by masking the program control flow. These obfuscating transformations often rely on the existence of opaque predicates, that support the design of transformations that break up the program control flow. We prove that an algorithm for control obfuscation by opaque predicate insertion can be systematically derived as an abstraction of a suitable semantic transformation. In this framework, deobfuscation is interpreted as an attacker which can observe the computational behaviour of programs up to a given precision degree. Both obfuscation and deobfuscation can therefore be interpreted as approximations of program semantics, where approximation is formalized using abstract interpretation theory. In particular we prove that abstract interpretation provides the adequate setting to measure the potency of an obfuscation algorithm by comparing the degree of abstraction of the most abstract domains which are able to disclose opaque predicates. Mila Dalla Preda, Roberto Giacobazzi |
SEFM | 1 |
| 2004 | Completeness Refinement in Abstract Symbolic Trajectory Evaluation
Mila Dalla Preda |
SAS | 1 |