以太网网络接口卡MAC永久地址与MAC当前地址的检验方法综述
徐炼, 张国臣
1.浙江省杭州市公安局刑科所,310004;2.公安部物证鉴定中心,北京 100038

作者简介:徐 炼(1981—),男,浙江杭州人,助理工程师,硕士,主要从事电子物证检验工作。Tel:15958161981;E-mail:30105530@qq.com

摘要

本文综述了检验以太网网络接口卡MAC永久地址和MAC当前地址的方法,针对不同的检验客体提出了可行的检验方法。并提出了MAC在先检验的发展方向。

关键词: MAC永久地址检验; MAC当前地址检验; 电子证据
中图分类号:DF793.2 文献标志码:A 文章编号:1008-3650(2012)05-0038-03
Examination of permanent MAC address and current MAC address of ethernet NIC
XU Lian, ZHANG Guo-chen
Hangzhou Forensic Science Institute, Hangzhou 310004, china
Abstract

This paper reviewed examination methods of MAC Address,including the MAC permanent address and current address, and introduced feasible ways to conduct examination on various of Ethernet NIC. The author suggested that the more attention should be pay on development of online examination methods of MAC Address at crime scene.

Keyword: MAC permanent address; MAC current address; digital evidence

近年来随着国内电子商务应用的发展, 网络诈骗案件日趋高发。这类案件中以太网网络接口卡(NET INTERFACE CARD, 以下简称“ 网卡” )的MAC永久地址(PERMANENT_ADDRESS)以及其在系统运行中衍生出的MAC当前地址(CURRENT_ADDRESS)是认定罪犯的关键证据, 而目前国内尚没有形成针对此两者检验的标准方法。本文对本检验机构已处理的此类检材的实际检验流程做了梳理, 针对两种实际检验需求(检验MAC永久地址和检验MAC当前地址), 整理出了各自可行的检验方法, 介绍如下。

1 MAC地址相关概念及MAC地址修改
1.1 什么是MAC地址与NDIS规范中的MAC地址

MAC(media access control)地址一般指OSI七层网络模型(Open Systems Interconnect Reference Model)中的数据链路层介质控制子层的地址, 具备理论唯一性(多采用48位二进制码, 且包含厂商信息)[1]。根据适用面广泛的NDIS规范(适用与Windows和多数Linux类平台)[2], 在计算机系统运行中存在两个MAC地址值, 永久地址和当前地址。永久地址也称网卡物理地址, 是指存在于网卡BIOS中的物理地址; 当前地址也称工作地址, 是系统引导时网卡驱动程序所获得的工作MAC地址值。在实际中, 多数操作系统启动时, 网卡驱动会读取一次真实的MAC物理地址, 此后如果没有别的事件介入, 就将此值赋给网卡MAC当前地址值, 并存于网卡的高速缓存中供使用。

1.2 MAC地址区分客户端的原理

由上述可见, 正常情况下, 网卡的MAC当前地址和MAC物理地址是相同的。又由于网卡MAC的物理地址被写在网卡的各种类型的ROM芯片中, 其存在形式一般属于固件, 不易被改变。所以互联网中的服务器常利用客户端程序将客户端的MAC当前地址值(也有极少客户端程序读取的是MAC物理地址)直接或以生成UUID一部分[3]的形式传回后储存, 以此来唯一性区分和识别客户端。此过程的结果也自然成为认定犯罪对象的一种有效手段。

1.3 MAC地址被修改的情况

MAC地址是可以被用户自行修改的。修改MAC地址可以达到很多目的, 此处侧重于研究网络诈骗中出现最多的以欺骗服务器为目的的修改行为。

MAC当前地址和MAC物理地址都可以被修改。其中修改MAC当前地址较容易, 以Windows系列操作系统为例, 系统网络配置接口、注册表、第三方软件, 都可以提供修改功能。而修改MAC当前地址就可以达到欺骗大多数服务器的目的(目前大部分客户端软件只读取MAC当前地址)。所以在实际案例中, MAC当前地址的修改较多见。而修改MAC物理地址的情况不多见。

2 网络接口卡的MAC地址检验方法
2.1 MAC地址检验要求

由于MAC地址的工作原理和修改情况, 产生了两种检验需求:

(1)检验网卡的MAC永久地址。

(2)检验网卡在系统中的MAC当前地址。

针对这两种检验需求, 分别论述其各自的检验方法。

2.2 网卡MAC永久地址检验方法

MAC永久地址检验主要分三个步骤进行(其中第三步不是必须的)。首先搭建一个标准的检验平台(所谓标准就是一个运行时保证MAC当前地址和物理地址一致的系统平台), 包括硬件平台和与之相适合的软件平台。再使用标准的读取程序读取MAC的当前地址或物理地址(在此状态下是同一值)。最后, 通过网络数据包的抓取和分析, 进一步验证得到的结果。

2.2.1 搭建标准检验系统平台 搭建标准检验系统平台的工作就是为各种检材搭建各自适合的工作环境, 使之运行正常, 为进一步检验提供基础。其中根据实际中遇到检材的不同, 分两类搭建方式:

(1)便于拆卸或可以单独被检验的网卡:常见于各种板卡式的具备标准接口的有线/无线网卡。将此类网卡接入一台在硬件上具备网卡接口、系统软件(预置的标准系统平台)可以让网卡正常工作的计算机。再为之配置适合的网卡驱动程序(推荐使用网卡厂商提供的驱动), 测试运行正常即可。

