Merge pull request #11 from berq/patch-11
authorAaronK <aaron@lo-res.org>
Mon, 16 Dec 2013 20:01:45 +0000 (12:01 -0800)
committerAaronK <aaron@lo-res.org>
Mon, 16 Dec 2013 20:01:45 +0000 (12:01 -0800)
db2 added

src/Makefile
src/abstract.tex
src/applied-crypto-hardening.tex
src/cipher_suites/architecture.tex
src/cipher_suites/recommended.tex
src/disclaimer.tex
src/methods.tex
src/neboltai.png [new file with mode: 0644]
src/perlify.pl
src/practical_settings.tex

index 0060240..5299d8a 100644 (file)
@@ -2,7 +2,10 @@ NOW := $(shell date)
 
 all:   pdf html md
 
-pdf:
+%_generated.tex: %.tex
+       ./perlify.pl
+
+pdf: 
        ./update-metadata-for-gitinfo
        pdflatex applied-crypto-hardening
        bibtex applied-crypto-hardening
index 3b49981..a314fd5 100644 (file)
@@ -1,5 +1,5 @@
 \begin{abstract}
-%\section*{Abstract}
+\section*{Abstract}
 
 
 \vskip 2em
@@ -57,4 +57,14 @@ This guide tries to fill this gap.
 %The guide was produced in an open source manner: every step of editing can be
 %traced back to a specific author via our version control system.
 
+
+
+\begin{figure}[H]
+  \centering
+  \includegraphics[width=0.9\textwidth]{neboltai.png}
+  \caption*{Do not talk unencrypted}
+  \label{fig:neboltai}
+\end{figure}
+
+
 \end{abstract}
index 7ba02fb..45777b4 100644 (file)
@@ -8,7 +8,9 @@
 \documentclass[        DIV=calc,%
                                paper=a4,%
                                fontsize=9pt,%
-                               onecolumn]{scrartcl}                                            % KOMA-article class
+                               %onecolumn]{scrartcl}                                           % KOMA-article class
+                               onecolumn]{scrreprt}                                            % KOMA-article class
+                               %onecolumn]{report}                                             % KOMA-article class
 
 \usepackage{lipsum}                                                                                                    % Package to create dummy text
 
@@ -211,13 +213,17 @@ morekeywords={__global__, __device__},  %
 %\initial{H}\textbf{ere is some sample text to show the initial in the introductory paragraph of this template article. The color and lineheight of the initial can be modified in the preamble of this document.}
 
 \input{abstract}
-\newpage
 \tableofcontents
-\newpage
+\chapter{Introduction}
 \input{howtoread}
 \input{disclaimer}
 \input{motivation}
 \input{methods}
+%%
+\chapter{Practical recommendations}
+\input{practical_settings}
+%%
+\chapter{Theory}
 \input{PKIs}
 \input{ECC}
 \input{DH}
@@ -225,7 +231,7 @@ morekeywords={__global__, __device__},  %
 \input{RNGs}
 \input{cipher_suites}
 \input{ssllibs}
-\input{practical_settings}
+\chapter{Appendix}
 \input{tools}
 \input{further_research}
 \input{links}
index dbd9b9b..e4e8bca 100644 (file)
@@ -4,8 +4,8 @@ This section defines some terms which will be used throughout this guide.
 
 
 A cipher suite is a standardised collection of key exchange algorithms, encryption 
-algorithms (ciphers) and Message authentication codes (MAC) that provides authenticated 
-encryption schemes. It consists of the following components:
+algorithms (ciphers) and Message authentication codes (MAC) algortihm that provides
+authenticated encryption schemes. It consists of the following components:
 
 \begin{description}
 
index 510b80b..cf7263f 100644 (file)
@@ -35,7 +35,7 @@ We arrived at this set of cipher suites by selecting:
 This results in the OpenSSL string:
 
 \begin{lstlisting}[breaklines]
-'EECDH+aRSA+AES256:EDH+aRSA+AES256:!SSLv3'
+'EDH+aRSA+AES256:EECDH+aRSA+AES256:!SSLv3'
 \end{lstlisting}
 
 %$\implies$ resolves to 
@@ -52,10 +52,10 @@ This results in the OpenSSL string:
 \begin{tabular}{lllllll}
 \toprule
 \textbf{ID}   & \textbf{OpenSSL Name}       & \textbf{Version} & \textbf{KeyEx} & \textbf{Auth} & \textbf{Cipher} & \textbf{MAC}\\\cmidrule(lr){1-7}
-\verb|0xC030| & ECDHE-RSA-AES256-GCM-SHA384 & TLSv1.2          & ECDH           &  RSA          & AESGCM(256)     & AEAD         \\
-\verb|0xC028| & ECDHE-RSA-AES256-SHA384     & TLSv1.2          & ECDH           &  RSA          & AES(256) (CBC)  & SHA384       \\
 \verb|0x009F| & DHE-RSA-AES256-GCM-SHA384   & TLSv1.2          & DH             &  RSA          & AESGCM(256)     & AEAD         \\
 \verb|0x006B| & DHE-RSA-AES256-SHA256       & TLSv1.2          & DH             &  RSA          & AES(256) (CBC)  & SHA256       \\
+\verb|0xC030| & ECDHE-RSA-AES256-GCM-SHA384 & TLSv1.2          & ECDH           &  RSA          & AESGCM(256)     & AEAD         \\
+\verb|0xC028| & ECDHE-RSA-AES256-SHA384     & TLSv1.2          & ECDH           &  RSA          & AES(256) (CBC)  & SHA384       \\
 \bottomrule
 \end{tabular}
 \end{center}
index 8cbc384..15d7aa1 100644 (file)
@@ -6,8 +6,8 @@
 
 This guide specifically does not address physical security, protecting software
 and hardware against exploits, basic IT security housekeeping, complete
