From efb96cadbe4378c0a5a669d647dc564061425535 Mon Sep 17 00:00:00 2001 From: noah Date: Wed, 2 Mar 2022 16:23:25 -0600 Subject: [PATCH] Chapter 1 Compliance Graph works --- Appendices.aux | 18 ++--- Chapter1.aux | 16 +++- Chapter1.tex | 30 +++++++- Chapter2.aux | 14 ++-- Chapter3.aux | 30 ++++---- Chapter4.aux | 16 ++-- Chapter5.aux | 58 +++++++-------- Chapter6.aux | 36 ++++----- Chapter7.aux | 6 +- Schrick-Noah_MS-Thesis.aux | 29 ++++---- Schrick-Noah_MS-Thesis.bbl | 17 +++++ Schrick-Noah_MS-Thesis.blg | 64 ++++++++-------- Schrick-Noah_MS-Thesis.lof | 8 +- Schrick-Noah_MS-Thesis.log | 60 +++++++-------- Schrick-Noah_MS-Thesis.pdf | Bin 338284 -> 343561 bytes Schrick-Noah_MS-Thesis.toc | 149 +++++++++++++++++++------------------ 16 files changed, 307 insertions(+), 244 deletions(-) diff --git a/Appendices.aux b/Appendices.aux index ddb01b0..b90c1e9 100644 --- a/Appendices.aux +++ b/Appendices.aux @@ -1,18 +1,18 @@ \relax -\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{23}{}\protected@file@percent } -\newlabel{App:A}{{A}{23}} -\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{24}{}\protected@file@percent } -\newlabel{App:B}{{B}{24}} -\@writefile{toc}{\contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{24}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{24}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{A Sub-subsection in an Appendix}{24}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{25}{}\protected@file@percent } +\newlabel{App:A}{{A}{25}} +\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{26}{}\protected@file@percent } +\newlabel{App:B}{{B}{26}} +\@writefile{toc}{\contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{26}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{26}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{A Sub-subsection in an Appendix}{26}{}\protected@file@percent } \@setckpt{Appendices}{ -\setcounter{page}{25} +\setcounter{page}{27} \setcounter{equation}{0} \setcounter{enumi}{4} \setcounter{enumii}{0} \setcounter{enumiii}{0} -\setcounter{enumiv}{11} +\setcounter{enumiv}{14} \setcounter{footnote}{0} \setcounter{mpfootnote}{0} \setcounter{part}{0} diff --git a/Chapter1.aux b/Chapter1.aux index 0459359..f13ea1e 100644 --- a/Chapter1.aux +++ b/Chapter1.aux @@ -7,10 +7,20 @@ \citation{zhang_boosting_2017} \@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 1: }{\bf \uppercase {INTRODUCTION}}}{1}{}\protected@file@percent } \@writefile{toc}{\contentsline {section}{\numberline {1.1}\bf Introduction to Attack Graphs}{1}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {1.2}\bf Application to Cybersecurity and Compliance}{2}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {1.3}\bf Objectives and Contributions}{2}{}\protected@file@percent } +\citation{j_hale_compliance_nodate} +\citation{baloyi_guidelines_2019} +\citation{allman_complying_2006} +\citation{j_hale_compliance_nodate} +\citation{j_hale_compliance_nodate} +\@writefile{toc}{\contentsline {section}{\numberline {1.2}\bf Application to Compliance}{2}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {1.2.1}\it Introduction to Compliance Graphs}{2}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {1.2.2}\it Defining Compliance Graphs}{2}{}\protected@file@percent } +\newlabel{CG-alter}{{1.2.2}{2}} +\citation{cook_rage_2018} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.2.3}\it Difficulties of Compliance Graphs and Introduction to Thesis Work}{3}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {1.3}\bf Objectives and Contributions}{4}{}\protected@file@percent } \@setckpt{Chapter1}{ -\setcounter{page}{3} +\setcounter{page}{5} \setcounter{equation}{0} \setcounter{enumi}{4} \setcounter{enumii}{0} diff --git a/Chapter1.tex b/Chapter1.tex index 9b6f5fd..19199b5 100644 --- a/Chapter1.tex +++ b/Chapter1.tex @@ -15,7 +15,34 @@ edges. When scaling attack graphs to analyze the modern, interconnected state of custom vulnerability testing, this becomes infeasible. Similar difficulties arise in related fields, where social networks, bio-informatics, and neural network representations also result in graphs with millions of states \cite{zhang_boosting_2017}. Various efforts that will be discussed in Section \ref{sec:related_works} demonstrate methods and techniques that can mitigate these difficulties and improve performance. -\TUsection{Application to Cybersecurity and Compliance} +\TUsection{Application to Compliance} +\TUsubsection{Introduction to Compliance Graphs} +As an alternative to attack graphs for examining vulnerable states and measuring cybersecurity postures, the focus can be narrowed to generate graphs with the purpose of examining compliance or regulation statuses. +These graphs are known as compliance graphs. Compliance graphs can be especially useful for cyber-physical systems, where a greater need for compliance exists. As the authors of \cite{j_hale_compliance_nodate}, +\cite{baloyi_guidelines_2019}, and \cite{allman_complying_2006} discuss, cyber-physical systems have seen greater usage, especially in areas like critical infrastructure and Internet of Things. The challenge of +cyber-physical systems lies not only in the demand for cybersecurity of these systems, but also the concern for safe, stable, and undamaged equipment. The industry in which these devices are used can lead to +additional compliance guidelines that must be followed. Compliance graphs are promising tools that can aid in minimizing the difficulties of these systems. + +A few alterations are needed to attack graph generators to function as compliance graph generators, and these alterations +are discussed in Section \ref{CG-alter}. Compliance requirements are broad and varying, and can function as safety regulations, maintenance compliance, or any +other regulatory compliance. In the same fashion as attack graphs, compliance graphs are exhaustive, and future system states can be analyzed to determine appropriate steps that need to be taken for +preventative measures \cite{j_hale_compliance_nodate}. +\TUsubsection{Defining Compliance Graphs} \label{CG-alter} +The common features of attack graphs serve separate purposes in compliance graphs. The nodes of an attack graph typically represent the system state that includes the qualities and topologies of all assets +in the network as they pertain to cybersecurity postures. Nodes of a compliance graphs also represent the system state, however they include the qualities and topologies of all assets in the network as they +pertain to compliance regulation. For instance, a quality for a vehicle's maintenance compliance could be described as: \textit{car:months\_since\_oil\_change=6}, or \textit{car:miles\_since\_oil\_change=10,000}. +Edges represent changes to a system state that inserted, modified, or deleted a quality or topology. Using the car example, an edge could represent the addition of more mileage or more time since the last oil change. +One large differentiation of attack graphs and compliance graphs can be seen through topologies. For assets in attack graphs, topologies typically represent a connection of assets through a digital medium. For +compliance graphs, topologies not only need to represent the digital connections of assets, but also need extensions to incorporate hardware devices such as sensors, actuators, or other equipment +\cite{j_hale_compliance_nodate}. In addition, rather than using applicable exploits or vulnerabilities, compliance violation detections should be used. An attack graph generation engine would need to use compliance +parameters rather than exploit files, but would otherwise function similarly in the generation process. +\TUsubsection{Difficulties of Compliance Graphs and Introduction to Thesis Work} +Like attack graphs, compliance graphs suffer from the state space explosion problem. Since compliance graphs are also exhaustive, the resulting networks can grow to incredibly large sizes. Compliance regulations +that need to be checked at each system state such as SOX, HIPAA, GDPR, PCI DSS, or any other regulatory compliance in conjunction with a large number of assets that need to be checked can very quickly produce +these large resulting graphs. The creation of these graphs through a serial approach likewise becomes increasingly infeasible. Due to this, the high-performance computing space presents itself as an appealing +approach. This work aims to extend the attack graph generator engine RAGE presented by the author in \cite{cook_rage_2018} to begin development for compliance graph generation. The example networks in this +work will also be in the compliance graph space, specifically examining vehicle maintenance compliance. This work will also examine approaches to leverage high-performance computing to aid in the generation of +compliance graphs. \TUsection{Objectives and Contributions} The objectives of this thesis are: @@ -29,6 +56,7 @@ The objectives of this thesis are: \end{enumerate} \item{Implement solutions to reduce state space explosion while remaining exhaustive and capturing all necessary information} \item{Extend RAGE to function for heterogeneous distributed computing environments} + \item{Utilize RAGE for compliance graph generation} \end{itemize} diff --git a/Chapter2.aux b/Chapter2.aux index f796e6c..83e0d83 100644 --- a/Chapter2.aux +++ b/Chapter2.aux @@ -1,12 +1,12 @@ \relax -\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 2: }{\bf \uppercase {RELATED WORKS}}}{3}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {2.1}\bf Introduction to Graph Generation}{3}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {2.2}\bf Improvements to Attack Graph Generation}{3}{}\protected@file@percent } -\newlabel{sec:related_works}{{2.2}{3}} -\@writefile{toc}{\contentsline {section}{\numberline {2.3}\bf Attack Dependency Graphs}{3}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {2.4}\bf Compliance Graphs}{3}{}\protected@file@percent } +\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 2: }{\bf \uppercase {RELATED WORKS}}}{5}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {2.1}\bf Introduction to Graph Generation}{5}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {2.2}\bf Improvements to Attack Graph Generation}{5}{}\protected@file@percent } +\newlabel{sec:related_works}{{2.2}{5}} +\@writefile{toc}{\contentsline {section}{\numberline {2.3}\bf Attack Dependency Graphs}{5}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {2.4}\bf Compliance Graphs}{5}{}\protected@file@percent } \@setckpt{Chapter2}{ -\setcounter{page}{4} +\setcounter{page}{6} \setcounter{equation}{0} \setcounter{enumi}{4} \setcounter{enumii}{0} diff --git a/Chapter3.aux b/Chapter3.aux index c2fed83..388bc91 100644 --- a/Chapter3.aux +++ b/Chapter3.aux @@ -1,12 +1,12 @@ \relax -\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 3: }{\bf \uppercase {UTILITY EXTENSIONS TO THE RAGE ATTACK GRAPH GENERATOR}}}{4}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {3.1}\bf Path Walking}{4}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {3.2}\bf Compound Operators}{4}{}\protected@file@percent } -\newlabel{sec:compops}{{3.2}{4}} +\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 3: }{\bf \uppercase {UTILITY EXTENSIONS TO THE RAGE ATTACK GRAPH GENERATOR}}}{6}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {3.1}\bf Path Walking}{6}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {3.2}\bf Compound Operators}{6}{}\protected@file@percent } +\newlabel{sec:compops}{{3.2}{6}} \citation{cook_rage_2018} -\@writefile{lof}{\contentsline {figure}{\numberline {3.1}{\ignorespaces Path Walking to State 14}}{5}{}\protected@file@percent } -\newlabel{fig:PW}{{3.1}{5}} -\@writefile{toc}{\contentsline {section}{\numberline {3.3}\bf Color Coding}{6}{}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {3.1}{\ignorespaces Path Walking to State 14}}{7}{}\protected@file@percent } +\newlabel{fig:PW}{{3.1}{7}} +\@writefile{toc}{\contentsline {section}{\numberline {3.3}\bf Color Coding}{8}{}\protected@file@percent } \citation{cook_rage_2018} \citation{li_concurrency_2019} \citation{li_combining_2019} @@ -14,17 +14,17 @@ \citation{ainsworth_graph_2016} \citation{berry_graph_2007} \citation{cook_rage_2018} -\@writefile{lof}{\contentsline {figure}{\numberline {3.2}{\ignorespaces Color Coding a Small Network Based on Violations}}{7}{}\protected@file@percent } -\newlabel{fig:CC}{{3.2}{7}} -\@writefile{toc}{\contentsline {section}{\numberline {3.4}\bf Intermediate Database Storage}{7}{}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {3.2}{\ignorespaces Color Coding a Small Network Based on Violations}}{9}{}\protected@file@percent } +\newlabel{fig:CC}{{3.2}{9}} +\@writefile{toc}{\contentsline {section}{\numberline {3.4}\bf Intermediate Database Storage}{9}{}\protected@file@percent } \citation{zhang_boosting_2017} -\@writefile{toc}{\contentsline {subsection}{\numberline {3.4.1}\it Memory Constraint Difficulties}{8}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {3.4.2}\it Maximizing Performance with Intermediate Database Storage}{9}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {3.4.3}\it Portability}{10}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {3.4.1}\it Memory Constraint Difficulties}{10}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {3.4.2}\it Maximizing Performance with Intermediate Database Storage}{11}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {3.4.3}\it Portability}{12}{}\protected@file@percent } \citation{CVE-2019-10747} -\@writefile{toc}{\contentsline {section}{\numberline {3.5}\bf Relational Operators}{11}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {3.5}\bf Relational Operators}{13}{}\protected@file@percent } \@setckpt{Chapter3}{ -\setcounter{page}{12} +\setcounter{page}{14} \setcounter{equation}{0} \setcounter{enumi}{4} \setcounter{enumii}{0} diff --git a/Chapter4.aux b/Chapter4.aux index 2c95e7e..10ad4e8 100644 --- a/Chapter4.aux +++ b/Chapter4.aux @@ -1,13 +1,13 @@ \relax -\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 4: }{\bf \uppercase {SYNCHRONOUS FIRING}}}{12}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {4.1}\bf Introduction}{12}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.1.1}\it Synchronous Firing in Literature}{12}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {4.2}\bf Necessary Components}{12}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {4.3}\bf Example Networks and Results}{12}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.1}\it Example Networks}{12}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.2}\it Results}{12}{}\protected@file@percent } +\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 4: }{\bf \uppercase {SYNCHRONOUS FIRING}}}{14}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {4.1}\bf Introduction}{14}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {4.1.1}\it Synchronous Firing in Literature}{14}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {4.2}\bf Necessary Components}{14}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {4.3}\bf Example Networks and Results}{14}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.1}\it Example Networks}{14}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.2}\it Results}{14}{}\protected@file@percent } \@setckpt{Chapter4}{ -\setcounter{page}{13} +\setcounter{page}{15} \setcounter{equation}{0} \setcounter{enumi}{4} \setcounter{enumii}{0} diff --git a/Chapter5.aux b/Chapter5.aux index fc92f2e..0bfa56d 100644 --- a/Chapter5.aux +++ b/Chapter5.aux @@ -1,36 +1,36 @@ \relax -\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 5: }{\bf \uppercase {Utilization OF MESSAGE PASSING INTERFACE}}}{13}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {5.1}\bf Introduction to MPI Utilization for Attack Graph Generation}{13}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {5.2}\bf Necessary Components}{13}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {5.2.1}\it Serialization}{13}{}\protected@file@percent } +\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 5: }{\bf \uppercase {Utilization OF MESSAGE PASSING INTERFACE}}}{15}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {5.1}\bf Introduction to MPI Utilization for Attack Graph Generation}{15}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {5.2}\bf Necessary Components}{15}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {5.2.1}\it Serialization}{15}{}\protected@file@percent } \citation{cook_rage_2018} \citation{li_concurrency_2019} -\@writefile{toc}{\contentsline {subsection}{\numberline {5.2.2}\it Data Consistency}{14}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {5.3}\bf Tasking Approach}{14}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.1}\it Introduction to the Tasking Approach}{14}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.2}\it Algorithm Design}{14}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{14}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{Task Zero}{14}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{Task One}{14}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{Task Two}{14}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{Task Three}{14}{}\protected@file@percent } -\@writefile{lof}{\contentsline {figure}{\numberline {5.1}{\ignorespaces Generation Flowchart of RAGE}}{15}{}\protected@file@percent } -\newlabel{fig:RAGE_chart}{{5.1}{15}} -\@writefile{lof}{\contentsline {figure}{\numberline {5.2}{\ignorespaces Task Overview of the Attack Graph Generation Process}}{16}{}\protected@file@percent } -\newlabel{fig:tasks}{{5.2}{16}} -\@writefile{toc}{\contentsline {subsubsection}{Task Four}{17}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{Task Five}{17}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{17}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{17}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{17}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{17}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{17}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{Worker Nodes}{17}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{Root Node}{17}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsubsection}{Database Node}{17}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{17}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {5.2.2}\it Data Consistency}{16}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {5.3}\bf Tasking Approach}{16}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.1}\it Introduction to the Tasking Approach}{16}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.2}\it Algorithm Design}{16}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{16}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{Task Zero}{16}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{Task One}{16}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{Task Two}{16}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{Task Three}{16}{}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {5.1}{\ignorespaces Generation Flowchart of RAGE}}{17}{}\protected@file@percent } +\newlabel{fig:RAGE_chart}{{5.1}{17}} +\@writefile{lof}{\contentsline {figure}{\numberline {5.2}{\ignorespaces Task Overview of the Attack Graph Generation Process}}{18}{}\protected@file@percent } +\newlabel{fig:tasks}{{5.2}{18}} +\@writefile{toc}{\contentsline {subsubsection}{Task Four}{19}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{Task Five}{19}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{19}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{19}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{19}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{19}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{19}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{Worker Nodes}{19}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{Root Node}{19}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsubsection}{Database Node}{19}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{19}{}\protected@file@percent } \@setckpt{Chapter5}{ -\setcounter{page}{18} +\setcounter{page}{20} \setcounter{equation}{0} \setcounter{enumi}{4} \setcounter{enumii}{0} diff --git a/Chapter6.aux b/Chapter6.aux index 61dead3..e5e1521 100644 --- a/Chapter6.aux +++ b/Chapter6.aux @@ -1,23 +1,23 @@ \relax -\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.1}\bf Small Networks}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.1}\it Test Information}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.2}\it Results}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.3}\it Analysis}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.2}\bf Large Networks}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.1}\it Test Information}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.2}\it Results}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.2}\it Results}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{18}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{19}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.2}\it Results}{19}{}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{19}{}\protected@file@percent } +\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{20}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {6.1}\bf Small Networks}{20}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.1}\it Test Information}{20}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.2}\it Results}{20}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.3}\it Analysis}{20}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {6.2}\bf Large Networks}{20}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.1}\it Test Information}{20}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.2}\it Results}{20}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{20}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{20}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{20}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.2}\it Results}{20}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{20}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{20}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{21}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.2}\it Results}{21}{}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{21}{}\protected@file@percent } \@setckpt{Chapter6}{ -\setcounter{page}{20} +\setcounter{page}{22} \setcounter{equation}{0} \setcounter{enumi}{4} \setcounter{enumii}{0} diff --git a/Chapter7.aux b/Chapter7.aux index 7bbcd6b..0226d5d 100644 --- a/Chapter7.aux +++ b/Chapter7.aux @@ -1,8 +1,8 @@ \relax -\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{20}{}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {7.1}\bf Future Work}{20}{}\protected@file@percent } +\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{22}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {7.1}\bf Future Work}{22}{}\protected@file@percent } \@setckpt{Chapter7}{ -\setcounter{page}{21} +\setcounter{page}{23} \setcounter{equation}{0} \setcounter{enumi}{4} \setcounter{enumii}{0} diff --git a/Schrick-Noah_MS-Thesis.aux b/Schrick-Noah_MS-Thesis.aux index e6fd8a5..eeb9b02 100644 --- a/Schrick-Noah_MS-Thesis.aux +++ b/Schrick-Noah_MS-Thesis.aux @@ -22,21 +22,24 @@ \@input{Chapter7.aux} \bibdata{Bibliography} \bibcite{ainsworth_graph_2016}{1} -\bibcite{berry_graph_2007}{2} -\bibcite{cook_rage_2018}{3} -\bibcite{CVE-2019-10747}{4} -\bibcite{li_combining_2019}{5} -\bibcite{li_concurrency_2019}{6} -\bibcite{ou_scalable_2006}{7} -\bibcite{phillips_graph-based_1998}{8} -\bibcite{schneier_modeling_1999}{9} +\bibcite{allman_complying_2006}{2} +\bibcite{baloyi_guidelines_2019}{3} +\bibcite{berry_graph_2007}{4} +\bibcite{cook_rage_2018}{5} +\bibcite{CVE-2019-10747}{6} +\bibcite{j_hale_compliance_nodate}{7} +\bibcite{li_combining_2019}{8} +\bibcite{li_concurrency_2019}{9} \@writefile{toc}{{\hfill \ }} -\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{21}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{23}{}\protected@file@percent } \@writefile{toc}{\addvspace {10pt}} -\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{21}{}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{23}{}\protected@file@percent } \@writefile{toc}{{\hfill \ }} -\bibcite{sheyner_automated_2002}{10} -\bibcite{zhang_boosting_2017}{11} +\bibcite{ou_scalable_2006}{10} +\bibcite{phillips_graph-based_1998}{11} +\bibcite{schneier_modeling_1999}{12} +\bibcite{sheyner_automated_2002}{13} +\bibcite{zhang_boosting_2017}{14} \bibstyle{plain} \@input{Appendices.aux} -\gdef \@abspage@last{34} +\gdef \@abspage@last{36} diff --git a/Schrick-Noah_MS-Thesis.bbl b/Schrick-Noah_MS-Thesis.bbl index 3c649b9..d9c4366 100644 --- a/Schrick-Noah_MS-Thesis.bbl +++ b/Schrick-Noah_MS-Thesis.bbl @@ -6,6 +6,19 @@ Sam Ainsworth and Timothy~M. Jones. \newblock {\em Proceedings of the International Conference on Supercomputing}, 01-03-June, 2016. +\bibitem{allman_complying_2006} +Eric Allman. +\newblock Complying with {Compliance}: {Blowing} it off is not an option. +\newblock {\em ACM Queue}, 4(7), 2006. + +\bibitem{baloyi_guidelines_2019} +Ntsako Baloyi and Paula Kotzé. +\newblock Guidelines for {Data} {Privacy} {Compliance}: {A} {Focus} on + {Cyberphysical} {Systems} and {Internet} of {Things}. +\newblock In {\em {SAICSIT} '19: {Proceedings} of the {South} {African} + {Institute} of {Computer} {Scientists} and {Information} {Technologists} + 2019}, Skukuza South Africa, 2019. Association for Computing Machinery. + \bibitem{berry_graph_2007} Jonathan Berry and Bruce Hendrickson. \newblock Graph {Analysis} with {High} {Performance} {Computing}. @@ -23,6 +36,10 @@ Kyle Cook. payloads.} \newblock National Vulnerability Database, August 2019. +\bibitem{j_hale_compliance_nodate} +{J. Hale}, P.~Hawrylak, and M.~Papa. +\newblock Compliance {Method} for a {Cyber}-{Physical} {System}. + \bibitem{li_combining_2019} Ming Li, Peter Hawrylak, and John Hale. \newblock Combining {OpenCL} and {MPI} to support heterogeneous computing on a diff --git a/Schrick-Noah_MS-Thesis.blg b/Schrick-Noah_MS-Thesis.blg index f04e397..33ddd18 100644 --- a/Schrick-Noah_MS-Thesis.blg +++ b/Schrick-Noah_MS-Thesis.blg @@ -11,47 +11,49 @@ A level-1 auxiliary file: Chapter7.aux The style file: plain.bst A level-1 auxiliary file: Appendices.aux Database file #1: Bibliography.bib +Warning--entry type for "j_hale_compliance_nodate" isn't style-file defined +--line 272 of file Bibliography.bib Warning--empty school in cook_rage_2018 Warning--empty journal in ou_scalable_2006 -You've used 11 entries, +You've used 14 entries, 2118 wiz_defined-function locations, - 563 strings with 6143 characters, -and the built_in function-call counts, 3540 in all, are: -= -- 359 -> -- 154 + 577 strings with 6718 characters, +and the built_in function-call counts, 4298 in all, are: += -- 430 +> -- 192 < -- 4 -+ -- 63 -- -- 50 -* -- 209 -:= -- 576 -add.period$ -- 32 -call.type$ -- 11 -change.case$ -- 58 ++ -- 78 +- -- 62 +* -- 250 +:= -- 708 +add.period$ -- 41 +call.type$ -- 14 +change.case$ -- 73 chr.to.int$ -- 0 -cite$ -- 13 -duplicate$ -- 144 -empty$ -- 263 -format.name$ -- 50 -if$ -- 754 +cite$ -- 16 +duplicate$ -- 175 +empty$ -- 329 +format.name$ -- 62 +if$ -- 914 int.to.chr$ -- 0 -int.to.str$ -- 11 -missing$ -- 8 -newline$ -- 57 -num.names$ -- 20 -pop$ -- 65 +int.to.str$ -- 14 +missing$ -- 10 +newline$ -- 71 +num.names$ -- 26 +pop$ -- 85 preamble$ -- 1 -purify$ -- 48 +purify$ -- 60 quote$ -- 0 -skip$ -- 128 +skip$ -- 152 stack$ -- 0 -substring$ -- 204 -swap$ -- 46 +substring$ -- 219 +swap$ -- 49 text.length$ -- 4 text.prefix$ -- 0 top$ -- 0 -type$ -- 44 +type$ -- 56 warning$ -- 2 -while$ -- 34 -width$ -- 13 -write$ -- 115 -(There were 2 warnings) +while$ -- 40 +width$ -- 16 +write$ -- 145 +(There were 3 warnings) diff --git a/Schrick-Noah_MS-Thesis.lof b/Schrick-Noah_MS-Thesis.lof index dee3a83..16d9b22 100644 --- a/Schrick-Noah_MS-Thesis.lof +++ b/Schrick-Noah_MS-Thesis.lof @@ -1,5 +1,5 @@ {\vspace {\baselineskip }} -\contentsline {figure}{\numberline {3.1}{\ignorespaces Path Walking to State 14}}{5}{}% -\contentsline {figure}{\numberline {3.2}{\ignorespaces Color Coding a Small Network Based on Violations}}{7}{}% -\contentsline {figure}{\numberline {5.1}{\ignorespaces Generation Flowchart of RAGE}}{15}{}% -\contentsline {figure}{\numberline {5.2}{\ignorespaces Task Overview of the Attack Graph Generation Process}}{16}{}% +\contentsline {figure}{\numberline {3.1}{\ignorespaces Path Walking to State 14}}{7}{}% +\contentsline {figure}{\numberline {3.2}{\ignorespaces Color Coding a Small Network Based on Violations}}{9}{}% +\contentsline {figure}{\numberline {5.1}{\ignorespaces Generation Flowchart of RAGE}}{17}{}% +\contentsline {figure}{\numberline {5.2}{\ignorespaces Task Overview of the Attack Graph Generation Process}}{18}{}% diff --git a/Schrick-Noah_MS-Thesis.log b/Schrick-Noah_MS-Thesis.log index 0951b8e..af127a8 100644 --- a/Schrick-Noah_MS-Thesis.log +++ b/Schrick-Noah_MS-Thesis.log @@ -1,4 +1,4 @@ -This is pdfTeX, Version 3.141592653-2.6-1.40.23 (TeX Live 2021/Arch Linux) (preloaded format=pdflatex 2022.2.14) 27 FEB 2022 19:57 +This is pdfTeX, Version 3.141592653-2.6-1.40.23 (TeX Live 2021/Arch Linux) (preloaded format=pdflatex 2022.2.14) 2 MAR 2022 16:20 entering extended mode restricted \write18 enabled. %&-line parsing enabled. @@ -170,7 +170,7 @@ LaTeX Font Info: External font `cmex10' loaded for size LaTeX Font Info: External font `cmex10' loaded for size (Font) <6> on input line 2. -Overfull \hbox (1.75291pt too wide) in paragraph at lines 22--22 +Overfull \hbox (1.75291pt too wide) in paragraph at lines 25--25 [] []\OT1/cmr/bx/n/12 UTILITY EX-TEN-SIONS TO THE RAGE AT-TACK GRAPH [] @@ -202,12 +202,12 @@ CHAPTER 1. -]) [2] +] [2] [3]) [4] \openout2 = `Chapter2.aux'. (./Chapter2.tex CHAPTER 2. -) [3 +) [5 @@ -217,29 +217,29 @@ CHAPTER 2. (./Chapter3.tex CHAPTER 3. -<./Chapter3_img/PW.png, id=48, 958.58125pt x 525.965pt> +<./Chapter3_img/PW.png, id=54, 958.58125pt x 525.965pt> File: ./Chapter3_img/PW.png Graphic file (type png) Package pdftex.def Info: ./Chapter3_img/PW.png used on input line 17. (pdftex.def) Requested size: 469.75499pt x 257.74918pt. -[4 +[6 -] [5 <./Chapter3_img/PW.png>] -<./Chapter3_img/CC.png, id=57, 658.46pt x 527.9725pt> +] [7 <./Chapter3_img/PW.png>] +<./Chapter3_img/CC.png, id=63, 658.46pt x 527.9725pt> File: ./Chapter3_img/CC.png Graphic file (type png) Package pdftex.def Info: ./Chapter3_img/CC.png used on input line 55. (pdftex.def) Requested size: 469.75499pt x 376.66768pt. - [6] [7 <./Chapter3_img/CC.png>] [8] [9] -[10]) [11] + [8] [9 <./Chapter3_img/CC.png>] [10] [11] +[12]) [13] \openout2 = `Chapter4.aux'. (./Chapter4.tex CHAPTER 4. -) [12 +) [14 @@ -249,57 +249,57 @@ CHAPTER 4. (./Chapter5.tex CHAPTER 5. -[13 +[15 ] -<./Chapter5_img/RAGE_Chart.png, id=83, 495.8525pt x 557.08125pt> +<./Chapter5_img/RAGE_Chart.png, id=90, 495.8525pt x 557.08125pt> File: ./Chapter5_img/RAGE_Chart.png Graphic file (type png) Package pdftex.def Info: ./Chapter5_img/RAGE_Chart.png used on input line 43. (pdftex.def) Requested size: 469.75499pt x 527.76213pt. -<./Chapter5_img/horiz_task.drawio.png, id=84, 1125.20375pt x 738.76pt> +<./Chapter5_img/horiz_task.drawio.png, id=91, 1125.20375pt x 738.76pt> File: ./Chapter5_img/horiz_task.drawio.png Graphic file (type png) Package pdftex.def Info: ./Chapter5_img/horiz_task.drawio.png used on input li ne 49. (pdftex.def) Requested size: 469.75499pt x 308.4171pt. - [14] [15 <./Chapter5_img/RAGE_Chart.png>] [16 <./Chapter5_img/horiz_task.drawi -o.png>]) [17] + [16] [17 <./Chapter5_img/RAGE_Chart.png>] [18 <./Chapter5_img/horiz_task.drawi +o.png>]) [19] \openout2 = `Chapter6.aux'. (./Chapter6.tex CHAPTER 6. -[18 +[20 -]) [19] +]) [21] \openout2 = `Chapter7.aux'. (./Chapter7.tex CHAPTER 7. -) [20 +) [22 -] (./Schrick-Noah_MS-Thesis.bbl [21 +] (./Schrick-Noah_MS-Thesis.bbl [23 ]) \c@appendixno=\count269 - [22] + [24] \openout2 = `Appendices.aux'. - (./Appendices.tex [23 + (./Appendices.tex [25 ]) -[24] (./Schrick-Noah_MS-Thesis.aux (./Chapter1.aux) (./Chapter2.aux) +[26] (./Schrick-Noah_MS-Thesis.aux (./Chapter1.aux) (./Chapter2.aux) (./Chapter3.aux) (./Chapter4.aux) (./Chapter5.aux) (./Chapter6.aux) (./Chapter7.aux) (./Appendices.aux)) ) (\end occurred inside a group at level 6) @@ -312,10 +312,10 @@ CHAPTER 7. ### semi simple group (level 1) entered at line 52 (\begingroup) ### bottom level Here is how much of TeX's memory you used: - 2148 strings out of 478353 - 37971 string characters out of 5854635 - 344925 words of memory out of 5000000 - 20218 multiletter control sequences out of 15000+600000 + 2153 strings out of 478353 + 38062 string characters out of 5854635 + 344949 words of memory out of 5000000 + 20223 multiletter control sequences out of 15000+600000 407157 words of font info for 39 fonts, out of 8000000 for 9000 1141 hyphenation exceptions out of 8191 55i,7n,62p,306b,1305s stack positions out of 5000i,500n,10000p,200000b,80000s @@ -325,10 +325,10 @@ texmf-dist/fonts/type1/public/amsfonts/cm/cmmi12.pfb> -Output written on Schrick-Noah_MS-Thesis.pdf (34 pages, 338284 bytes). +Output written on Schrick-Noah_MS-Thesis.pdf (36 pages, 343561 bytes). PDF statistics: - 150 PDF objects out of 1000 (max. 8388607) - 96 compressed objects within 1 object stream + 156 PDF objects out of 1000 (max. 8388607) + 100 compressed objects within 1 object stream 0 named destinations out of 1000 (max. 500000) 21 words of extra memory for PDF output out of 10000 (max. 10000000) diff --git a/Schrick-Noah_MS-Thesis.pdf b/Schrick-Noah_MS-Thesis.pdf index aa5c262039dc73823f50c15494f5449d14ca7636..f5d5873eb58d48315ec7435b113e6b718c74a2ab 100644 GIT binary patch delta 67782 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 HMNdWwpe6Xe delta 62509 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 z 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 diff --git a/Schrick-Noah_MS-Thesis.toc b/Schrick-Noah_MS-Thesis.toc index 1163c26..d03a2ab 100644 --- a/Schrick-Noah_MS-Thesis.toc +++ b/Schrick-Noah_MS-Thesis.toc @@ -12,79 +12,82 @@ \contentsline {section}{\hspace {-\parindent }LIST OF FIGURES}{x}{}% \contentsline {chapter}{\numberline {CHAPTER 1: }{\bf \uppercase {INTRODUCTION}}}{1}{}% \contentsline {section}{\numberline {1.1}\bf Introduction to Attack Graphs}{1}{}% -\contentsline {section}{\numberline {1.2}\bf Application to Cybersecurity and Compliance}{2}{}% -\contentsline {section}{\numberline {1.3}\bf Objectives and Contributions}{2}{}% -\contentsline {chapter}{\numberline {CHAPTER 2: }{\bf \uppercase {RELATED WORKS}}}{3}{}% -\contentsline {section}{\numberline {2.1}\bf Introduction to Graph Generation}{3}{}% -\contentsline {section}{\numberline {2.2}\bf Improvements to Attack Graph Generation}{3}{}% -\contentsline {section}{\numberline {2.3}\bf Attack Dependency Graphs}{3}{}% -\contentsline {section}{\numberline {2.4}\bf Compliance Graphs}{3}{}% -\contentsline {chapter}{\numberline {CHAPTER 3: }{\bf \uppercase {UTILITY EXTENSIONS TO THE RAGE ATTACK GRAPH GENERATOR}}}{4}{}% -\contentsline {section}{\numberline {3.1}\bf Path Walking}{4}{}% -\contentsline {section}{\numberline {3.2}\bf Compound Operators}{4}{}% -\contentsline {section}{\numberline {3.3}\bf Color Coding}{6}{}% -\contentsline {section}{\numberline {3.4}\bf Intermediate Database Storage}{7}{}% -\contentsline {subsection}{\numberline {3.4.1}\it Memory Constraint Difficulties}{8}{}% -\contentsline {subsection}{\numberline {3.4.2}\it Maximizing Performance with Intermediate Database Storage}{9}{}% -\contentsline {subsection}{\numberline {3.4.3}\it Portability}{10}{}% -\contentsline {section}{\numberline {3.5}\bf Relational Operators}{11}{}% -\contentsline {chapter}{\numberline {CHAPTER 4: }{\bf \uppercase {SYNCHRONOUS FIRING}}}{12}{}% -\contentsline {section}{\numberline {4.1}\bf Introduction}{12}{}% -\contentsline {subsection}{\numberline {4.1.1}\it Synchronous Firing in Literature}{12}{}% -\contentsline {section}{\numberline {4.2}\bf Necessary Components}{12}{}% -\contentsline {section}{\numberline {4.3}\bf Example Networks and Results}{12}{}% -\contentsline {subsection}{\numberline {4.3.1}\it Example Networks}{12}{}% -\contentsline {subsection}{\numberline {4.3.2}\it Results}{12}{}% -\contentsline {chapter}{\numberline {CHAPTER 5: }{\bf \uppercase {Utilization OF MESSAGE PASSING INTERFACE}}}{13}{}% -\contentsline {section}{\numberline {5.1}\bf Introduction to MPI Utilization for Attack Graph Generation}{13}{}% -\contentsline {section}{\numberline {5.2}\bf Necessary Components}{13}{}% -\contentsline {subsection}{\numberline {5.2.1}\it Serialization}{13}{}% -\contentsline {subsection}{\numberline {5.2.2}\it Data Consistency}{14}{}% -\contentsline {section}{\numberline {5.3}\bf Tasking Approach}{14}{}% -\contentsline {subsection}{\numberline {5.3.1}\it Introduction to the Tasking Approach}{14}{}% -\contentsline {subsection}{\numberline {5.3.2}\it Algorithm Design}{14}{}% -\contentsline {subsubsection}{Communication Structure}{14}{}% -\contentsline {subsubsection}{Task Zero}{14}{}% -\contentsline {subsubsection}{Task One}{14}{}% -\contentsline {subsubsection}{Task Two}{14}{}% -\contentsline {subsubsection}{Task Three}{14}{}% -\contentsline {subsubsection}{Task Four}{17}{}% -\contentsline {subsubsection}{Task Five}{17}{}% -\contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{17}{}% -\contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{17}{}% -\contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{17}{}% -\contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{17}{}% -\contentsline {subsubsection}{Communication Structure}{17}{}% -\contentsline {subsubsection}{Worker Nodes}{17}{}% -\contentsline {subsubsection}{Root Node}{17}{}% -\contentsline {subsubsection}{Database Node}{17}{}% -\contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{17}{}% -\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{18}{}% -\contentsline {section}{\numberline {6.1}\bf Small Networks}{18}{}% -\contentsline {subsection}{\numberline {6.1.1}\it Test Information}{18}{}% -\contentsline {subsection}{\numberline {6.1.2}\it Results}{18}{}% -\contentsline {subsection}{\numberline {6.1.3}\it Analysis}{18}{}% -\contentsline {section}{\numberline {6.2}\bf Large Networks}{18}{}% -\contentsline {subsection}{\numberline {6.2.1}\it Test Information}{18}{}% -\contentsline {subsection}{\numberline {6.2.2}\it Results}{18}{}% -\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{18}{}% -\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{18}{}% -\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{18}{}% -\contentsline {subsection}{\numberline {6.3.2}\it Results}{18}{}% -\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{18}{}% -\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{18}{}% -\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{19}{}% -\contentsline {subsection}{\numberline {6.4.2}\it Results}{19}{}% -\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{19}{}% -\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{20}{}% -\contentsline {section}{\numberline {7.1}\bf Future Work}{20}{}% +\contentsline {section}{\numberline {1.2}\bf Application to Compliance}{2}{}% +\contentsline {subsection}{\numberline {1.2.1}\it Introduction to Compliance Graphs}{2}{}% +\contentsline {subsection}{\numberline {1.2.2}\it Defining Compliance Graphs}{2}{}% +\contentsline {subsection}{\numberline {1.2.3}\it Difficulties of Compliance Graphs and Introduction to Thesis Work}{3}{}% +\contentsline {section}{\numberline {1.3}\bf Objectives and Contributions}{4}{}% +\contentsline {chapter}{\numberline {CHAPTER 2: }{\bf \uppercase {RELATED WORKS}}}{5}{}% +\contentsline {section}{\numberline {2.1}\bf Introduction to Graph Generation}{5}{}% +\contentsline {section}{\numberline {2.2}\bf Improvements to Attack Graph Generation}{5}{}% +\contentsline {section}{\numberline {2.3}\bf Attack Dependency Graphs}{5}{}% +\contentsline {section}{\numberline {2.4}\bf Compliance Graphs}{5}{}% +\contentsline {chapter}{\numberline {CHAPTER 3: }{\bf \uppercase {UTILITY EXTENSIONS TO THE RAGE ATTACK GRAPH GENERATOR}}}{6}{}% +\contentsline {section}{\numberline {3.1}\bf Path Walking}{6}{}% +\contentsline {section}{\numberline {3.2}\bf Compound Operators}{6}{}% +\contentsline {section}{\numberline {3.3}\bf Color Coding}{8}{}% +\contentsline {section}{\numberline {3.4}\bf Intermediate Database Storage}{9}{}% +\contentsline {subsection}{\numberline {3.4.1}\it Memory Constraint Difficulties}{10}{}% +\contentsline {subsection}{\numberline {3.4.2}\it Maximizing Performance with Intermediate Database Storage}{11}{}% +\contentsline {subsection}{\numberline {3.4.3}\it Portability}{12}{}% +\contentsline {section}{\numberline {3.5}\bf Relational Operators}{13}{}% +\contentsline {chapter}{\numberline {CHAPTER 4: }{\bf \uppercase {SYNCHRONOUS FIRING}}}{14}{}% +\contentsline {section}{\numberline {4.1}\bf Introduction}{14}{}% +\contentsline {subsection}{\numberline {4.1.1}\it Synchronous Firing in Literature}{14}{}% +\contentsline {section}{\numberline {4.2}\bf Necessary Components}{14}{}% +\contentsline {section}{\numberline {4.3}\bf Example Networks and Results}{14}{}% +\contentsline {subsection}{\numberline {4.3.1}\it Example Networks}{14}{}% +\contentsline {subsection}{\numberline {4.3.2}\it Results}{14}{}% +\contentsline {chapter}{\numberline {CHAPTER 5: }{\bf \uppercase {Utilization OF MESSAGE PASSING INTERFACE}}}{15}{}% +\contentsline {section}{\numberline {5.1}\bf Introduction to MPI Utilization for Attack Graph Generation}{15}{}% +\contentsline {section}{\numberline {5.2}\bf Necessary Components}{15}{}% +\contentsline {subsection}{\numberline {5.2.1}\it Serialization}{15}{}% +\contentsline {subsection}{\numberline {5.2.2}\it Data Consistency}{16}{}% +\contentsline {section}{\numberline {5.3}\bf Tasking Approach}{16}{}% +\contentsline {subsection}{\numberline {5.3.1}\it Introduction to the Tasking Approach}{16}{}% +\contentsline {subsection}{\numberline {5.3.2}\it Algorithm Design}{16}{}% +\contentsline {subsubsection}{Communication Structure}{16}{}% +\contentsline {subsubsection}{Task Zero}{16}{}% +\contentsline {subsubsection}{Task One}{16}{}% +\contentsline {subsubsection}{Task Two}{16}{}% +\contentsline {subsubsection}{Task Three}{16}{}% +\contentsline {subsubsection}{Task Four}{19}{}% +\contentsline {subsubsection}{Task Five}{19}{}% +\contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{19}{}% +\contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{19}{}% +\contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{19}{}% +\contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{19}{}% +\contentsline {subsubsection}{Communication Structure}{19}{}% +\contentsline {subsubsection}{Worker Nodes}{19}{}% +\contentsline {subsubsection}{Root Node}{19}{}% +\contentsline {subsubsection}{Database Node}{19}{}% +\contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{19}{}% +\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{20}{}% +\contentsline {section}{\numberline {6.1}\bf Small Networks}{20}{}% +\contentsline {subsection}{\numberline {6.1.1}\it Test Information}{20}{}% +\contentsline {subsection}{\numberline {6.1.2}\it Results}{20}{}% +\contentsline {subsection}{\numberline {6.1.3}\it Analysis}{20}{}% +\contentsline {section}{\numberline {6.2}\bf Large Networks}{20}{}% +\contentsline {subsection}{\numberline {6.2.1}\it Test Information}{20}{}% +\contentsline {subsection}{\numberline {6.2.2}\it Results}{20}{}% +\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{20}{}% +\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{20}{}% +\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{20}{}% +\contentsline {subsection}{\numberline {6.3.2}\it Results}{20}{}% +\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{20}{}% +\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{20}{}% +\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{21}{}% +\contentsline {subsection}{\numberline {6.4.2}\it Results}{21}{}% +\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{21}{}% +\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{22}{}% +\contentsline {section}{\numberline {7.1}\bf Future Work}{22}{}% {\hfill \ } -\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{21}{}% +\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{23}{}% \addvspace {10pt} -\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{21}{}% +\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{23}{}% {\hfill \ } -\contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{23}{}% -\contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{24}{}% -\contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{24}{}% -\contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{24}{}% -\contentsline {subsubsection}{A Sub-subsection in an Appendix}{24}{}% +\contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{25}{}% +\contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{26}{}% +\contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{26}{}% +\contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{26}{}% +\contentsline {subsubsection}{A Sub-subsection in an Appendix}{26}{}%