%%%ACCEPT tcp -- anywhere anywhere tcp flags:PSH/PSH
%%%DROP tcp -- anywhere anywhere tcp flags:RST/RST
%%%\end{lstlisting}
-%%%All the tools we are going to use together with the SUT gives us the following
-%%%collection of software.
-\begin{enumerate}
- \item Windows, used as a host OS.
- \item Ubuntu, used as the guest OS running the SUT.
- \item VirtualBox, used to run the guest OS containing the SUT.
- \item Wireshark, used on the guest in order to capture and analyze network
+All the tools we are going to use together with the SUT gives us the following
+collection of software.
+
+\begin{itemize}
+ \item Windows\footnote{\url{http://www.microsoft.com/en-us/windows}}, used as a host OS.
+ \item Ubuntu\footnote{\url{http://www.ubuntu.com}}, used as the guest OS running the SUT.
+ \item VirtualBox\footnote{\url{https://www.virtualbox.org/}}, used to run the guest OS containing the SUT.
+ \item Wireshark\footnote{\url{https://www.wireshark.org/}}, used on the guest in order to capture and analyze network
traffic.
- \item Bit-Twist, used to prepare network packets.
-\end{enumerate}
+ \item Bit-Twist\footnote{\url{http://bittwist.sourceforge.net/}}, used to prepare network packets.
+ \item Java\footnote{\url{http://www.java.com}} TCP driven echo server.
+\end{itemize}
All test will be conducted in a virtual environment. We will use VirtualBox to
run a Linux distribution with the product installed.
% Zeker weten? de SUT ontvangt ook niet loopback packets toch?
For each test case (except for the \emph{manual tests}) a file containing previously
-captured network traffic will be replayed using Wireshark. We will use Bit-Twist
+captured network traffic will be replayed using Wireshark and sent to the \emph{Java TCP driven echo server}. We will use Bit-Twist
to update the prepared packets with the MAC address of the guest network
-adapter. The response packets coming from the SUT will be recorded and
+adapter and provide them with a valid source address. This updating step is needed because the kernel would otherwise reject the packets and prevent them from reaching the SUT. The response packets sent by the \emph{Java TCP driven echo server} and passing trough the SUT will be recorded,
analyzed and validated according to the \textit{RFC793} specification.
The valid packets are build manually from the \textit{RFC793} specification.
Invalid packets are generated from this valid traffic using Bit-Twist.
The boundary values for the different parameters (fields in packets) are determined by hand. Automated scripts are used in order to generate packets with some fields replaced with these
\emph{boundary values}.
-
-% Dit is mooier om footnotes van te maken en te gebruiken als het voor het
-% eerst gerefereerd is
-% WAT HOE?
-\begin{enumerate}
- \item VirtualBox, https://www.virtualbox.org/
- \item Whireshark, https://www.wireshark.org/
- \item Bit-Twist, http://bittwist.sourceforge.net/
-\end{enumerate}