5.1主机安全日志分析研究
主要功能: 所有主机和主机相关安全事件的全面概览 Elastic 安全能够为网络安全监测团队提供交互式地图、图表、事件表格等等。它支持众多的网络安全解决方案,既包括 Suricata 和 Zeek 等 OSS 技术,也包括来自 Cisco ASA、Palo Alto Networks 和 Check Point 等厂商的设备,还包括诸如 AWS、Azure、GCP 和 Cloudflare 等云服务
5.1.1数据结构
序号 | 字段名 | 说明 |
1 | hostname | 主机名 |
2 | os | 操作系统 |
3 | version | 版本 |
4 | process.name | 进程名称 |
5 | cmd | 上一命令 |
6 | user | 上一用户 |
7 | updatetime | 更新时间 |
8 | agent.name | 代理名称 |
9 | agent.type | 类型 |
其他嵌套字段数据请查看数据库,字段不固定,由采集器定义
5.1.2数据查询
图5-1 主机安全日志数据查询图
5.1.3基本功能实现
1.检查主机:检查主机运行状态;
2.检查来源ip:检查监控主机的IP源;
3.检查不常见进程:检查监控主机的任务线程,对系统不常见的处理线程进行监控提示;
4.检查主机异常:检查监控主机的CPU使用状态,短期内是否CPU占用率异常现状;监控主机的内存短时间内的相对变化;检查主机的进出吞吐量是否出现大峰值变化等参数的异常监控;
- 检查主机事件:针对主机的操作时间以及日志时间进行监控;
6.检查主机风险评估:对主机的IP来源、主机进程信息、书记异常信息和主机事件进行评估。
功能实现如图5-2和5-3所示。
图5-2 主机监控功能图一
图5-2 主机安全监控功能图二
5.2 网络安全监控分析研究
主要功能: 提供关键活动指标以及启用与时间线进行交互的事件表。
通过交互式的可视化和表格呈现终端数据和背景信息。它利用了 Elastic Agent 和 Elastic Beats 提供的数据,以及 CrowdStrike 和 Microsoft Defender for Endpoint 等技术。使用会话视图探索 shell 活动,并使用分析器探索各个流程。
5.2.1数据结构
序号 | 字段名 | 注释 |
1 | ip | ip |
2 | area | 域 |
3 | autosys | 自治系统 |
4 | input | 传入字节 |
5 | output | 传出字节 |
6 | target | 目标ip |
7 | updatetime | 更新事件 |
其他嵌套字段数据请查看数据库,字段不固定,由采集器定义
5.2.2数据查询
图5-4 网络安全信息数据查询图
5.2.3基本功能实现
1. 检查所有来源ip:检查访问IP,记录访问的ip信息;
2. 检查所有网络NDS:对所有的网络NDS信息进行安全检查;
3. 检查网络http:对所有的http协议请求、http链接进行安全检查;
4. 检查网络TLS:对所有的TLS网络进行安全检查;
5. 检查网络异常:对主机的网络信息进行检查,排查异常网络信息。
6. 检查网络事件:对网络访问和请求事件进行检查。
网络安全监控功能实现图如图5-5和5-6所示。
图5-5 网络安全监控功能实现图一
图5-6 网络安全监控功能实现图二
5.3 用户安全分析与研究
主要功能: 用户数据的全面概览,这些数据有助于了解您环境中的身份验证和用户行为。对用户活动的可见性,可帮助从业人员解决内部威胁、帐户接管、特权滥用和相关矢量问题。整个环境范围内的用户数据均支持安全监测,其中用户数据通过精心设计的可视化和表格进行呈现。用户背景信息会在搜索或调查流程中显示,可快速获取进一步的详细信息。
5.3.1数据结构
序号 | 字段名 | 注释 |
1 | name | 用户名 |
2 | hostname | 主机名 |
3 | ip | ip |
4 | events | 事件 |
其他嵌套字段数据请查看数据库,字段不固定,由采集器定义
5.3.2数据查询
用户安全数据查询如图5-7所示。
图5-7 用户安全数据查询
5.3.3基本功能实现
1. 查看主机用户列表:监控统计主机的用户信息;
2. 检查用户身份验证:监控、检查登录访问主机的用户身份信息是否通过身份验证;
3. 检查用户登陆异常:对身份验证失败的用户进行统计;
4. 检查用户安全事件:监控检查用户的行为;
5. 用户风险评估:对用户的身份信息、用户的系统操作和身份安全进行评估。
用户安全分析功能实现如图5-8和5-9所示。
图5-8 用户安全分析功能实现图一
图5-9 用户安全分析功能实现图二
在测试过程中,使用者可以了解到该系统是怎样满足自身的业务需要的,同时,使用者也会根据新的业务流程,对软件进行调整或改善,并采用一些措施确保能够达到业务处理的要求。该测试由软件开发人员和用户共同参与,并利用用户实际的数据进行[12]。
测试包括可靠性测试、安全性测试、数据运行的准确性等。在进行测试时,通常要创建一个仿真帐户集合,把基本的资料录入到计算机中。界面试验主要包括两项工作:界面检测和功能检测,界面检测主要是指系统在使用后能否正常登陆,以及各个功能的使用测试。
6.1 测试基本原则
(1)在进行测试时,除了要正确地进行测试外,还要对一些错误、无效或无效的资料进行测试,以便进行系统的辨识。
(2)在开发一个设计试验案例时,不但要输入所需的资料,而且要根据每个子块来决定所要的输出。
(3)在进行一个系统的试验期间,要注意的是,除了要查看它所完成的工作之外,还有其它的一些工作。
(4)应严格遵守试验程序,以防止随机试验。
(5)我们必须保存全部的试验资料,这样才能进行再试验和增加试验。
6.2 测试目的
在测试过程中可能会发现系统分析和设计的错误,这时便可以记录下来并且修改,这可以使整个系统在今后可以正常运行。当功能通过一系列的测试发现潜在问题,再测试直到解决问题才能使系统更加高效运转。开发人员进行不断测试的目标也是希望在今后运行中避免或减少问题出现,保障系统运行正常。所以系统测试的首要目标是确保测试系统的运行是按预期进行的,否则便于我们建立系统最初计划的功能不符合。其次要验证软件产品和自己写出的系统需求是否相符合或是恰好相反。
再者是每次进行测试时,可以建立系统测试的缺陷记录。最后,系统测试还可以让开发人员对系统的情况更加了解。
6.3 测试方法
软件测试方法有很多,其中主要有黑盒测试,白盒测试,单元测试等。这些测试方法主要的侧重点都不相同,文中主要介绍黑盒测试和白盒测试。,盒子内部的结构是不知道的,但是知道产品已有的功能,而这些功能通过测试来确认。它知道产品的内部结构,然后按照程序的结构测试程序来确认是否达到要求。因此这两种测试方法从测试原理上就完全不一样。所以如果开发人员不考虑系统内部结构,只看功能需求,那么只需要按输入输出的结果判断功能是否满足。本系统主要运用黑盒测试[15]作为系统测试方法。主要的测试流程是,首先对测试用例进行测试功能,然后与系统原本的结果相比较。如果不相同,则功能出现问题;反之,则说明系统功能测试通过。
6.4 系统测试结果
- filebeat日志采集测试,打开kinana日志流式传输界面。如图6-1所示。
图6-1 kinana日志流式传输界面
然后在filebeat采集机使用写入日志,如图6-2所示。
6-2 filebeat采集机使用写入日志图
然后检查kinana是否实时采集到日志如图6-3所示。
图6-3 实时采集日志界面
测试结果:可以看到在系统近乎实时显示了自己写入的日志,功能正常
- auditbeat安全审计测试,使用ssh登陆是一个敏感需要测试的最重要的安全事件,通过多次登陆ssh,在系统中检查是否完整记录ssh登陆事件。打开用户安全 事件 过滤用户登陆如图6-4所示。
图6-4 安全审计测试图
然后ssh登陆主机 两次
ssh root@192.168.3.8
ssh root@192.168.3.8
检查结果。测试结果如图6-5所示。
图6-5 测试结果图
图6-6是事件记录详情查询图。
图6-6 事件记录详情查询图
测试结果表明,可以看到系统及时采集记录了两次ssh登陆事件,可以帮助系统管理员审计系统安全登陆事件。
本次通过分析当前传统网络安全监控日志处理分析方案存在以下不足:网络安全监控中日志数据采集方式单一,主要针对单一日志源,日志数据处理类型以结构化数据为主,非结构化数据处理功能较弱。对数据的实时计算和分析能力较差。数据可视化分析功能较弱。针对上述特点,本文提出了基于elk开源软件设计海量安全监控日志分析系统,elk是logstash、elasticstorage和kibana软件组合的缩写。elk是专门为数据收集、存储和分析而设计的,logstash是数据收集、弹性存储数据存储和搜索引擎的核心软件,通过kibana完成数据可视化分析。利用elk构建日志系统具有成本低、可扩展性好、开发速度快等优点。综上所述,基于elk开源软件构建监控平台网络安全是一个很好的解决方案。
在使用的ELK框架开发设计的网络安全监控系统中,通过两个测试实验,日志写入测试,ssh安全登陆测试,系统实时记录了日志和ssh登陆事件,系统功能架构合理,近乎实时的可以记录监控服务器上面的日志和安全事件。
- 阮斌. 2017 年中国网络安全报告发布[J]. 计算机与网络, 2018, 3(2): 1-7.
- 王小群, 韩志辉, 徐剑. 2018 年我国互联网网络安全态势综述[J]. 保密科学技术, 2019(5):
1-9.
- 姜燕. 计算机取证中日志分析技术综述[J]. 电子设计工程, 2013(06): 62-64.
- 谈恒贵, 王文杰, 李游华. 数据挖掘分类算法综述[J]. 微型机与应用(02): 4-6+9.
- Li X . Design and Implementation of Log Analysis System Based on ELK and Spark
Streaming[J]. Electronic Science & Technology, 2015, 241: 21-27.
Optimization: A Big Data Study of New York City[J]. IEEE Transactions on Intelligent
Transportation Systems, 2019, 20(3):817-829.
2013.
Sampling[J]. Computer, 2018, 51(7):36-43.
- 李星. 基于 Snort 的 DOS 攻击检测系统研究与设计[D]. 北京: 北京邮电大学, 2015.
- Wang J, Huang P, Zhao H, et al. Billion-scale commodity embedding for e-commerce
recommendation in alibaba[C]//Proceedings of the 24th ACM SIGKDD International
Conference on Knowledge Discovery & Data Mining. 2018: 839-848.
and monitoring of mobile communication nodes[J]. chemical physics letters, 2014, 311(311):
485-490.
2018, 379(07): 298-303.
- 黄自立. 基于主机日志的入侵检测研究与实现[D]. 上海: 东华大学, 2017.
- 袁腾飞. 基于数据挖掘的入侵检测系统分析[D]. 成都: 电子科技大学, 2013.
- 李扬. 基于安全日志的攻击模式挖掘技术研究[D]. 北京: 北京邮电大学, 2017.
- 曾恒. 基于 ELK 的网络安全日志管理分析系统的设计与实现[D]. 北京: 北京邮电大学,
2017.
log analysis using ELK[C]//2017 International Conference on Computing Methodologies and
Communication (ICCMC). IEEE, 2017: 566-570.