网络取证原理与实战

本文涉及的产品
云防火墙,500元 1000GB
日志服务 SLS,月写入数据量 50GB 1个月
简介:

网络取证原理与实战

一、分析背景

网络取证技术通过技术手段,提取网络犯罪过程中在多个数据源遗留下来的日志等电子证据,形成证据链,根据证据链对网络犯罪行为进行调查、分析、识别,是解决网络安全问题的有效途径之一。目前,传统的计算机取证模型和方法比较成熟,而应用于大数据时代则需要OSSIM等集成分析平台对海量数据尽心网络取证分析。

二、取证分析特点

网络取证不同于传统的计算机取证,主要侧重于对网络设施、网络数据流以及使用网络服务的电子终端中网络数据的检测、整理、收集与分析,主要针对攻击网络服务(Web服务等)的网络犯罪。计算机取证属于典型的事后取证,当事件发生后,才会对相关的计算机或电子设备有针对性的进行调查取证工作。而网络取证技术则属于事前或事件发生中的取证,在入侵行为发生前,网络取证技术可以监测、评估异常的数据流与非法访问;由于网络取证中的电子证据具有多样性、易破坏性等特点,网络取证过程中需要考虑一下问题:

(1)按照一定的计划与步骤及时采集证据,防止电子证据的更改或破坏。网络取证针对的是网络多个数据源中的电子数据,可以被新数据覆盖或影响,极易随着网络环境的变更或者人为破坏等因素发生改变,这就要求取证人员迅速按照数据源的稳定性从弱到强的顺序进行取证。

(2)不要在要被取证的网络或磁盘上直接进行数据采集。根据诺卡德交换原理,当两个对象接触时,物质就会在这两个对象之间产生交换或传送。取证人员与被取证设备的交互(如网络连接的建立)越多、越频繁,系统发生更改的概率越高,电子证据被更改或覆盖的几率越大。这就要求在进行取证时不要随意更改目标机器或者目标网络环境,做好相关的备份

工作。

(3)使用的取证工具必须得到规范认证。网络取证可以借助OSSIM这种安全分析平台。

由于业内水平不一且没有统一的行业标准,对取证结果的可信性产生了一定的影响。这就要求取证人员使用规范的取证工具。四处在网上下载的小工具是没有说服力的。

    网络取证的重点是证据链的生成,其过程一般都是层次性的或基于对象的,一般可分为证据的确定、收集、保护、分析和报告等阶段,每个阶段完成后都会为下一个阶段提供信息,下一个阶段得到的结果又为前一个阶段的取证提供佐证。网络取证的每一个阶段都是相互联系的,这就需要这些信息相互关联,主要由关联分析引擎实现。

三、网络证据的数据源

网络取证的对象是可能记录了网络犯罪过程中遗留下来的数据的多个网络数据源。人们不管是使用Web 服务、云服务或社交网络服务,都需要包含服务提供端(如云服务器)、客户端(PC、手机等智能终端设备)以及网络数据流。

在网络取证证据的提取的过程中,首要的问题就是确定捕获什么样的数据。按照计算机取证的方法,为了准确地构造证据链,需要捕获网络环境中所有的数据(通过SPAN实现)。

四、网络证据分析

网络取证中证据链的开端是被入侵网站记录的非法访问数据。由于针对网络服务的犯罪往往是以窃取网络服务管理员的权限为突破口的,因此,进行网络取证工作时,首先就是针对用户权限以及用户访问点的调查。

取证者在可以进入程序管理模块调查用户账户的可疑记录,例如是否有管理员账户是用万能密码登陆的,后台是否有错误的管理账户登录记录以及可疑的文件记录,是否有用户加载了XSS 跨站session 脚本等异常脚本,进行边界数据监测如文件的上传与下载等用户活动。在进行证据收集的过程中,分析电子证据体现的可疑行为,从而推断犯罪者的攻击方式与信息,以作为下一步的取证活动的指导。

