フォームを中心としたMODxによって強化されたWebサイトがあります。フォームによるウェブページへのアクセスは、登録されたメンバーに制限されています(MODxが扱います)。ユーザーは、いくつかのテキストエントリを入力し、アップロードするファイルを選択してから、送信をヒットします。指定されたアクションは、送信された情報を記録してファイルを保存する/ cgi-binの下にあるsubmit.py CGIスクリプトであり、完全に実行されます。HTMLフォームのソースに基づいてCGIスクリプトへのアクセスを防止します。
私が持っている唯一の懸念は、彼らが<form>
action属性のための右のURLを指定した場合いかなるフォームは(明らかに)、私のCGIスクリプトに自分のフォームをリンクできるように思われることです。彼らは、自分のページに次のように書くことができることを意味:
<form action="http://my-site.com/cgi-bin/submit.py">
<!-- blah blah blah -->
</form>
を、データは私のCGIフォームと処理された(望ましくない動作)に送信されます。
私の質問はこれです:は、データを送信したHTMLフォームに基づいてスクリプトの実行を制限する方法がありますか?本当に明白な何かが欠けていますか?
私はオンラインで検索し、CSRFのわずかな関連問題を発見しましたが、CGIスクリプトの不正使用を防ぐためにトークン認証とは別の方法がある場合は、それを聞きたいと思います。