バージョン選択

フォーラム

メニュー

オンライン状況

21 人のユーザが現在オンラインです。 (18 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 21
もっと...

サイト内検索

バグ報告 > その他 > セッションIDの長さについて

その他

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ゲスト
投稿日時: 2007/5/19 21:32
対応状況: −−−
セッションIDの長さについて
eccube-1.3.0/data/include/mobile.inc 95行目で

// セッションIDのフォーマットをチェックする。
if (preg_match('/^[0-9a-zA-Z,-]{32,}$/', $sessionId) < 1) {
  gfPrintLog("Invalid session id : sid=$sessionId");
  return false;
}

となっていますが PHP5 以後だとデフォルトで

; Select a hash function
; 0: MD5 (128 bits)
; 1: SHA-1 (160 bits)
session.hash_function = 0

となっていますので .htaccess で

php_value session.hash_function 1

の設定が必要だと思います。

このままだと無限ループしてしまいます。
nanasess
投稿日時: 2007/5/19 23:36
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2313
Re: セッションIDの長さについて
大河内です.

http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=484&forum=10&post_id=1457#forumpost1457
上記にも書きましたが,

引用:

ゲストさんは書きました:
eccube-1.3.0/data/include/mobile.inc 95行目で

// セッションIDのフォーマットをチェックする。
if (preg_match('/^[0-9a-zA-Z,-]{32,}$/', $sessionId) < 1) {
  gfPrintLog("Invalid session id : sid=$sessionId");
  return false;
}

となっていますが PHP5 以後だとデフォルトで

; Select a hash function
; 0: MD5 (128 bits)
; 1: SHA-1 (160 bits)
session.hash_function = 0

となっていますので .htaccess で

php_value session.hash_function 1

の設定が必要だと思います。

このままだと無限ループしてしまいます。


正確には, session.hash_function が導入されたのが, PHP5以降で, デフォルト値は 0 (MD5)であり, セッションID の長さを決定する session.hash_bits_per_character のデフォルト値は 4 となっているため, 生成されるセッションIDは 32 文字となり, デフォルト値を変更しない限りは無限ループすることはないと思われますが, いかがでしょうか?
ゲスト
投稿日時: 2007/5/20 10:07
対応状況: −−−
Re: セッションIDの長さについて
^[0-9a-zA-Z,-]{32,}$


これは32文字以上という正規表現ですよ。
ゲスト
投稿日時: 2007/5/20 11:21
対応状況: −−−
Re: セッションIDの長さについて
引用:

フォーラムの以前の投稿をよくチェックしないで同じ内容を
再度投稿してしまいました。申し訳ありませんでした。

引用:

正確には, session.hash_function が導入されたのが, PHP5以降で, デフォルト値は 0 (MD5)であり, セッションID の長さを決定する session.hash_bits_per_character のデフォルト値は 4 となっているため, 生成されるセッションIDは 32 文字となり, デフォルト値を変更しない限りは無限ループすることはないと思われますが, いかがでしょうか?


php-5.2.2 に付属の php.ini-recommended だと session.hash_bits_per_character がなぜか 5 になっています。これをそのまま使用していたため無限ループしていました。

おさわがせして申し訳ありませんでした。
nanasess
投稿日時: 2007/5/20 18:48
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2313
Re: セッションIDの長さについて
大河内です.

php.ini-recommended は, セキュリティを重視した設定値ですので, 推奨される設定値は 5 になるんでしょうね.

本来なら, ini_get で php.ini の設定値を見て, セッションID の長さを比較するようにしたら良いのでしょうけど...

# パッチを作ろうと思いつつ, なかなか時間がとれず, すみません.
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,923名です
総投稿数は110,012件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1296
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.