基于smtp的网络电子邮件解析设计与实现

基于smtp的网络电子邮件解析设计与实现

ID:24402666

大小:50.50 KB

页数:3页

时间:2018-11-14

基于smtp的网络电子邮件解析设计与实现_第1页
基于smtp的网络电子邮件解析设计与实现_第2页
基于smtp的网络电子邮件解析设计与实现_第3页
资源描述:

《基于smtp的网络电子邮件解析设计与实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于SMTP的网络电子邮件解析设计与实现本文通过研究用来传递电子邮件的SMTP协议的会话过程和基本原理,引入LibnidsX络开发包作为工具,捕获局域X的数据包并进行协议还原和协议分析,从而为邮件内容还原打下基础,以实现系统安全性的提升。关键词:SMTP;电子邮件;内容解析1引言  电子邮件虽然方便、快捷,但在安全性方面有一些固有的弱点,容易导致企业的商业机密泄漏,造成不必要的损失。为了提升系统安全性,亟需构建一个X络监控系统,监视从局域X传出的机密文件和资料。本文通过研究用来传递电子邮件的SMTP协议的会话过程和基本原理,引入Lib

2、nidsX络开发包作为工具,捕获局域X的数据包并进行协议还原和协议分析,为邮件内容还原打下基础,从而减少X络安全事件的发生。2系统基本原理概述  目前,运用比较广泛的电子邮件协议包括SMTP协议,POP3协议以及IMAP4协议,这几类协议都包含在TCP/IP协议簇中,电子邮件在X络上传输前,必须被封装成帧的形式。数据包的封装过程中,被应用程序所接收的数据包包含两方面的内容,一是邮件本身,二是来自应用层以下的各个层次的数据包头信息。本文的实现原理是以Libnids和X络开发函数库来完成数据包的捕获。3SMTP数据包的分析与还原3.1SM

3、TP数据包的捕获(1)捕获数据包的流程  本文基于Libnids进行数据包的捕获,主要流程为:  ①获取本地X络接口列表;  ②打开X络接口,将其设置为混杂模式;  ③调用函数nidsinit()进行Libnids的初始化;  ④调用函数voidnids_registertcp(void(*))注册回调函数;  ⑤调用函数nidsrun()循环捕获数据包;  ⑥判断是否是25号端口,如果是,则分析SMTP协议,实现邮件内容重现,否则丢弃数据包;  ⑦释放缓冲区。  在应用程序中,主函数的实现形式为:  (2)获得X络接口列表  本系统

4、调用TP数据。为保证了数据传输的可靠性和完整性,本文利用Libnids的TCP数据流重组功能来解决TCP数据流的乱序问题、重叠问题以及重传问题。借助TCP数据流重组功能能够显示基于TCP协议的任何应用层协议,对数据进行分析并实现TCP连接。结合SMTP的会话过程解析数据包,得到想要的信息。下面是电子邮件的解析过程:  ①调用回调函数void_smtp_protocol_callback(structtcp_stream*ns,void**param)  ②获取客户端和服务器端的连接状态;  ③获取SMTP客户端接收到的数据;  ④获取

5、SMTP服务器接收到的数据;  ⑤分析SMTP协议,从获取的数据中解析邮件内容;  ⑥SMTP客户端和SMTP发送端连接关闭。4结束语  在本文所研究的电子邮件解析的基础上,可以进一步利用Base64的解码功能将经过解析的邮件还原成具体的字符,以实现系统安全性的提升。本系统的开发可以保证X络中受到监听的电子邮件全部处于可控范围内,不会发生漏包的现象,增强了局域X的安全。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。