PHPサイバーテロの技法

ファイルダウンロード

書籍内サンプルスクリプト(zip形式)

書籍で利用したバージョンのxampplite (Windows用自己解凍形式)

修正情報(正誤表)

「PHPサイバーテロの技法」には、以下の間違いがございます。ご迷惑をおかけして申し訳ございませんでした。

P.59 チェックべきポイント クエリ発行関数(5刷にて修正予定)
誤) mysql_qury
正) mysql_query
P.67 対策4 パラメータのセッション渡し法(3刷にて修正)
(まるごと削除)
※私の勘違いです。これは基本的に対策になっていません。
P.67 補足説明追加 (3刷にて修正)
特に、プレビュー画面や内容確認画面にHTML許可表示がある場合には、それらすべてについてもCSRF対策が必要であり、いずれか一つでも対策が欠けている場合はXSS+CSRFコンビネーション攻撃を受けることになる。
なお、ワンタイムチケット法はワンタイムトークン法と呼ばれることも多い。
セッション鍵をフォームのhiddenに入れる、という方法が一部のサイトで紹介されているが、GETでは利用できない、セッション鍵の変更が簡単に出来なくなる、セッションハイジャック対策をしていても盗まれたセッション鍵がCSRF攻撃に利用される等、数々のデメリットがあり、セッションを利用するのであれば素直にワンタイムチケット法を採用するべき。
P.71 補足説明2行目 説明文の間違い (3刷にて修正)
誤)   ヌルバイトを文字列の終わりと見なす関数(バイナリセーフ)とそうでない関数が共存している
正)   ヌルバイトを文字列の終わりと見なしてしまう関数とそうでない関数(バイナリセーフ)が共存している
P.138 本文下から4行目 (2刷にて修正)
誤)   ただ、鍵の再生成した直後は、
正)   ただ、鍵を再生成した直後は、
P.146 2番目の例 (3刷にて修正)
誤)   echo "<meta http-equiv="content-type" content="text/html; charset=$charset" />" ;
正)   echo "<meta http-equiv='content-type' content='text/html; charset=$charset' />" ;
P.212 表A-1のプログラム中での変更例におけるsession.use_only_cookiesの行 (3刷にて修正)
誤)   ini_set('session_use_only_cookies',0);
正)   ini_set('session_use_only_cookies',1);
P.212 表A-2のプログラム中での変更例におけるsession.use_only_cookiesの行 (3刷にて修正)
誤)   ini_set('session_use_only_cookies',0);
正)   ini_set('session_use_only_cookies',1);

※ 「正誤表」で検索にひっかかるようにしました