您好、欢迎来到现金彩票网!
当前位置:2019年正版全年资料 > 头部 >

电子邮件的邮件头

发布时间:2019-07-31 01:27 来源:未知 编辑:admin

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  邮件头由多项内容构成,其中一部分是由系统自动生成的,如发信人地址、邮件发送的日期与时间,另一部分是由发件人自己输入的。如收信人地址、抄送人地址与邮件主题等。。。

  这一部分内容将详细讨论email头的方方面面。主要为用户架设邮件服务器提供理论基础并为管理员在出现电子邮件垃圾骚扰时提供发现垃圾邮件的真正源头。根据邮件头的知识有助于发现伪造的邮件。对于希望了解邮件是如何在网络中传输的用户同样会有帮助。

  虽然在讨论中尽量有意避免如何伪造一封邮件的讨论,但是在讨论中的内容可能被恶意读者用作创建伪造邮件的基础。因为要在文章中举例说明,因此在文章中有若干虚构的域名和随意分配的IP地址作为示例使用。这些域名和IP都是任意任意选择和伪造的,和Internet上真实的域名和IP没有任何关系。

  这部分包含一个简单的对一个电子邮件生命周期的分析。这对于理解邮件头能为你提供哪些信息是非常重要的背景信息。

  从表面上看来邮件似乎是直接从发送者机器传递到接收者地址,但通常情况下事情并不是这样。一个典型的电子邮件在其生命周期中至少要经过四台计算机。

  这是因为大多数企业或组织都有一个被称为“邮件服务器”专用服务器来处理电子邮件,而这一般并不是用户阅读邮件的计算机。对于ISP来说,用户从家里面的计算机拨号接入ISP网络,这里将用户家中的计算机称为客户机,而将ISP专门处理邮件的计算机称为邮件服务器。当一个用户发送邮件,他一般是在自己的计算机上编辑邮件,然后将邮件发送到ISP的邮件服务器上。客户机就此已经完成了自己的工作,而后面的工作则由ISP的邮件服务器来完成。首先ISP邮件服务器查找接收者指定的邮件服务器的IP地址,然后将邮件发送给该目的服务器。现在邮件则存储在接收者邮件服务器上等待接收者收取。当接收者从接受邮件服务器取得发送给他的邮件到自己的PC机以后,通常该邮件将被删除。

  假设若干个虚构的用户和gt;。demo是263这个ISP的拨号用户。使用outook express这个邮件客户程序收发邮件。lisi是中科院的一个虚构用户,他使用工作站通过单位局域网连接进入互联网。

  如果lisi想给lili发送邮件,他在工作站(假设名字为上编辑邮件,编辑好的信件从工作站发送到中科院的邮件服务器:cn。一旦信件被发送到.cn,以后的信件发送过程就和lisi没有关系了。中科院的邮件服务器发现这是发送给某个用户的信件,则和263的邮件服务器-比如说是mail.263.net-通信,并将邮件传送给它。现在邮件则被存储在mail.263.net 之上直到lili在自己的PC机上拨号连接到263网络察看并收取信件,这时mail.263.net将存储的邮件传送到lili的个人PC机上。

  在这个过程中,邮件头将三次被加到邮件中:在编辑时由邮件客户程序加入;当邮件传输到mail.alpha.com.cn时被mail.alpha.com.cn加入;当从mail.alpha.com.cn传送到mail.263.net时被mail.263.net加入;通常来说客户收取信件时并不添加邮件头。下面我们就仔细看看这些邮件头是如何产生的。

  当lisi的邮件客户程序编辑邮件并将其发送给mail.alpha.com.cn时,邮件内容如下。这些内容都是由邮件编辑程序(outlook express)添加的:

  当mail.263.net收到信件并存储等待lili收取时,邮件内容变为,(新添加的内容是由mail.263.com添加的):

  最后这封信的内容才是lili收取并阅读的内容。下面是对其中内容的详细分析:

  上面的内容表示该邮件是来自于自称是mail.alpha.com.cn的服务器。

  这句话表示该服务器的真实名字的确是mail.alpha.com.cn,也就是说它自称的身份是正确的,其IP地址为124.211.3.78。

  接收邮件的服务器为该邮件赋有ID号LAA20869(通常该号码是邮件服务器内部使用的,但是管理员可以根据该ID号在log文件中查找关于该信件的相关信息,但是通常该号都是没有意义的) 。

  mail.alpha.com.cn给该邮件分配了这个号码来标识它。它和Received头中的SMTP机ESMTP ID号是不一样的。因为该号码是一直伴随整个邮件的。而其它ID则仅仅在特定的邮件服务器上的邮件传输阶段相关联。因此该机器ID号对其它机器来说没有任何意义。有时候Message-ID包含了发送者邮件地址在其中。

  这部分内容相对其它部分来说具有更多原理性内容,主要讨论邮件是如何从一点传输到另外一点的细节。你不需要理解每一句话,但是熟悉这方面的内容有助于在邮件传输出现奇怪现象时弄明白问题所在。由于垃圾电子邮件发送者常常故意制造一些奇怪的情况以掩饰自己的身份,因此能理解这些奇怪的现象对对付这些家伙是非常有用的。

  为了在网络上传输数据,计算机网络协议使用了称为端口的访问入口,你可以将端口看做是一个通道,通过它计算机可以监听网络通信以提供服务。为了同时监听多个通信,计算机需要有使用端口号码标识多个不同的端口以区别这些通信。而和电子邮件传输相关的端口是25。

  让我们重新讨论上面的例子,但是这次我们仅仅关心mail.alpha.com.cn到mail.263.net之间的通信过程。首先mail.zky.edu.cn打开一个到mail.263.net的25号端口的连接,然后通过该连接发送邮件,当然在发送邮件过程中会有一些管理命令交互过程。交互中的命令和相应都或多或少的是可读的。命令是SMTP协议规定的。如果监听两者之间的通信,可能有以下内容:(粗体部分是mail.alpha.com.cn发出的)

  整个传输依赖于五个SMTP核心命令(当然SMTP还有一些其它命令,但是它们并不是用来完成真正的邮件传输):HELO,MAIL FROM,RCPT TO,DATA和QUIT。

  MAIL FROM命令标识开始邮件传输,含义是我有从某人发送来的邮件,该命令后跟的地址就是所谓的“信封地址”(在后面我们将深入讨论),信封from地址不一定是发送者自己的地址。这个明显的安全漏洞是不可避免的(因为接收者并不知道发送者机器上有哪些地址),但是在特定的情况下这又是一个有用处的特色。

  RCPT TO和MAIL FROM是相辅相成的。其指定邮件接收者。通过多个RCPT TO命令一个邮件可以被发送给多个接收者。(在后面的邮件中继部分将解释该特色可能针对某些不安全的系统滥用)。该命令后跟的地址称为envelope to地址。其指定了邮件将被投递给哪些用户,而和信件中的To:指定的地址没有关系。

  DATA命令指示开始实际的邮件内容传输。DATA命令后输入的任何内容都被看做是邮件的一部分。而格式并没有任何限制。以一个英文单词加冒号开始的行一般被邮件程序看做是邮件头。以英文句号符号(.)开始的行被认为是邮件内容结束。

  上面的例子有些过于简单。上面的例子有一个假设前提:两个组织的邮件服务器相互之间能直接访问,而不需要经过代理、防火墙等安全设备。这在当前Internet环境下情况往往是这样的。但由于安全对于某些组织来说非常重要,而且网络或组织可能变得越来越庞大,情况就不那么简单了。对于具有代理型防火墙系统的邮件传输来说,区别就在于在邮件的头中多了一次转发过程的记录,也就是邮件首先从发送者邮件服务器发送到防火墙上,然后再从防火墙发送到目的邮件服务器。

  要理解原因需要对SMTP协议进行一些了解。本质上来讲,传输过程是这样的:linuxaid.com.cn连接unwilling.intermedia.com的SMTP端口。告诉它“请发送这封邮件到。它可能是以最直接的方法来实现:RCPT TO:。到现在为止,unwilling.intermedia.com接管对该邮件的处理。因为它被告知将该信件转发给其他一个域:zky.ac.cn,它就查找对于域名zky.ac.cn的邮件服务器然后将邮件转发给zky.ac.cn。这个过程通常被称作邮件中继(mail relaying)。

  出现邮件中继是由于历史的原因,使用邮件中继是有它的好处的。到八十年代末期,很多网络中的计算机都不是直接通信来传输邮件。而是通过邮件路由来传递邮件,通过邮件路由服务器一步一步地进行邮件传输。这样做是非常麻烦的,发送者往往需要手工指定一封邮件需要经过哪些邮件路由服务器,比如需要从San Francisco发送一封邮件到New York,则需要在信封中添加如下内容:

  如果从邮局工作人员的角度来考虑,这种模型是非常有用的。在Gary的邮局只需要知道如何和临近的邮局Chicago和Elkhart通信,而无需消耗资源计算如何将邮件发送到New York(这时候就很清楚为什么这种模式对于邮件发送者来说非常糟糕,为什么这种方法被抛弃了)。但是这就是邮件被传输的过程。因此服务器具有这样的中继的能力在那时是很重要的。

  而现在中继通常被用作不道德的广告商用来隐藏它们的原始地址,将埋怨转嫁给被用来中继的服务器而不是其所在ISP的技术。同样通过中继可以实现将发送信件的负载转移到中继服务器上,从而实现盗用中继服务器的服务资源。在这里最重要的一点是理解邮件内容是在发送点linuxaid.com.cn被编辑。中间的服务器unwilling.intermedia.com只是参加了中间的传输工作,它并不能对发送者有任何的约束力。

  上面关于SMTP的讨论部分提到了“消息”头和“信封”头的不同之处。这种区别和导致的后果将在这里详细地讨论。

  简单地说,“信封”头实际上是由接收消息的邮件服务器产生的,而不是发送者服务器。按照这个定义,“Received:”头是信封头,而一般来说常常使用envelope From和envelope To来指示它们。

  注意这里少了一个冒号—From而不是From:。也就是说信封头在其后没有冒号。当然这个惯例并不是标准,但是这时一个值得注意的惯例。

  存在信封信息的一个重要结果就是消息From:和To:变得毫无意义。From:头是由发送者提供的,同样To:也是由发送者提供的。因此邮件仅仅基于envelope To来进行转发路由,而不是基于消息To:。

  注意到envelope From的内容和消息From:的内容和消息To:的内容都是发送者指定的,因此他们都是不可靠的。这个例子说明了为什么信封From、消息From:及消息To:在可能是伪造的邮件中是不可靠的,因为它们太容易伪造了。

  在上面的例子中我们已经看到,Received:头提供了详细的消息传输历史记录,因此即使在其他邮件头是被伪造的情况下也可能根据Received:头得到某些关于该信件原始出处和传输过程的结论。这部分将详细探讨某些和异常的重要消息头相关的问题,特别是如何挫败那些常见的伪造技术。

  毫无疑问的是,在Received:头中唯一重要且有价值的伪造防护就是由接收服务器记录的那些信息。前面提到发送者能伪造自己的身份( 通过在HELO命令中报告错误的身份)。幸运的是现代邮件服务器程序都可以检测到这种错误信息并加以修正。

  (后面的其他信息被省略以更加清晰)。注意虽然zky.ac.cn没有明确地说galangal.org不是发送者的真实身份,但是它记录了发送者正确的IP地址。如果某接收者认为消息头中的galangal.org是伪造者伪造的身份,他可以查看IP地址202.99.11.120来得到对应的正确域名是linuxaid.com.cn,而不是galangal.org。也就是说记录发送服务器的IP地址提供了足够的信息来确认可以的伪造行为。

  很多现代邮件程序实际上将根据IP查看对应域名的过程自动化了。(这种查看过程被称为反向DNS解析)。如果mail.alpha.com.cn使用这种软件,则Received:头则变为

  从这里可以清楚地看到伪造行为。这个消息头明确地说linuxaid.com.cn的IP地址是202.99.11.120,但是却宣称自己的身份为galangal.org。这样的信息对于对于验证和追踪伪造信件是非常有用的。(因此,垃圾邮件发送者往往避免使用那些记录发送者地址的邮件服务器进行垃圾邮件转发。有时候它们可以找到不记录发送者服务器,但是现在网络上这样的服务器已经很少了)

  伪造者伪造邮件的另外一个日益常见的技巧是在发送垃圾邮件以前添加伪造的Received:头。这意味着从linuxaid.com.cn发送的假设的邮件的Received:头的内容可能为:

  很明显,最后两行内容完全是毫无疑义的,是由发送者编写并在发送以前附在邮件中的。由于一旦邮件离开linuxaid.com.cn,发送者对邮件完全失去了控制。而且新的Received:头总是出现添加在消息的头部,因此伪造的Received:头总是出现在Received:头列表的尾部。这意味着任何人从头到尾读取Received:头列表,追踪邮件传输历史,都能安全地剔除在第一个伪造头以后的内容。即使Received:头看上去似乎是真实的,但是实际上都是伪造的。

  当然,发送者不一定会用明显的垃圾信息来迷惑你,一个处心积虑的伪造者可能创建如下所示的看似真实的Received:头列表:

  这里泄漏伪造问题的唯一地方是第一个Received:头中的galangal.org的IP地址。如果伪造者这里填写了lemongrass.org和graprao.com 的真实IP地址,则这样的伪造伪造仍然非常难以检测。但是第一个Received:头中的域名和IP的不匹配仍然揭露了消息是伪造的,并且该邮件是有网络中地址为202.99.11.120的服务器注入到网络中。然而大多数邮件头伪造者一般都没有这么狡猾,一般额外添加的Received:头一般都很明显地是伪造的垃圾。

http://infomisa.net/toubu/480.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有