Preventing insider malware threats using program analysis techniques

Author(s):  
Hira Agrawal ◽  
James Alberi ◽  
Lisa Bahler ◽  
William Conner ◽  
Josephine Micallef ◽  
...  
2006 ◽  
Vol 13 (10) ◽  
Author(s):  
Christian Kirkegaard ◽  
Anders Møller

We present an approach for statically reasoning about the behavior of Web applications that are developed using Java Servlets and JSP. Specifically, we attack the problems of guaranteeing that all output is well-formed and valid XML and ensuring consistency of XHTML form fields and session state. Our approach builds on a collection of program analysis techniques developed earlier in the JWIG and X<small>ACT</small> projects, combined with work on balanced context-free grammars. Together, this provides the necessary foundation concerning reasoning about output streams and application control flow.


2014 ◽  
Vol 11 (1) ◽  
pp. 1-27
Author(s):  
Feng Chen ◽  
Da Tang ◽  
Hongji Yang ◽  
Mohammed Alawairdhi

Workflow management systems (WfMSs) become the basic technology for organizations to build their Information Systems. To understand the business processes already implemented in the existing software systems and then build the workflow oriented Information System is a time-consuming and error prone process. This paper proposes a unified software reengineering approach from a business process perspective. A workflow extraction method is developed to elicit the business processes from existing systems. A precondition-based workflow model is designed for this purpose, which is an activity-centred method for program analysis. The calculation of the activity?s whole condition provides powerful analysis techniques to verify the correctness of the recovered workflow model. Through the proposed approach, the workflow procedures can be recovered from the existing system and verified by the precondition analysis.


2020 ◽  
Author(s):  
Maria Paquin

Benchmark programs are an integral part of program analysis research. Researchers use benchmark programs to evaluate existing techniques and test the feasibility of new approaches. The larger and more realistic the set of benchmarks, the more confident a researcher can be about the correctness and reproducibility of their results. However, obtaining an adequate set of benchmark programs has been a long-standing challenge in the program analysis community. In this thesis, we present the APT tool, a framework we designed and implemented to automate the generation of realistic benchmark programs suitable for program analysis evaluations. Our tool targets intra-procedural analyses that operate on an integer domain, specifically symbolic execution. The framework is composed of three main stages. In the first stage, the tool extracts potential benchmark programs from open-source repositories suitable for symbolic execution. In the second stage, the tool transforms the extracted programs into compilable, stand-alone benchmarks by removing external dependencies and nonlinear expressions. In the third stage, the benchmarks are verified and made available for the user. We have designed our transformation algorithms to remove program dependencies and nonlinear expressions while preserving their semantics-equivalence in the abstraction of symbolic analysis. That is, we want the information the analysis computes on the original program and its transformed version to be equivalent. Our work provides static analysis researchers with concise, compilable benchmark programs that are relevant to symbolic execution, allowing them to focus their efforts on advancing analysis techniques. Furthermore, our work benefits the software engineering community by enabling static analysis researchers to perform benchmarking with a large, realistic set of programs, thus strengthening the empirical evidence of the advancements in static program analysis.


2019 ◽  
Vol 53 ◽  
pp. 38-52 ◽  
Author(s):  
Amirabbas Majd ◽  
Mojtaba Vahidi-Asl ◽  
Alireza Khalilian ◽  
Ahmad Baraani-Dastjerdi ◽  
Bahman Zamani

2014 ◽  
Vol 56 (6) ◽  
pp. 280-287 ◽  
Author(s):  
Gregor Snelting ◽  
Dennis Giffhorn ◽  
Jürgen Graf ◽  
Christian Hammer ◽  
Martin Hecker ◽  
...  

Abstract JOANA is a tool for software security analysis, checking up to 100 kLOC of full multi-threaded Java. JOANA is based on sophisticated program analysis techniques and thus very precise. It includes a new algorithm guaranteeing probabilistic noninterference, named RLSOD. JOANA needs few annotations and has a nice GUI. The tool is open source and was applied in several case studies. The article presents an overview of JOANA and its underlying technology.


Sign in / Sign up

Export Citation Format

Share Document