• No results found

Limitations

In document Security Articles from Wikipedia (Page 62-65)

SSL comes in two options, simple and mutual.

The mutual version is more secure, but requires the user to install a personal certificate in their browser in order to authenticate themselves.

Whatever strategy is used (simple or mutual), the level of protection strongly depends on the correctness of the implementation of the web browser and the server software and the actual cryptographic algorithms supported. SSL does not prevent the entire site from being indexed using a web crawler, and in some cases the URI of the encrypted resource can be inferred by knowing only the intercepted request/response size.[11] This allows an attacker to have access to the plaintext (the publicly-available static content), and the encrypted text (the encrypted version of the static content), permitting a cryptographic attack.

Because SSL operates below HTTP and has no knowledge of higher-level protocols, SSL servers can only strictly present one certificate for a particular IP/port combination.[12] This means that, in most cases, it is not feasible to use name-based virtual hosting with HTTPS. A solution called Server Name Indication (SNI) exists, which sends the hostname to the server before encrypting the connection, although many older browsers do not support this extension. Support for SNI is available since Firefox 2, Opera 8, Safari 2.1, Google Chrome 6, and Internet Explorer 7 on Windows Vista.[13][14][15]

HTTP Secure 60 From an architectural point of view:

1.

1. An SSL/TLS connection is managed by the first front machine that initiates the SSL connection. If, for any reasons (routing, traffic optimization, etc.), this front machine is not the application server and it has to decipher data, solutions have to be found to propagate user authentication informations or certificate to the application server, which needs to know who is going to be connected.

2.

2. For SSL with mutual authentication, the SSL/TLS session is managed by the first server that initiates the connection. In situations where encryption has to be propagated along chained servers, session timeOut management becomes extremely tricky to implement.

3.

3. With mutual SSL/TLS, security is maximal, but on the client-side, there is no way to properly end the SSL connection and disconnect the user except by waiting for the SSL server session to expire or closing all related client applications.

4.

4. For performance reasons, static content that is not specific to the user or transaction, and thus not private, is usually delivered through a non-crypted front server or separate server instance with no SSL. As a consequence, this content is usually not protected. Many browsers warn the user when a page has mixed encrypted and non-encrypted resources.

A sophisticated type of man-in-the-middle attack was presented at the Blackhat Conference 2009. This type of attack defeats the security provided by HTTPS by changing the https: link into an http: link, taking advantage of the fact that few Internet users actually type "https" into their browser interface: they get to a secure site by clicking on a link, and thus are fooled into thinking that they are using HTTPS when in fact they are using HTTP. The attacker then communicates in clear with the client.[16]

In May, 2010, a research paper[17] by researchers from Microsoft Research and Indiana University discovered that detailed sensitive user data can be inferred from side channels such as packet sizes. More specifically, the researchers found that an eavesdropper can infer the illnesses/medications/surgeries of the user, her family income and investment secrets, despite HTTPS protection in several high-profile, top-of-the-line web applications in healthcare, taxation, investment and web search. This finding points out a unique challenge on information leaks that HTTPS faces on the era of web 2.0.

History

Netscape Communications created HTTPS in 1994 for its Netscape Navigator web browser.[18] Originally, HTTPS was used with SSL protocol. As SSL evolved into Transport Layer Security (TLS), the current version of HTTPS was formally specified by RFC 2818 in May 2000.

References

