Python和防止邮件头注入

0 投票
1 回答
535 浏览
提问于 2025-04-16 23:03

我现在正在用Python创建一个网页联系表单。我的主要目标是自学Python,而且我不打算使用任何框架(就用原生Python)。我使用的是Python 2.5,因为这是我的网络主机支持的版本。

在Python中发送邮件看起来很简单,这在文档中也有说明。不过,我遇到的问题是找不到关于如何防止邮件头注入攻击的清晰示例,尤其是在使用像smtplib这样的模块时。

这似乎是一个非常重要的部分,但根据我能重现的Python错误,这似乎相当困难。有没有人能帮帮我?

1 个回答

0

只要确保你的脚本在你想要的头部信息后面发送两个换行符(CRLF是为了符合相关的RFC标准,LF则是为了符合大多数邮件传输代理的要求),那么任何试图注入的头部信息就会出现在邮件正文里。

当然,你还需要对发件人(from:)、收件人(to:)以及用户输入的其他数据进行检查,确保这些字段里没有嵌入的头部信息或换行符。

撰写回答