发现有可疑行为的用户记录后,收集该用户访问点的所有访问记录,包括认证用户的权限与对应的会话管理等,记录该用户的所有会话ID。对于可疑的行为记录,以截图、录屏、存储等方式将证据固化到取证设备中,并使用Hash函数对数据进行计算得到信息摘要并保存在基准数据库中。在证据分析之前,对要分析的证据再做一次Hash 计算,比较两者的结果,如果相同则说明数据完整性未被破坏。分析并对应用户与会话ID 之后,则以其作为指示信息收集网络服务器及应用服务器日志中有关该用户及其所有的会话信息记录。

如果后台应用管理模块中的可疑已经被攻击者删除而无法取得可疑会话信息时,则以收集与分析可疑访问的日志作为取证主体。可疑的访问包括记录的访问频率异常、错误信息处理记录、日志审核报告、网站重定向、管理员监控警报、收集站点信息的爬虫记录以及表单隐藏域等。

收集分析日志信息的最大难点在于如何在网站庞大的数据中检索出需要的信息,网络取证技术主要采用日志精简与人工忽略两种思想进行筛选。日志精简主要是根据例如犯罪发生的时间等犯罪信息作为筛选信息进行日志筛选。另外,可以有针对性的查找特定的攻击手段

留下的痕迹。当攻击时间前后公布了某一系统漏洞或者在当时某种攻击手法正在流行时,用这种针对性比较强的调查手段会取得更好的效果。

针对网站日志的分析是Web 取证在网站服务器端的主要应用,除此之外,取证者还可以应用其他技术作为辅助手段协助完成证据链。

五、针对网络数据流的取证

网络取证需要监测网络环境信息与网络流,进行数据包的捕获与分析。网络环境的相关信息主要依靠OSSIM系统中的IDS等进行获取。这一系列的工具可以用来进行网络信息收集与网络安全监测、IP/MAC 地址的分析与定位、监测TCP/UDP 端口与DHCP 列表、SMTP 活动记录等。在进行网络包捕获方面,使用的技术包括基于Libpcap 库、PF_RING 接口、直接使用系统调用等多种。

在被捕获的网络流中,网络包会按照其在网络上传输的顺序显示,相关网络取证工具可以对这些包进行重组,即将这些包组织成两个网络连接点之间的传输层连接。虽然很多取证工具可以对未重组的原始数据进行分析,但是这样会造成非标准端口协议的丢失以及无法应对数据编码与加密传输干扰的问题。

网络取证中的相关性分析研究主要因为网络攻击行为往往是分布、多变的,因此对结果的认定需要将各个取证设施和取证手法得到的数据结合起来进行关联分析以了解其中的相关性以及对结果产生的因果关系和相互确证,才可以重构过程。

 对于这种情况完全由人工分析很显然不太现实,所以我们可以利用开源OSSIM平台得以实现。这样你面对的是多纬度以及大视角的海量数据分析, 采用多数据纬度关联分析,例如如果防火墙检测到非正常业务逻辑的文件上传同时主机Hids 检测到非正常业务CGI 生成,很大可能是攻击者在利用文件上传漏洞上传可疑Webshell(由Snort负责分析) 。以上述检测规则作为给定规则,构建规则模式,形成规则模式集,继而分析证据集。

六、取证案例

为了让大家能够理解各种网络取证方法,在10多年Unix/Linux运维经验中笔者出版《Unix/Linux网络日志分析与流量监控》一书中,例举了二十一个常见网络故障,每个案例完整地介绍了故障的背景、发生、发展,以及最终的故障排除过程。其目的在于维护网络安全,通过开源工具的灵活运用,来解决运维实战工作中的各种复杂的故障。

