使用telnet发送邮件
用处
记得在上高中的时候,在网上发现这个方法以后,使用的重点并不是换个方法发邮件,而是在这段与邮件服务器沟通的命令里,有一处是可以随意写的,从而可以实现邮件欺诈:data from这个参数可以任意填写。它不像mail from参数要经过邮件服务器校验,而是随意一个地址都可用。而且data下面的这个from参数的值会显示在收件人收到的邮件的发件地址那里,如果收件人不去仔细查看邮件的原文,可能就会被邮件的发件人一栏所欺骗。
可惜几年后当我再拿出这套手法测试的时候,有的邮件服务器已经开始强行要求mail from和data from必须一致了。
记忆犹新的是,高中的时候知道了这个方法后,我就开始琢磨怎么逗同学。最后我给几个关系比较好的同学发了一封下周放假的邮件,发件人地址写了校长的,效果蛮不错。
方法
发邮件除了使用邮箱服务商提供的各种客户端以外,还有一种方法,就是通过telnet连接邮件服务器,在命令行下完成邮件的撰写和发送。
-
打开 cmd/终端
-
在命令行中依次序输入下面的命令,即可以完成一封邮件的发送。大致原理就是基于telnet和SMTP协议,使用命令行的方式完成和SMTP服务器的交互过程,即客户端发出一个命令,服务器返回一个应答
telnet ${SmtpServer} ${SmtpPort} helo ${SmtpServer} auth login username #base64编码过的发信服务器用户名 password #base64编码过的发信服务器密码 mail from: #此处必须是用来发信的邮件真实地址 rcpt to: #收件人真实地址 data from: #任意发自于地址 to: #任意收信人地址 subject: #空一行后开始输入正文 . #以.结束并回车即可提交给邮件服务器发送 quit #退出
在线base64编码工具
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。