pencat

从明天起,关心粮食和蔬菜。我有一所房子,面朝大海,春暖花开

« 开始房奴生活ZBlog相册插件 1.0 »

SMTP协议实例分析

前言

公司要求追踪EMAIL的到达情况,看客户是否收到信还是被某个路由拦截。打算采用Packet级跟踪。因此抓包分析,看有没可能性完成任务。

环境

客户端 windows2003 outlook2003

SMTP服务器 redhat 9 qmail

涉及的软件和命令

tcpdump 和 wireshark 0.99.5

操作过程

分析全程使用服务器上的网卡监视,用tcpdump -w smtp_packet tcp prot 25将smtp端口的数据存入smtp_packet文件,然后用wireshark分析。

发信人: systemadmin@xxxxxxx.com
收信人: pencat@bigcomic.com
主题: test
内容: test

本地IP: 192.168.2.180
SMTP IP: 192.168.2.5

smtp_tcp_01.jpg

385、386、387 是TCP协议的三次握手,成功之后开始通信,下面是通信流向。

SENDER SMTP
220 xxxx.com ESMTP\r\n
<--------------------------------------------------
EHLO tc4200\r\n
-------------------------------------------------->
250-xxxx.com\r\n
250-PIPELINING\r\n
250
<--------------------------------------------------
MAIL FROM: <systemadmin@xxxx.com>
-------------------------------------------------->
250 ok\r\n
<--------------------------------------------------
RCPT TO: <pencat@bigcomic.com>\r\n
-------------------------------------------------->
250 ok\r\n
<--------------------------------------------------
DATA\r\n
-------------------------------------------------->
354 go ahead\r\n
<--------------------------------------------------
Message Body
-------------------------------------------------->
EOM:
-------------------------------------------------->
250 ok 1191037138 qp 31636\r\n
<--------------------------------------------------
Command: QUIT\r\n
-------------------------------------------------->

通过分析,可以得出结论:采用Packet级的跟踪是无法实现完全跟踪,因为source与destination之间的路由是不透明的, 无法知道在哪个路由除了问题。只能从对方的MAIL SERVER得到一些基本信息,对跟踪毫无帮助,只能另想途径。

  • 相关文章:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表

Powered By Z-Blog 1.8 Devo Build 80201

Copyright © 1998-2007 bigcomic.com All rights reserved.