Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Salvatore A. Guarnieri is active.

Publication


Featured researches published by Salvatore A. Guarnieri.


conference on object-oriented programming systems, languages, and applications | 2011

F4F: taint analysis of framework-based web applications

Manu Sridharan; Shay Artzi; Marco Pistoia; Salvatore A. Guarnieri; Omer Tripp; Ryan Berg

This paper presents F4F (Framework For Frameworks), a system for effective taint analysis of framework-based web applications. Most modern web applications utilize one or more web frameworks, which provide useful abstractions for common functionality. Due to extensive use of reflective language constructs in framework implementations, existing static taint analyses are often ineffective when applied to framework-based applications. While previous work has included ad hoc support for certain framework constructs, adding support for a large number of frameworks in this manner does not scale from an engineering standpoint. F4F employs an initial analysis pass in which both application code and configuration files are processed to generate a specification of framework-related behaviors. A taint analysis engine can leverage these specifications to perform a much deeper, more precise analysis of framework-based applications. Our specification language has only a small number of simple but powerful constructs, easing analysis engine integration. With this architecture, new frameworks can be handled with no changes to the core analysis engine, yielding significant engineering benefits. We implemented specification generators for several web frameworks and added F4F support to a state-of-the-art taint-analysis engine. In an experimental evaluation, the taint analysis enhanced with F4F discovered 525 new issues across nine benchmarks, a harmonic mean of 2.10X more issues per benchmark. Furthermore, manual inspection of a subset of the new issues showed that many were exploitable or reflected bad security practice.


Ibm Journal of Research and Development | 2013

Automatic detection of inter-application permission leaks in Android applications

Dragos Sbirlea; Michael G. Burke; Salvatore A. Guarnieri; Marco Pistoia; Vivek Sarkar

The Android® operating system builds upon already well-established permission systems but complements them by allowing application components to be reused within and across applications through a single communication mechanism, called the Intent mechanism. In this paper, we describe techniques that we developed for statically detecting Android application vulnerability to attacks that obtain unauthorized access to permission-protected information. We address three kinds of such attacks, known as confused deputy, permission collusion, and Intent spoofing. We show that application vulnerability to these attacks can be detected using taint analysis. Based on this technique, we developed PermissionFlow, a tool for discovering vulnerabilities in the byte code and configuration of Android applications. To enable PermissionFlow analysis, we developed a static technique for automatic identification of permission-protected information sources in permission-based systems. This technique identifies application programming interfaces (APIs) whose execution leads to permission checking and considers these APIs to be sources of taint. Based on this approach, we developed Permission Mapper, a component of PermissionFlow that improves on previous work by performing fully automatic identification of such APIs for Android Java® code. Our automated analysis of popular applications found that 56% of the most popular 313 Android applications actively use intercomponent information flows. Among the tested applications, PermissionFlow found four exploitable vulnerabilities. By helping ensure the absence of inter-application permission leaks, we believe that the proposed analysis will be highly beneficial to the Android ecosystem and other mobile platforms that may use similar analyses in the future.


computer and communications security | 2014

ALETHEIA: Improving the Usability of Static Security Analysis

Omer Tripp; Salvatore A. Guarnieri; Marco Pistoia; Aleksandr Y. Aravkin

The scale and complexity of modern software systems complicate manual security auditing. Automated analysis tools are gradually becoming a necessity. Specifically, static security analyses carry the promise of efficiently verifying large code bases. Yet, a critical usability barrier, hindering the adoption of static security analysis by developers, is the excess of false reports. Current tools do not offer the user any direct means of customizing or cleansing the report. The user is thus left to review hundreds, if not thousands, of potential warnings, and classify them as either actionable or spurious. This is both burdensome and error prone, leaving developers disenchanted by static security checkers. We address this challenge by introducing a general technique to refine the output of static security checkers. The key idea is to apply statistical learning to the warnings output by the analysis based on user feedback on a small set of warnings. This leads to an interactive solution, whereby the user classifies a small fragment of the issues reported by the analysis, and the learning algorithm then classifies the remaining warnings automatically. An important aspect of our solution is that it is user centric. The user can express different classification policies, ranging from strong bias toward elimination of false warnings to strong bias toward preservation of true warnings, which our filtering system then executes. We have implemented our approach as the Aletheia tool. Our evaluation of Aletheia on a diversified set of nearly 4,000 client-side JavaScript benchmarks, extracted from 675 popular Web sites, is highly encouraging. As an example, based only on 200 classified warnings, and with a policy biased toward preservation of true warnings, Aletheia is able to boost precision by a threefold factor (x 2.868), while reducing recall by a negligible factor (x 1.006). Other policies are enforced with a similarly high level of efficacy.


Archive | 2012

AUTOMATED TESTING OF APPLICATIONS WITH SCRIPTING CODE

Shay Artzi; Julian Dolby; Salvatore A. Guarnieri; Simon Holm Jensen; Marco Pistoia; Manu Sridharan; Frank Tip; Omer Tripp


Archive | 2012

Sound and effective data-flow analysis in the presence of aliasing

Julian Dolby; Salvatore A. Guarnieri; Marco Pistoia; Omer Tripp


Archive | 2012

Method and apparatus for paralleling and distributing static source code security analysis using loose synchronization

Salvatore A. Guarnieri; Marco Pistoia; Omer Tripp


Archive | 2013

Enhanced string analysis that improves accuracy of static analysis

Salvatore A. Guarnieri; Marco Pistoia; Takaaki Tateishi; Omer Tripp


Archive | 2012

Certifying server side web applications against security vulnerabilities

Salvatore A. Guarnieri; Marco Pistoia; Omer Tripp


Archive | 2013

Mitigating Security Risks Via Code Movement

Salvatore A. Guarnieri; Marco Pistoia; Omer Tripp


Archive | 2013

RULE MATCHING IN THE PRESENCE OF LANGUAGES WITH NO TYPES OR AS AN ADJUNCT TO CURRENT ANALYSES FOR SECURITY VULNERABILITY ANALYSIS

Salvatore A. Guarnieri; Marco Pistoia; Stephen Darwin Teilhet; Omer Tripp

Collaboration


Dive into the Salvatore A. Guarnieri's collaboration.

Researchain Logo
Decentralizing Knowledge