80 citations · 347 across the 29 of their papers we have counts for
21 papers · 1 filter
What is the Difference Between Me and You? Benchmarking the Quality Gap Between Human-Written and AI-Generated Code
Cristina Improta, Pietro Liguori, Domenico Cotroneo
AI coding assistants are becoming co-authors of production software, yet their evaluation centers on functional correctness, leaving open whether their code differs from human code…
Beyond Fixed Fault Models: Comparing LLM-Based and Rule-Based Fault Injection in OpenStack
Giuseppe De Rosa, Pietro Liguori, Domenico Cotroneo
Software Fault Injection (SFI) supports testing of cloud systems by introducing software defects and observing their manifestation. Rule-based injectors such as ProFIPy provide con…
Will It Break in Production? Metric-Driven Prediction of Residual Defects in Python Systems
Giuseppe De Rosa, Pietro Liguori
Python's dynamic nature complicates testing and increases the possibility that some defects evade detection, so an effective fault prediction becomes essential. We examine whether…
Human-Written vs. AI-Generated Code: A Large-Scale Study of Defects, Vulnerabilities, and Complexity
Domenico Cotroneo, Cristina Improta, Pietro Liguori
As AI code assistants become increasingly integrated into software development workflows, understanding how their code compares to human-written programs is critical for ensuring r…
PyResBugs: A Dataset of Residual Python Bugs for Natural Language-Driven Fault Injection
Domenico Cotroneo, Giuseppe De Rosa, Pietro Liguori
This paper presents PyResBugs, a curated dataset of residual bugs, i.e., defects that persist undetected during traditional testing but later surface in production, collected from…
Quality In, Quality Out: Investigating Training Data's Role in AI Code Generation
Cristina Improta, Rosalia Tufano, Pietro Liguori +2
Deep Learning-based code generators have seen significant advancements in recent years. Tools such as GitHub Copilot are used by thousands of developers with the main promise of a…
CGP-Tuning: Structure-Aware Soft Prompt Tuning for Code Vulnerability Detection
Ruijun Feng, Hammond Pearce, Pietro Liguori +1
Large language models (LLMs) have been proposed as powerful tools for detecting software vulnerabilities, where task-specific fine-tuning is typically employed to provide vulnerabi…
Enhancing AI-based Generation of Software Exploits with Contextual Information
Pietro Liguori, Cristina Improta, Roberto Natella +2
This practical experience report explores Neural Machine Translation (NMT) models' capability to generate offensive security code from natural language (NL) descriptions, highlight…
Neural Fault Injection: Generating Software Faults from Natural Language
Domenico Cotroneo, Pietro Liguori
Traditional software fault injection methods, while foundational, face limitations in adequately representing real-world faults, offering customization, and requiring significant m…
DeVAIC: A Tool for Security Assessment of AI-generated Code
Domenico Cotroneo, Roberta De Luca, Pietro Liguori
Context: AI code generators are revolutionizing code writing and software development, but their training on large datasets, including potentially untrusted source code, raises sec…
Automating the Correctness Assessment of AI-generated Code for Security Contexts
Domenico Cotroneo, Alessio Foggia, Cristina Improta +2
Evaluating the correctness of code generated by AI is a challenging open problem. In this paper, we propose a fully automated method, named ACCA, to evaluate the correctness of AI-…
Run-time Failure Detection via Non-intrusive Event Analysis in a Large-Scale Cloud Computing Platform
Domenico Cotroneo, Luigi De Simone, Pietro Liguori +1
Cloud computing systems fail in complex and unforeseen ways due to unexpected combinations of events and interactions among hardware and software components. These failures are esp…
Who Evaluates the Evaluators? On Automatic Metrics for Assessing AI-based Offensive Code Generators
Pietro Liguori, Cristina Improta, Roberto Natella +2
AI-based code generators are an emerging solution for automatically writing programs starting from descriptions in natural language, by using deep neural networks (Neural Machine T…
Can We Generate Shellcodes via Natural Language? An Empirical Study
Pietro Liguori, Erfan Al-Hossami, Domenico Cotroneo +3
Writing software exploits is an important practice for offensive security analysts to investigate and prevent attacks. In particular, shellcodes are especially time-consuming and a…
EVIL: Exploiting Software via Natural Language
Pietro Liguori, Erfan Al-Hossami, Vittorio Orbinato +4
Writing exploits for security assessment is a challenging task. The writer needs to master programming and obfuscation techniques to develop a successful exploit. To make the task…
Shellcode_IA32: A Dataset for Automatic Shellcode Generation
Pietro Liguori, Erfan Al-Hossami, Domenico Cotroneo +3
We take the first step to address the task of automatically generating shellcodes, i.e., small pieces of code used as a payload in the exploitation of a software vulnerability, sta…
Towards Runtime Verification via Event Stream Processing in Cloud Computing Infrastructures
Domenico Cotroneo, Luigi De Simone, Pietro Liguori +2
Software bugs in cloud management systems often cause erratic behavior, hindering detection, and recovery of failures. As a consequence, the failures are not timely detected and no…
Fault Injection Analytics: A Novel Approach to Discover Failure Modes in Cloud-Computing Systems
Domenico Cotroneo, Luigi De Simone, Pietro Liguori +1
Cloud computing systems fail in complex and unexpected ways due to unexpected combinations of events and interactions between hardware and software components. Fault injection is a…
ProFIPy: Programmable Software Fault Injection as-a-Service
Domenico Cotroneo, Luigi De Simone, Pietro Liguori +1
In this paper, we present a new fault injection tool (ProFIPy) for Python software. The tool is designed to be programmable, in order to enable users to specify their software faul…
Enhancing Failure Propagation Analysis in Cloud Computing Systems
Domenico Cotroneo, Luigi De Simone, Pietro Liguori +2
In order to plan for failure recovery, the designers of cloud systems need to understand how their system can potentially fail. Unfortunately, analyzing the failure behavior of suc…
How Bad Can a Bug Get? An Empirical Analysis of Software Failures in the OpenStack Cloud Computing Platform
Domenico Cotroneo, Luigi De Simone, Pietro Liguori +2
Cloud management systems provide abstractions and APIs for programmatically configuring cloud infrastructures. Unfortunately, residual software bugs in these systems can potentiall…