Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: done

The javax.net.ssl.SSLSocket class must be used instead of the java.net.Socket socket class when transferring sensitive data over insecure communication channels. The class SSLSockets provides security protocols such as SSL/TLS to ensure that the channel is not vulnerable to eavesdropping and malicious tampering.

...

Wiki Markup
It is also important to use SSL for secure Remoteremote Methodmethod Invocationinvocation (RMI) communications because RMI depends on object serialization and serialized data must be safeguarded in transit. Gong et al. \[[Gong 2003|AA. Bibliography#Gong 03]\] describe how to secure RMI communications using {{SSLSockets}}.

Note that this rule makes no assumptions about the integrity of the data being sent down a socket. For information about securiting ensuring data integrity, see SER02-J. Sign then seal sensitive objects before sending them outside a trust boundary.

...

Note that the sockets are closed in accordance with ERR05-J. Do not let checked exceptions escape from a finally block. While merely printing close exceptions is frowned upon, the exceptions may be suppresed suppressed as per ERR00-EX0 of ERR00-J. Do not suppress or ignore checked exceptions.

...

MSC00-EX0: Because of the mechanisms that SSLSockets provide to ensure the secure transfer of packets, significant performance overhead may result. Regular {Socket}}s sockets are sufficient if:

Risk

...

Assessment

Using plain sockets instead of SSLSockets means that the data's confidentiality and integrity is not guaranteed.

...

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="0ed883c3c38e2019-c8e37c34-463c4d61-ae998dcd-a8375810179cad6f39d528df"><ac:plain-text-body><![CDATA[

[[API 2006

AA. Bibliography#API 06]]

 

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="3afe22d141eceb0c-23d6122c-494a4b2c-bd5d8d31-c2bdf27071c2269781913df4"><ac:plain-text-body><![CDATA[

[[Gong 2003

AA. Bibliography#Gong 03]]

11.3.3 "Securing RMI Communications"

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="c6d27184593988b6-5f1ab190-48804117-bc33b49f-bba88437e6cd4d75973c5dc6"><ac:plain-text-body><![CDATA[

[[Ware 2008

AA. Bibliography#Ware 08]]

 

]]></ac:plain-text-body></ac:structured-macro>

...