摘要:电子邮件已经成为网民最常使用的网络服务。在很多计算机犯罪案件以及商业和民事纠纷中都涉及电子邮件的调查和取证。检查电子邮件需要注意其传输原理、邮件头和编码的特殊性,取证人员需要掌握相应的取证技巧和技术。 关键词:电子邮件 传输原理 编码 邮件头 取证 1 电子邮件系统组成
电子邮件系统的主要组成部分包括,邮件用户代理MUA(Mail User Agent)就是用户与电子邮件系统的接口,提供用户编辑、发送、接收、阅读和处理电子邮件的功能。Outlook,Foxmail等都是很受欢迎的电子邮件用户代理。邮件传送代理MTA(Mail Transfer Agent)是电子邮件系统的核心,运行于后台,主要将邮件通过网络发送给目的MTA、接收邮件并报告邮件传送的情况(己交付、被拒绝、丢失等)。用户不直接和MTA交互,邮件发送队列和邮箱起缓冲的作用,可以使用户收发邮件与实际的邮件传输分开。 2 电子邮件的传输原理
2.1 电子邮件相关协议 电子邮件是通过SMTP和POP3协议来进行收发的。 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,是为了保证电子邮件的可靠高效的传送。SMTP协议是存储转发协议,是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式意味着它允许邮件通过一系列的服务器发送到最终目的地。SMTP协议属于TCP/IP协议族,将用户收发邮件与Internet的邮件传输区分开。
POP3协议(Post Office Protocol 3)是C/S结构的脱机模型的电子邮件协议,目前已发展到第三版,称POP3。它是规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议。POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件。在POP3协议中有三种状态,认可状态,处理状态和更新状态。当客户机与服务器建立联系时,一旦客户机提供了自己身份并成功确认,即由认可状态转入处理状态,在完成相应的操作后客户机发出quit命令,则进入更新状态,更新之后最后重返认可状态。 2.2 电子邮件的传输过程以及邮件头在传输过程中的变化
下面通过一个例子说明整个邮件传输过程及邮件的信头变化。
假设用户A,Email地址为A-Sender@alpha.com,使用客户端IP地址是
[111.11.1.1]。用户B,Email地址为B-Receiver@beta.com,使用客户端IP地址为[222.22.2.2]。
如果用户A想给B发送邮件,首先A在客户端上编辑邮件,编辑好的邮件通过MUA从客户端发送到其使用的MTA邮件服务器(mail.alpha.com),邮件服务器根据邮件头中的传输地址将邮件传到B使用的MTA邮件服务器(mail.beta.com)并储存在该服务器中,直到B使用自己的客户端与该邮件服务器连接,这时mail.beta.com将存储的邮件传送到B的客户端上。
在这个过程中,邮件头将三次被加到邮件中:在编辑时由邮件客户程序加入;邮件传输到mail.alpha.com时被mail.alpha.com加入;当从mail.alpha.com传送到mail.beta.com时被mail.beta.com加入。通常来说客户收取信件时并不添加邮件头。 当A使用邮件客户程序编辑邮件并将其发送给mail.alpha.com时,邮件头内容如下。这些内容都是由邮件编辑程序添加的: From: A-Sender@alpha.com (A)
To: B-Receiver@beta.com
Date: Tue, Jun 1 2009 15:08:17 GMT
X-Mailer: Microsoft Outlook Express 6.00.2900.2180 Subject: Hi!
当邮件从mail.alpha.com传送到mail.beta.com时,本地MTA就会在邮件的上部加入MTA的名字和当前时间及其他一些技术信息,这些信息被称为Received头。邮件的信头变成:
Received: from A-Sender@alpha.com (A-Sender@alpha.com [111.11.1.1]) by mail.alpha.com (8.8.5) id 004A21;Tue, Jun 1 2009 15:08:21 GMT From: A-Sender@alpha.com (A) To: B-Receiver@beta.com
Date: Tue, Jun 1 2009 15:08:17 GMT
Message-Id: 当收件人MTA服务器mail.beta.com把邮件接收并存储下来,邮件的信头将会再加人一条记录,每个MTA在收到消息时都会在消息的头部添加Received头,这意味着,最后处理邮件的计算机所生成的信息总是处于邮件头的顶部,第一个处理邮件的计算机的信息处于邮件头的底部: Received: from mail.alpha.com (mail.alpha.com [111.11.1.0]) by mail.beta.com (8.8.5/8.7.2) with ESMTP id LAA20869 for < B-Receiver@beta.com >;Tue,Jun 1 2009 15:09:27 GMT Received: from A-Sender@alpha.com (A-Sender@alpha.com [111.11.1.1]) by mail.alpha.com (8.8.5) id 004A21; Tue, Jun 1 2009 15:08:21 GMT From: A-Sender@alpha.com (A) To: B-Receiver@beta.com Date: Tue, Jun 1 2009 15:08:17 GMT Message-Id: 在邮件头的各行中值得一提的是“Message-Id”,这是由发件方的邮件服务器赋给这封邮件的编号。与其他编号不同,这个编号自始至终跟随邮件,这就表示了这封电子邮件的惟一性,在取证过程中也具有特殊意义。 3 电子邮件的编码方式 3.1对电子邮件进行编码的意义 电子邮件一般在传输过程中都要对文件进行编码,因为电子邮件只能传送ASCII码格式的文字信息,ASCII码为7位代码。非ASCII格式的文件在传送中必须经过编码工具编成相应的ASCII 码进行传输,在接收到后接收端再根据编码规则进行解码。由于国内通行的大部分邮件服务器都能够处理GB内码文件,所以可以直接传送文件而不需要编码,但如果要将中文邮件发到国外或在某些不支持8位(非标准ASCII码格式)的某些邮件主机上传输,就会产生乱码。具体地说就是在直接发送中文或非ASCII码的邮件时邮件主机无法处理,便会把文件中每个字符的第八位都滤掉(截去第八位)从而使一些信息和原始信息截然不同,或邮件完全损坏成为乱码无法阅读。这也是目前造成邮件乱码的主要原因之一。 3.2 常用的编码标准 MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展是一个互联网标准,它扩展了电子邮件标准,使其能够支持非ASCII 字符、二进制格式附件等多种格式的邮件消息。 MIME标准现已成为Internet电子邮件的主流。使用这种标准,用户根本不需要知道它是如何编码/解码的,所有工作由电子邮件软件自动完成。由于MIME的方便性,愈来愈多的电子邮件软件采用这种方式。 使用MIME标准进行传送的邮件一般包含MIME头(MIME Header)。 4 电子邮件的取证 电子邮件取证是计算机取证的一个分支,是指按照法律的要求提取电子邮件证据的方法和过程,是运用技术的手段识别一个电子邮件真正的发送者、接收者以及邮件发送的时间和发出地址的过程。电子邮件的证据来源主要包括:用户的邮箱,网络上传输数据的记录,服务器上的记录,用户使用的硬盘等,以及对于使用web方式的发送和接收邮件的网页历史记录、Internet的临时文件、网页缓存以及Cookie等。对于司法鉴定取证工作,涉及最多也是最重要的是用户使用的硬盘和邮件服务器的硬盘,因为在这两个地方往往有整个邮件的完整内容。以下主要讨论对用户使用的硬盘所进行的电子邮件取证。 4.1 电子邮件的存储形式和存储位置 用户使用电子邮件收发邮件的方式主要有两种:一种是使用邮件客户端软件进行收发,目前使用的最为广泛的邮件客户端为Outlook、Outlook Express 6、Foxmail等;一种是通过网页浏览器进行在线的邮件收发。 使用Outlook 进行收发的邮件通常以扩展名为.pst的库文件形式存储,默认的存储路径为“\Documents and Settings\\(User Name)\Local Settings\Application Data\\Microsoft\Outlook”。 使用Outlook 进行收发的邮件通常以扩展名为.dbx的库文件形式存储,默认的存储路径为“\\Documents and Settings\\(User Name)\\Local Settings\Application Data\Identities\( User ID}\\Microsoft\Outlook Express”。 使用Foxmail进行收发的邮件通常以扩展名为.box的库文件形式存储,默认的存储路径为“\\Documents and Settings\\(User Name)\\Local Settings\Application Data\Identities\( User ID}\\Microsoft\Outlook Express”。 使用网页浏览器进行在线收发的邮件以网页历史记录的形式存储。不同的操作系统,其存储位置不同。以Microsoft Windows XP操作系统为例,其网页历史记录的存储路径为“\\Documents and Settings\\(User Name)\\Local Settings\\Temporary Internet Files”。 通常情况下,根据邮件的存储的形式,使用过滤文件扩展名的方法,可初步确认该邮件客户端使用者收发邮件的使用习惯。 4.2 电子邮件的提取 确定了邮件的位置,下一步的工作就是对其进行提取,查看邮件中的具体内容。根据用户使用电子邮件收发方式的不同,电子邮件的提取方法也主要有两类。 一类是存储在邮件客户端软件中邮件的提取。对于主流客户端软件(Outlook、Outlook Express 6、Foxmail)的提取,可采用将用户使用的硬盘搜索到的中存储的库文件,导入取证机中所安装的,与该库文件对应的邮件客户端软件的存储路径下。 在线收发的邮件,由于其特殊性,有些以网页形式存储的邮件在打开后并不能浏览邮件内容。再加上网页历史记录的文件夹中存储的文件量较大,如简单的使用浏览器进行人工查看的方法,工作量大。因而可使用查找目标邮箱的地址作为关键字,对其进行筛选。该方法亦适用于已删除,需要恢复邮件的查找和提取。 4.3 电子邮件头的分析 电子邮件中总会包含发件人身份的有效信息,Received头和Massage-ID,以及在使用MIME编码后进行传送的邮件,Content-Transfer-Encoding是追踪电子邮件的最有用的电子邮件信息。 Received头和Massage-ID通常是由邮件服务器添加的,除非使用转发服务器等高级技术,一般情况下它们是包含了发件人有效的身份信息。 Received头一般包括,邮件的发送时间,邮件发送的IP地址,以及发件方邮件服务器的IP地址。 Massage-ID这是由发件方邮件服务器赋给这封邮件的编号。与其它编号不同,这个编号自始至终跟随邮件,是唯一的,两个不同的电子邮件不会有相同的Massage-ID。有时候Massage-ID包含了发送者邮件地址在其中。 Content-Transfer-Encoding,使用MIME编码后进行传送的邮件所具有的特征信息。其意义在于,对于邮件已删除以及目标邮箱地址未知的情况下,邮件的定位。 4.4 电子邮件的恢复 前文已经提到对于已删除邮件的搜索和定位,通常使用关键字进行数据搜索。搜索到的已删除邮件内容,通常是使用MIME进行编码后的代码,而不能正常显示中文内容。使用乱码查看器来解码。 使用该方法,可有效获取已删除邮件的信息。 5 电子邮件取证所面临的困难 目前越来越多的web邮件(通过浏览器在线收发的邮件)服务商,对用户提供了加密的登录方式(如https),这对于离线的取证工作,无疑增加了很大的难度。取证人员在使用者的硬盘中往往只能够看到用户所使用邮件服务商的网页框架,而无法看到其邮件内容。这也是今后日趋成熟的电子邮件取证技术所需要研究的内容之一。此外,邮件真实性认定的技术,随着邮件发送者使用工具修改邮件头内容,以及使用邮件转发服务器伪造邮件等的出现,也需要进一步的提升。 参考文献: [1]刘彩虹,陆调.Internet E-mail的核心协议研究与实现,计算机工程与应用. [2]杨泽明等.电子邮件取证技术. [3]刘浩阳.电子邮件的调查与研究. [4][美]Warren G Kruse Ⅱ.,计算机取证:应急响应精要. 因篇幅问题不能全部显示,请点此查看更多更全内容