432 research outputs found
Identification of Bugs and Vulnerabilities in TLS Implementation for Windows Operating System Using State Machine Learning
TLS protocol is an essential part of secure Internet communication. In past,
many attacks have been identified on the protocol. Most of these attacks are
due to flaws in protocol implementation. The flaws are due to improper design
and implementation of program logic by programmers. One of the widely used
implementation of TLS is SChannel which is used in Windows operating system
since its inception. We have used protocol state fuzzing to identify vulnerable
and undesired state transitions in the state machine of the protocol for
various versions of SChannel. The client as well as server components have been
analyzed thoroughly using this technique and various flaws have been discovered
in the implementation. Exploitation of these flaws under specific circumstances
may lead to serious attacks which could disrupt secure communication. In this
paper, we analyze state machine models of TLS protocol implementation of
SChannel library and describe weaknesses and design flaws in these models,
found using protocol state fuzzing.Comment: 9 pages, 8 figures, 1 tabl
Security and Data Analysis : Three Case Studies
In recent years, techniques to automatically analyze lots of data have advanced significantly. The possibility to gather and analyze large amounts of data has challenged security research in two unique ways. First, the analysis of Big Data can threaten users’ privacy by merging and connecting data from different sources. Chapter 2 studies how patients’ medical data can be protected in a world where Big Data techniques can be used to easily analyze large amounts of DNA data. Second, Big Data techniques can be used to improve the security of software systems. In Chapter 4 I analyzed data gathered from internet-wide certificate scans to make recommendations on which certificate authorities can be removed from trust stores. In Chapter 5 I analyzed open source repositories to make predicitions of which commits introduced security-critical bugs. In total, I present three case studies that explore the application of data analysis – “Big Data” – to system security. By considering not just isolated examples but whole ecosystems, the insights become much more solid, and the results and recommendations become much stronger. Instead of manually analyzing a couple of mobile apps, we have the ability to consider a security-critical mistake in all applications of a given platform. We can identify systemic errors all developers of a given platform, a given programming language or a given security paradigm make – and fix it with the certainty that we truly found the core of the problem. Instead of manually analyzing the SSL installation of a couple of websites, we can consider all certificates – in times of Certificate Transparency even with historical data of issued certificates – and make conclusions based on the whole ecosystem. We can identify rogue certificate authorities as well as monitor the deployment of new TLS versions and features and make recommendations based on those. And instead of manually analyzing open source code bases for vulnerabilities, we can apply the same techniques and again consider all projects on e.g. GitHub. Then, instead of just fixing one vulnerability after the other, we can use these insights to develop better tooling, easier-to-use security APIs and safer programming languages
THE SCALABLE AND ACCOUNTABLE BINARY CODE SEARCH AND ITS APPLICATIONS
The past decade has been witnessing an explosion of various applications and devices.
This big-data era challenges the existing security technologies: new analysis techniques
should be scalable to handle “big data” scale codebase; They should be become smart
and proactive by using the data to understand what the vulnerable points are and where
they locate; effective protection will be provided for dissemination and analysis of the data
involving sensitive information on an unprecedented scale.
In this dissertation, I argue that the code search techniques can boost existing security
analysis techniques (vulnerability identification and memory analysis) in terms of scalability and accuracy. In order to demonstrate its benefits, I address two issues of code search by using the code analysis: scalability and accountability. I further demonstrate the benefit of code search by applying it for the scalable vulnerability identification [57] and the
cross-version memory analysis problems [55, 56].
Firstly, I address the scalability problem of code search by learning “higher-level” semantic
features from code [57]. Instead of conducting fine-grained testing on a single device
or program, it becomes much more crucial to achieve the quick vulnerability scanning
in devices or programs at a “big data” scale. However, discovering vulnerabilities in “big
code” is like finding a needle in the haystack, even when dealing with known vulnerabilities. This new challenge demands a scalable code search approach. To this end, I leverage successful techniques from the image search in computer vision community and propose a novel code encoding method for scalable vulnerability search in binary code. The evaluation results show that this approach can achieve comparable or even better accuracy and efficiency than the baseline techniques.
Secondly, I tackle the accountability issues left in the vulnerability searching problem
by designing vulnerability-oriented raw features [58]. The similar code does not always
represent the similar vulnerability, so it requires that the feature engineering for the code
search should focus on semantic level features rather than syntactic ones. I propose to
extract conditional formulas as higher-level semantic features from the raw binary code to
conduct the code search. A conditional formula explicitly captures two cardinal factors
of a vulnerability: 1) erroneous data dependencies and 2) missing or invalid condition
checks. As a result, the binary code search on conditional formulas produces significantly
higher accuracy and provides meaningful evidence for human analysts to further examine
the search results. The evaluation results show that this approach can further improve
the search accuracy of existing bug search techniques with very reasonable performance
overhead.
Finally, I demonstrate the potential of the code search technique in the memory analysis
field, and apply it to address their across-version issue in the memory forensic problem
[55, 56]. The memory analysis techniques for COTS software usually rely on the
so-called “data structure profiles” for their binaries. Construction of such profiles requires
the expert knowledge about the internal working of a specified software version. However,
it is still a cumbersome manual effort most of time. I propose to leverage the code search
technique to enable a notion named “cross-version memory analysis”, which can update a
profile for new versions of a software by transferring the knowledge from the model that
has already been trained on its old version. The evaluation results show that the code search based approach advances the existing memory analysis methods by reducing the
manual efforts while maintaining the reasonable accuracy. With the help of collaborators, I
further developed two plugins to the Volatility memory forensic framework [2], and show
that each of the two plugins can construct a localized profile to perform specified memory
forensic tasks on the same memory dump, without the need of manual effort in creating the corresponding profile
Analysis and Automated Discovery of Attacks in Transport Protocols
Transport protocols like TCP and QUIC are a crucial component of today’s Internet, underlying services as diverse as email, file transfer, web browsing, video conferencing, and instant messaging as well as infrastructure protocols like BGP and secure network protocols like TLS. Transport protocols provide a variety of important guarantees like reliability, in-order delivery, and congestion control to applications. As a result, the design and implementation of transport protocols is complex, with many components, special cases, interacting features, and efficiency considerations, leading to a high probability of bugs. Unfortunately, today the testing of transport protocols is mainly a manual, ad-hoc process. This lack of systematic testing has resulted in a steady stream of attacks compromising the availability, performance, or security of transport protocols, as seen in the literature. Given the importance of these protocols, we believe that there is a need for the development of automated systems to identify complex attacks in implementations of these protocols and for a better understanding of the types of attacks that will be faced by next generation transport protocols. In this dissertation, we focus on improving this situation, and the security of transport protocols, in three ways. First, we develop a system to automatically search for attacks that target the availability or performance of protocol connections on real transport protocol implementations. Second, we implement a model-based system to search for attacks against implementations of TCP congestion control. Finally, we examine QUIC, Google’s next generation encrypted transport protocol, and identify attacks on availability and performance
SUTMS - Unified Threat Management Framework for Home Networks
Home networks were initially designed for web browsing and non-business critical applications. As infrastructure improved, internet broadband costs decreased, and home internet usage transferred to e-commerce and business-critical applications. Today’s home computers host personnel identifiable information and financial data and act as a bridge to corporate networks via remote access technologies like VPN. The expansion of remote work and the transition to cloud computing have broadened the attack surface for potential threats. Home networks have become the extension of critical networks and services, hackers can get access to corporate data by compromising devices attacked to broad- band routers. All these challenges depict the importance of home-based Unified Threat Management (UTM) systems. There is a need of unified threat management framework that is developed specifically for home and small networks to address emerging security challenges. In this research, the proposed Smart Unified Threat Management (SUTMS) framework serves as a comprehensive solution for implementing home network security, incorporating firewall, anti-bot, intrusion detection, and anomaly detection engines into a unified system. SUTMS is able to provide 99.99% accuracy with 56.83% memory improvements. IPS stands out as the most resource-intensive UTM service, SUTMS successfully reduces the performance overhead of IDS by integrating it with the flow detection mod- ule. The artifact employs flow analysis to identify network anomalies and categorizes encrypted traffic according to its abnormalities. SUTMS can be scaled by introducing optional functions, i.e., routing and smart logging (utilizing Apriori algorithms). The research also tackles one of the limitations identified by SUTMS through the introduction of a second artifact called Secure Centralized Management System (SCMS). SCMS is a lightweight asset management platform with built-in security intelligence that can seamlessly integrate with a cloud for real-time updates
A Framework of DevSecOps for Software Development Teams
This master's thesis explores a broad evaluation of automated security testing in the context of DevOps practices. The primary objective of this study is to propose a framework that facilitates the seamless integration of security scanning tools within DevOps practices. The thesis will focus on examining the existing set of tools and their effective integration into fully automated DevOps CI/CD pipelines.
The thesis starts by examining the theoretical concepts of DevOps and provides guidelines for integrating security within DevOps methodologies. Furthermore, it assesses the current state of security by analysing the OWASP Web API top 10 security vulnerability list and evaluating existing security automation tools. Additionally, the research investigates the performance and efficacy of these tools across various stages of the SDLC and investigates ongoing research and development activities.
A fully automated DevOps CI/CD pipeline is implemented to integrate security scanning tools, enforcing complete security checks throughout the SDLC. Azure DevOps build and release pipelines, along with Snyk, were used to create a comprehensive automated security scanning framework. The study considerably investigates the integration of these security scanning tools and assesses their influence on the overall security posture of the developed applications. The finding of the study reveals that security scanning tools can be efficiently integrated into fully automated DevOps practices. Based on the results, recommendations are provided for the selection of suitable tools and techniques to achieve a DevSecOps practice.
In conclusion, this thesis provides valuable insights into security integration in DevOps practices, highlighting the effectiveness of security automation tools. The research also recommends areas for further improvements to meet the industry's evolving requirements
Security attacks and solutions on SDN control plane: A survey
Sommario
Software Defined Networks (SDN) è un modello di rete programmabile aperto promosso da ONF ,
che è stato un fattore chiave per le recenti tendenze tecnologiche. SDN esplora la separazione dei dati
e del piano di controllo . Diversamente dai concetti passati, SDN introduce l’idea di separazione del
piano di controllo (decisioni di instradamento e traffico) e piano dati (decisioni di inoltro basate sul
piano di controllo) che sfida l’integrazione verticale raggiunta dalle reti tradizionali, in cui dispositivi
di rete come router e switch accumulano entrambe le funzioni.
SDN presenta alcuni vantaggi come la gestione centralizzata e la possibilitĂ di essere programmato
su richiesta. Oltre a questi vantaggi, SDN presenta ancora vulnerabilitĂ di sicurezza e, tra queste,le
piĂą letali prendono di mira il piano di controllo. Come i controllers che risiedono sul piano di con-
trollo gestiscono l’infrastruttura e i dispositivi di rete sottostanti (es. router/switch), anche qualsiasi
insicurezza, minacce, malware o problemi durante lo svolgimento delle attivitĂ da parte del controller,
possono causare interruzioni dell’intera rete. In particolare, per la sua posizione centralizzata, il con-
troller SDN è visto come un punto di fallimento. Di conseguenza, qualsiasi attacco o vulnerabilitĂ
che prende di mira il piano di controllo o il controller è considerato fatale al punto da sconvolgere
l’intera rete. In questa tesi, le minacce alla sicurezza e gli attacchi mirati al piano di controllo (SDN)
sono identificati e classificati in diversi gruppi in base a come causano l’impatto sul piano di controllo.
Per ottenere risultati, è stata condotta un’ampia ricerca bibliografica attraverso uno studio appro-
fondito degli articoli di ricerca esistenti che discutono di una serie di attacchi e delle relative soluzioni
per il piano di controllo SDN. Principalmente, come soluzioni intese a rilevare, mitigare o proteggere
il (SDN) sono stati presi in considerazione le potenziali minacce gli attachi al piano di controllo. Sulla
base di questo compito, gli articoli selezionati sono stati classificati rispetto al loro impatto potenziale
sul piano di controllo (SDN) come diretti e indiretti. Ove applicabile, è stato fornito un confronto
tra le soluzioni che affrontano lo stesso attacco. Inoltre, sono stati presentati i vantaggi e gli svantaggi
delle soluzioni che affrontano diversi attacchi . Infine, una discussione sui risultati e sui esitti ottenuti
durante questo processo di indagine e sono stati affrontatti suggerimenti di lavoro futuri estratti du-
rante il processo di revisione.
Parole chiave : SDN, Sicurezza, Piano di controllo, Denial of Service, Attacchi alla topologiaAbstract
Software Defined Networks (SDN) is an open programmable network model promoted by ONF that
has been a key-enabler of recent technology trends. SDN explores the separation of data and control
plane. Different from the past concepts, SDN introduces the idea of separation of the control plane
(routing and traffic decisions) and data plane (forwarding decisions based on the control plane) that
challenges the vertical integration achieved by the traditional networks, in which network devices such
as router and switches accumulate both functions.
SDN presents some advantages such as centralized management and the ability to be programmed
on demand. Apart from these benefits, SDN still presents security vulnerabilities and among them,
the most lethal ones are targeting the control plane. As the controllers residing on the control plane
manages the underlying networking infrastructure and devices (i.e., routers/switches), any security
threat, malware, or issues during the carrying out of activities by the controller can lead to disruption
of the entire network. In particular, due to its centralized position, the (SDN) controller is seen as a
single point of failure. As a result, any attack or vulnerability targeting the control plane or controller
is considered fatal to the point of disrupting the whole network. In this thesis, the security threats
and attacks targeting the (SDN) control plane are identified and categorized into different groups by
considering how they cause an impact to the control plane.
To obtain results, extensive literature research has been carried out by performing an in-depth study
of the existing research articles that discusses an array of attacks and their corresponding solutions for
the (SDN) control plane. Mainly, the solutions intended to detect, mitigate, or protect the (SDN)
control plane against potential threats and attacks have been considered. On basis of this task, the
potential articles selected were categorized with respect to their impact to the (SDN) control plane as
direct and indirect. Where applicable a comparison of the solutions addressing the same attack has
been provided. Moreover, the advantages and disadvantages of the solutions addressing the respective
attacks are presented. Finally, a discussion regarding the findings and results obtained during this su-
veying process and future work suggestions extracted during the review process have been discussed.
Keywords: SDN, Security, Control Plane, Denial of Service, Topology Attacks, Openflo
Advanced Security Analysis for Emergent Software Platforms
Emergent software ecosystems, boomed by the advent of smartphones and the Internet of Things (IoT) platforms, are perpetually sophisticated, deployed into highly dynamic environments, and facilitating interactions across heterogeneous domains. Accordingly, assessing the security thereof is a pressing need, yet requires high levels of scalability and reliability to handle the dynamism involved in such volatile ecosystems.
This dissertation seeks to enhance conventional security detection methods to cope with the emergent features of contemporary software ecosystems. In particular, it analyzes the security of Android and IoT ecosystems by developing rigorous vulnerability detection methods. A critical aspect of this work is the focus on detecting vulnerable and unsafe interactions between applications that share common components and devices. Contributions of this work include novel insights and methods for: (1) detecting vulnerable interactions between Android applications that leverage dynamic loading features for concealing the interactions; (2) identifying unsafe interactions between smart home applications by considering physical and cyber channels; (3) detecting malicious IoT applications that are developed to target numerous IoT devices; (4) detecting insecure patterns of emergent security APIs that are reused from open-source software. In all of the four research thrusts, we present thorough security analysis and extensive evaluations based on real-world applications. Our results demonstrate that the proposed detection mechanisms can efficiently and effectively detect vulnerabilities in contemporary software platforms.
Advisers: Hamid Bagheri and Qiben Ya
- …