PHPsu
MANUAL ZH  |  EN
     


Current Position :| index>PHP教程> PHP E-mail 注入

PHP E-mail 注入

FROM: AUTHOR: TIME:2008-08-15 HITS:

代码:

<html>
<body>

<?php
if (isset($_REQUEST['email']))
//if "email" is filled out, send email
{
//send email
$email = $_REQUEST['email'] ;
$subject = $_REQUEST['subject'] ;
$message = $_REQUEST['message'] ;
mail("someone@example.com", "Subject: $subject",
$message, "From: $email" );
echo "Thank you for using our mail form";
}
else
//if "email" is not filled out, display the form
{
echo "<form method='post' action='mailform.php'>
Email: <input name='email' type='text' /><br />
Subject: <input name='subject' type='text' /><br />
Message:<br />
<textarea name='message' rows='15' cols='40'>
</textarea><br />
<input type='submit' />
</form>";
}
?>

</body>
</html>

phpsu提供的php教程

以上代码存在的问题是,未经授权的用户可通过输入表单在邮件头部插入数据。

http://www.phpsu.com

假如用户在表单中的输入框内加入这些文本,会出现什么情况呢?

phpsu is a phpschool

someone@example.com%0ACc:person2@example.com
%0ABcc:person3@example.com,person3@example.com,
anotherperson4@example.com,person5@example.com
%0ABTo:person6@example.com
http://www.phpsu.com

与往常一样,mail() 函数把上面的文本放入邮件头部,那么现在头部有了额外的 Cc:, Bcc: 以及 To: 字段。当用户点击提交按钮时,这封 e-mail 会被发送到上面所有的地址! www.phpsu.com


TITLE:PHP E-mail 注入
Previous:PHP制作GIF图形文件
Next:None
Copyright 2008 The PHPsu All rights reserved. This mirror generously provided by: .Hp Inc.
Last updated: Fri Aug 15 19:04:31 GMT-8 2008