[geeklog-cvs] geeklog-1.3/system lib-sessions.php,1.17,1.18
geeklog-cvs-admin at lists.geeklog.net
geeklog-cvs-admin at lists.geeklog.net
Fri May 23 07:42:08 EDT 2003
Update of /usr/cvs/geeklog/geeklog-1.3/system
In directory internal.geeklog.net:/tmp/cvs-serv3547/system
Modified Files:
lib-sessions.php
Log Message:
Don't trust the cookie data too much ...
Index: lib-sessions.php
===================================================================
RCS file: /usr/cvs/geeklog/geeklog-1.3/system/lib-sessions.php,v
retrieving revision 1.17
retrieving revision 1.18
diff -C2 -d -r1.17 -r1.18
*** lib-sessions.php 21 May 2003 10:33:20 -0000 1.17
--- lib-sessions.php 23 May 2003 11:42:06 -0000 1.18
***************
*** 109,118 ****
if (isset($HTTP_COOKIE_VARS[$_CONF['cookie_name']])) {
$userid = $HTTP_COOKIE_VARS[$_CONF['cookie_name']];
! if (empty ($userid) || ($userid == 'deleted')) {
unset ($userid);
} else {
$cookie_password = $HTTP_COOKIE_VARS[$_CONF['cookie_password']];
$userpass = DB_getItem($_TABLES['users'],'passwd',"uid = $userid");
! if ($cookie_password <> $userpass) {
//User may have modified their UID in cookie, ignore them
} else {
--- 109,118 ----
if (isset($HTTP_COOKIE_VARS[$_CONF['cookie_name']])) {
$userid = $HTTP_COOKIE_VARS[$_CONF['cookie_name']];
! if (empty ($userid) || !is_int ($userid)) {
unset ($userid);
} else {
$cookie_password = $HTTP_COOKIE_VARS[$_CONF['cookie_password']];
$userpass = DB_getItem($_TABLES['users'],'passwd',"uid = $userid");
! if (empty ($cookie_password) || ($cookie_password <> $userpass)) {
//User may have modified their UID in cookie, ignore them
} else {
***************
*** 143,159 ****
$userid = $HTTP_COOKIE_VARS[$_CONF['cookie_name']];
! $cookie_password = $HTTP_COOKIE_VARS[$_CONF['cookie_password']];
! $userpass = DB_getItem($_TABLES['users'],'passwd',"uid = $userid");
! if ($cookie_password <> $userpass) {
! // User could have modified UID in cookie, don't do shit
} else {
! if ($userid) {
! $user_logged_in = 1;
! // Create new session and write cookie
! $sessid = SESS_newSession($userid, $REMOTE_ADDR, $_CONF['session_cookie_timeout'], $_CONF['cookie_ip']);
! SESS_setSessionCookie($sessid, $_CONF['session_cookie_timeout'], $_CONF['cookie_session'], $_CONF['cookie_path'], $_CONF['cookiedomain'], $_CONF['cookiesecure']);
! $userdata = SESS_getUserDataFromId($userid);
! $_USER = $userdata;
}
}
--- 143,163 ----
$userid = $HTTP_COOKIE_VARS[$_CONF['cookie_name']];
! if (!is_int ($userid)) {
! unset ($userid);
} else {
! $userpass = DB_getItem($_TABLES['users'],'passwd',"uid = $userid");
! $cookie_password = $HTTP_COOKIE_VARS[$_CONF['cookie_password']];
! if (empty ($cookie_password) || ($cookie_password <> $userpass)) {
! // User could have modified UID in cookie, don't do shit
! } else {
! if ($userid) {
! $user_logged_in = 1;
! // Create new session and write cookie
! $sessid = SESS_newSession($userid, $REMOTE_ADDR, $_CONF['session_cookie_timeout'], $_CONF['cookie_ip']);
! SESS_setSessionCookie($sessid, $_CONF['session_cookie_timeout'], $_CONF['cookie_session'], $_CONF['cookie_path'], $_CONF['cookiedomain'], $_CONF['cookiesecure']);
! $userdata = SESS_getUserDataFromId($userid);
! $_USER = $userdata;
! }
}
}
More information about the geeklog-cvs
mailing list