- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用汇编语言写ESMTP邮件发送程序
用汇编语言写ESMTP邮件发送程序
最近在CSDN论坛上看到许多人问着同一个问题——如何编写带服务器验证的 ESMTP 邮件发送程序,回答的人还真不少:有建议用 MAPI 的、有建议使用别人的类库的……其实我对此是颇不以为然的。ESMTP 的编写并不困难,关键是弄清楚了协议——只要严格按照协议来进行,就一定能OK,反而编程的技巧在此倒是无足轻重的。换句话说,写这个程序是Easy job,没有必要用到 MAPI 等“庞然大物”啊。既然如此,让我们来使用 Win32ASM 编写一个自己的 ESMTP “引擎”,可以用在你的病毒或者木马上哦!??:)我们先来看看 SMTP 的发送协议,在 rfc821(smtp) 和 rfc1521(mime) 里面写得非常清楚,读者请自行参考这两个文档。什么?看不懂英文?……没关系,我给大家整理一下。ESMTP 的整个发送过程如下:
Socket连接后,按 ESMTP 协议通讯(注意每条命令结尾符“回车\换行\.\回车\换行”结束):1、EHLO Domain\r\n????????这条命令可以不要,但是按照标准的写法,还是加上好。????????Example: EHLO \r\n2、AUTH LOGIN\r\n????????告诉服务器,要进行验证了。3、Base64_Username\r\n????????发送经过 Base64 编码的用户名给服务器。4、Base64_Password\r\n????????发送经过 Base64 编码的密码给服务器。5、MAIL FROM:\r\n????????发送者的Email地址。????????Example: MAIL FROM: lcother@163.net\r\n6、RCPT TO:\r\n????????目标Email地址。????????Example: RCPT TO: target@163.net\r\n7、DATA\r\n????????开始传送数据。8、发送数据\r\n.\r\n????????注意:SMTP协议只发送信息,至于如何区分CC、BCC、Subject、Body等不属于SMTP的范围,详情请查看RFC文档MAIL格式部分????????简单说一下MAIL格式:Sunject:主题\r\n\r\n内容,还有好多……????????返回值为“250 ***”表示正常,同时***里含有MessageID等信息(前面的命令都有相应的返回信息)9、QUIT\r\n????????Over,走人…… 上面的是 ESMTP 的协议,如果我们严格按照上面的协议,就可以写出 ESMTP 的发送程序了。大家看出来了吗?其实 ESMTP 与 SMTP 唯一不同的地方,就是在于第三步和第四步——缺少了这两个步骤, ESMTP 就等于 SMTP 了。至于如何区分正文和附件,其实是在 DATA\r\n 后,通过一个叫做“Boundary”的分隔字符串来分隔开来的,这个“Boundary”可以是任意的字符串,随你喜欢怎么取都行,但是必须注意的是,分隔的时候要按照“--Boundary”的格式,结束的时候要用“--Boundary--”。而附件的内容,是通过 Base64 编码,包含在 DATA 里面进行发送;如果有多个附件,就要进行循环,把每个附件的内容包含进去,直至结束。这样说会不会太抽象了?好吧,我举个例子:
EHLO , 13, 10AUTH LOGIN, 13, 10lcother, 13, 10lcother_password, 13, 10MAIL FROM:lcother@163.net, 13, 10RCPT TO:target@163.net, 13, 10DATA, 13, 10From: 老罗, 13, 10,\To: Somebody, 13, 10, \Subject: 你好吗?, 13, 10, 0MIME-Version: 1.0, 13, 10, \X-Mailer: LCMailer by LC, 13, 10, \Content-type:multipart/mixed;Boundary=www.LuoC, 13, 10, 13, 10, \--www.LuoC, 13, 10, \Content-type:text/plain;Charset=GB2312, 13, 10, \Content-Transfer-Encoding:8bit, 13, 10, 13, 10, \好久不见,最近过得好吗?(正文内容), 13, 10, 13, 10, 0, \.if (有附件)????--, 13, 10, \
您可能关注的文档
- 外研版必修一、二重要短语.doc
- 智能优化方法课程论文.doc
- 高中英语常见动词短语总结.doc
- 新版新目标八年级英语下Unit5短语与句型汇集.doc
- MIME格式详细介绍.doc
- 10年北京中考大纲短语.doc
- CentOS安装EMOS1.6邮件系统.docx
- 9A Unit1 reading1导学案.doc
- gamemaker的例子.docx
- 材料科学基础_概念中英文.doc
- 《GB/T 32879-2025电动汽车更换用电池箱连接器》.pdf
- 中国国家标准 GB/T 21649.2-2025粒度分析 图像分析法 第2部分: 动态图像分析法.pdf
- 中国国家标准 GB/T 20899.9-2025金矿石化学分析方法 第9部分:碳量的测定.pdf
- 《GB/T 20899.9-2025金矿石化学分析方法 第9部分:碳量的测定》.pdf
- GB/T 20899.9-2025金矿石化学分析方法 第9部分:碳量的测定.pdf
- 《GB/T 33820-2025金属材料 延性试验 多孔状和蜂窝状金属高速压缩试验方法》.pdf
- GB/T 33820-2025金属材料 延性试验 多孔状和蜂窝状金属高速压缩试验方法.pdf
- 中国国家标准 GB/T 33820-2025金属材料 延性试验 多孔状和蜂窝状金属高速压缩试验方法.pdf
- GB/T 45910-2025信息技术 生物特征识别模板保护方案的性能测试.pdf
- 《GB/T 45910-2025信息技术 生物特征识别模板保护方案的性能测试》.pdf
文档评论(0)