-information assurance, issues with key-roll over and key management, securing
-client PCs and mobile devices (theft, loss), proper
+information assurance, traffic analysis attacks, issues with key-roll over and
+key management, securing client PCs and mobile devices (theft, loss), proper
 OPSec\footnote{\url{http://en.wikipedia.org/wiki/Operations_security}}, social
 engineering attacks, anti-tempest\cite{Wikipedia:Tempest} attack techniques,
 protecting against different side-channel attacks (timing--, cache timing--,
@@ -28,8 +28,9 @@ public-key infrastructure (PKI)\footnote{Interested readers are referred to
 (german) which brings the problem of trusting PKIs right to the point}. Nor
 does this text explain how to run your own Certificate Authority (CA). 
 
-Most of this zoo of IT security issues are addressed in the very comprehensive
-book ``Security Engineering'' by Ross Anderson \cite{anderson2008security}. 
+Most of this zoo of information security issues are addressed in the very
+comprehensive book ``Security Engineering'' by Ross Anderson
+\cite{anderson2008security}. 
 
 For some experts in cryptography this text might seem too informal. However, we
 strive to keep the language as non-technical as possible and fitting for our
@@ -38,7 +39,7 @@ security level for all of their users.
 
 
 
-\epigraph{``Security is a process, not a product.``}{Bruce Schneier}
+\epigraph{``Security is a process, not a product.``}{-- Bruce Schneier}
 
 A note on the contents: this guide can only describe what the authors currently
 \emph{believe} to be the best settings based on their personal experience and
index 4056e95..8ca247a 100644 (file)
@@ -1,7 +1,7 @@
 \section{Methods}
 \label{section:Methods}
 
-\epigraph{``C.O.S.H.E.R - completely open source, headers, engineering and research}{A. Kaplan's mail signature for many years}
+\epigraph{``C.O.S.H.E.R - completely open source, headers, engineering and research}{-- A. Kaplan's mail signature for many years}
 
 For writing this guide, we chose to collect the most well researched facts
 about cryptography settings and let as many trusted specialists as possible
diff --git a/src/neboltai.png b/src/neboltai.png
new file mode 100644 (file)
index 0000000..5fa7340
Binary files /dev/null and b/src/neboltai.png differ
index 83cf2bc..ffaf436 100755 (executable)
@@ -8,22 +8,29 @@ my $debug=1;
 my $cipherStrB=`cat cipherStringB.txt`;
 chomp $cipherStrB;
 
-my @files=`find . -name "*.tex.template" -print`;
+my @files=`find . -name "*.tex" -a \! -name "*_generated.tex" -print`;
 my $f;
 
 foreach  $f ( @files)  {
        chomp $f;
-       $f =~ /(.*\.tex)\.template/;
-       my $ftex = $1;
-
-       print "file = $f\n" if $debug;
-       print "ftex = $ftex\n" if $debug;
-
-       open(FH,    "<", $f ) or die "could not open file $f: $!";
-       open(FHOUT, ">", $ftex ) or die "could not open file $ftex: $!";
-       
-       while (<FH>) {
-               $_ =~ s/\@\@\@CIPHERSTRINGB\@\@\@/$cipherStrB/g;
-               print FHOUT $_;
+       $f =~ /(.*)\.tex/;
+       my $ftex = "$1_generated.tex";
+
+       my $rc=` grep -q "\@\@\@CIPHERSTRINGB\@\@\@" $f`;
+       if ($rc == 0) {
+
+               print "file = $f\n" if $debug;
+               print "ftex = $ftex\n" if $debug;
+
+               open(FH,    "<", $f ) or die "could not open file $f: $!";
+               open(FHOUT, ">", $ftex ) or die "could not open file $ftex: $!";
+               
+               while (<FH>) {
+                       $_ =~ s/\@\@\@CIPHERSTRINGB\@\@\@/$cipherStrB/g;
+                       print FHOUT $_;
+               }
+       }
+       else {
+               print "skipping file $f\n" if $debug;
        }
 }
index 5db9375..19f57c9 100644 (file)
@@ -1,4 +1,4 @@
-\newpage
+%\newpage
 \section{Recommendations on practical settings}
 \label{section:PracticalSettings}
 
@@ -6,31 +6,31 @@
 \subsection{Webservers}
 \input{"./practical_settings/webserver.tex"}
 
-\newpage
+%\newpage
 \subsection{SSH}
 \input{"./practical_settings/ssh.tex"}
 
-\newpage
+%\newpage
 \subsection{Mail Servers}
 \input{"./practical_settings/mailserver.tex"}
 
 
-\newpage
+%\newpage
 \subsection{VPNs}
 \input{"./practical_settings/vpn.tex"}
 
 
-\newpage
+%\newpage
 \subsection{PGP/GPG - Pretty Good Privacy}
 \input{"./practical_settings/GPG.tex"}
 
 
-\newpage
+%\newpage
 \subsection{seclayer-tcp}
 \input{"./practical_settings/seclayer_tcp.tex"}
 
 
-\newpage
+%\newpage
 \subsection{IPMI, ILO and other lights out management solutions}
 \input{"./practical_settings/ipmi.tex"}
 
 %%\todo{AK: ask Klaus. Write this section, Klaus??? }
 
 
-\newpage
+%\newpage
 \subsection{Instant Messaging Systems}
 \input{"./practical_settings/im.tex"}
 
 
-\newpage
+%\newpage
 \subsection{Database Systems}
 \input{"./practical_settings/DBs.tex"}
 
 
-\newpage
+%\newpage
 \subsection{Intercepting proxy solutions and reverse proxies}
 \input{"./practical_settings/proxy_solutions.tex"}