Sync Fire Introduction and Literature

This commit is contained in:
Noah L. Schrick 2022-03-05 15:29:24 -06:00
parent 0a8633e523
commit 0dcb6662b7
15 changed files with 245 additions and 189 deletions

View File

@ -1,18 +1,18 @@
\relax
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{28}{}\protected@file@percent }
\newlabel{App:A}{{A}{28}}
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{29}{}\protected@file@percent }
\newlabel{App:B}{{B}{29}}
\@writefile{toc}{\contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{A Sub-subsection in an Appendix}{29}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{30}{}\protected@file@percent }
\newlabel{App:A}{{A}{30}}
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{31}{}\protected@file@percent }
\newlabel{App:B}{{B}{31}}
\@writefile{toc}{\contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{31}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{31}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{A Sub-subsection in an Appendix}{31}{}\protected@file@percent }
\@setckpt{Appendices}{
\setcounter{page}{30}
\setcounter{page}{32}
\setcounter{equation}{0}
\setcounter{enumi}{4}
\setcounter{enumii}{0}
\setcounter{enumiii}{0}
\setcounter{enumiv}{25}
\setcounter{enumiv}{26}
\setcounter{footnote}{0}
\setcounter{mpfootnote}{0}
\setcounter{part}{0}

View File

@ -1,13 +1,21 @@
\relax
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 4: }{\bf \uppercase {SYNCHRONOUS FIRING}}}{16}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {4.1}\bf Introduction}{16}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.1.1}\it Synchronous Firing in Literature}{16}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {4.2}\bf Necessary Components}{16}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {4.3}\bf Example Networks and Results}{16}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.1}\it Example Networks}{16}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.2}\it Results}{16}{}\protected@file@percent }
\citation{louthan_hybrid_2011}
\citation{louthan_hybrid_2011}
\citation{louthan_hybrid_2011}
\citation{louthan_hybrid_2011}
\citation{louthan_hybrid_2011}
\citation{cook_rage_2018}
\@writefile{lof}{\contentsline {figure}{\numberline {4.1}{\ignorespaces A network without Synchronous Firing generating infeasible states}}{17}{}\protected@file@percent }
\newlabel{fig:non-sync_ex}{{4.1}{17}}
\@writefile{toc}{\contentsline {subsection}{\numberline {4.1.1}\it Synchronous Firing in Literature}{17}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {4.2}\bf Necessary Components}{18}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {4.3}\bf Example Networks and Results}{18}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.1}\it Example Networks}{18}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {4.3.2}\it Results}{18}{}\protected@file@percent }
\@setckpt{Chapter4}{
\setcounter{page}{17}
\setcounter{page}{19}
\setcounter{equation}{0}
\setcounter{enumi}{4}
\setcounter{enumii}{0}
@ -22,7 +30,7 @@
\setcounter{subsubsection}{0}
\setcounter{paragraph}{0}
\setcounter{subparagraph}{0}
\setcounter{figure}{0}
\setcounter{figure}{1}
\setcounter{table}{0}
\setcounter{lofdepth}{1}
\setcounter{lotdepth}{1}

View File

@ -1,8 +1,40 @@
\TUchapter{SYNCHRONOUS FIRING}
\TUsection{Introduction}
One main appeal of attack graphs and compliance graphs are their exhaustiveness. The ability to generate all permutations of attack chains or to generate all
possible ways a system can fall out of compliance is a valuable feature. The disadvantage of this approach is that the generation of the final graph increases
in time, as does the analysis. One other disadvantage is that this exhaustiveness can produce states that are not actually feasible. When a system has assets that
have inseperable features, the generation process forcibly seperates features to examine all permutations, since the generation process only modifies one quality at a time.
One example of an inseperable feature is time. If two different assets are identical and no constraints dictate othewise, the two assets cannot proceed through times at different rates.
For example, if two cars were manufactured at the same
moment, one of these cars cannot proceed multiple time steps into the future while the other remains at its current time step - each car must step through time at the same rate.
However, the generation of attack graphs and compliance graphs examines the possibilities that one car ages by one time step, while the other car does not, or vice versa. This results in an attack graph
that can be seen in Figure \ref{fig:non-sync_ex}, which is a partial attack graph showing the separation of the time feature. All states shaded as a light red color are considered
infeasible, since all of these states comprise of assets that have advanced time at different rates. It is noticeable that not only are the infeasible states a wasteful generation,
but that they also lead to the generation of even more infeasible states that will then also be explored. The desired goal of a generation process similar to this is to have a single state transition that updates
assets with an inseparable feature simultaneously.
\begin{figure}[htp]
\includegraphics[width=\linewidth]{"./Chapter4_img/non-sync_ex.drawio.png"}
\vspace{.2truein} \centerline{}
\caption{A network without Synchronous Firing generating infeasible states}
\label{fig:non-sync_ex}
\end{figure}
Post-processing is one option at removing the infeasible states. This process would simplify and reduce the time taken for the analysis process, but the generation process would still suffer
from generating infeasible states, as well as exploring the infeasible states. Instead, a new approach called Synchronous Firing can be used to prevent the generation of infeasible states.
The goal of the Synchronous Firing feature is to prevent the generation of infeasible states, while also not incurring a greater computational cost. This Chapter will discuss the development
of this feature, its mentionings in literature, and examine the results when using this feature in applicable networks.
\TUsubsection{Synchronous Firing in Literature}
Synchronous Firing is discussed by the author of \cite{louthan_hybrid_2011}, where it is described as grouped exploits. The functionality discussed by the author is similar: where
an exploit should be fired on all possible assets simultaneously. This is also descibred as synchronizing multiple exploits. The methodology is similar to the one implemented in this
work, but there are notable differences. The first, is that the work performed by the author of \cite{louthan_hybrid_2011} utilizes global features with group features. Using the
simultaneous exploit firing necessitated a separation of global and group features, and synchronous firing could not be performed on exploits that could be applicable to both sets.
A second difference is that there is no consistency checking in the work by the author of \cite{louthan_hybrid_2011}, which could lead to indeterminate behavior or race conditions, unless
additional effort was put into encoding exploits to use precondition guards. A third difference is that the work of \cite{louthan_hybrid_2011} could still lead to a separation of features. The
behavior of the work would attempt to fire all exploits on all applicable assets simultaneously, but if some assets were not ready or capable to fire, they would not proceed with the exploit firing but
the other assets would. The last difference is that the work by the author of \cite{louthan_hybrid_2011} was developed in Python, since that was the language of the generator of the tool at the time.
The work by the author of \cite{cook_rage_2018} led to new development of RAGE in C++ for performance enhancements, so the synchonous firing feature in this new work was likewise developed in C++.
\TUsection{Necessary Components}

1
Chapter4_img/non-sync_ex Normal file
View File

@ -0,0 +1 @@
<mxfile host="app.diagrams.net" modified="2022-03-05T20:37:46.832Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36" etag="M_WsQ7zI5yW5TNglHCuS" version="16.6.6" type="device"><diagram id="ZJqofbyrsTVr7fP3P7zB" name="Page-1">7Vxdk9smFP01ftyMBALJj8nuJu20nWRmJ9PmKYNl1lIrGwXj2M6vD7LRtz9YyxZo0ydLVxcLcy7nXLjsjuD9fPOBkzT6i01pMgLOdDOCDyMAwNgF8iOzbPcW1wHKMuPxVNlKw1P8g+aOyrqKp3RZcxSMJSJO68aQLRY0FDUb4Zyt627PLKm/NSUz2jI8hSRpW/+OpyLaWwPklPbfaDyL8je7jnoyJ7mzMiwjMmXrigk+juA9Z0zsr+abe5pko5ePy77d+yNPi45xuhA6DUjy8fcJ/nz3/ht+IiH6g+D0xx2AqnNim/9iOpUDoG4ZFxGbsQVJHkvrO85WiynNvtaRd6XPn4yl0uhK479UiK1Ck6wEk6ZIzBP1lG5i8Y9qnl1/qdgfNpUHD1t1s+9l1rWjv16ZlmzFQ3riJ7t5GBE+o+KUIyhQkvFN2ZwKvpUNOU2IiL/Xe0JUnM0KvxIKeaHQeAkynklkXG1k5Pjz7Q7MNyi//VJ9Vjbb3RlFFJpENO/md5Ks1KtCwr+6Wc/jOZUfO2NGIDiRP+PdhMurWXaV+QENPyYiyr9+W5Gk8Nq0wyhJJHtm4bKOYkGfUrIb3bVk8HowqO5SLujmNEjtIVUNYE6UOf/nbLguybSgzKhCpNi51bxCtjCemjBWzyygO7M8kzMLGuVKfRUbFKJ+R0R3Td9yTrYVh5TFC7GsfPOnzFDyBfDrfAF8txEd+28sY6XoWofwMUMJRTBYHwrIRChAWA8F6KB6ftv0x+iU/21CJx/Dc5ouDZjMM31dTJbpDkc7NP45TpJ7ljC+awefg5CGobQvBWf/0cqTSYA8VEZgp6wANLICYD4rCGzJts9lBdckAKhLAGOj6m50jTqslZA2ooEJSkfQhLrjwSWHflCLnzdOAM/E0O7uE+VSOwTlJgOra67QbYkN9eTYuVCO3Vcpx551cuz5tszZISzSPc25Cbsu6bphajTFGtYiXRtRo4kZBrYkZvqztC6syEJMO2+8dFNQr6WgueYtU7KoqqP+Ilf2pNq4LaLHXqGzHj7ykgO6TA69RvsLBybq48buCTSt6WggpcaCK4pNur7ZH2kyhXckAvphCmR2071g/JcouvWIAqN6bk1prL/DALrIdM60LtsD9xosHtQ2TM76e65z0t91T/rfZkPGH9x+nrmkUTc8sZH9PA/WSy6eczrcEHC6+eMewjMf81uVdG6+h3SF5LF5bMOC7NFtD4jl2Yax/NHXzTacw0HQb4n/HAmA0yRzI41yTIbbRTUnB9dlCso4MFw00A1EM+qVHxDQDcSXql3Lv3lA90x17MX+3rgHdfRvq456Bx4ml6ujmQMPwDY9xeOhEZwpNQ36IrFOePqDyY9MYOMZPZ6ad9NsVXponOkFtnEmsoYzh1CVHuvOTWxybmJrqhLamNbXlb1uR+li2vl4WTctBEPRwmPz1LUQU7NnDfJumtVQMjANxa5tGgrb60ft8wXg//MF9oTWXat2ZD62NDnitjv3HTjiCrA0KybGQckrkudAOTq5f8kNIxdZh6PmXy9fiuPrPFoNAutwBJcLcA8H/IC2Xh6Ojl9HgD3r9Ndrnx29ao5+IDZeAdXjZj3UPI7YBhyHttYKHNtwxJr7zgek18w+8xVQQM0TcDdEQd6W/75pX2At/wsWfPwJ</diagram></mxfile>

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

View File

@ -1,36 +1,36 @@
\relax
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 5: }{\bf \uppercase {Utilization OF MESSAGE PASSING INTERFACE}}}{17}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.1}\bf Introduction to MPI Utilization for Attack Graph Generation}{17}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.2}\bf Necessary Components}{17}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.2.1}\it Serialization}{17}{}\protected@file@percent }
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 5: }{\bf \uppercase {Utilization OF MESSAGE PASSING INTERFACE}}}{19}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.1}\bf Introduction to MPI Utilization for Attack Graph Generation}{19}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.2}\bf Necessary Components}{19}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.2.1}\it Serialization}{19}{}\protected@file@percent }
\citation{cook_rage_2018}
\citation{li_concurrency_2019}
\@writefile{toc}{\contentsline {subsection}{\numberline {5.2.2}\it Data Consistency}{18}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.3}\bf Tasking Approach}{18}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.1}\it Introduction to the Tasking Approach}{18}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.2}\it Algorithm Design}{18}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{18}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task Zero}{18}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task One}{18}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task Two}{18}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task Three}{18}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {5.1}{\ignorespaces Generation Flowchart of RAGE}}{19}{}\protected@file@percent }
\newlabel{fig:RAGE_chart}{{5.1}{19}}
\@writefile{lof}{\contentsline {figure}{\numberline {5.2}{\ignorespaces Task Overview of the Attack Graph Generation Process}}{20}{}\protected@file@percent }
\newlabel{fig:tasks}{{5.2}{20}}
\@writefile{toc}{\contentsline {subsubsection}{Task Four}{21}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task Five}{21}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{21}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{21}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{21}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{21}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{21}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Worker Nodes}{21}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Root Node}{21}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Database Node}{21}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{21}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.2.2}\it Data Consistency}{20}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.3}\bf Tasking Approach}{20}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.1}\it Introduction to the Tasking Approach}{20}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.2}\it Algorithm Design}{20}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{20}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task Zero}{20}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task One}{20}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task Two}{20}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task Three}{20}{}\protected@file@percent }
\@writefile{lof}{\contentsline {figure}{\numberline {5.1}{\ignorespaces Generation Flowchart of RAGE}}{21}{}\protected@file@percent }
\newlabel{fig:RAGE_chart}{{5.1}{21}}
\@writefile{lof}{\contentsline {figure}{\numberline {5.2}{\ignorespaces Task Overview of the Attack Graph Generation Process}}{22}{}\protected@file@percent }
\newlabel{fig:tasks}{{5.2}{22}}
\@writefile{toc}{\contentsline {subsubsection}{Task Four}{23}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Task Five}{23}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{23}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{23}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{23}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{23}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Communication Structure}{23}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Worker Nodes}{23}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Root Node}{23}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{Database Node}{23}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{23}{}\protected@file@percent }
\@setckpt{Chapter5}{
\setcounter{page}{22}
\setcounter{page}{24}
\setcounter{equation}{0}
\setcounter{enumi}{4}
\setcounter{enumii}{0}

View File

@ -1,23 +1,23 @@
\relax
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.1}\bf Small Networks}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.1}\it Test Information}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.2}\it Results}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.3}\it Analysis}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.2}\bf Large Networks}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.1}\it Test Information}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.2}\it Results}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.2}\it Results}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{22}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{23}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.2}\it Results}{23}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{23}{}\protected@file@percent }
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.1}\bf Small Networks}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.1}\it Test Information}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.2}\it Results}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.3}\it Analysis}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.2}\bf Large Networks}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.1}\it Test Information}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.2}\it Results}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.2}\it Results}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.2}\it Results}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{25}{}\protected@file@percent }
\@setckpt{Chapter6}{
\setcounter{page}{24}
\setcounter{page}{26}
\setcounter{equation}{0}
\setcounter{enumi}{4}
\setcounter{enumii}{0}

View File

@ -1,8 +1,8 @@
\relax
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {7.1}\bf Future Work}{24}{}\protected@file@percent }
\@writefile{toc}{\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{26}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\numberline {7.1}\bf Future Work}{26}{}\protected@file@percent }
\@setckpt{Chapter7}{
\setcounter{page}{25}
\setcounter{page}{27}
\setcounter{equation}{0}
\setcounter{enumi}{4}
\setcounter{enumii}{0}

View File

@ -32,9 +32,9 @@
\bibcite{cook_rage_2018}{9}
\bibcite{cook_scalable_2016}{10}
\@writefile{toc}{{\hfill \ }}
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{27}{}\protected@file@percent }
\@writefile{toc}{\addvspace {10pt}}
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{25}{}\protected@file@percent }
\@writefile{toc}{\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{27}{}\protected@file@percent }
\@writefile{toc}{{\hfill \ }}
\bibcite{CVE-2019-10747}{11}
\bibcite{dai_fpgp_2016}{12}
@ -44,13 +44,14 @@
\bibcite{li_concurrency_2019}{16}
\bibcite{9150145}{17}
\bibcite{liakos_memory-optimized_2016}{18}
\bibcite{ou_scalable_2006}{19}
\bibcite{phillips_graph-based_1998}{20}
\bibcite{schneier_modeling_1999}{21}
\bibcite{sheyner_automated_2002}{22}
\bibcite{yao_efficient_2018}{23}
\bibcite{yu_construction_2018}{24}
\bibcite{zhang_boosting_2017}{25}
\bibcite{louthan_hybrid_2011}{19}
\bibcite{ou_scalable_2006}{20}
\bibcite{phillips_graph-based_1998}{21}
\bibcite{schneier_modeling_1999}{22}
\bibcite{sheyner_automated_2002}{23}
\bibcite{yao_efficient_2018}{24}
\bibcite{yu_construction_2018}{25}
\bibcite{zhang_boosting_2017}{26}
\bibstyle{plain}
\@input{Appendices.aux}
\gdef \@abspage@last{39}
\gdef \@abspage@last{41}

