Asp classic ASP电子邮件脚本
我有一个表单,我用它来验证数据,我想知道的是,我是否需要清理数据以发送电子邮件?电子邮件将发送到预定义的电子邮件地址。基本上,表单只要求提供姓名、电子邮件(使用表单的人)和url 然后将其发送到预定义的电子邮件地址。这样的东西安全吗?使用以下简单的ASP页面是否易受攻击:Asp classic ASP电子邮件脚本,asp-classic,sanitization,Asp Classic,Sanitization,我有一个表单,我用它来验证数据,我想知道的是,我是否需要清理数据以发送电子邮件?电子邮件将发送到预定义的电子邮件地址。基本上,表单只要求提供姓名、电子邮件(使用表单的人)和url 然后将其发送到预定义的电子邮件地址。这样的东西安全吗?使用以下简单的ASP页面是否易受攻击: <% dim objMessage dim FullName FullName=Request.QueryString("name") dim email email=Request.QueryString("
<%
dim objMessage
dim FullName
FullName=Request.QueryString("name")
dim email
email=Request.QueryString("email")
dim videourl
videourl=Request.QueryString("video")
dim txtMessage
txtMessage="<b><br><br>Name: " & FullName & "<br>Email: " & email & "<br><br>Video URL: " & videourl
objMessage = CreateObject("CDO.Message")
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "localhost"
objMessage.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
objMessage.Configuration.Fields.Update
objMessage.Subject = "qContest Submission"
objMessage.From = email
objMessage.To = "predefined@email.org"
objMessage.HTMLBody = txtMessage
objMessage.Send
%>
注意:这不是使用任何数据库或类似的东西
这个脚本也是通过AJAX调用的,如果这很重要的话…在用HTML显示用户发布的数据时始终使用Server.HTMLEncode。在本例中,您将其放在电子邮件的HTMLBody中,因此我肯定会使用HTMLEncode:
FullName = Server.HTMLEncode(Request.QueryString("name"))
等。这样就避免了发布易受攻击的东西(如Javascript)的可能性,因为打开电子邮件时可能会执行这些东西。谢谢!我想它可能需要更多的东西来确保安全,但我不确定是否有必要。我看到的所有教程都是关于数据库安全的,这与实际无关。实际上,在本例中,您不必担心SQL注入:-)