Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Hussain M. J. Almohri

dblp:60/10573 · DBLP profile ↗
← Back
13ranked-venue papers
10as first author
3since 2021 · last 2024
0000-0002-7738-5864ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Security and privacy · 9 · 9 first-authorSystems, architecture and hardware · 2 · 1 first-author · 2 since 2021Artificial intelligence and machine learning · 1Databases, data management, data science and information retrieval · 1Theory of computation · 1 · 1 since 2021Applied, interdisciplinary, general and emerging computing · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Network and information security
6 papers
Network security · 63% Malware analysis · 14% Usable security · 10%
Computer architecture, parallel and distributed computing, and storage systems
2 papers
Cloud and datacenter computing · 100%
Computer networks
2 papers
Network measurement and analytics · 50% Internet of things and sensor networks · 50%

Topics — the 13 heaviest of 20, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Malware analysis
mobile malware detection
0.612022
Lightweight, Effective Detection and Characterization of Mobile Malware Families · IEEE Trans. Computers 2022
Network security › intrusion detection and prevention › intrusion detection
anomaly detection
0.412020
An Attack-Resilient Architecture for the Internet of Things · IEEE Trans. Inf. Forensics Secur. 2020
Usable security › security operations
compromised machine detection
0.412020
An Attack-Resilient Architecture for the Internet of Things · IEEE Trans. Inf. Forensics Secur. 2020
Network security › intrusion detection and prevention
intrusion detection
0.412020
An Attack-Resilient Architecture for the Internet of Things · IEEE Trans. Inf. Forensics Secur. 2020
Network security › moving target defense
IP address randomization
0.412020
Predictability of IP Address Allocations for Cloud Computing Platforms · IEEE Trans. Inf. Forensics Secur. 2020
Network security
moving target defense
0.412020
Predictability of IP Address Allocations for Cloud Computing Platforms · IEEE Trans. Inf. Forensics Secur. 2020
Cloud and datacenter computing › cloud security
cloud network security
0.412020
Predictability of IP Address Allocations for Cloud Computing Platforms · IEEE Trans. Inf. Forensics Secur. 2020
Network security › attack modeling
attack graph analysis
0.212016
Security Optimization of Dynamic Networks with Probabilistic Graph Modeling and Linear Programming · IEEE Trans. Dependable Secur. Comput. 2016
Systems and software security
operating system security
0.212014
Process Authentication for High System Assurance · IEEE Trans. Dependable Secur. Comput. 2014
Systems and software security › security engineering
software security metrics
0.212022
Lightweight, Effective Detection and Characterization of Mobile Malware Families · IEEE Trans. Computers 2022
Network security › attack modeling
attack path analysis
0.112018
Misery Digraphs: Delaying Intrusion Attacks in Obscure Clouds · IEEE Trans. Inf. Forensics Secur. 2018
Mathematical optimization
linear programming
0.112016
Security Optimization of Dynamic Networks with Probabilistic Graph Modeling and Linear Programming · IEEE Trans. Dependable Secur. Comput. 2016
Operating systems › operating system interface › system call
system call monitoring
0.112014
Process Authentication for High System Assurance · IEEE Trans. Dependable Secur. Comput. 2014

Methods — techniques the papers use, named apart from their topics

