这篇文章给大家聊聊关于服务器取证,以及国外的服务器怎么取证对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
一、WEB服务器为什么取不到用户的MAC
起因是某个同事接到了领导安排下来的一个需求,要在一个Web应用(J*a+Tomcat)中,记录用户登录时的IP和MAC,用于安全审计,于是咨询我如何实现。
第一反应是,这个需求本身是不成立的,根据以往的了解,MAC应该是过不了路由器的才对。
以往做开发,都是用engineer的思维:先动手做,遇到问题再解决问题。但这个需求,应当用scientist的思维去思考:首先确定能不能做,然后才是怎么做。
翻查了一些资料,想来证实"为什么WEB服务器,可以获取到客户端的IP,但获取不到MAC",看着看着才发现,这是个挺大的命题,够写一篇BLOG了。
PS:由于个人对这块内容了解的不够彻底,本文很可能会有谬误,请读者先不要太当真,另外希望平台组的同事给予指证。
我所认为的结论应该是这样的:
下面一步步解释一下。
先从HTTP说起。
HTTP是一个应用层的协议,它建立在TCP协议之上。
HTTP请求就是用来发送一段文本。关于这段文本如何组织,第一行写什么,第二行写什么,哪里加一个空行,就是HTTP协议所要规范的内容。
举个的例子,下面是一个简单的HTTP GET请求,有兴趣可以用tel模拟一下。
我们可以看到,HTTP的这段请求中,完全找不到客户端的MAC,甚至连IP都没有描述。
那IP是从哪里取到的呢?接下来我们再深入一点,看下一个内容:Socket
HTTP的客户端和服务端,是通过Socket进行连接的。
Socket是什么呢? Socket是对OSI模型第4层-传输层中的TCP/IP协议的封装。Socket本身并不是协议,而是一个调用接口(API)。Socket和TCP/IP协议没有必然的联系。但通过Socket,我们才能使用TCP/IP协议。应用层不必了解TCP/IP协议细节,通过对Socket接口函数的调用完成数据在IP网络的传输。
Socket包含了网络通信必须的五种信息:连接使用的协议,本*机的IP,本地进程的协议端口,远*机的IP,远地进程的协议端口。
所以,因为有了Socket,客户端和服务端完全不需要了解底层细节,通过调用Socket来实现就可以了。
这也就是为什么服务器端可以获取到客户端的IP的原因,因为Socket中包含了远*机的IP。(当然,通过代理服务器进行访问的除外,这种要依靠HTTP协议的X-Forwarded-For头来确认IP,不在本次的讨论范围中)
那为什么无法获取到客户端的MAC呢?很简单,同理,因为Socket中无法取到MAC。。。
如果继续发问,为什么Socket中都既然都包含IP了,为什么偏偏不包含MAC信息呢?看来我们还要更深入一点,看一下OSI模型吧。
首先祭出这张经典的OSI七层模型图,计算机网络的基石,请先盯着看一会儿,认真复习一下
这里还有一张OSI七层模型与TCP/IP四层模型的对照图
为了方便理解,再放上一张更直观的,每一层对应的数据型式和主要协议的示意图
通过上图大体可以知道:
下面举个栗子,当我们在浏览器中打开一个后,看看OSI各层倒底发生了什么:
这里撇开DNS解析之类东西,只说一下HTTP报文的发送
首先来看一下发送端(浏览器所在的主机)。参照第一张OSI模型图,按照从上向下的顺序来看。应用层数据其实只有那么几行文本,然后往下,每过一层,都要被加上首部/尾部。这个过程就像是一层一层的穿衣服。
HTTP请求文本:
数据发出去后,再看一下数据在网络上的流转。
数据一般要经过*机、路由器等网络设备,层层转发,这些设备所做的事情就像是:脱掉一件或几件衣服,做一些修修补补,然后再重新穿回去。
通过上面这张图,我们就可以理解,MAC在本地网络下的重要作用了。也理解了,本地网络下,是可以查出每个节点的MAC的。
经过路由器后,为了能到达下一跳,数据链路层中的MAC就被篡改了,下面这张图很能说明问题:
最后看一下接收端(WEB服务器所在的主机)。参照第一张OSI模型图,按照从下至上的顺序来看,它要做的事情是:将衣服一件一件全部脱掉,最后WEB服务器就取到了最初的应用层数据。
所以,当一个以太网帧到达目的主机后,其中的MAC早已经不是原来客户端的MAC了,操作系统的Socket自然也无法获取原始的MAC了。
上面已经证明了,WEB服务端,是无法获取客户端的MAC的。
那么,能不能通过一些trick来绕道实现呢?
想了想,大概可以有如下的思路:
那么这个思路可不可行呢?
最后的最后,不禁思考,获取MAC的意义在哪里呢?
如果单纯是为了取证和审计,我想意义是不大的,甚至不如记录IP。
因为:
所以,一般的安全管控要求下,还是只记录IP吧。
二、计算机取证技术论文(2)
计算机取证技术论文篇二
计算机取证技术研究
摘要:随着计算机和网络技术的飞速发展,计算机犯罪和网络安全等问题也越来越突出,也逐渐引起重视。文章对计算机取证的特点、原则和步骤进行了介绍,最后从基于单机和设备、基于网络的两类取证技术进行了深入研究。
关键词:计算机取证数据恢复加密解密蜜罐网络
随着计算机和网络技术的飞速发展,计算机和网络在人类的政治、经济、文化和国防军事中的作用越来越重要,计算机犯罪和网络安全等问题也越来越突出,虽然目前采取了一系列的防护设备和措施,如硬件防火墙、*检测系统、、网络隔离等,并通过授权机制、访问控制机制、日志机制以及数据备份等安全防范措施,但仍然无法保证系统的绝对安全。
计算机取证技术是指运用先进的技术手段,遵照事先定义好的程序及符合法律规范的方式,全面检测计算机软硬件系统,查找、存储、保护、分析其与计算机犯罪相关的证据,并能为*接受的、有足够可信度的电子证据。计算机取证的目的是找出*者,并解释或重现完整*过程。
一、计算机取证的特点
和传统证据一样,电子证据也必须是可信的、准确的、完整的以及令人信服并符合法律规范的,除此之外,电子证据还有如下特点:
1.数字*。电子证据与传统的物证不同,它是无法通过肉眼看见的,必须结合一定的工具。从根本上讲,电子证据的载体都是电子元器件,电子证据本身只是按照特殊顺序组合出来的二进制信息串。
2.脆弱*。计算机数据每时每刻都可能发生改变,系统在运行过程中,数据是不断被刷新和重写的,特别是如果犯罪*具备一定的计算机水平,对计算机的使用痕迹进行不可还原的、破坏*操作后,现场是很难被重现的。另外取证人员在收集电子证据过程中,难免会进行打开文件和程序等操作,而这些操作很可能就会对现场造成原生破坏。
3.多态*。电子证据的多态*是指电子证据可以以多种形态表现,它既可以是打印机缓冲区中的数据,也可以是各种计算机存储介质上的声音、视频、图像和文字,还可以是网络*和传输设备中的历史记录等等,这些不同形态都可能成为被提交的证据类型。*在采纳证据时,不仅要考虑该电子证据的生成过程、采集过程是否可靠,还要保证电子证据未被伪造篡改、替换剪辑过。
4.人机交互*。计算机是通过人来操作的,单靠电子证据本身可能无法还原整个犯罪过程,必须结合人的操作才能形成一个完整的记录,在收集证据、还原现场的过程中,要结合人的思维方式、行为习惯来通盘考虑,有可能达到事半功倍的效果。
二、计算机取证的原则和步骤
(一)计算机取证的主要原则
1.及时*原则。必须尽快收集电子证据,保证其没有受到任何破坏,要求证据的获取具有一定的时效*。
2.确保“证据链”的完整*。也称为证据保全,即在证据被正式提交*时,必须能够说明证据从最初的获取状态到*上出现的状态之间的任何变化,包括证据的移交、保管、拆封、装卸等过程。
3.保全*原则。在允许、可行的情况下,计算机证据最好制作两个以上的拷贝,而原始证据必须专门负责,所存放的位置必须远离强磁、强腐蚀、高温、高压、灰尘、潮湿等恶劣环境,以防止证据被破坏。
4.全程可控原则。整个检查取证的过程都必须受到监督,在证据的移交、保管、拆封和装卸过程中,必须由两人或两人以上共同完成,每一环节都要保证其真实*和不间断*,防止证据被蓄意破坏。
(二)计算机取证的主要步骤
1.现场勘查
勘查主要是要获取物理证据。首先要保护计算机系统,如果发现目标计算机仍在进行网络连接,应该立即断开网络,避免数据被远程破坏。如果目标计算机仍处在开机状态,切不可立即将其电源断开,保持工作状态反而有利于证据的获取,比如在内存缓冲区中可能残留了部分数据,这些数据往往是犯罪*最后遗漏的重要证据。如果需要拆卸或移动设备,必须进行拍照存档,以方便日后对犯罪现场进行还原。
2.获取电子证据
包括静态数据获取和动态数据获取。静态数据包括现存的正常文件、已经删除的文件、隐藏文件以及加密文件等,应最大程度的系统或应用程序使用的临时文件或隐藏文件。动态数据包括计算机寄存器、Cache缓存、路由器表、任务进程、网络连接及其端口等,动态数据的采集必须迅速和谨慎,一不小心就可能被新的操作和文件覆盖替换掉。
3.保护证据完整和原始*
取证过程中应注重采取保护证据的措施,应对提取的各种资料进行复制备份,对提取到的物理设备,如光盘硬盘等存储设备、路由器*机等网络设备、打印机等外围设备,在移动和拆卸过程中必须由专人拍照摄像,再进行封存。对于提取到的电子信息,应当采用MD5、SHA等Hash算法对其进行散列等方式进行完整*保护和校验。上述任何操作都必须由两人以上同时在场并签字确认。
4.结果分析和提交
这是计算机取证的关键和核心。打印对目标计算机系统的全面分析结果,包括所有的相关文件列表和发现的文件数据,然后给出分析结论,具体包括:系统的整体情况,发现的文件结构、数据、作者的信息以及在调查中发现的其他可疑信息等。在做好各种标记和记录后,以证据的形式并按照合法的程序正式提交给司法机关。
三、计算机取证相关技术
计算机取证涉及到的技术非常广泛,几乎涵盖信息安全的各个领域,从证据的获取来源上讲,计算机取证技术可大致分为基于单机和设备的计算机取证技术、基于网络的计算机取证技术两类。
(一)基于单机和设备的取证技术
1.数据恢复技术
数据恢复技术主要是用于将用户删除或格式化的磁盘擦除的电子证据恢复出来。对于删除操作来说,它只是将文件相应的存放位置做了标记,其文件所占的磁盘空间信息在没有新的文件重新写入时仍然存在,普通用户看起来已经没有了,但实际上通过恢复文件标记可以进行数据恢复。对于格式化操作来讲,它只是将文件系统的各种表进行了初始化,并未对数据本身进行实际操作,通过重建分区表和引导信息,是可以恢复已经删除的数据的。实验表明,技术人员可以借助数据恢复工具,把已经覆盖过7次的数据重新还原出来。
2.加密解密技术
通常犯罪*会将相关证据进行加密处理,对取证人员来讲,必须把加密过的数据进行解密,才能使原始信息成为有效的电子证据。计算机取证中使用的密码技术和方法主要有:密码分析技术、密码技术、口令搜索、口令提取及口令恢复技术。
3.数据过滤和数据挖掘技术
计算机取证得到的数据,可能是文本、图片、音频或者视频,这些类型的文件都可能隐藏着犯罪信息,犯罪*可以用隐写的方法把信息嵌入到这些类型的文件中。若果犯罪*同时结合加密技术对信息进行处理,然后再嵌入到文件中,那么想要还原出原始信息将变得非常困难,这就需要开发出更优秀的数据挖掘工具,才能正确过滤出所需的电子证据。
(二)基于网络的取证技术
基于网络的取证技术就是利用网络跟踪定位犯罪*或通过网络通信的数据信息资料获取证据的技术,具体包括以下几种技术:
1.IP和MAC获取和识别技术
利用ping命令,向目标主机发送请求并监听ICMP应答,这样可以判断目标主机是否在线,然后再用其他高级命令来继续深入检查。也可以借助IP扫描工具来获取IP,或者利用DNS的逆向查询方法获取IP,也可以通过互联网服务提供商ISP的支持来获取IP。
MAC属于硬件层面,IP和MAC的转化是通过查找解析协议ARP表来实现的,当然,MAC跟IP一样,也可能被修改,如此前一度横行的“ARP*”*,就是通过修改IP或MAC来达到其目的的。
2.网络IO系统取证技术
也就是网络输入输出系统,使用stat命令来跟踪*,该命令可以获取*计算机所在的域名和MAC。最具代表*的是*检测技术IDS,IDS又分为检测特定事件的和检测模式变化的,它对取证最大帮助是它可以提供日志或记录功能,可以被用来监视和记录犯罪行为。
3.电子邮件取证技术
电子邮件使用简单的应用协议和文本存储转发,头信息包含了发送者和接受者之间的路径,可以通过分析头路径来获取证据,其关键在于必须了解电子邮件协议中的邮件信息的存储位置。对于POP3协议,我们必须访问工作站才能获取头信息;而基于HTTP协议发送的邮件,一般存储在邮件服务器上;而微软操作系统自带的邮件服务通常采用SMTP协议。对于采用SMTP协议的邮件头信息,*往往能轻易在其中插入任何信息,包括伪造的源和目标。跟踪邮件的主要方法是请求ISP的帮助或使用专用的如NetScanTools之类的工具。
4.蜜罐网络取证技术
蜜罐是指虚假的敏感数据,可以是一个网络、一台计算机或者一项后台服务,也可以虚假口令和数据库等。蜜罐网络则是由若干个能收集和*信息的蜜罐组成的网络体系,研究人员借助数据控制、数据捕获和数据采集等操作,对*捕到蜜罐网络中的攻击行为进行控制和分析。蜜罐网络的关键技术包括网络*、攻击捕获、数据控制、攻击分析与特征提取、预警防御技术。目前应用较多是主动蜜罐系统,它可以根据*者的攻击目的提供相应的*服务,拖延*者在蜜罐中的时间,从而获取更多的信息,并采取有针对*的措施,保证系统的安全*。
参考文献:
[1]卢细英.浅析计算机取证技术[J],福建电脑,2008(3).
[2]刘凌.浅谈计算机静态取证与计算机动态取证[J],计算机与现代化,2009(6).
看了“计算机取证技术论文”的人还看:
1.计算机犯罪及取征技术的研究论文
2.安卓手机取证技术论文
3.计算机安全毕业论文
4.计算机安全论文
5.计算机安全论文范文
三、国外的服务器怎么取证
国外的服务器取证通常需要遵循当地的法律程序和程序,以下是需要遵循的一些步骤。
1、了解当地的法律程序,不同国家和地区可能有不同的法律程序和规定,您需要了解当地的法律程序和规定,以便在取证过程中合法合规。
2、申请取证,您需要向当地的*或政府机构申请取证,您可能需要提供相关证据,例如被盗取的文件、病*或其他违法行为的证据。
3、获得法律支持,在某些情况下,您可能需要获得当地的律师支持来协助您完成取证程序,这可以确保您的取证程序合法有效。
4、联系服务器提供商,如果服务器托管在第三方服务器提供商处,您需要联系他们以获取服务器存储的数据,您可能需要提供法律文件,以便服务器提供商可以合法地向您提供数据。
5、处理数据,一旦您获得了服务器存储的数据,您需要处理这些数据以获得您需要的信息,您可能需要使用数字取证工具或专业的数字取证人员来协助您。