[1] Peter Eckersley: Encrypt the Web with the HTTPS Everywhere Firefox Extension (https://www.eff.org/deeplinks/2010/06/ encrypt-web-https-everywhere-firefox-extension) EFF blog, 17 June 2010

[2] HTTPS Everywhere (https://www.eff.org/https-everywhere)

[3] "Free SSL Certificates from a Free Certificate Authority" (http://www.sslshopper.com/

article-free-ssl-certificates-from-a-free-certificate-authority.html). sslshopper.com. . Retrieved 2009-10-24.

[4] Justin Fielding (2007-07-16). "Secure Outlook Web Access with (free) SSL: Part 1" (http://www.techrepublic.com/blog/networking/ secure-outlook-web-access-with-free-ssl-part-1/293). TechRepublic. . Retrieved 2009-10-24.

[5] "Namecheap.com SSL Services" (https://www.namecheap.com/ssl-certificates/comodo/positivessl-certificate.aspx). namecheap. . Retrieved 30 jan 2012.

[6] "Secure Site Pro with EV" (http://www.verisign.com/ssl/buy-ssl-certificates/extended-validation-pro-ssl-certificates/index.html). VeriSign. . Retrieved 6 May 2009.

[7] "Mozilla Firefox Privacy Policy" (http://www.mozilla.com/en-US/legal/privacy/firefox-en.html). Mozilla Foundation. 27 April 2009. . Retrieved 13 May 2009.

[8] "Opera 8 launched on FTP" (http://news.softpedia.com/news/Opera-8-launched-on-FTP-1330.shtml). Softpedia. 19 April 2005. . Retrieved 13 May 2009.

[9] Lawrence, Eric (31 January 2006). "HTTPS Security Improvements in Internet Explorer 7" (http://msdn.microsoft.com/en-us/library/ bb250503.aspx). MSDN. . Retrieved 13 May 2009.

[10] Myers, M; Ankney, R; Malpani, A; Galperin, S; Adams, C (June 1999). "Online Certificate Status Protocol - OCSP" (http://tools.ietf.org/ html/rfc2560). Internet Engineering Task Force. . Retrieved 13 May 2009.

[11] Pusep, Stanislaw (31 July 2008). "The Pirate Bay un-SSL" (http://sysd.org/stas/node/220). . Retrieved 6 March 2009. [12] Apache FAQ: Why can't I use SSL with name-based/non-IP-based virtual hosts? (http://httpd.apache.org/docs/2.0/ssl/ssl_faq.

html#vhosts)

[13] Lawrence, Eric (22 October 2005). "Upcoming HTTPS Improvements in Internet Explorer 7 Beta 2" (http://blogs.msdn.com/ie/archive/ 2005/10/22/483795.aspx). Microsoft. . Retrieved 12 May 2009.

[14] Server Name Indication (SNI) (http://blog.ebrahim.org/2006/02/21/server-name-indication-sni/)

[15] Pierre, Julien. "Browser support for TLS server name indication" (https://bugzilla.mozilla.org/show_bug.cgi?id=116169) (2001-12-19).

Bugzilla. Mozilla Foundation. . Retrieved 2010-12-15.

[16] "sslstrip" (http://www.thoughtcrime.org/software/sslstrip/index.html). . Retrieved 2011-11-26.

[17] Shuo Chen, Rui Wang, XiaoFeng Wang, and Kehuan Zhang (May, 2010). "Side-Channel Leaks in Web Applications: a Reality Today, a Challenge Tomorrow" (http://research.microsoft.com/pubs/119060/WebAppSideChannel-final.pdf). IEEE Symposium on Security & Privacy 2010. .

[18] Walls, Colin (2005). Embedded software (http://books.google.com/books?id=FLvsis4_QhEC&pg=PA344). pp. 344. .

External links

• RFC 2818: HTTP Over TLS (http://tools.ietf.org/html/rfc2818)

• SSL 3.0 Specification (http://tools.ietf.org/html/draft-ietf-tls-ssl-version3-00) (IETF)

• HTTPS Everywhere (https://www.eff.org/https-everywhere/) created by Electronic Frontier Foundation • Wikipedia with HTTPS protocol (https://www.wikipedia.org/)

• Apache-SSL homepage (http://www.apache-ssl.org/) (No longer actively developed) • Apache 2.2 mod_ssl documentation (http://httpd.apache.org/docs/2.2/ssl/)

• HTTPS Protocol in Internet Explorer Development - MSDN (http://msdn2.microsoft.com/en-us/library/ aa767735(VS.85).aspx)

• Manually Configuring Windows Communication Foundation (WCF) when using HTTP and HTTPS - MSDN (http://msdn2.microsoft.com/en-us/library/ms733768.aspx)

• HTTPS Security Improvements in Internet Explorer 7 & its Compatibility Impact - MSDN (http://msdn2. microsoft.com/en-us/library/bb250503.aspx)

IPsec 62

IPsec

Internet Protocol Security (IPsec) is a protocol suite for securing Internet Protocol (IP) communications by

authenticating and encrypting each IP packet of a communication session. IPsec also includes protocols for establishing mutual authentication between agents at the beginning of the session and negotiation of cryptographic keys to be used during the session.

IPsec is an end-to-end security scheme operating in the Internet Layer of the Internet Protocol Suite. It can be used in protecting data flows between a pair of hosts (host-to-host), between a pair of security gateways (network-to-network), or between a security gateway and a host (network-to-host).[1]

Some other Internet security systems in widespread use, such as Secure Sockets Layer (SSL), Transport Layer Security (TLS) and Secure Shell (SSH), operate in the upper layers of the TCP/IP model. The use of TLS/SSL must be designed into an application to protect the application protocols. In contrast, applications do not need to be specifically designed to use IPsec. Hence, IPsec protects any application traffic across an IP network.

IPsec originally was developed at the Naval Research Laboratory as part of a DARPA-sponsored research project. ESP was derived directly from the SP3D protocol, rather than being derived from the ISO Network-Layer Security Protocol (NLSP). The SP3D protocol specification was published by NIST, but designed by the Secure Data Network System project of the National Security Agency (NSA), IPsec AH is derived in part from previous IETF standards work for authentication of the Simple Network Management Protocol (SNMP).

IPsec is officially specified by the Internet Engineering Task Force (IETF) in a series of Request for Comments documents addressing various components and extensions. It specifies the spelling of the protocol name to be

IPsec.[2]

In document Security Articles from Wikipedia (Page 62-65)