markov process model · 1.3frequency-based prediction · 1.3density-based clustering · 0.9binary classifier · 0.9simulation · 0.7graph theory · 0.7supervised learning · 0.6sequential linear programming · 0.5probabilistic graph modeling · 0.5system call interception · 0.2cryptographic proofs · 0.2cryptographic proof · 0.2
YearPublicationVenuePosition
2024 Remark on Algorithm 1012: Computing Projections with Large Datasets
abstract
In ACM TOMS Algorithm 1012, the DELAUNAYSPARSE software is given for performing Delaunay interpolation in medium to high dimensions. When extrapolating outside the convex hull of the training set, DELAUNAYSPARSE calls the nonnegative least squares solver DWNNLS to compute projections onto the convex hull. However, DWNNLS and many other available sum-of-squares optimization solvers were not intended for usage with many variable problems, which result from the large training sets that are typical in machine learning applications. Thus, a new PROJECT subroutine is given, based on the highly customizable quadratic program solver BQPD . This solution is shown to be as robust as DELAUNAYSPARSE for projection onto both synthetic and real-world datasets, where other available solvers frequently fail. Although it is intended as an update for DELAUNAYSPARSE , due to the difficulty and prevalence of the problem, this solution is likely to be of external interest as well.
Tyler H. Chang, Layne T. Watson, Sven Leyffer, Thomas Lux, Hussain M. J. Almohri
ACM Trans. Math. Softw.5
2022 Dynamic System Diversification for Securing Cloud-based IoT Subnetworks
abstract
Remote exploitation attacks use software vulnerabilities to penetrate through a network of Internet of Things (IoT) devices. This work addresses defending against remote exploitation attacks on vulnerable IoT devices. As an attack mitigation strategy, we assume it is not possible to fix all the vulnerabilities and propose to diversify the open-source software used to manage IoT devices. Our approach is to deploy dynamic cloud-based virtual machine proxies for physical IoT devices. Our architecture leverages virtual machine proxies with diverse software configurations to mitigate vulnerable and static software configurations on physical devices. We develop an algorithm for selecting new configurations based on network anomaly detection signals to learn vulnerable software configurations on IoT devices, automatically shifting towards more secure configurations. Cloud-based proxy machines mediate requests between application clients and vulnerable IoT devices, facilitating a dynamic diversification system. We report on simulation experiments to evaluate the dynamic system. Two models of powerful adversaries are introduced and simulated against the diversified defense strategy. Our experiments show that a dynamically diversified IoT architecture can be invulnerable to large classes of attacks that would succeed against a static architecture.
Hussain M. J. Almohri, Layne T. Watson, David Evans 0001, Stephen C. Billups
ACM Trans. Auton. Adapt. Syst.1
2022 Lightweight, Effective Detection and Characterization of Mobile Malware Families
abstract
Android malware is an ongoing threat to billions of smart devices’ security, ranging from mobile phones to car infotainment systems. Despite numerous approaches and previous studies to develop solutions for detecting and preventing Android malware, the rapid continuous development of new malware variants requires a careful reconsideration and the development of effective methods to identify malware families given a meager number of malware instances. In this paper, we present DroidMalVet, a novel Android malware family classification and detection approach that does not require to perform complex program analyses or utilize large feature sets. DroidMalVet is the first to use a promising, diverse, and small set of software metrics as features in a supervised learning platform to classify and detect various Android malware families. Our extensive empirical evaluations on two large public malware datasets show that DroidMalVet accurately detects both small and large malware families with F-Score accuracy of 94.4% and 96%, and AUC equal to 99.5% and 99.7% on the malware families in Drebin and AMD datasets, respectively. Moreover, our results demonstrate the superior performance of DroidMalVet in detecting small families (i.e., families with few samples). DroidMalVet complements existing approaches and presents an early warning tool for detecting known and emerging malware families.
Karim O. Elish, Mahmoud O. Elish, Hussain M. J. Almohri
IEEE Trans. Computers3
2020 A Client Bootstrapping Protocol for DoS Attack Mitigation on Entry Point Services in the Cloud
abstract
This paper presents a client bootstrapping protocol for proxy-based moving target defense system for the cloud. The protocol establishes the identity of prospective clients who intend to connect to web services behind obscure proxy servers in a cloud-based network. In client bootstrapping, a set of initial line of defense services receive new client requests, execute an algorithm to assign them to a proxy server, and reply back with the address of the chosen proxy server. The bootstrapping protocol only reveals one proxy address to each client, maintaining the obscurity of the addresses for other proxy servers. Hiding the addresses of proxy servers aims to lower the likelihood that a proxy server becomes the victim of a denial-of-service (DoS) attack. Existing works address this problem by requiring the solution of computationally intensive puzzles from prospective clients. This solution slows the progression of attacks as well as new clients. This paper presents an alternative idea by observing that limited capacity of handling initial network requests is the primary cause of denial-of-service attacks. Thus, the suggested alternative is to utilize cost-effective high-capacity networks to handle client bootstrapping, thus thwarting attacks on the initial line of defense. The prototype implementation of the protocol using Google’s firebase demonstrates the proof of concept for web services that receive network requests from clients on mobile devices.
Hussain M. J. Almohri, Mohammad Al-Mutawa, Mahmoud Alawadh, Karim O. Elish
Secur. Commun. Networks1
2020 Predictability of IP Address Allocations for Cloud Computing Platforms
abstract
One way to combat denial-of-service attacks on cloud-based virtual networks is to use unpredictable network addresses, aiming to increase attacker effort by requiring attackers to search a large IP address space to find a target host. IP address randomization is used by several moving target defenses, relying on the assumption that it is difficult for an attacker to predict newly allocated IP addresses. This paper analyzes whether IP addresses used by cloud providers are unpredictable enough in practice. We analyze the IP address allocation behaviors in two major cloud computing providers (Amazon Web Services and Google Cloud Platform) and find that the actual entropy provided by allocated IP addresses is limited. We evaluate several prediction models, including a simple frequency-based model as well as a Markov process model that produces an address prediction set from time series data of collected IP addresses. Our results show that simple models can reduce the search space for allocated IP addresses and diminish the effectiveness of randomization defenses.
Hussain M. J. Almohri, Layne T. Watson, David Evans 0001
IEEE Trans. Inf. Forensics Secur.1
2020 An Attack-Resilient Architecture for the Internet of Things
abstract
With current IoT architectures, once a single device in a network is compromised, it can be used to disrupt the behavior of other devices on the same network. Even though system administrators can secure critical devices in the network using best practices and state-of-the-art technology, a single vulnerable device can undermine the security of the entire network. The goal of this work is to limit the ability of an attacker to exploit a vulnerable device on an IoT network and fabricate deceitful messages to co-opt other devices. The approach is to limit attackers by using device proxies that are used to retransmit and control network communications. We present an architecture that prevents deceitful messages generated by compromised devices from affecting the rest of the network. The design assumes a centralized and trustworthy machine that can observe the behavior of all devices on the network. The central machine collects application layer data, as opposed to low-level network traffic, from each IoT device. The collected data is used to train models that capture the normal behavior of each individual IoT device. The normal behavioral data is then used to monitor the IoT devices and detect anomalous behavior. This paper reports on our experiments using both a binary classifier and a density-based clustering algorithm to model benign IoT device behavior with a realistic test-bed, designed to capture normal behavior in an IoT-monitored environment. Results from the IoT testbed show that both the classifier and the clustering algorithms are promising and encourage the use of application-level data for detecting compromised IoT devices.
Hussain M. J. Almohri, Layne T. Watson, David Evans 0001
IEEE Trans. Inf. Forensics Secur.1
2019 Identifying Android Malware Families Using Android-Oriented Metrics
abstract
Android malware (malicious apps) families share common attributes and behavior through sharing core malicious code. However, as the number of new malware increases, the task of identifying the correct family becomes more challenging. Two prominent approaches tackle this problem, either using dynamic analysis that captures the runtime behavior of the malware or using static analysis methods that can reveal malicious behavior by analyzing the underlying logic and code patterns. A third emerging way is to use the various sources of identification features to analyze the architectural and external attributes of a malicious app. For example, two malicious apps can have different behavioral patterns but share common attributes. We hypothesize that this malware can belong to the same family but attempt to mislead dynamic and code-level static analysis tools by randomizing their behavior. In this work, we utilize a promising set of Android-oriented code metrics that guide a supervised classification learning process for identifying malware families in Android. Our empirical results on 2,869 malware apps, across 35 different malware families, show that these metrics are very effective to identify malware families. In particular, we achieve low false positive rate (1.2%) and AUC score of 0.984 for family identification by using Random Forest (RF) classifier.
William Blanc, Lina G. Hashem, Karim O. Elish, Hussain M. J. Almohri
IEEE BigData4
2018 Fidelius Charm: Isolating Unsafe Rust Code
abstract
The Rust programming language has a safe memory model that promises to eliminate critical memory bugs. While the language is strong in doing so, its memory guarantees are lost when any unsafe blocks are used. Unsafe code is often needed to call library functions written in an unsafe language inside a Rust program. We present Fidelius Charm (FC), a system that protects a programmer-specified subset of data in memory from unauthorized access through vulnerable unsafe libraries. FC does this by limiting access to the program's memory while executing unsafe libraries. FC uses standard features of Rust and utilizes the Linux kernel as a trusted base for splitting the address space into a trusted privileged region under the control of functions written in Rust and a region available to unsafe external libraries. This paper presents our design and implementation of FC, presents two case studies for using FC in Rust TLS libraries, and reports on experiments showing its performance overhead is low for typical uses.
Hussain M. J. Almohri, David Evans 0001
CODASPY1
2018 Misery Digraphs: Delaying Intrusion Attacks in Obscure Clouds
abstract
When remote command injection attacks succeed at the entry points of a cloud (servers exposed to the outside Internet), attackers targeting a specific asset in the cloud will pursue further exploration to find their targets. Attack targets, such as database servers, are often running on separate machines, forcing an extra step for a successful attack. However, compromising two or three machines is all an attacker needs to reach an isolated database through a simple attack path. The goal of this paper is to investigate the possibility of frustrating attackers by constructing a cloud network architecture that hides the path to a target asset in the network, utilizing multiple moving decoy virtual machines and confusing firewall configurations. A deceiving cloud network architecture can significantly delay attacks (by stretching the attack path from a handful of steps to thousands), providing time for system administrators to intervene and resolve the intrusion. This paper introduces the concept of misery digraphs, which provide a theoretical foundation for creating intrusion deception in clouds. This paper describes the necessary steps to convert a cloud to one that includes a misery digraph, and evaluates the feasibility and effectiveness of using the approach with Amazon Web Services. Our simulation results demonstrate that for a cloud implementing misery digraphs with a simple attack path of length five, there is a 91% probability that an attack requires at least 1000 steps to reach the target.
Hussain M. J. Almohri, Layne T. Watson, David Evans 0001
IEEE Trans. Inf. Forensics Secur.1
2016 Security Optimization of Dynamic Networks with Probabilistic Graph Modeling and Linear Programming
abstract
Securing the networks of large organizations is technically challenging due to the complex configurations and constraints. Managing these networks requires rigorous and comprehensive analysis tools. A network administrator needs to identify vulnerable configurations, as well as tools for hardening the networks. Such networks usually have dynamic and fluidic structures, thus one may have incomplete information about the connectivity and availability of hosts. In this paper, we address the problem of statically performing a rigorous assessment of a set of network security defense strategies with the goal of reducing the probability of a successful large-scale attack in a dynamically changing and complex network architecture. We describe a probabilistic graph model and algorithms for analyzing the security of complex networks with the ultimate goal of reducing the probability of successful attacks. Our model naturally utilizes a scalable state-of-the-art optimization technique called sequential linear programming that is extensively applied and studied in various engineering problems. In comparison to related solutions on attack graphs, our probabilistic model provides mechanisms for expressing uncertainties in network configurations, which is not reported elsewhere. We have performed comprehensive experimental validation with real-world network configuration data of a sizable organization.
Hussain M. J. Almohri, Layne T. Watson, Danfeng Yao, Xinming Ou
IEEE Trans. Dependable Secur. Comput.1
2014 DroidBarrier: know what is executing on your android
abstract
Many Android vulnerabilities share a root cause of malicious unauthorized applications executing without user's consent. In this paper, we propose the use of a technique called process authentication for Android applications to overcome the shortcomings of current Android security practices. We demonstrate the process authentication model for Android by designing and implementing our runtime authentication and detection system referred to as DroidBarrier. Our malware analysis shows that DroidBarrier is capable of detecting real Android malware at the time of creating independent processes. A
Hussain M. J. Almohri, Danfeng Yao, Dennis G. Kafura
CODASPY1
2014 Process Authentication for High System Assurance
abstract
This paper points out the need in modern operating system kernels for a process authentication mechanism, where a process of a user-level application proves its identity to the kernel. Process authentication is different from process identification. Identification is a way to describe a principal; PIDs or process names are identifiers for processes in an OS environment. However, the information such as process names or executable paths that is conventionally used by OS to identify a process is not reliable. As a result, malware may impersonate other processes, thus violating system assurance. We propose a lightweight secure application authentication framework in which user-level applications are required to present proofs at runtime to be authenticated to the kernel. To demonstrate the application of process authentication, we develop a system call monitoring framework for preventing unauthorized use or access of system resources. It verifies the identity of processes before completing the requested system calls. We implement and evaluate a prototype of our monitoring architecture in Linux. The results from our extensive performance evaluation show that our prototype incurs reasonably low overhead, indicating the feasibility of our approach for cryptographically authenticating applications and their processes in the operating system.
Hussain M. J. Almohri, Danfeng Yao, Dennis G. Kafura
IEEE Trans. Dependable Secur. Comput.1
2012 Identifying native applications with high assurance
abstract
Main stream operating system kernels lack a strong and reliable mechanism for identifying the running processes and binding them to the corresponding executable applications. In this paper, we address the identification problem by proposing a novel secure application identification model in which user-level applications are required to present identification proofs at run time to be authenticated to the kernel. In our model, applications are supplied with unique secret keys. The secret key of an application is registered with a trusted kernel at the installation time and is used to uniquely authenticate the application. We present a protocol for the secure authentication of applications. Additionally, we develop a system call monitoring architecture that uses our model to verify the identity of applications when making designated system calls. Our system call monitoring can be integrated with existing mandatory access control systems to enforce application-level access rights. We implement and evaluate a prototype of our monitoring architecture in Linux as device drivers with no modification of the kernel. The results from our extensive performance evaluation shows that our prototype incurs low overhead, indicating the feasibility of our approach for cryptographically identifying and authenticating applications in the operating system.
Hussain M. J. Almohri, Danfeng Yao, Dennis G. Kafura
CODASPY1