-1

私はphpメールインジェクションと考えられるセキュリティリスクを読んでいます。私は関数を介してこれらのほとんどを制御し、単純にメールと連絡先メッセージから渡すことにしました。

これがどれほど安全で、どんな種類のインジェクションも防ぐことができるのだろうか?

//contact form
function sendContactForm($contactEmail, $contactMessage) {

    $to = "mysite@mysite.com";
    $from = "mysite@mysite.com";

    $replyTo = filter_var($contactEmail, FILTER_VALIDATE_EMAIL);

    $subject = "Contact Form Email";
    $message = $contactMessage;

    $headers  = "From: " . $from . "\r\n"; 
    $headers  = "Reply-To:" . $replyTo . "\r\n";
    $headers .= "Content-type: text/html\r\n"; 

    $success = mail($to, $subject, $message, $headers);

}
4

1 に答える 1

1

これはあまり安全ではありません。ユーザーは簡単にコードを挿入できてしまいます$contactMessage

私の提案はhtmlentities()、エンティティ内の文字を変換する を使用することです (可能な場合)。

strip_tags()HTML タグのない文字列を返す を使用することもできます。

于 2013-05-03T11:26:20.323 に答える