• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:セキュリティについて)

セキュリティに関する質問

このQ&Aのポイント
  • セキュリティについての質問について解説します。自己ポストやファイル名指定に関して注意点があります。
  • セキュリティに関する質問について解説します。フォームの送信ボタンに関してもセキュリティ対策が必要です。
  • セキュリティについての質問について解説します。自己ポストやファイル名指定、javascriptの使用には注意が必要です。

質問者が選んだベストアンサー

  • ベストアンサー
  • agunuz
  • ベストアンサー率65% (288/438)
回答No.3

スクリプトで決まった内容を展開するのであれば(ユーザーの入力値を扱うのでなければ)「送る側」を気にする必要はありません。 問題は「受け取る側」です。 どうやってhtmlを生成しようがJavaScriptを絡めようが、想定していないパラメータが(GETでもPOSTでも)送られてくることはあります。当然ですが想定していないものは不正アクセスとして処理するようにしなければいけません。

flash0
質問者

お礼

回答ありがとうございます つまり、ページングなどのパラメータも含めて、全てのgetやpostにhtmlspecialchars($_REQUEST['mode'], ENT_QUOTES);をしておけばxssは防げるのでしょうか?

その他の回答 (2)

回答No.2

>例えばこんな感じでgetを自分自身に送ってもセキュリティ的に大丈夫でしょうか? <a href="hoge_list.php?mode=desc">投稿の新しい順</a> htmlの埋め込みのこれ簡単に書き換えれるぞ。 FireFox+FirebugなどでだからPOSTで送ろうがGETで送ろうがチェック処理は絶対に必須。 それと、GETのhoge_list.php?mode=descこれ。アドレスパーに貼り付けて書き換えたら 簡単にGETパラメータ送信できること理解できる?

flash0
質問者

お礼

回答ありがとうございます 質問にコードを書くべきでしたすいません getの値を変更してきてもチェックしてはしています これでXSS対策は大丈夫でしょうか? if(isset($_REQUEST['mode']) && is_string($_REQUEST['mode'])){ $mode = htmlspecialchars($_REQUEST['mode'], ENT_QUOTES); }else{ $mode=''; } if($mode=='desc'){ 処理 }

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

質問の意図がいまいち読めませんが ><form method="post" action="<?php echo hoge.php ; ?>"> <form method="post" action="hoge.php"> で十分では?そもそも「echo hoge.php」という書き方をする意味がわからない >header("Location: hoge.php?msg={$msg}"); headerで自分自身を読むとループしませんか? かりに特定の条件時のみ適用するのでループしないとして $msgは$_GETなどで参照していませんが、どこから持ってきているのでしょうか?

flash0
質問者

お礼

回答ありがとうございます <form method="post" action="hoge.php">で十分でした。すいません ループになっちゃってました。すいませんorz 例えばこんな感じでgetを自分自身に送ってもセキュリティ的に大丈夫でしょうか? <a href="hoge_list.php?mode=desc">投稿の新しい順</a>

関連するQ&A

専門家に質問してみよう