利用性能监控工具实现取证准备
1. 引言
数字取证调查人员常常需要从大量数据集中筛选出恶意活动的证据,如日志文件。然而,由于实时系统的存储限制,日志文件经常被轮转,这可能导致有价值的数据丢失。因此,当检测到事件时,生产系统需要停止运行,直到调查人员收集到相关数据。
性能监控系统通常用于收集系统操作的数据,如CPU、内存和硬盘利用率。可以设置自定义探针和报告功能来扩展传统的性能监控。本文将探讨如何使用监控工具记录数据,以支持数字取证调查。
2. 背景
2.1 性能监控
性能监控工具旨在收集软件系统的数据,以报告性能、正常运行时间和可用性。被监控系统的实时数据用于检测系统问题并找出其根源。一些性能监控工具采用简单网络管理协议(SNMP)来连接服务器、防火墙和网络设备并收集数据。
性能监控工具使用的数据可分为实时数据、历史数据或自定义数据:
- 实时数据:在最新完成的收集周期内收集,提供当前系统状态的信息。
- 历史数据:实时数据在一段时间后被重新格式化并移动到历史数据存档,提供系统性能、正常运行时间和可用性的信息。
- 自定义数据:通常以只读格式存储,并在自定义报告中呈现,性能监控工具通常无法解释这些数据。
2.2 数字取证准备
数字取证科学是从法医学发展而来的一个相对较新的研究领域。它是指系统地收集电子设备的信息,这些信息可在法庭上使用。数字取证准备的目标是最大化环境收集数字取证数据的能力,并最小化取证调查的成本。
2.3 协议
- 轻量级目录访问协议(LDAP):指定了一种访问分布式目录服务的机制。本文使用OpenLDAP作为用户访问网络资源的单点认证。
- 安全外壳协议(SSH):常用于在不安全的网络上实现安全通信。本文中的性能监控工具使用SSH与探针建立通信,确保数据的完整性。
3. 日志文件嗅探
3.1 测试环境
性能监控工具部署在一个用户登录包含多个Web应用程序的Web系统的环境中。这些Web应用程序使用相同的会话信息来授予用户访问服务的权限。测试环境包括五台服务器:主Web服务器、Java应用服务器、认证服务器、内部代理服务器和监控服务器。
| 服务器名称 | 日志文件位置 |
|---|---|
| 主Web服务器 |
1. Web服务器
2. OS |
| Java应用服务器 |
1. Java应用程序
2. Java容器(Tomcat) 3. OS |
| 认证服务器 |
1. 认证应用程序
2. OS |
探针安装在主Web服务器、Java应用服务器和认证服务器上,用于嗅探日志文件中的用户登录活动数据和用户会话数据。
3.2 数据收集
3.2.1 自定义探针
探针可以放置在不同位置,用于监控系统性能、数据库数据和日志文件。探针通常不进行任何处理,而是访问“数据点”并定期读取其值。数据点可以是系统值(标准数据点)或软件生成的数据点(扩展数据点)。
探针捕获的数据值被发送到监听代理,监听代理与性能监控工具之间的通信根据配置的定时事件定期建立。
3.2.2 日志文件探针
探针使用日志文件嗅探应用程序访问各种日志文件。每个日志文件都有自己的嗅探应用程序。当探针被轮询数据时,它会查询相关的日志文件嗅探应用程序。
日志文件探针的操作流程如下:
1. 每个应用程序记录从其日志文件中读取的最后一行。
2. 后续读取从最后读取点后的第一行开始,直到文件末尾。
3. 每行根据日期时间戳、日志文件名和服务器名进行验证。
4. 探针将行作为单个字符串发送到性能监控代理。
5. 监听代理将接收到的字符串返回给性能监控服务器。
6. 性能监控服务器将验证后的日志文件信息存储在只读数据库表中。
graph LR
A[探针] --> B[日志文件嗅探应用程序]
B --> C[记录最后一行]
C --> D[后续读取]
D --> E[验证每行]
E --> F[发送字符串到代理]
F --> G[监听代理]
G --> H[返回字符串到服务器]
H --> I[性能监控服务器]
I --> J[存储到只读表]
4. 使用收集的数据
4.1 收集的数据
- 主Web服务器的Web服务器日志文件存储Web服务器请求和响应,每行包含日期时间戳、请求地址、请求资源、HTTP请求类型和请求结果。
- 认证应用程序日志文件存储用户认证和会话管理数据,每行包含日期时间戳、日志级别、用户名、会话ID和认证过程结果。
| 示例应用程序日志文件数据 | 详情 |
|---|---|
| 30 - Jul - 2011 11:00:00; INFO; s98278178; NULL; Authentication request received | 认证请求收到 |
| 30 - Jul - 2011 11:00:01; INFO; s98278178; tQy1TRvGm53vbJFRyt11JmRnhCNvyYyq81Fy2Zy8vrn8CPTpt3pz; Authentication request successful | 认证请求成功 |
| 30 - Jul - 2011 12:15:29; INFO; s12345678; NULL; Authentication request received | 认证请求收到 |
| 30 - Jul - 2011 12:15:29; INFO; s12345678; NULL; Authentication request failed | 认证请求失败 |
4.2 调查暴力攻击
在日志文件探针部署后,对一个测试账户发起了模拟暴力攻击。通过分析认证应用程序和认证服务器日志文件,发现了可能的暴力攻击证据。具体步骤如下:
1. 在性能监控工具的数据库中搜索包含测试账户ID的认证请求。
2. 将检索到的数据分为两组,分别来自认证应用程序日志文件和认证服务器日志文件。
3. 分析第一组数据,发现从时间戳t0到t1有大量失败的认证请求。
4. 在时间戳t0和t1之间搜索Web服务器日志文件数据,找到发出大量认证资源请求的请求地址。
实验进行了四次,每次攻击从不同位置发起,都能正确确定攻击的起源。
4.3 对用户活动进行分类
通过分析日志文件数据构建用户登录活动的配置文件,以识别异常登录活动。最初选择了一部分用户来创建基线,但发现这不能很好地代表用户活动。因此,为测试组中较小子集的每个用户构建了配置文件。
然而,测试表明用户登录配置文件没有考虑到随时间变化的不同登录活动。因此,要生成用户登录活动配置文件,还需要更多信息来解释登录活动的偶尔变化。
5. 结论
将系统监控和数字取证准备结合在一个系统中是一个很有前景的概念,它有助于系统管理、性能评估和维护,以及取证调查。未来的工作将专注于在其他应用程序中实施该方法,以收集更丰富的取证数据,并支持其他类型的分析,如用户活动分析和入侵检测。
利用性能监控工具实现取证准备
6. 方法优势分析
将系统监控与数字取证准备相结合的方法具有多方面的显著优势,具体如下:
-
成本与复杂性降低
:把系统监控和数字取证功能整合在一个系统里,能够减少管理和维护的成本与复杂度。以往可能需要分别部署和维护系统监控工具与数字取证工具,现在统一为一个系统,减少了人力和物力的投入。
-
增强取证准备能力
:借助性能监控工具收集数据,可在事件发生时迅速获取相关信息,提高了取证的及时性和有效性,增强了整个环境的取证准备能力。
-
数据完整性保障
:在数据收集和存储过程中进行完整性检查和数据验证,同时利用SSH协议确保数据传输的完整性,使得收集到的数据可靠,可用于后续的调查分析。
7. 实际应用场景拓展
除了上述提到的暴力攻击调查和用户活动分类,该方法在其他实际场景中也有广泛的应用前景。
7.1 网络异常流量检测
当网络中出现异常流量时,可通过性能监控工具收集网络设备的日志文件数据。例如,路由器、防火墙的日志文件会记录网络流量的进出情况。按照以下步骤进行分析:
1. 利用日志文件探针收集网络设备日志文件中的流量数据。
2. 在性能监控服务器的只读数据库中存储这些数据。
3. 分析流量数据中的源IP地址、目的IP地址、流量大小、传输时间等信息。
4. 设定正常流量的阈值范围,当检测到超出阈值的流量时,判定为异常流量。
5. 根据异常流量的特征,进一步查找可能的攻击源或异常行为的源头。
7.2 应用程序性能故障排查
对于企业中的关键应用程序,当出现性能故障时,性能监控工具可以发挥重要作用。以Java应用程序为例:
1. 探针收集Java应用服务器和相关容器的日志文件数据,包括应用程序的启动时间、响应时间、错误信息等。
2. 分析日志文件中的数据,找出可能导致性能故障的原因,如内存泄漏、数据库连接问题等。
3. 根据分析结果,对应用程序进行优化和修复,提高其性能和稳定性。
8. 实施建议
要成功实施利用性能监控工具实现取证准备的方法,需要注意以下几点:
-
合理规划探针部署
:根据实际需求和系统架构,合理确定探针的部署位置。例如,在关键服务器、网络设备上部署探针,确保能够全面收集到所需的数据。
-
定期维护和更新
:对性能监控工具、探针以及相关的日志文件嗅探应用程序进行定期维护和更新,保证其正常运行和数据收集的准确性。
-
人员培训
:对相关的技术人员进行培训,使其熟悉性能监控工具的使用和日志文件数据分析方法,能够有效地进行取证调查和问题排查。
9. 对比分析
与传统的数字取证方法相比,利用性能监控工具实现取证准备的方法具有明显的优势,具体对比如下:
| 对比项 | 传统数字取证方法 | 利用性能监控工具的方法 |
| — | — | — |
| 数据收集及时性 | 事件发生后才开始收集数据,可能导致部分关键数据丢失 | 实时收集数据,可在事件发生时迅速获取相关信息 |
| 成本与复杂度 | 需要单独部署和维护取证工具,成本高、复杂度大 | 整合系统监控和数字取证功能,降低成本和复杂度 |
| 数据完整性保障 | 数据收集和传输过程中可能存在数据被篡改的风险 | 通过完整性检查、数据验证和SSH协议保障数据完整性 |
10. 未来发展趋势
随着信息技术的不断发展,利用性能监控工具实现取证准备的方法也将不断演进。未来可能会朝着以下几个方向发展:
-
智能化分析
:引入人工智能和机器学习技术,对收集到的大量日志文件数据进行智能化分析,自动识别异常行为和攻击模式,提高取证调查的效率和准确性。
-
多源数据融合
:不仅局限于日志文件数据,还将融合其他数据源,如网络流量数据、系统性能指标数据等,进行更全面的分析和取证。
-
云平台应用
:借助云平台的强大计算和存储能力,实现大规模数据的高效处理和存储,同时方便不同地区的用户进行数据共享和协同调查。
综上所述,利用性能监控工具实现取证准备是一种具有创新性和实用性的方法,在数字取证领域有着广阔的应用前景和发展空间。通过不断地完善和拓展该方法,能够更好地应对日益复杂的网络安全挑战。
超级会员免费看
50

被折叠的 条评论
为什么被折叠?