(2)不易拆卸或需和其所在的设备一同被检验的网卡:常见于各种计算机、手机内被集成于主板的有线/无线网卡。针对此类网卡, 方法是替换其系统的存储介质为检验用存储介质(包含预置标准系统平台)。比如检材是笔记本计算机集成网卡, 就替换笔记本计算机原硬盘为预置标准系统的检验专用硬盘。还有一种情况, 如网卡所在的是平板电脑, 手机等一体化电子设备, 此类设备的存储设备物理替换难度高, 如果不能使用外置设备引导, 那就要通过重新刷写系统来达到检验要求(原数据会被覆盖!)。在实际操作中, 可以使用GHOST类镜像工具在检验用存储介质上实现标准预置系统平台的工作, 可提高检验效率。

2.2.2 读取MAC地址 在搭建的检验系统平台中使用统一的软件读取MAC地址值并记录结果。如在Windows系统的平台中(本文默认所有示例均在Windows系统环境下), 常用其自带的CMD.EXE程序配合IPCONFIG.EXE命令来读取设置(典型的脚本命令为 IPCONFIG -ALL), 在检验中要注意记录使用软件工具的版本号, 或使用软件工具本身的哈希值。

2.2.3 验证MAC地址 上两个步骤得出的MAC地址的结果已经可以做为检验报告的结论, 最后这步抓取数据包分析MAC地址的工作不仅可以进一步验证上述结果, 还可以使检验结果更具实际意义。如发现网卡端口是否可以正常工作、查看网络数据包之中的细节异常情况等等, 这些信息可以为侦查提供更有效的线索。其检验方法为:

(1)为之前建立的检验平台设置一个局域网环境, 以及一台网络侦听设备(可以采用一台安装了WIRESHARK等侦听软件的PC)。

(2)通过标准程序激发被检验系统平台, 使其发送数据包(如使用Windows平台中的PING.EXE程序, 使其产生的ICMP的repuest/reply包)。

(3)根据侦听设备中查看接收到的数据包, 分析获取发送方网卡MAC地址, 与之前的结果验证; 判断网卡端口的工作情况。

2.3 检验网卡MAC当前地址

有时MAC固定地址不是侦查人员所关心的, 因为在服务器中收集的MAC地址往往是案犯修改后的MAC地址, 这种情况就要求检验网卡使用的MAC当前地址。MAC当前地址存在于运行中的系统之中, 故检验时要求保留其原系统, 且要求原系统运行正常(至少能完成网络数据包的发送)。检验方法分三步, 首先是在原系统平台的基础上附加必要的设备组成检验系统平台, 第二步是查看检验系统平台运行情况和相关网络设备设置, 第三步是通过网络数据包的抓取和分析, 获取网卡当前MAC地址。

2.3.1 搭建检验系统平台 与检验MAC永久地址的检验系统平台搭建类似, 主要有如下不同:需使用原系统平台, 在有条件的情况下要将原系统克隆成克隆存储件, 用克隆存储件替换原存储件接入原系统启动, 这样可以不破坏原系统数据。某些应用环境下可以使用仿真系统直接接入原软件系统检验, 将提高工作效率。

2.3.2 查看检验系统平台运行情况和相关网络设备设置 (1)启动系统平台, 在启动正常的情况下, 可以继续检验, 如果无法启动, 则终止检验。

(2)系统平台正常启动后, 查看其运行环境, 以及有无明显修改MAC的设置和软件(病毒)。如果没有, 可以转入第三步检验。如果有, 需要记录其各自设置或修改MAC地址的值, 在有条件的情况下, 进一步使用第三方软件(标准读取软件)读取该系统当前MAC地址, 记录结果作为参考, 随后转入第三步检验。

2.3.3 抓取和分析网络数据包, 获取网卡当前MAC地址 此步骤与通过分析网络数据包来检验MAC永久地址的方法类似, 不过遇到的情况更复杂一些:需侦听一段时间(时间长度视实际情况而定), 排除发异常数据包的情况(比如存在发送ARP欺骗包的主机)。综合分析以上各布骤的检验记录, 结合检验人员的判断, 作出MAC当前地址的检验结论或者无法鉴定的结论。

3 MAC检验方法评价与未来展望

上述方法是从实际检验中总结出的, 可以归为实验室检验方法。两者分别针对当下两种主要检验需求, 在多种硬件种类上都被证明其准确和有效性。

和电子物证的其它检验方法一样, MAC检验方法更需要新的发展, 特别是网卡MAC地址的现场检验方法的建立。该类方法特点主要体现在检验时效性需求上, 要求做到对处于工作状态的网卡在线检验— — 在没有时间和条件建立检验工作平台的情况下, 依靠某种检验软件在线读取网卡MAC物理地址或当前地址。当然目前尚不存在此类软件, 难点在于不同硬件和操作系统环境下对物理地址的准确读取, 但现实需求已然存在, 笔者认为它应是未来MAC检验方法的重要发展方向。

The authors have declared that no competing interests exist.

参考文献
[1] The institute of electrical and electronics engineers, inc. 802® IEEE stand ard for local and metropolitan area networks: overview and architecture. universal addresses and protocol identifiers [J/OL], 2002. http://standards.ieee.org/. [本文引用:1]
[2] Microsoft and the 3Com corporation. NDIS core functionality: ethernet operational characteristics [EB/OL]. 2011. http://msdn.microsoft.com/. [本文引用:1]
[3] P Leach, M Mealling. A universally unique identifier (UUID) URN namespace[J/OL], 2005. http://www.ietf.org/ [本文引用:1]