精彩案例如下:

  • 案例一:闪现Segmentation Fault为哪般

  • 案例二:谁动了我的胶片

  • 案例三:邂逅DNS故障

  • 案例四:网站遭遇DoS攻击

  • 本案例描述了某网站受到拒绝服务攻击后,管理员小杨对比防火墙正常/异常状态下的日志,并配合已有的流量监控系统数据,调查经过伪装的IP地址,通过多种手段对DDoS攻击进行积极防御的过程。

  • 案例五:“太囧”防火墙

  • 管理员小杰在一次巡检中发现了防火墙失效,随着深入调查发现防火墙的可用空间竟然为零。通过大量路由器和防火墙日志对比,得出结论:这是攻击者对其开展的一次网络攻击所致。小杰管理的网络到底遭受了什么样的攻击,这种攻击又是如何得逞的呢?

  • 案例六:围堵Solaris后门

  • 管理员张利发现UNIX系统中同时出现了多个inetd进程,这引起了他的警觉,在随后的调查取证中又发现了大量登录失败的日志记录,系统中出现了什么异常情况呢?

  • 案例七:遭遇溢出攻击

  • 案例八:真假root账号

  • 案例九:为rootkit把脉

  • 案例十:当网页遭遇篡改之后

  • 案例十一:UNIX下捉虫记

  • 案例十二:泄露的裁员名单

  • 案例十三:后台数据库遭遇SQL注入

  • 案例十四:大意的程序员之SQL注入

  • 案例十五:修补SSH服务器漏洞

  • 案例十六:无辜的“跳板”

  • 案例十七:IDS系统遭遇IP碎片攻击

  • 案例十八:智取不速之客

  • 案例十九:无线网遭受的攻击

  • 案例二十:无线会场的“不速之客”

  • 案例二十一:“神秘”的加密指纹

由于篇幅所限就不一一详述,各位读者可以到新华书店和图书馆获取该书详情。

七、后记

目前,网络取证技术还没有统一、比较完备的网络取证流程,这相应的造成了没有统一的取证工具以及相应的评价指标。但笔者通过多年研究开发和应用OSSIM系统发现,该系统的确可以解决目前网络安全取证环节遇到的一些问题。

 


 本文转自 李晨光 51CTO博客,原文链接:http://blog.51cto.com/chenguang/1660017,如需转载请自行联系原作者

