[FEATURE] Enable cookieHttpOnly by default 22/25122/3
authorTomita Militaru <militarutomita@gmail.com>
Sat, 2 Nov 2013 09:39:02 +0000 (11:39 +0200)
committerSteffen Müller <typo3@t3node.com>
Sun, 3 Nov 2013 13:15:43 +0000 (14:15 +0100)
Enable cookieHttpOnly by default, which prevents
JavaScript from accessing the session cookie

Resolves: #24647
Releases: 6.2
Change-Id: Id000c9221232aeae325c82db079539564cd36b93
Reviewed-on: https://review.typo3.org/25122
Reviewed-by: Ingo Schmitt
Reviewed-by: Oliver Klee
Reviewed-by: Wouter Wolters
Reviewed-by: Steffen Müller
Tested-by: Steffen Müller
typo3/sysext/core/Configuration/DefaultConfiguration.php

index 7dceb86..58a4bd9 100644 (file)
@@ -71,7 +71,7 @@ return array(
                'encryptionKey' => '',                                  // This is a "salt" used for various kinds of encryption, CRC checksums and validations. You can enter any rubbish string here but try to keep it secret. You should notice that a change to this value might invalidate temporary information, URLs etc. At least, clear all cache if you change this so any such information can be rebuild with the new key.
                'cookieDomain' => '',                                   // Restricts the domain name for FE and BE session cookies. When setting the value to ".domain.com" (replace domain.com with your domain!), login sessions will be shared across subdomains. Alternatively, if you have more than one domain with sub-domains, you can set the value to a regular expression to match against the domain of the HTTP request. The result of the match is used as the domain for the cookie. eg. /\.(example1|example2)\.com$/ or /\.(example1\.com)|(example2\.net)$/. Separate domains for FE and BE can be set using <a href="#FE-cookieDomain">$TYPO3_CONF_VARS['FE']['cookieDomain']</a> and <a href="#BE-cookieDomain">$TYPO3_CONF_VARS['BE']['cookieDomain']</a> respectively.
                'cookieSecure' => 0,                                    // <p>Integer (0, 1, 2): Indicates that the cookie should only be transmitted over a secure HTTPS connection from the client.</p><dl><dt>0</dt><dd>always send cookie</dd><dt>1 (force HTTPS)</dt><dd>the cookie will only be set if a secure (HTTPS) connection exists - use this in combination with lockSSL since otherwise the application will fail and throw an exception</dd><dt>2</dt><dd>the cookie will be set in each case, but uses the secure flag if a secure (HTTPS) connection exists.</dd></dl>
-               'cookieHttpOnly' => FALSE,                              // Boolean: When enabled the cookie will be made accessible only through the HTTP protocol. This means that the cookie won't be accessible by scripting languages, such as JavaScript. This setting can effectively help to reduce identity theft through XSS attacks (although it is not supported by all browsers).
+               'cookieHttpOnly' => TRUE,                               // Boolean: When enabled the cookie will be made accessible only through the HTTP protocol. This means that the cookie won't be accessible by scripting languages, such as JavaScript. This setting can effectively help to reduce identity theft through XSS attacks (although it is not supported by all browsers).
                'doNotCheckReferer' => FALSE,                   // Boolean: If set, it's NOT checked numerous places that the refering host is the same as the current. This is an option you should set if you have problems with proxies not passing the HTTP_REFERER variable.
                'recursiveDomainSearch' => FALSE,               // Boolean: If set, the search for domain records will be done recursively by stripping parts of the host name off until a matching domain record is found.
                'devIPmask' => '127.0.0.1,::1',                 // Defines a list of IP addresses which will allow development-output to display. The debug() function will use this as a filter. See the function \TYPO3\CMS\Core\Utility\GeneralUtility::cmpIP() for details on syntax. Setting this to blank value will deny all. Setting to "*" will allow all.