KENT-WEB サポートコーナー 過去ログ [ 0105 ]


記事No: 500
投稿日: 2007/05/07(Mon) 16:38:40
タイトルPOSTMAILでURLを送りたいが?
ID情報: ghyuji
投稿者: GEO
URLhttp://dogs-on-garden.com/

ver = 'postmail v3.41'のPOSTMAILを利用させていただきたいのですが、巧くいきません。

テキストボックスに入力されたアドレスへ、指定のURLを送信したいのですが、空メールが届いてしまいます。

HTMLの一部はFORM部の通りです。
--------------------------------------------
<form name="form1" method="post" action="http://dogs-on-garden.com/cgi/docomo/postmail.cgi?"><p><span class="Time12">
<input name="_email" type="text" class="Time12" id="送信先" size="50" maxlength="50"></span>
<input name="web" type="hidden" class="Time12" value="http://dogs-on-garden.com/epad/epad.cgi">
<input type="submit" name="submit" value="送信"></p> </form>
------------------------------------------------------
CGIの設定は下記の通りで、特に変更はしておりません。

#-------------------------------------------------
# ▼基本設定
#-------------------------------------------------

# 文字コード変換ライブラリ
require './jcode.pl';

# MIMEエンコードライブラリを使う場合(推奨)
# → メールヘッダの全角文字をBASE64変換する機能
# → mimew.plを指定
$mimew = './mimew.pl';

# メールソフトまでのパス
# → sendmailの例 :/usr/lib/sendmail
# → BlatJの例 :c:\blatj\blatj.exe
$mailprog = '/usr/sbin/sendmail';

# 送信先メールアドレス
$mailto = 'xxx@xxx.xxx';

# 入力フィールドあたりの最大容量(バイト)
# *参考 : 全角1文字 = 2バイト
$max_field = 100;

# 送信前確認
# 0 : no
# 1 : yes
$preview = 1;

# メールタイトル
#$subject = 'フォームメール';
$subject = 'DOG店舗状況';

# 本体プログラムURL
$script = './postmail.cgi';

# 確認画面テンプレート
$tmp_conf = './tmp_conf.html';

# 一般エラー画面テンプレート
$tmp_err1 = './tmp_err1.html';

# 入力エラー画面テンプレート
$tmp_err2 = './tmp_err2.html';

# 送信後画面テンプレート
$tmp_thx = './tmp_thx.html';

# 送信後の形態
# 0 : 完了メッセージを出す.
# 1 : 戻り先 ($back) へ自動ジャンプさせる.
$reload = 0;

# 送信後の戻り先
# → http://から記述する
$back = 'http://www.xxx.xxx/';

# 送信は method=POST 限定 (0=no 1=yes)
# → セキュリティ対策
$postonly = 1;

# アラーム色
$alm_col = "#dd0000";

# ホスト取得方法
# 0 : gethostbyaddr関数を使わない
# 1 : gethostbyaddr関数を使う
$gethostbyaddr = 0;

# 送信元へ控え (CC) を送る
# 0=no 1=yes
# *セキュリティ上この機能は推奨しません.
# *name="email" のフィールドへの入力が必須となります.

----------------------------------------------
ご指導よろしくお願いいたします。


記事No: 501
投稿日: 2007/05/07(Mon) 16:56:50
タイトルRe: POSTMAILでURLを送りたいが?
ID情報: ghyuji
投稿者: GEO
URLhttp://dogs-on-garden.com/

申し訳ありませんが、セキュリティの為、hiddenで送信先を渡す方法をアドバイスすることは出来ません。
フォームから送信先を渡すと言うことは、誰にでもそのフォームを使って特定の人物にメールを送信できると言うことです。
この改造されたCGIスクリプトから、悪意のある第三者がスパムメールを送信しないとは限りません。

値をhiddenで渡しても、input type="text"で渡しても同じなのです。
過去ログから下記のような記事を見つけました。
特定のURLだけを送信すると言うような場合でも、やはり、まずいことになるのでしょうか?
---------------------------------------------------------
正規のフォームからではなく、外部フォームからの送信についても、考慮する必要があります。
簡単に偽造したフォームから、その改造されたCGIスクリプトを使ってメールを送信することは可能ですので。
これは、WEBプログラミングをする上で、一番考えなくてはいけないことです。
その認識が、甘いように思われます。
もう一度、メールの送信先をフォームで渡すということが、どんなに危ないことかを考えてください。


[検索ページ]