• 締切済み

CGIの自動リンクのパスワードが見破られたら?

 自分のHPに、CGIの自動リンクを設置していて、パスワードを入れて 管理人以外は登録できない筈なのに、見破られて?アダルトサイトを、登録 されました。直ぐに、パスワードは変更して、登録も削除しましたが不安。 @DANGER_LIST=("×××","~~~"); ↑  別のCGIにあった荒らし対策(書き込み制限)のCGIが追加可能なら 追加したいのですが、大丈夫でしょうか?他にするべき事も教えて下さい。

みんなの回答

  • hok212
  • ベストアンサー率66% (100/150)
回答No.2

パスワードによる管理者チェックがどのような仕組みになっているかわかりませんが、 もし次のような流であるならば、パスワードを変更しても意味がない可能性があります。 可能性とは「外部からの投稿がありえる」ということです。 処理の流れ:パスワードチェック→管理画面(入力フォーム)→登録 上記の流ですと、パスワードチェックを経て入力フォームが表示されるわけですから、入力フォームの表示に関しては問題がありません。 ですが、登録の直前で何もチェックがないとすると、この部分で外部からデータが挿入されることが可能になります。 どのようにやればそれが出来るのか を書いてしまうと、問題になるでしょうから手法は詳しく書きません。 その代わり対策方法を書きます。 環境変数のREFERER(参照元)を引いて、自分のCGI以外からの登録を拒否しましょう。 簡単なPerlスクリプトの例を揚げると次のような感じです。 # まず最初に自分自身のURLを変数myscriptとして扱います $myscript = 'http://hogehoge.xyz/hogehoge.cgi'; # 自動リンクCGIのURL # 参照元チェックを関数化すると便利です。 sub refCheck { $ref = $ENV{'HTTP_REFERER'}; $ref =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("H2", $1)/eg; if ($ref =~ /$myscript/i) { return 1; } else { return 0; } } # 登録の直前に参照元チェック関数を呼び出し、異なればエラー処理 $ref_flag = &refCheck; if ($ref_flag == 0) { #ここにエラー処理 }

koboy0808
質問者

お礼

 今の所は、大丈夫みたいなので、また、同様の事が有れば、この回答を 参考にして対策したいと思います。有難う御座いました。

koboy0808
質問者

補足

 パスワードが見破られた理由は、簡単だったからと思いたいのですが、 CGIの具体的な回答を有難う御座いました。

  • masita
  • ベストアンサー率25% (19/75)
回答No.1

自動リンク移動したらどうですか

koboy0808
質問者

お礼

ご意見参考にします。

koboy0808
質問者

補足

 CGIのカテゴリで質問してるので、CGIに関する回答が欲しいのw

関連するQ&A