相关文章
|
3月前
|
运维 Kubernetes 前端开发
如何用 eBPF 实现 Kubernetes 网络可观测性?实战指南
本文深入探讨了Kubernetes网络观测的挑战与eBPF技术的应用。首先分析了传统工具在数据碎片化、上下文缺失和性能瓶颈上的局限性,接着阐述了eBPF通过零拷贝观测、全链路关联和动态过滤等特性带来的优势。文章进一步解析了eBPF观测架构的设计与实现,包括关键数据结构、内核探针部署及生产环境拓扑。实战部分展示了如何构建全栈观测系统,并结合NetworkPolicy验证、跨节点流量分析等高级场景,提供具体代码示例。最后,通过典型案例分析和性能数据对比,验证了eBPF方案的有效性,并展望了未来演进方向,如智能诊断系统与Wasm集成。
111 0
|
5月前
|
机器学习/深度学习 存储 算法
NoProp:无需反向传播,基于去噪原理的非全局梯度传播神经网络训练,可大幅降低内存消耗
反向传播算法虽是深度学习基石,但面临内存消耗大和并行扩展受限的问题。近期,牛津大学等机构提出NoProp方法,通过扩散模型概念,将训练重塑为分层去噪任务,无需全局前向或反向传播。NoProp包含三种变体(DT、CT、FM),具备低内存占用与高效训练优势,在CIFAR-10等数据集上达到与传统方法相当的性能。其层间解耦特性支持分布式并行训练,为无梯度深度学习提供了新方向。
206 1
NoProp:无需反向传播,基于去噪原理的非全局梯度传播神经网络训练,可大幅降低内存消耗
|
4月前
|
监控 应用服务中间件 Linux
掌握并发模型:深度揭露网络IO复用并发模型的原理。
总结,网络 I/O 复用并发模型通过实现非阻塞 I/O、引入 I/O 复用技术如 select、poll 和 epoll,以及采用 Reactor 模式等技巧,为多任务并发提供了有效的解决方案。这样的模型有效提高了系统资源利用率,以及保证了并发任务的高效执行。在现实中,这种模型在许多网络应用程序和分布式系统中都取得了很好的应用成果。
127 35
|
3月前
|
机器学习/深度学习 移动开发 供应链
基于时间图神经网络多的产品需求预测:跨序列依赖性建模实战指南
本文展示了如何通过学习稀疏影响图、应用图卷积融合邻居节点信息,并结合时间卷积捕获演化模式的完整技术路径,深入分析每个步骤的机制原理和数学基础。
108 1
|
4月前
|
机器学习/深度学习 算法 测试技术
图神经网络在信息检索重排序中的应用:原理、架构与Python代码解析
本文探讨了基于图的重排序方法在信息检索领域的应用与前景。传统两阶段检索架构中,初始检索速度快但结果可能含噪声,重排序阶段通过强大语言模型提升精度,但仍面临复杂需求挑战
127 0
图神经网络在信息检索重排序中的应用:原理、架构与Python代码解析
|
4月前
|
JSON 缓存 程序员
玩转HarmonyOS NEXT网络请求:从新手到高手的实战秘籍
本文以通俗易懂的方式讲解了HarmonyOS网络请求的核心知识,从基础概念到实战技巧,再到进阶优化,帮助开发者快速上手。通过“点外卖”的类比,形象解释了HTTP请求方法(如GET、POST)和JSON数据格式的作用。同时,提供了封装工具类的示例代码,简化重复操作,并分享了常见问题的解决方法(如权限配置、参数格式、内存泄漏等)。最后,还探讨了如何通过拦截器、缓存机制和重试机制提升请求功能。无论你是新手还是进阶开发者,都能从中受益,快动手实现一个新闻App试试吧!
231 5
|
3月前
|
机器学习/深度学习
解决神经网络输出尺寸过小的实战方案
在CIFAR10分类模型训练中,因网络结构设计缺陷导致“RuntimeError: Given input size: (256x1x1). Calculated output size: (256x0x0)”错误。核心问题是六层卷积后接步长为2的池化层,使特征图尺寸过度缩小至归零。解决方案包括调整池化参数(如将部分步长改为1)和优化网络结构(采用“卷积-卷积-池化”模块化设计)。两种方案均可消除报错,推荐方案二以平衡特征表达与计算效率。
|
6月前
|
机器学习/深度学习 数据可视化 PyTorch
深入解析图神经网络注意力机制:数学原理与可视化实现
本文深入解析了图神经网络(GNNs)中自注意力机制的内部运作原理,通过可视化和数学推导揭示其工作机制。文章采用“位置-转移图”概念框架,并使用NumPy实现代码示例,逐步拆解自注意力层的计算过程。文中详细展示了从节点特征矩阵、邻接矩阵到生成注意力权重的具体步骤,并通过四个类(GAL1至GAL4)模拟了整个计算流程。最终,结合实际PyTorch Geometric库中的代码,对比分析了核心逻辑,为理解GNN自注意力机制提供了清晰的学习路径。
473 7
深入解析图神经网络注意力机制:数学原理与可视化实现
|
6月前
|
JSON 前端开发 JavaScript
HarmonyOS NEXT 实战系列10-网络通信
本文介绍了网络通信相关知识,包括HTTP协议的工作原理、鸿蒙系统中HTTP模块的使用方法、Promise异步操作处理机制及async/await语法糖的应用,以及JSON数据格式的语法规则与转换方法。重点讲解了HTTP请求响应流程、鸿蒙开发中的网络权限申请与代码实现、Promise三种状态及创建方式,并通过示例说明异步编程技巧和JSON在数据传递中的应用。
196 10
|
6月前
|
监控 安全 网络协议
Hyper V上网实战:多虚拟机网络环境配置
在Hyper-V环境中配置多虚拟机网络以实现上网功能,需完成以下步骤:1. 确认Hyper-V安装与物理网络连接正常;2. 配置虚拟交换机(外部、内部或专用)以支持不同网络需求;3. 设置虚拟机网络适配器并关联对应虚拟交换机;4. 验证虚拟机网络连接状态;5. 根据场景需求优化多虚拟机网络环境。此外,还需注意网络隔离、性能监控及数据备份等事项,确保网络安全稳定运行。

热门文章

最新文章