View File

@ -104,6 +104,12 @@ Panagiotis Liakos, Katia Papakonstantinopoulou, and Alex Delis.
{Conference} on {Information} and {Knowledge} {Management}}, pages
2317--2322, October 2016.
\bibitem{louthan_hybrid_2011}
G~Louthan.
\newblock {\em Hybrid {Attack} {Graphs} for {Modeling} {Cyber}-{Physical}
{Systems}}.
\newblock PhD thesis, 2011.
\bibitem{ou_scalable_2006}
Xinming Ou, Wayne~F Boyer, and Miles~A Mcqueen.
\newblock A {Scalable} {Approach} to {Attack} {Graph} {Generation}.

View File

@ -16,46 +16,47 @@ Warning--entry type for "j_hale_compliance_nodate" isn't style-file defined
Warning--to sort, need author or key in noauthor_overview_nodate
Warning--to sort, need author or key in noauthor_boost_nodate
Warning--empty school in cook_rage_2018
Warning--empty school in louthan_hybrid_2011
Warning--empty journal in ou_scalable_2006
You've used 25 entries,
You've used 26 entries,
2118 wiz_defined-function locations,
628 strings with 9040 characters,
and the built_in function-call counts, 8411 in all, are:
= -- 825
> -- 381
632 strings with 9141 characters,
and the built_in function-call counts, 8609 in all, are:
= -- 845
> -- 388
< -- 10
+ -- 157
- -- 126
* -- 516
:= -- 1321
add.period$ -- 70
call.type$ -- 25
change.case$ -- 138
+ -- 160
- -- 128
* -- 527
:= -- 1360
add.period$ -- 73
call.type$ -- 26
change.case$ -- 141
chr.to.int$ -- 0
cite$ -- 29
duplicate$ -- 349
empty$ -- 665
format.name$ -- 126
if$ -- 1821
cite$ -- 31
duplicate$ -- 358
empty$ -- 679
format.name$ -- 128
if$ -- 1858
int.to.chr$ -- 0
int.to.str$ -- 25
int.to.str$ -- 26
missing$ -- 19
newline$ -- 122
num.names$ -- 44
pop$ -- 173
newline$ -- 127
num.names$ -- 46
pop$ -- 177
preamble$ -- 1
purify$ -- 114
purify$ -- 117
quote$ -- 0
skip$ -- 306
skip$ -- 312
stack$ -- 0
substring$ -- 466
swap$ -- 113
substring$ -- 471
swap$ -- 114
text.length$ -- 10
text.prefix$ -- 0
top$ -- 0
type$ -- 100
warning$ -- 4
while$ -- 76
width$ -- 27
write$ -- 252
(There were 5 warnings)
type$ -- 104
warning$ -- 5
while$ -- 78
width$ -- 28
write$ -- 262
(There were 6 warnings)

