0

以下を使用してお問い合わせフォームを送信し、iv セキュリティを調べたところ、メール機能の From: ビットを保護する必要があることがわかりました。これはハードコードされているため、スクリプトがスパムプルーフ/ハイジャック不可能であることを意味します。

$tenantname = $_POST['tenan']; 
$tenancyaddress = $_POST['tenancy'];
$alternativename = $_POST['alternativ'];
//and a few more
//then striptags on each variable

$to = "hardcoded@email.com";
$subject = "hardcoded subject here";
$message = "$tenantname etc rest of posted data";
$from = "noreply@email.com";
$headers = "From: $from";

mail($to,$subject,$message,$headers);
4

3 に答える 3

2

Unhijackable? Yes.

Spamproof? I wouldn't describe it as that, as the form can still be used to spam the target of the form.

于 2010-04-30T12:33:19.033 に答える
0

$headers攻撃者によって制御されてはならない考慮事項がいくつかあります 。この変数を制御できる場合、crlf\r\nを挿入して、このフォーラムをオープンなスパム ゲートウェイに変えることができます。 PHP-Nukeは、しばらく前にこれに対して脆弱でした。

2 番目の考慮事項はレート制限です。愚かなボットがこのフォーラムに数千回アクセスしています。スパムでさえないかもしれませんが、あなたのサイトをスキャンして sql インジェクションを侵入させているだけかもしれません。ボットがこのフォーラムに投稿するのを防ぐには、reCapthca を使用する必要があります。

于 2010-04-30T17:22:27.767 に答える
0

フォームデータを使用して作成している場合$from(コードからはよくわかりません$from)、SQL インジェクションのような追加のヘッダー (BCC/CC) を追加するために使用できます。

更新:コードがもう少し読みやすくなったので、問題はないはずです。

于 2010-04-30T13:08:46.327 に答える