From 77162c3f8a474ca28fad0fbbbff75371241e10eb Mon Sep 17 00:00:00 2001 From: Martin Goik <goik@hdm-stuttgart.de> Date: Mon, 18 Dec 2017 14:20:49 +0100 Subject: [PATCH] Wireshark hints --- Doc/Sda1/jdbc.xml | 74 +++++++++++++++++++++++++++-------------------- 1 file changed, 43 insertions(+), 31 deletions(-) diff --git a/Doc/Sda1/jdbc.xml b/Doc/Sda1/jdbc.xml index e68a84d07..0cfe4abcd 100644 --- a/Doc/Sda1/jdbc.xml +++ b/Doc/Sda1/jdbc.xml @@ -1665,21 +1665,11 @@ public someClass { <para>Password?</para> </figure> - <para>Something seems to be missing here: The user's password. Our - code in <xref linkend="sda1_fig_jdbcSimpleWrite"/> contains the - password <quote><varname>XYZ</varname></quote> in clear text. But even - using the search function of <productname - xlink:href="https://www.wireshark.org">Wireshark</productname> does - not show any such string within the above capture. The <productname - xlink:href="https://www.mysql.com">Mysql</productname> documentation - however <link - xlink:href="https://dev.mysql.com/doc/refman/5.0/en/security-against-attack.html">reveals</link> - that everything but the password is transmitted in clear text. So all - we might identify is a hash of <code>XYZ</code>.</para> - <figure xml:id="sda1_jdbc_fig_jdbcMysqlSecurity"> <title><xref linkend="glo_Soft_Mysql"/> security</title> + <para>What about the missing password?</para> + <para><link xlink:href="https://dev.mysql.com/doc/refman/5.7/en/security-against-attack.html">Making MySQL Secure Against Attackers</link>:</para> @@ -1700,26 +1690,48 @@ public someClass { This typically comprises sensible data as well. Possible solutions:</para> - <itemizedlist> - <listitem> - <para>Create an encrypted tunnel between client and server like - e.g. <link - xlink:href="https://www.debianadmin.com/howto-use-ssh-local-and-remote-port-forwarding.html">ssh - port forwarding</link> or <link - xlink:href="https://en.wikipedia.org/wiki/Virtual_private_network">VPN</link>.</para> - </listitem> + <figure xml:id="sda1_jdbc_fig_jdbcSecurityImpact"> + <title><xref linkend="glo_Soft_Mysql"/> security</title> - <listitem> - <para>Many database vendors <link - xlink:href="https://dev.mysql.com/doc/refman/5.1/de/connector-j-reference-using-ssl.html">supply - SSL</link> or similar <trademark - xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> - protocol encryption extensions. This requires additional - configuration procedures like setting up server side certificates. - Moreover similar to the http/https protocols encryption generally - slows down data traffic.</para> - </listitem> - </itemizedlist> + <itemizedlist> + <listitem> + <para>Data exchange client to server nearly fully + disclosed.</para> + </listitem> + + <listitem> + <para>Possible solutions:</para> + + <itemizedlist> + <listitem> + <para>Encrypted tunnel between client and server: like e.g. + <link + xlink:href="https://www.debianadmin.com/howto-use-ssh-local-and-remote-port-forwarding.html">ssh + port forwarding</link> or <link + xlink:href="https://en.wikipedia.org/wiki/Virtual_private_network">VPN</link>.</para> + </listitem> + + <listitem> + <para>Many database vendors <link + xlink:href="https://dev.mysql.com/doc/refman/5.1/de/connector-j-reference-using-ssl.html">supply + SSL</link> or similar <trademark + xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> + protocol encryption extensions. This requires additional + configuration procedures like setting up server side + certificates. Moreover similar to the http/https protocols + encryption generally slows down data traffic.</para> + </listitem> + </itemizedlist> + </listitem> + </itemizedlist> + </figure> + + <para>Conclusion: <productname + xlink:href="https://www.mysql.com">Mysql</productname> mitigates the + attack type's severity</para> + + <para>Solution: Use <xref linkend="glo_TLS"/> if driver + supported.</para> <para>Of course this is only relevant if the transport layer is considered to be insecure. If both server and client reside within the -- GitLab