View File

@ -1,5 +1,6 @@
{\vspace {\baselineskip }}
\contentsline {figure}{\numberline {3.1}{\ignorespaces Path Walking to State 14}}{9}{}%
\contentsline {figure}{\numberline {3.2}{\ignorespaces Color Coding a Small Network Based on Violations}}{11}{}%
\contentsline {figure}{\numberline {5.1}{\ignorespaces Generation Flowchart of RAGE}}{19}{}%
\contentsline {figure}{\numberline {5.2}{\ignorespaces Task Overview of the Attack Graph Generation Process}}{20}{}%
\contentsline {figure}{\numberline {4.1}{\ignorespaces A network without Synchronous Firing generating infeasible states}}{17}{}%
\contentsline {figure}{\numberline {5.1}{\ignorespaces Generation Flowchart of RAGE}}{21}{}%
\contentsline {figure}{\numberline {5.2}{\ignorespaces Task Overview of the Attack Graph Generation Process}}{22}{}%

View File

@ -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) 4 MAR 2022 16:42
This is pdfTeX, Version 3.141592653-2.6-1.40.23 (TeX Live 2021/Arch Linux) (preloaded format=pdflatex 2022.2.14) 5 MAR 2022 15:28
entering extended mode
restricted \write18 enabled.
%&-line parsing enabled.
@ -239,67 +239,73 @@ Package pdftex.def Info: ./Chapter3_img/CC.png used on input line 55.
(./Chapter4.tex
CHAPTER 4.
) [16
<./Chapter4_img/non-sync_ex.drawio.png, id=91, 1014.79124pt x 400.49625pt>
File: ./Chapter4_img/non-sync_ex.drawio.png Graphic file (type png)
<use ./Chapter4_img/non-sync_ex.drawio.png>
Package pdftex.def Info: ./Chapter4_img/non-sync_ex.drawio.png used on input l
ine 17.
(pdftex.def) Requested size: 469.75499pt x 185.3916pt.
[16
]
] [17 <./Chapter4_img/non-sync_ex.drawio.png>]) [18]
\openout2 = `Chapter5.aux'.
(./Chapter5.tex
CHAPTER 5.
[17
[19
]
<./Chapter5_img/RAGE_Chart.png, id=97, 495.8525pt x 557.08125pt>
<./Chapter5_img/RAGE_Chart.png, id=106, 495.8525pt x 557.08125pt>
File: ./Chapter5_img/RAGE_Chart.png Graphic file (type png)
<use ./Chapter5_img/RAGE_Chart.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=98, 1125.20375pt x 738.76pt>
<./Chapter5_img/horiz_task.drawio.png, id=107, 1125.20375pt x 738.76pt>
File: ./Chapter5_img/horiz_task.drawio.png Graphic file (type png)
<use ./Chapter5_img/horiz_task.drawio.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.
[18] [19 <./Chapter5_img/RAGE_Chart.png>] [20 <./Chapter5_img/horiz_task.drawi
o.png>]) [21]
[20] [21 <./Chapter5_img/RAGE_Chart.png>] [22 <./Chapter5_img/horiz_task.drawi
o.png>]) [23]
\openout2 = `Chapter6.aux'.
(./Chapter6.tex
CHAPTER 6.
[22
[24
]) [23]
]) [25]
\openout2 = `Chapter7.aux'.
(./Chapter7.tex
CHAPTER 7.
) [24
) [26
] (./Schrick-Noah_MS-Thesis.bbl [25
] (./Schrick-Noah_MS-Thesis.bbl [27
] [26])
] [28])
\c@appendixno=\count269
[27]
[29]
\openout2 = `Appendices.aux'.
(./Appendices.tex [28
(./Appendices.tex [30
])
[29] (./Schrick-Noah_MS-Thesis.aux (./Chapter1.aux) (./Chapter2.aux)
[31] (./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 +318,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:
2165 strings out of 478353
38294 string characters out of 5854635
345004 words of memory out of 5000000
20235 multiletter control sequences out of 15000+600000
2176 strings out of 478353
38673 string characters out of 5854635
345019 words of memory out of 5000000
20244 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
@ -326,10 +332,10 @@ ts/type1/public/amsfonts/cm/cmr12.pfb></usr/share/texmf-dist/fonts/type1/public
/amsfonts/cm/cmr8.pfb></usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/cms
y10.pfb></usr/share/texmf-dist/fonts/type1/public/amsfonts/cm/cmti12.pfb></usr/
share/texmf-dist/fonts/type1/public/cm-super/sfrm1200.pfb>
Output written on Schrick-Noah_MS-Thesis.pdf (39 pages, 360533 bytes).
Output written on Schrick-Noah_MS-Thesis.pdf (41 pages, 400070 bytes).
PDF statistics:
174 PDF objects out of 1000 (max. 8388607)
112 compressed objects within 2 object streams
182 PDF objects out of 1000 (max. 8388607)
116 compressed objects within 2 object streams
0 named destinations out of 1000 (max. 500000)
21 words of extra memory for PDF output out of 10000 (max. 10000000)
26 words of extra memory for PDF output out of 10000 (max. 10000000)

Binary file not shown.

View File

@ -32,61 +32,61 @@
\contentsline {section}{\numberline {3.5}\bf Relational Operators}{15}{}%
\contentsline {chapter}{\numberline {CHAPTER 4: }{\bf \uppercase {SYNCHRONOUS FIRING}}}{16}{}%
\contentsline {section}{\numberline {4.1}\bf Introduction}{16}{}%
\contentsline {subsection}{\numberline {4.1.1}\it Synchronous Firing in Literature}{16}{}%
\contentsline {section}{\numberline {4.2}\bf Necessary Components}{16}{}%
\contentsline {section}{\numberline {4.3}\bf Example Networks and Results}{16}{}%
\contentsline {subsection}{\numberline {4.3.1}\it Example Networks}{16}{}%
\contentsline {subsection}{\numberline {4.3.2}\it Results}{16}{}%
\contentsline {chapter}{\numberline {CHAPTER 5: }{\bf \uppercase {Utilization OF MESSAGE PASSING INTERFACE}}}{17}{}%
\contentsline {section}{\numberline {5.1}\bf Introduction to MPI Utilization for Attack Graph Generation}{17}{}%
\contentsline {section}{\numberline {5.2}\bf Necessary Components}{17}{}%
\contentsline {subsection}{\numberline {5.2.1}\it Serialization}{17}{}%
\contentsline {subsection}{\numberline {5.2.2}\it Data Consistency}{18}{}%
\contentsline {section}{\numberline {5.3}\bf Tasking Approach}{18}{}%
\contentsline {subsection}{\numberline {5.3.1}\it Introduction to the Tasking Approach}{18}{}%
\contentsline {subsection}{\numberline {5.3.2}\it Algorithm Design}{18}{}%
\contentsline {subsubsection}{Communication Structure}{18}{}%
\contentsline {subsubsection}{Task Zero}{18}{}%
\contentsline {subsubsection}{Task One}{18}{}%
\contentsline {subsubsection}{Task Two}{18}{}%
\contentsline {subsubsection}{Task Three}{18}{}%
\contentsline {subsubsection}{Task Four}{21}{}%
\contentsline {subsubsection}{Task Five}{21}{}%
\contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{21}{}%
\contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{21}{}%
\contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{21}{}%
\contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{21}{}%
\contentsline {subsubsection}{Communication Structure}{21}{}%
\contentsline {subsubsection}{Worker Nodes}{21}{}%
\contentsline {subsubsection}{Root Node}{21}{}%
\contentsline {subsubsection}{Database Node}{21}{}%
\contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{21}{}%
\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{22}{}%
\contentsline {section}{\numberline {6.1}\bf Small Networks}{22}{}%
\contentsline {subsection}{\numberline {6.1.1}\it Test Information}{22}{}%
\contentsline {subsection}{\numberline {6.1.2}\it Results}{22}{}%
\contentsline {subsection}{\numberline {6.1.3}\it Analysis}{22}{}%
\contentsline {section}{\numberline {6.2}\bf Large Networks}{22}{}%
\contentsline {subsection}{\numberline {6.2.1}\it Test Information}{22}{}%
\contentsline {subsection}{\numberline {6.2.2}\it Results}{22}{}%
\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{22}{}%
\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{22}{}%
\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{22}{}%
\contentsline {subsection}{\numberline {6.3.2}\it Results}{22}{}%
\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{22}{}%
\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{22}{}%
\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{23}{}%
\contentsline {subsection}{\numberline {6.4.2}\it Results}{23}{}%
\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{23}{}%
\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{24}{}%
\contentsline {section}{\numberline {7.1}\bf Future Work}{24}{}%
\contentsline {subsection}{\numberline {4.1.1}\it Synchronous Firing in Literature}{17}{}%
\contentsline {section}{\numberline {4.2}\bf Necessary Components}{18}{}%
\contentsline {section}{\numberline {4.3}\bf Example Networks and Results}{18}{}%
\contentsline {subsection}{\numberline {4.3.1}\it Example Networks}{18}{}%
\contentsline {subsection}{\numberline {4.3.2}\it Results}{18}{}%
\contentsline {chapter}{\numberline {CHAPTER 5: }{\bf \uppercase {Utilization OF MESSAGE PASSING INTERFACE}}}{19}{}%
\contentsline {section}{\numberline {5.1}\bf Introduction to MPI Utilization for Attack Graph Generation}{19}{}%
\contentsline {section}{\numberline {5.2}\bf Necessary Components}{19}{}%
\contentsline {subsection}{\numberline {5.2.1}\it Serialization}{19}{}%
\contentsline {subsection}{\numberline {5.2.2}\it Data Consistency}{20}{}%
\contentsline {section}{\numberline {5.3}\bf Tasking Approach}{20}{}%
\contentsline {subsection}{\numberline {5.3.1}\it Introduction to the Tasking Approach}{20}{}%
\contentsline {subsection}{\numberline {5.3.2}\it Algorithm Design}{20}{}%
\contentsline {subsubsection}{Communication Structure}{20}{}%
\contentsline {subsubsection}{Task Zero}{20}{}%
\contentsline {subsubsection}{Task One}{20}{}%
\contentsline {subsubsection}{Task Two}{20}{}%
\contentsline {subsubsection}{Task Three}{20}{}%
\contentsline {subsubsection}{Task Four}{23}{}%
\contentsline {subsubsection}{Task Five}{23}{}%
\contentsline {subsection}{\numberline {5.3.3}\it Performance Expectations}{23}{}%
\contentsline {section}{\numberline {5.4}\bf Subgraphing Approach}{23}{}%
\contentsline {subsection}{\numberline {5.4.1}\it Introduction to the Subgraphing Approach}{23}{}%
\contentsline {subsection}{\numberline {5.4.2}\it Algorithm Design}{23}{}%
\contentsline {subsubsection}{Communication Structure}{23}{}%
\contentsline {subsubsection}{Worker Nodes}{23}{}%
\contentsline {subsubsection}{Root Node}{23}{}%
\contentsline {subsubsection}{Database Node}{23}{}%
\contentsline {subsection}{\numberline {5.4.3}\it Performance Expectations}{23}{}%
\contentsline {chapter}{\numberline {CHAPTER 6: }{\bf \uppercase {PERFORMANCE ANALYSIS}}}{24}{}%
\contentsline {section}{\numberline {6.1}\bf Small Networks}{24}{}%
\contentsline {subsection}{\numberline {6.1.1}\it Test Information}{24}{}%
\contentsline {subsection}{\numberline {6.1.2}\it Results}{24}{}%
\contentsline {subsection}{\numberline {6.1.3}\it Analysis}{24}{}%
\contentsline {section}{\numberline {6.2}\bf Large Networks}{24}{}%
\contentsline {subsection}{\numberline {6.2.1}\it Test Information}{24}{}%
\contentsline {subsection}{\numberline {6.2.2}\it Results}{24}{}%
\contentsline {subsection}{\numberline {6.2.3}\it Analysis}{24}{}%
\contentsline {section}{\numberline {6.3}\bf Large Exploit Lists}{24}{}%
\contentsline {subsection}{\numberline {6.3.1}\it Test Information}{24}{}%
\contentsline {subsection}{\numberline {6.3.2}\it Results}{24}{}%
\contentsline {subsection}{\numberline {6.3.3}\it Analysis}{24}{}%
\contentsline {section}{\numberline {6.4}\bf Distributed Hash Tables}{24}{}%
\contentsline {subsection}{\numberline {6.4.1}\it Test Information}{25}{}%
\contentsline {subsection}{\numberline {6.4.2}\it Results}{25}{}%
\contentsline {subsection}{\numberline {6.4.3}\it Analysis}{25}{}%
\contentsline {chapter}{\numberline {CHAPTER 7: }{\bf \uppercase {CONCLUSIONS AND FUTURE WORKS}}}{26}{}%
\contentsline {section}{\numberline {7.1}\bf Future Work}{26}{}%
{\hfill \ }
\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{25}{}%
\contentsline {section}{\hspace {-\parindent }NOMENCLATURE}{27}{}%
\addvspace {10pt}
\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{25}{}%
\contentsline {section}{\hspace {-\parindent }BIBLIOGRAPHY}{27}{}%
{\hfill \ }
\contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{28}{}%
\contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{29}{}%
\contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{29}{}%
\contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{29}{}%
\contentsline {subsubsection}{A Sub-subsection in an Appendix}{29}{}%
\contentsline {section}{\hspace {-\parindent }APPENDIX A:\ \ {\bf \uppercase {THE FIRST APPENDIX}} }{30}{}%
\contentsline {section}{\hspace {-\parindent }APPENDIX B:\ \ {\bf \uppercase {THE SECOND APPENDIX}} }{31}{}%
\contentsline {section}{\numberline {B.1}\bf A Heading in an Appendix}{31}{}%
\contentsline {subsection}{\numberline {B.1.1}\it A Subheading in an Appendix}{31}{}%
\contentsline {subsubsection}{A Sub-subsection in an Appendix}{31}{}%