首页
社区
课程
招聘
[原创]使用Telnet发送E-mail的脚本客户端
2007-12-20 21:48 5382

[原创]使用Telnet发送E-mail的脚本客户端

2007-12-20 21:48
5382
入门级水平,高手飘过,
1.首先简单介绍一下SMTP
SMTP基本命令集:
命令 描述
HELO 向服务器标识用户身份
MAIL 初始化邮件传输 mail from:
RCPT 标识单个的邮件接收人;常在MAIL命令后面,可有多个rcpt to:
DATA 在单个或多个RCPT命令后,表示所有的邮件接收人已标识,并初始化数据传输,以.结束
QUIT 结束会话
MAIL FROM命令中指定的地址是称作envelope from地址,不需要和发送者自己的地址是一致的
RCPT TO 与之等同,指明的接收者地址称为envelope to地址,而与实际的to:行是什么无关

现在的SMTP服务器一般都需要身份验证,下面是一个telnet发送邮件的例子:

C:\>telnet smtp.163.com 25    //登陆 smtp.163.com 端口号为 25

220 163.com Anti-spam GT for Coremail System(163com[071018])

HELO localhost  // 与服务器打招呼,并告知客户端使用的机器名字,可以随便填写
250 OK  
AUTH LOGIN     //使用身份认证登陆指令
334 dXNlcm5hbWU6
cmVkc25zMw==  //输入已经base64_encode()过的用户名,只输入用户名,不需要带@163.com
334 UGFzc3dvcmQ6
MbM2MMQ35Q==  //输入已经base64_encode()过的密码
235 Authentication successful
MAIL FROM:<rain@163.com>  //告诉服务器发信人的地址,必须和前面输入的用户名一致。
250 Mail OK
RCPT TO:<rain@163.com> //告诉服务器收信人的地址
250 Mail OK
DATA   //正面开始传输信件的内容,且最后要以只含有 . 的特殊行结束。
354 End data with .
To:rain@163.com
From:rain@163.com
Subject:test mail
From:rain@163.com
test body
123
. //结束传输信件
250 Mail OK queued as smtp14,F0CPBFsuzUOvoDwE.41582S2
QUIT  //断开连接
221 Bye
Connection closed by foreign host.
状态码说明:
220 : 服务就绪
250 :请求邮件动作正确,完成(HELO,MAIL FROM,RCPT TO,QUIT 指令执行成功会返回此信息)
235 :认证通过
221 :正在处理
354 :开始发送数据,结束以 .(DATA指令执行成功会返回此信息)
500 :语法错误,命令不能识别
550 :命令不能执行,邮箱无效
552 :中断处理:用户超出文件空间
2.用Javascript和VBscript写一个与Telnet交互的客户端

点击发送后,Javascript脚本调用bat批处理,bat批处理调用vbs实现在Telnet中的自动输入。
(这里需要注意,如果命令行开启中文输入法的话,需要关闭)

3.源代码
sendmail.rar
默认目录:D盘根目录

[培训]二进制漏洞攻防(第3期);满10人开班;模糊测试与工具使用二次开发;网络协议漏洞挖掘;Linux内核漏洞挖掘与利用;AOSP漏洞挖掘与利用;代码审计。

上传的附件:
收藏
点赞0
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回