<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Kommentare zu: PHP Session Sicherheit &#8211; Session Fixation</title>
	<atom:link href="http://www.web-tuts.de/php-session-sicherheit-session-fixation.html/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.web-tuts.de/php-session-sicherheit-session-fixation.html</link>
	<description>Tutorials für neue und professionelle Webworker!</description>
	<lastBuildDate>Wed, 03 Nov 2010 21:20:22 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Von: Maik</title>
		<link>http://www.web-tuts.de/php-session-sicherheit-session-fixation.html#comment-445</link>
		<dc:creator>Maik</dc:creator>
		<pubDate>Mon, 08 Mar 2010 10:26:05 +0000</pubDate>
		<guid isPermaLink="false">http://www.web-tuts.de/?p=1131#comment-445</guid>
		<description>@Eric
Das kommt im zweiten Teil, wenn es um Session Hijacking geht ;-)</description>
		<content:encoded><![CDATA[<p>@Eric<br />
Das kommt im zweiten Teil, wenn es um Session Hijacking geht <img src='http://www.web-tuts.de/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Eric</title>
		<link>http://www.web-tuts.de/php-session-sicherheit-session-fixation.html#comment-419</link>
		<dc:creator>Eric</dc:creator>
		<pubDate>Wed, 03 Mar 2010 22:35:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.web-tuts.de/?p=1131#comment-419</guid>
		<description>Vielleicht sollte auch noch &quot;session.cookie_httponly&quot; erw&#228;hnt werden :)</description>
		<content:encoded><![CDATA[<p>Vielleicht sollte auch noch &#8220;session.cookie_httponly&#8221; erw&#228;hnt werden <img src='http://www.web-tuts.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Maik</title>
		<link>http://www.web-tuts.de/php-session-sicherheit-session-fixation.html#comment-376</link>
		<dc:creator>Maik</dc:creator>
		<pubDate>Tue, 23 Feb 2010 13:45:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.web-tuts.de/?p=1131#comment-376</guid>
		<description>@mad
Dann haben wir einfach nur aneinander vorbei geschrieben und das Wort &quot;Login&quot; unterschiedlich definiert. Ich meinte die Authentifizierung und du das Setzen von $_SESSION[&#039;user&#039;] = true bzw. $_SESSION[&#039;eingeloggt&#039;] = true

Diese Variablen werden _nach_ erfolgreichem Login definiert und dienen bei weiteren Requests zur &#220;berpr&#252;fung eines bereits eingeloggten Benutzers. Der eigentliche Login ist also meiner Meinung nach die Authentifizierung.

Aber stimmt schon, ich h&#228;tte deutlicher hervorheben sollen, dass die Session Variable einen eingeloggten Benutzer identifiziert. Werd ich gleich machen.

Und die alte Session muss man in diesem Beispiel nicht l&#246;schen, da sie keine bzw. nur unwichtige Daten enth&#228;lt und sowieso sp&#228;ter vom Server gel&#246;scht wird. Das kommt halt immer drauf an, welche Daten in Sessions gespeichert werden.

Ansonsten eine wirklich interessante Diskussion. Sowas m&#252;sste es &#246;fter geben. Danke f&#252;r die Kommentare und jetzt sind wir uns hoffentlich einig ;-)</description>
		<content:encoded><![CDATA[<p>@mad<br />
Dann haben wir einfach nur aneinander vorbei geschrieben und das Wort &#8220;Login&#8221; unterschiedlich definiert. Ich meinte die Authentifizierung und du das Setzen von $_SESSION['user'] = true bzw. $_SESSION['eingeloggt'] = true</p>
<p>Diese Variablen werden _nach_ erfolgreichem Login definiert und dienen bei weiteren Requests zur &#220;berpr&#252;fung eines bereits eingeloggten Benutzers. Der eigentliche Login ist also meiner Meinung nach die Authentifizierung.</p>
<p>Aber stimmt schon, ich h&#228;tte deutlicher hervorheben sollen, dass die Session Variable einen eingeloggten Benutzer identifiziert. Werd ich gleich machen.</p>
<p>Und die alte Session muss man in diesem Beispiel nicht l&#246;schen, da sie keine bzw. nur unwichtige Daten enth&#228;lt und sowieso sp&#228;ter vom Server gel&#246;scht wird. Das kommt halt immer drauf an, welche Daten in Sessions gespeichert werden.</p>
<p>Ansonsten eine wirklich interessante Diskussion. Sowas m&#252;sste es &#246;fter geben. Danke f&#252;r die Kommentare und jetzt sind wir uns hoffentlich einig <img src='http://www.web-tuts.de/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: mad</title>
		<link>http://www.web-tuts.de/php-session-sicherheit-session-fixation.html#comment-375</link>
		<dc:creator>mad</dc:creator>
		<pubDate>Tue, 23 Feb 2010 12:55:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.web-tuts.de/?p=1131#comment-375</guid>
		<description>@ Maik
Auch wenn wir hier sehr zeitversetzt kommunizieren (meinserseits), ist es doch sehr interessant, was auf diese paar Zeilen jetzt herausgekommen ist.

Meine Aussage ist so nicht gerechtfertigt : &quot;Befolgt man obiges Tutorial, so ensteht genau dieses Problem.&quot; : Auch wenn es nicht besonders herausgestellt wurde im eigentlichen Tutorial, so hast du nat&#252;rlich recht,  $_SESSION[&#039;eingeloggt&#039;] (&#039;user&#039;) wird erst nach dem Erneuern der SID gesetzt. Dies ist allerdings genau der Punkt auf den ich bei meinem allerersten Post hinaus wollte! Das Setzen von $_SESSION[&#039;eingeloggt&#039;] (&#039;user&#039;) = true ist ja das eigentliche Einloggen und erfolgt nach der Erneuerung der SID. Die &#220;berpr&#252;fung von Benutzername und Passwort davor, sind als Authentifizierung und somit nur als Teil des gesamten Loginvorganges zu sehen.

Somit stimmen wir jetzt &#252;berein ?
&quot;Man sollte generell eher vor dem Login die ID erneuern, nicht DANACH.&quot;

Allerdings steht  folgender interessanter Punkt noch aus:
* @param delete_old_session bool[optional]
* Whether to delete the old associated session file or not. Defaults to
* false.</description>
		<content:encoded><![CDATA[<p>@ Maik<br />
Auch wenn wir hier sehr zeitversetzt kommunizieren (meinserseits), ist es doch sehr interessant, was auf diese paar Zeilen jetzt herausgekommen ist.</p>
<p>Meine Aussage ist so nicht gerechtfertigt : &#8220;Befolgt man obiges Tutorial, so ensteht genau dieses Problem.&#8221; : Auch wenn es nicht besonders herausgestellt wurde im eigentlichen Tutorial, so hast du nat&#252;rlich recht,  $_SESSION['eingeloggt'] (&#8216;user&#8217;) wird erst nach dem Erneuern der SID gesetzt. Dies ist allerdings genau der Punkt auf den ich bei meinem allerersten Post hinaus wollte! Das Setzen von $_SESSION['eingeloggt'] (&#8216;user&#8217;) = true ist ja das eigentliche Einloggen und erfolgt nach der Erneuerung der SID. Die &#220;berpr&#252;fung von Benutzername und Passwort davor, sind als Authentifizierung und somit nur als Teil des gesamten Loginvorganges zu sehen.</p>
<p>Somit stimmen wir jetzt &#252;berein ?<br />
&#8220;Man sollte generell eher vor dem Login die ID erneuern, nicht DANACH.&#8221;</p>
<p>Allerdings steht  folgender interessanter Punkt noch aus:<br />
* @param delete_old_session bool[optional]<br />
* Whether to delete the old associated session file or not. Defaults to<br />
* false.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Maik</title>
		<link>http://www.web-tuts.de/php-session-sicherheit-session-fixation.html#comment-319</link>
		<dc:creator>Maik</dc:creator>
		<pubDate>Thu, 11 Feb 2010 19:10:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.web-tuts.de/?p=1131#comment-319</guid>
		<description>@mad
Ja, das ist schon richtig. Allerdings wird in diesem Beispiel die SID erneuert, bevor weitere Session Variablen definiert werden. Die Session Variable, die einen eingeloggten Benutzer identifiziert (in diesem Beispiel $_SESSION[&#039;user&#039;]), wird nur der neuen SID zugeordnet und nicht der alten.

Nat&#252;rlich m&#252;sste man hier dann die entsprechende Variable &#252;berpr&#252;fen. Sonst w&#228;r sie ja &#252;berfl&#252;ssig.

Hier mal ein vereinfachtes Beispiel: http://nopaste.us/621.html

1. Angreifer legt SID fest: SID=1234
2. User Login (SID=1234&amp;pass=abc), neue SID, $_SESSION[&#039;eingeloggt&#039;] = true
3. SID=1234 ist nicht eingeloggt, da die Session Variable nicht existiert. Diese ist nur der neuen SID zugeordnet, die der Angreifer nicht kennt.</description>
		<content:encoded><![CDATA[<p>@mad<br />
Ja, das ist schon richtig. Allerdings wird in diesem Beispiel die SID erneuert, bevor weitere Session Variablen definiert werden. Die Session Variable, die einen eingeloggten Benutzer identifiziert (in diesem Beispiel $_SESSION['user']), wird nur der neuen SID zugeordnet und nicht der alten.</p>
<p>Nat&#252;rlich m&#252;sste man hier dann die entsprechende Variable &#252;berpr&#252;fen. Sonst w&#228;r sie ja &#252;berfl&#252;ssig.</p>
<p>Hier mal ein vereinfachtes Beispiel: <a href="http://nopaste.us/621.html">http://nopaste.us/621.html</a></p>
<p>1. Angreifer legt SID fest: SID=1234<br />
2. User Login (SID=1234&#038;pass=abc), neue SID, $_SESSION['eingeloggt'] = true<br />
3. SID=1234 ist nicht eingeloggt, da die Session Variable nicht existiert. Diese ist nur der neuen SID zugeordnet, die der Angreifer nicht kennt.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: mad</title>
		<link>http://www.web-tuts.de/php-session-sicherheit-session-fixation.html#comment-318</link>
		<dc:creator>mad</dc:creator>
		<pubDate>Wed, 10 Feb 2010 22:40:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.web-tuts.de/?p=1131#comment-318</guid>
		<description>@Maik
mit meiner Aussage und der Formulierung &quot;generell&quot; meinte ich, dass es sicherer ist, da es folgendem Szenario vorbeugt:

1. SID=1234
2. user login
3. SID=1234 ist eingeloggt
4. regnerate_id  -&gt;  SID=5678
5. keine invalidierung der alten SID -&gt; in der Session mit ID=1234 sind immernoch alle credentials gespeichert, auch wenn der user jetzt ID=5678 benutzt.

Befolgt man obiges Tutorial, so ensteht genau dieses Problem.
Laut Quellcode soll die SID durch folgenden Ausdruck erneuert werden:

session_regenerate_id();

Allerdings wird nicht erw&#228;hnt, dass man f&#252;r die Invalidierung der alten SID &quot;true&quot; &#252;bergeben m&#252;sste. Hier der Auszug aus der Session.php :

 * @param delete_old_session bool[optional] 
 * Whether to delete the old associated session file or not. Defaults to
 * false.

Beachte : default = FALSE.

Will man sich also wirklich gegen Session Fixation sch&#252;tzen, so sollte man VOR dem login regenerate_id() aufrufen und/oder regenerate_id(true) nutzen.</description>
		<content:encoded><![CDATA[<p>@Maik<br />
mit meiner Aussage und der Formulierung &#8220;generell&#8221; meinte ich, dass es sicherer ist, da es folgendem Szenario vorbeugt:</p>
<p>1. SID=1234<br />
2. user login<br />
3. SID=1234 ist eingeloggt<br />
4. regnerate_id  -&gt;  SID=5678<br />
5. keine invalidierung der alten SID -&gt; in der Session mit ID=1234 sind immernoch alle credentials gespeichert, auch wenn der user jetzt ID=5678 benutzt.</p>
<p>Befolgt man obiges Tutorial, so ensteht genau dieses Problem.<br />
Laut Quellcode soll die SID durch folgenden Ausdruck erneuert werden:</p>
<p>session_regenerate_id();</p>
<p>Allerdings wird nicht erw&#228;hnt, dass man f&#252;r die Invalidierung der alten SID &#8220;true&#8221; &#252;bergeben m&#252;sste. Hier der Auszug aus der Session.php :</p>
<p> * @param delete_old_session bool[optional]<br />
 * Whether to delete the old associated session file or not. Defaults to<br />
 * false.</p>
<p>Beachte : default = FALSE.</p>
<p>Will man sich also wirklich gegen Session Fixation sch&#252;tzen, so sollte man VOR dem login regenerate_id() aufrufen und/oder regenerate_id(true) nutzen.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Maik</title>
		<link>http://www.web-tuts.de/php-session-sicherheit-session-fixation.html#comment-293</link>
		<dc:creator>Maik</dc:creator>
		<pubDate>Thu, 04 Feb 2010 00:35:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.web-tuts.de/?p=1131#comment-293</guid>
		<description>@mad
In deiner Aussage sehe ich keinen Sinn. Wieso sollte man vor einem Login die SID erneuern und nicht &quot;danach&quot; (im selben Request)?

Auch nachzulesen in der (englischen) Wikipedia:

&quot;Best solution: Identity Confirmation
This attack can be largely avoided by changing the session ID when users log in.&quot;</description>
		<content:encoded><![CDATA[<p>@mad<br />
In deiner Aussage sehe ich keinen Sinn. Wieso sollte man vor einem Login die SID erneuern und nicht &#8220;danach&#8221; (im selben Request)?</p>
<p>Auch nachzulesen in der (englischen) Wikipedia:</p>
<p>&#8220;Best solution: Identity Confirmation<br />
This attack can be largely avoided by changing the session ID when users log in.&#8221;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: mad</title>
		<link>http://www.web-tuts.de/php-session-sicherheit-session-fixation.html#comment-292</link>
		<dc:creator>mad</dc:creator>
		<pubDate>Thu, 04 Feb 2010 00:09:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.web-tuts.de/?p=1131#comment-292</guid>
		<description>Man sollte generell eher vor dem login die ID erneuern, nicht DANACH.</description>
		<content:encoded><![CDATA[<p>Man sollte generell eher vor dem login die ID erneuern, nicht DANACH.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: t3n.de/socialnews</title>
		<link>http://www.web-tuts.de/php-session-sicherheit-session-fixation.html#comment-251</link>
		<dc:creator>t3n.de/socialnews</dc:creator>
		<pubDate>Fri, 22 Jan 2010 02:46:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.web-tuts.de/?p=1131#comment-251</guid>
		<description>&lt;strong&gt;PHP Session Security - Session Fixation...&lt;/strong&gt;

In diesem Artikel geht es um das Thema Session Sicherheit in PHP. Teil 1: Session Fixation....</description>
		<content:encoded><![CDATA[<p><strong>PHP Session Security &#8211; Session Fixation&#8230;</strong></p>
<p>In diesem Artikel geht es um das Thema Session Sicherheit in PHP. Teil 1: Session Fixation&#8230;.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

