PHP

WEBページの不正遷移対策 PHP セッション

  • 2017年7月16日
  • 2017年7月17日
  • PHP,
  • 6385view
PHP

不正遷移 対策 PHP

残念ながら私は毎日業務でプログラムを書いているわけではないので、色々やっているうちに忘れてしまう危険があります・・・!!そんなわけで、プログラム系もぼちぼち記事にしていこうと思います。

 

A(手続き)ページ → B(処理完了)ページという想定した正規のフローで進んで欲しいWEBページがあります。

ブラウザからBページのURLを叩けば当然アクセス出来ます。何も特別なことを行っていないのですから。しかし、通常の一般ユーザの想定している振る舞いからはありえないことです。そんなわけで、今回は不正遷移としてエラーを出すチップスの御紹介です。

 

セッションで対策を行います。

Aページ 手続きページ

セッションとPostデータの有無で判定

  1. Aページに$_SESSION[‘kerberos_flag’]に1を入れておき、Bページに移動した時にその値を持っているか。
  2. Postデータを持っているか。

2点の判定で通常のページ遷移かどうかを判定します。

 

Bページ 処理完了ページ

 

ここで判定していますよ!

$_SESSION[‘kerberos_flag’]にきちんとフラグデータがあるか、必須項目データの1つemailのPostがなければそこでエラーメッセージを表示させて、exit()で処理を完全に止めます。これでBページの直接アクセスした場合の対策が出来ました。

Aページからのフラグを持っている通常フローを行っているユーザに対しては、セッションとCookieを削除して通常の表示に進みます。

 

 

この仕様の問題点

Chrome Cookie

 

Cookieを有効化していないブラウザではアクセス出来なくなることです。通常のデフォルトでは有効になっているはずなので、問題にはなりませんが、無効化しているユーザも全くいないわけでもないので、有効化にする方法のアナウンスが必要です。

*画像はChromeブラウザ

 

不正遷移 対策 PHP

不正遷移エラーページでCookieの有効化をアナウンスを行っています。

お疲れ様です。

 

 

PHP
最新情報をチェックしよう!
>システム構築・保守に特化した会社です。

システム構築・保守に特化した会社です。

システムの構築・保守運用「システムガーディアン」 社内システム担当が欲しいが、専属で雇うほどの仕事量はない。 必要な時に必要なだけ頼りたいというお悩みを持つ企業様へ専門知識を持って対応を行っております。 サーバから各種システムまで自社・他社で構築されたシステムに対してサポートを行っております。

CTR IMG