Posts by Collection
portfolio
publications
A Unit-Based Symbolic Execution Method for Detecting Heap Overflow Vulnerability in Executable Codes
Maryam Mouzarani, Ali Kamali, Sara Baradaran, and Mahdi Heidari
International Conference on Tests and Proofs (TAP), 2022
We propose a novel method for discovering vulnerabilities in executable code. Our approach restricts the scope of symbolic execution to a set of statically identified test units, enabling efficient computation of path and vulnerability constraints within these units. By solving these constraints using an SMT solver, we generate inputs that trigger the vulnerability in the targeted test unit. We then approximate the relationship between global system inputs and unit-level inputs by using curve fitting. Given the derived unit inputs, we subsequently compute corresponding system-level inputs which trigger a heap overflow.
A Unit-Based Symbolic Execution Method for Detecting Memory Corruption Vulnerabilities in Executable Codes
Sara Baradaran, Mahdi Heidari, Ali Kamali, and Maryam Mouzarani
International Journal of Information Security, 2023
We extend our prior work (published in TAP’22) and introduce static specifications for four common memory corruption vulnerabilities, i.e., heap-based buffer overflow, stack-based buffer overflow, use-after-free, and double-free. Leveraging these specifications, we identify relevant test units within x86-64 executable binaries which may contain such vulnerabilities. We then apply our unit-based symbolic execution approach to generate unit-level inputs which trigger these vulnerabilities and their corresponding system-level inputs.
CN2F: A Cloud-Native Cellular Network Framework
Sepehr Ganji, Shirin Behnaminia, Ali Ahangarpour, Erfan Mazaheri, Sara Baradaran, Zeinab Zali, Mo...
Cluster Computing, 2025
Upcoming cellular networks aim to enhance the efficiency and flexibility of mobile systems by incorporating technologies such as Software-Defined Networking (SDN), Network Function Virtualization (NFV), and Network Slicing (NS). Several open-source projects provide implementations of components across different cellular generations. In this paper, we leverage these projects to build a flexible and extensible testbed for experimenting with next-generation cellular networks.
Reusing Legacy Code in Wasm: Key Challenges of Compilation and Code Semantics Preservation
Sara Baradaran, Liyan Huang, Mukund Raghothaman, and Weihang Wang
IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER), 2026
WebAssembly (Wasm) is a binary format designed for executing performance-critical code in web browsers. A key objective of Wasm is to facilitate the integration of legacy codebases and libraries into web applications without requiring developers to rewrite them in JavaScript from scratch. In practice, however, this objective is constrained by limitations in currently available WebAssembly compilers. In this paper, we investigate (1) the challenges that arise when cross-compiling high-level language codebases to WebAssembly, and (2) the extent to which WebAssembly compilers faithfully preserve program semantics in the resulting binaries. We also present WasmChecker, a differential testing framework for checking semantic equivalence between x86-64 binaries of C/C++ programs and their corresponding Wasm counterparts.
Effective Minimization of Failure-Inducing Tests Using Convention-Aware Slicing
Sara Baradaran and Mukund Raghothaman
SANER Workshop on Validation, Analysis and Evolution of Software Tests (VST), 2026
Besides failure-triggering statements, failing tests often execute portions of code unrelated to the underlying defect, introducing noise and misleading information that hinder effective fault diagnosis. Test case minimization is therefore a critical step in the debugging process. We propose a slicing-based approach to address this problem. Our technique employs a novel data-flow analysis that leverages coding conventions to efficiently approximate the behavior of callee procedures without requiring access to their implementations. This enables us to initially derive a compact version of the test. If the minimized test fails to pass the verification step and trigger the original failure, a more conservative slicing approach is adopted on demand.
Prosecutor: Bayesian Counterfactual Fault Localization
Sara Baradaran, Yifei Huang, Wei Le, and Mukund Raghothaman
In Submission, 2026
In this paper, we present Prosecutor, a new fault localization technique that combines Bayesian reasoning with counterfactual execution analysis to effectively identify faults at the statement level.
talks
teaching
Teaching Assistant - Fall 2018
C Programming Lab
Isfahan University of Technology, Department of Electrical and Computer Engineering, 2018
Course Instructor: Dr. Elham Mahmoudzadeh
Teaching Assistant - Spring 2019
Discrete Mathematical Structures
Isfahan University of Technology, Department of Electrical and Computer Engineering, 2019
Course Instructor: Dr. Akbar Davoodi Zavareh
Teaching Assistant - Spring 2019
C Programming Lab
Isfahan University of Technology, Department of Electrical and Computer Engineering, 2019
Course Instructor: Dr. Elham Mahmoudzadeh
Teaching Assistant - Spring 2020
Algorithm Design and Analysis
Isfahan University of Technology, Department of Electrical and Computer Engineering, 2020
Course Instructor: Dr. Mohammad Reza Heidarpour
Teaching Assistant - Spring 2020
Compiler Design
Isfahan University of Technology, Department of Electrical and Computer Engineering, 2020
Course Instructor: Dr. Zeinab Zali
Teaching Assistant - Fall 2020
Compiler Design
Isfahan University of Technology, Department of Electrical and Computer Engineering, 2020
Course Instructor: Dr. Maryam Mouzarani
Teaching Assistant - Spring 2021
Fundamentals of Computer Security
Isfahan University of Technology, Department of Electrical and Computer Engineering, 2021
Course Instructor: Dr. Maryam Mouzarani
Teaching Assistant - Fall 2021
Operating System Lab
Isfahan University of Technology, Department of Electrical and Computer Engineering, 2021
Course Instructor: Dr. Mohammad Reza Heidarpour & Dr. Zeinab Zali
Teaching Assistant - Spring 2022
Algorithm Design and Analysis
Isfahan University of Technology, Department of Electrical and Computer Engineering, 2022
Course Instructor: Dr. Mohammad Reza Heidarpour
Teaching Assistant - Spring 2022
Compiler Design
Isfahan University of Technology, Department of Electrical and Computer Engineering, 2022
Course Instructor: Dr. Zeinab Zali
Teaching Assistant - Fall 2022
Operating System Lab
Isfahan University of Technology, Department of Electrical and Computer Engineering, 2022
Course Instructor: Dr. Mohammad Reza Heidarpour & Dr. Zeinab Zali
Teaching Assistant - Spring 2023
Advanced Programming Lab
Isfahan University of Technology, Department of Electrical and Computer Engineering, 2023
Course Instructor: Dr. Zeinab Zali
Teaching Assistant - Fall 2024
Security Systems
University of Southern California, Thomas Lord Department of Computer Science, 2024
Course Instructor: Dr. Clifford Neuman
Teaching Assistant - Spring 2025
Introduction to Operating Systems
University of Southern California, Thomas Lord Department of Computer Science, 2025
Course Instructor: Dr. Tatyana Ryutov
