yohgaki         Wed Aug 14 18:25:22 2002 EDT

  Modified files:              
    /phpdoc/en/reference/session        reference.xml 
  Log:
  Added security description. Patch by <[EMAIL PROTECTED]>
  Fixed trans-sid php.ini option description.
  
  
Index: phpdoc/en/reference/session/reference.xml
diff -u phpdoc/en/reference/session/reference.xml:1.8 
phpdoc/en/reference/session/reference.xml:1.9
--- phpdoc/en/reference/session/reference.xml:1.8       Sun Jul 28 10:04:32 2002
+++ phpdoc/en/reference/session/reference.xml   Wed Aug 14 18:25:22 2002
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="iso-8859-1"?>
-<!-- $Revision: 1.8 $ -->
+<!-- $Revision: 1.9 $ -->
  <reference id="ref.session">
   <title>Session handling functions</title>
   <titleabbrev>Sessions</titleabbrev>
@@ -46,6 +46,41 @@
     </note>
    </section>
    
+   <section id="session.security">
+    <title>Sessions and security</title>
+    <para>
+     Using sessions, does not mean, you can be absolutely sure, that
+     the session data can only be viewed by that user. This is impor-
+     tant to keep in mind, when storing and displaying sensative
+     information. When storing data into a session, one should always
+     ask themselves, what the damage is, when somebody else views that
+     information, or how your application is affected when this session
+     is actually somebody else.
+    </para>
+    <para>
+     For instance, if somebody else takes a session, can he than post
+     a message in a forum, as that user and how big of a problem is that?
+     Or perhaps he can view what the original user was thinking of
+     ordering, because he gets access to that user's shopping cart.
+     Obviously for a flowershop, this is less dramatic, than for a
+     farmacy.
+    </para>
+    <para>
+     Therefore, when dealing with sensative information, there should
+     always be additional methods to decide whether it is a valid
+     session. Sessions are not reliable as a secure
+     authentication mechanism.
+    </para>
+    <para>
+     Sessions rely on the session ID, meaning one can 'steal' a session,
+     by stealing the session ID. This can be made harder, by using a cookie
+     specifically a session cookie, but does not in any way make it
+     impossible and still relies on the user closing all
+     browser windows, to expire the session cookie.
+     Besides that, even session cookies can be sniffed on a network or
+     logged by a proxyserver.
+    </para>
+   </section>
    <section id="session.requirements">
     &reftitle.required;
     &no.requirement;
@@ -214,11 +249,22 @@
       <listitem>
        <simpara>
         <literal>session.use_trans_sid</literal> whether transparent sid support
-        is enabled or not if enabled by compiling with 
-        <link linkend="install.configure.enable-trans-sid">
-        <literal>--enable-trans-sid</literal></link>.
-        Defaults to <literal>1</literal> (enabled).
+        is enabled or not. Defaults to <literal>0</literal> (disabled).
        </simpara>
+       <note>
+        <simpara>
+         For PHP 4.1.2 or less, it is enabled by compiling with 
+         <link linkend="install.configure.enable-trans-sid">
+          <literal>--enable-trans-sid</literal></link>.
+         From PHP 4.2.0, trans-sid feature is always compiled.
+        </simpara>
+        <simpara>
+         URL based session management has addtional security risks compare to cookie 
+based
+         session management. Users may send URL contains active session ID to their
+         friends by email or users may save URL contains session ID to their bookmark
+         and access your site with the same session ID always, for example. 
+        </simpara>
+       </note>
       </listitem>
       <listitem>
        <simpara>



-- 
PHP Documentation Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to