CN108900467B - 一种基于Docker的自动化蜜罐搭建及威胁感知的方法 - Google Patents
一种基于Docker的自动化蜜罐搭建及威胁感知的方法 Download PDFInfo
- Publication number
- CN108900467B CN108900467B CN201810546532.3A CN201810546532A CN108900467B CN 108900467 B CN108900467 B CN 108900467B CN 201810546532 A CN201810546532 A CN 201810546532A CN 108900467 B CN108900467 B CN 108900467B
- Authority
- CN
- China
- Prior art keywords
- data
- docker
- honeypot
- key module
- mysql
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1491—Countermeasures against malicious traffic using deception as countermeasure, e.g. honeypots, honeynets, decoys or entrapment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于Docker的自动化蜜罐搭建及威胁感知的方法,包括以下步骤:1)创建并运行数据采集容器;2)使用数据处理算法对原始数据进行格式化处理;3)对格式化过的数据进行深度模型训练;4)采用NodeJS作为Web后台进行数据可视化;5)采用威胁感知技术对未知流量进行判别。本发明可以自动化的完成数据的采集、数据处理、数据可视化等功能。模型训练部分则需要人为调整参数,使得模型更趋稳定、精确。
Description
技术领域
本发明属于网络安全领域,涉及Docker容器虚拟化技术、蜜罐数据采集技术、深度学习算法、Python自动化处理技术及可视化技术。本发明将以上几种技术结合在一起,实现了蜜罐数据的自动化采集、处理、模型训练及可视化,极大程度上简化了数据的采集及处理过程。
背景技术
在纷繁复杂的网络环境中,用户部署的系统无时无刻不在遭受着网络黑客的恶意攻击,大量的恶意流量占据着用户系统的访问总量,恶意流量本身具有极高的危害性,一条攻击成功的恶意流量就可以对用户系统造成大量的损失。虽然在目前的防御措施中,防火墙等一系列软件确实在一定程度上帮助用户过滤掉恶意的流量,但是,攻击和防御之间本就存在着很大的不平衡性,而黑客的攻击手段、攻击方法日新月异,越来越多新形式的攻击流量出现在网络环境中,现存的防火墙等防护措施只能对已有的恶意流量进行防护,面对新型的攻击流量,依旧束手无策。
蜜罐系统的出现,很大程度上缩短了这种不平衡性,蜜罐系统是一个模拟真实系统,但存在一定漏洞的系统,面向攻击者时,该系统表现出的特性与真实系统并无明显差别;面向用户时,蜜罐系统又是可以定制的,用户可以根据自己的系统类型,部署相似的蜜罐系统。蜜罐系统的部署,可以将攻击者绝大部分的攻击流量流向蜜罐系统中,进而在很大程度上减轻用户主系统的负担。
此外,目前的蜜罐系统大都部署在物理机上,占用资源较多,无法充分利用计算机有限的存储和计算资源,每种类型的蜜罐都会占据一个物理机,造成了蜜罐系统部署成本的进一步提高。
发明内容
本发明的目的是提出一种基于Docker的自动化蜜罐搭建及威胁感知的方法,该方法实现恶意数据的自动化获取,同时将深度学习算法应用到本方法中,实现集实时数据采集、数据可视化、威胁感知为一体的自动化处理方法。本方法基于docker技术,实现蜜罐网络部署的一键式操作,极大的降低了使用的难度,此外,docker的虚拟化技术具有一定的“沙盒”效应,在对恶意数据进行采集的同时,也能很好的保护用户的真实网络系统,减轻用户系统的运行负担。Docker本身资源利用少、CPU利用高、可在一个物理机上多个部署的特性又极大的降低了用户的硬件成本。由于本方法的自动化程度高,部署后可以帮助用户在对自身系统的攻击情况进行监测的同时,对未知的威胁进行检测和预防。
实现本发明目的的具体技术方案是:
一种基于Docker的自动化蜜罐搭建及威胁感知的方法,该方法包括以下步骤:
步骤1:创建并运行数据采集容器;
步骤2:使用数据处理算法对原始数据进行格式化处理;
步骤3:对格式化过的数据进行深度模型训练;
步骤4:采用NodeJS作为Web后台进行数据可视化;
步骤5:采用威胁感知方式对未知流量进行判别。
所述步骤1具体包括:首先判断是否有Docker运行环境,如果有Docker运行环境,则拉取蜜罐镜像到本地,拉取完毕后,自动创建、运行Docker容器;如果没有Docker运行环境,则安装Docker运行环境到系统中,之后进行拉取镜像、创建并运行容器操作。
步骤2所述使用数据处理算法对原始数据进行格式化处理,包括对数据进行自动化字段提取、数据存储和数据标注的操作;首先对原始数据进行判断,判断其数据类型,根据数据类型进行字段提取。字段提取完成后,将数据按照类别存储在数据库中;其中,对原始数据进行格式化处理的内容包括:
关键模块re:该组件用于数据字段的提取。通过编写的正则表达式依次提取出ip、请求方式、url、端口信息;
关键模块mysql.connector:该组件用于将提取后的数据存放在MySQL中;新数据产生后,便会对数据进行解析,解析、存储过程采用关键模块re和关键模块mysql.connector,关键模块re提取出ip、请求方式、url、端口、用户名、密码信息,而后通过采用关键模块 mysql.connector将数据存储到本地数据库中;
所述自动化字段提取操作,调用Linux底层内核程序,对文件进行实时监听,有新文件的产生时,则采用上述正则表达式引擎对数据进行提取;
所述数据存储操作,将提取过的信息按照数据的属性保存至MySQL数据库中;
所述数据标注操作,将数据库中的数据根据用户编写的正则表达式快速进行分类,即异常、正常两类;数据在写入数据库时,默认将数据的标志位—tag设置为1,其中,“1”代表属于恶意数据;“0”代表属于正常数据。
步骤3所述对格式化过的数据进行深度模型训练,按照4:1的比例对数据进行处理,80%的数据进行模型的训练,20%的数据进行模型的测试。
所述步骤4具体为:以NodeJS作为Web后端,通过对可视化界面数据的请求进行响应,调取数据库中的数据,将数据封装成可视化需要的Json数据格式返回给可视化界面进行展示。
所述步骤5具体为:未知流量异常检测通过步骤3训练得到的模型,以未知流量作为输入,对未知流量进行预测,判别出是否为异常流量。
本发明的有益效果:不仅可以自动化的采集恶意数据,也可以在一定程度上分担用户承受的恶意流量,减轻用户系统的运行负担。由于本方法采用Docker部署,消耗的硬件资源少,在一定程度上降低了用户的硬件成本;由于本方法的自动化程度高,部署后可以帮助用户在对自身系统的攻击情况进行监测的同时,对未知的威胁进行预防,从而最大程度的减少因恶意攻击给用户带来的经济损失。
附图说明
图1为本发明的流程图;
图2为本发明创建并运行数据采集容器的流程图;
图3为本发明数据处理算法示意图;
图4为本发明深度学习模型结构图;
图5-8为本发明数据可视化部分的结果图;
图9为本发明对未知流量进行判别的流程图。
具体实施方式
结合以下具体实施例和附图,对本发明作进一步的详细说明。
参阅图1,本发明提供了一种基于Docker的自动化蜜罐搭建及威胁感知的方法,包括以下步骤:
步骤1:创建并运行蜜罐数据采集容器;
步骤2:使用数据处理算法对原始数据进行格式化处理;
步骤3:对格式化过的数据进行深度模型训练;
步骤4:采用NodeJS作为Web后台进行数据可视化;
步骤5:利用步骤3得到的深度模型对未知流量进行判别。
参阅图2,在进行创建并运行数据采集容器步骤时,本发明先判断所要部署的系统中是否有Docker运行环境,如果有运行环境的存在,则开始在线拉取进行数据采集的Docker蜜罐镜像,而后运行该镜像,进而创建并运行蜜罐数据采集容器;如果系统中没有安装Docker 运行环境,则请求获取系统root权限,自动安装Docker运行环境,而后进行镜像拉取、创建并运行数据采集容器。
参阅图3,对原始数据进行格式化处理时,使用了数据处理算法,该算法首先对原始数据进行判断,判断其数据类型,根据数据类型进行字段提取,图中虽然都是字段提取操作,但是具体提取过程需要按照不同类型的数据特征进行,如web蜜罐数据glastopf,提取ip、请求方式、URL、payload等信息;ssh蜜罐数据cowrie,则提取username、password、timestamp、源IP等信息。字段提取完成后,将数据按照类别存储在数据库中。其中,对原始数据进行格式化处理的内容包括:
关键模块re:该组件用于数据字段的提取。通过编写的正则表达式依次提取出ip、请求方式、url、端口等信息,如:
ip:((?:(?:1[0-9][0-9]\.)|(?:2[0-4][0-9]\.)|(?:25[0-5]\.)|(?:[1-9][0-9]\.)|(? :[0-9]\.)){3}(?:(?:1[0-9][0-9])|(?:2[0-4][0-9])|(?:25[0-5])|(?:[1-9][0-9])|(?:[0 -9])))
请求方式:requested(GET|POST)
URL:(?:POST|GET)([^\r\n]*)?on
端口号:on[^\r\n]*?:([^\r\n]*)?
关键模块mysql.connector:该组件用于将提取后的数据存放在MySQL中。新数据产生后,便会对数据进行解析,解析、存储过程采用关键模块re和关键模块mysql.connector,关键模块re提取出ip、请求方式、url、端口、用户名、密码等信息,而后通过采用关键模块 mysql.connector将数据存储到本地数据库中。
参阅图4,为本发明对数据进行深度模型训练时的核心部分。图中标注的部分为原始数据中需要进行训练的参数部分,包括remoteAddress、requestPayload、timestamp以及标注信息(1或0)四个部分,假设此四个部分数据分别对应p1、p2、p3和p4四个输入参数。则进行一次训练的流程为:以参数p1、p2作为第一组输入进行运算,产生的结果与p3结合作为第二组输入进行运算,同样将产生的结果和p4结合作为第三组输入进行运算,至此,便完成了一次训练过程。该过程需要进行多次迭代和参数调整,而后得到模型y。
参阅图5,本发明在数据可视化方面采用Nodejs作为Web后台,Nodejs是一个轻量级的 Web后端语言,可方便处理并发的数据,图5展示了前十个攻击IP的情况,可以分析最活跃的IP有哪些,其中图5的数据内容格式定义如下:
[{
data:[13,10,25,5,15,10,10,5,5,2],
backgroundColor:["red","orange","yellow","green","blue","pink","black", "grey","purple","Teal"],
label:"Dataset"
}]
data部分为一个数组,该数组的数据由后台数据处理程序按照ip对每个IP的攻击次数进行排序,抽取前十个ip极其攻击次数得到。
参阅图6,展示了4月份每天的攻击情况,图6的数据格式定义如下:
[{t:2018-01-11,y:118},
{t:2018-01-12,y:15},
{t:2018-01-13,y:46},
{t:2018-01-14,y:67},
{t:2018-01-15,y:66},
{t:2018-01-16,y:65},
……
{t:2018-04-25,y:47}]
t为横轴,代表时间,y为纵轴,代表某一天的攻击量。t,y对应数据是由后台数据处理程序对格式化的数据以天为单位统计攻击量生成。
参阅图7,展示了本周与上周每天的攻击情况对比,图7的数据格式定义如下:
data部分统计每天受攻击的次数进行,label表示子数据集的代表的意义,labels代表横轴内容,datasets代表纵轴内容。
参阅图8,展示了数据标注部分的可视化结果,该部分结合正则表达式引擎对数据进行快速分类。实现方式如下所示:
标注功能的实现使用NodeJs来实现,正则表达式经过用户输入得到,后端获取正则表达式后对数据进行标注操作,其中0代表正常流量,1代表异常流量,标注操作通过更改数据的标志位来实现快速分类的目的。
参阅图9,为本发明对未知流量进行判别的流程图。当有未知的流量(如图中 f所示)流入时,步骤2会对原始数据进行格式化处理,得到图中e所显示的数据格式,将格式化的数据作为步骤3深度学习模型的输入,经过模型判别后便将正常和异常流量区分开来,其中正常流量继续流通,异常流量则被拦截并存储到异常流量数据库中。
Claims (2)
1.一种基于Docker的自动化蜜罐搭建及威胁感知的方法,其特征在于,该方法包括以下步骤:
步骤1:创建并运行数据采集容器;
步骤2:使用数据处理算法对原始数据进行格式化处理;
步骤3:对格式化过的数据进行深度模型训练;
步骤4:采用NodeJS作为Web后台进行数据可视化;
步骤5:采用威胁感知方式对未知流量进行判别;其中:
所述步骤1具体包括:首先判断是否有Docker运行环境,如果有Docker运行环境,则拉取蜜罐镜像到本地,拉取完毕后,自动创建、运行Docker容器;如果没有Docker运行环境,则安装Docker运行环境到系统中,之后进行拉取镜像、创建并运行容器操作;
步骤2所述使用数据处理算法对原始数据进行格式化处理,包括对数据进行自动化字段提取、数据存储和数据标注的操作;首先对原始数据进行判断,判断其数据类型,根据数据类型进行字段提取;字段提取完成后,将数据按照类别存储在数据库中;其中,对原始数据进行格式化处理的内容包括:
关键模块re:用于数据字段的提取;通过编写的正则表达式依次提取出ip、请求方式、url、端口信息;
关键模块mysql.connector:用于将提取后的数据存放在MySQL中;新数据产生后,便会对数据进行解析,解析、存储过程采用关键模块re和关键模块mysql.connector,关键模块re提取出ip、请求方式、url、端口、用户名、密码信息,而后通过采用关键模块mysql.connector将数据存储到本地数据库中;
所述自动化字段提取操作,调用Linux底层内核程序,对文件进行实时监听,有新文件的产生时,则采用上述正则表达式引擎对数据进行提取;
所述数据存储操作,将提取过的信息按照数据的属性保存至MySQL数据库中;
所述数据标注操作,将数据库中的数据根据用户编写的正则表达式快速进行分类,即异常、正常两类;数据在写入数据库时,默认将数据的标志位—tag设置为1,其中,“1”代表属于恶意数据;“0”代表属于正常数据;
所述步骤4具体为:以NodeJS作为Web后端,通过对可视化界面数据的请求进行响应,调取数据库中的数据,将数据封装成可视化需要的Json数据格式返回给可视化界面进行展示;
所述步骤5具体为:未知流量异常检测通过步骤3训练得到的模型,以未知流量作为输入,对未知流量进行预测,判别出是否为异常流量。
2.根据权利要求1所述的方法,其特征在于,步骤3所述对格式化过的数据进行深度模型训练,按照4:1的比例对数据进行处理,80%的数据进行模型的训练,20%的数据进行模型的测试。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810546532.3A CN108900467B (zh) | 2018-05-31 | 2018-05-31 | 一种基于Docker的自动化蜜罐搭建及威胁感知的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810546532.3A CN108900467B (zh) | 2018-05-31 | 2018-05-31 | 一种基于Docker的自动化蜜罐搭建及威胁感知的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108900467A CN108900467A (zh) | 2018-11-27 |
CN108900467B true CN108900467B (zh) | 2020-12-22 |
Family
ID=64343778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810546532.3A Active CN108900467B (zh) | 2018-05-31 | 2018-05-31 | 一种基于Docker的自动化蜜罐搭建及威胁感知的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108900467B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109885378A (zh) * | 2019-01-04 | 2019-06-14 | 平安科技(深圳)有限公司 | 模型训练方法、装置、计算机设备及计算机可读存储介质 |
CN110035079B (zh) * | 2019-04-10 | 2021-10-29 | 创新先进技术有限公司 | 一种蜜罐生成方法、装置及设备 |
CN110351238A (zh) * | 2019-05-23 | 2019-10-18 | 中国科学院信息工程研究所 | 工控蜜罐系统 |
CN110336811A (zh) * | 2019-06-29 | 2019-10-15 | 上海淇馥信息技术有限公司 | 一种基于蜜罐系统的网络威胁分析方法、装置和电子设备 |
CN111401067B (zh) * | 2020-03-18 | 2023-07-14 | 上海观安信息技术股份有限公司 | 一种蜜罐仿真数据的生成方法及装置 |
CN111400721B (zh) * | 2020-03-24 | 2024-04-12 | 杭州数梦工场科技有限公司 | Api接口检测方法及装置 |
CN113904819A (zh) * | 2021-09-27 | 2022-01-07 | 广西师范大学 | 一种应用于工控网络的安全系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7725937B1 (en) * | 2004-02-09 | 2010-05-25 | Symantec Corporation | Capturing a security breach |
CN106941493A (zh) * | 2017-03-30 | 2017-07-11 | 北京奇艺世纪科技有限公司 | 一种网络安全态势感知结果输出方法及装置 |
CN107707576A (zh) * | 2017-11-28 | 2018-02-16 | 深信服科技股份有限公司 | 一种基于蜜罐技术的网络防御方法及系统 |
CN107786532A (zh) * | 2016-08-31 | 2018-03-09 | 西门子公司 | 工业自动化系统和云连接器中使用虚拟蜜罐的系统和方法 |
CN107872467A (zh) * | 2017-12-26 | 2018-04-03 | 中国联合网络通信集团有限公司 | 基于Serverless架构的蜜罐主动防御方法和蜜罐主动防御系统 |
CN107995179A (zh) * | 2017-11-27 | 2018-05-04 | 深信服科技股份有限公司 | 一种未知威胁感知方法、装置、设备及系统 |
-
2018
- 2018-05-31 CN CN201810546532.3A patent/CN108900467B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7725937B1 (en) * | 2004-02-09 | 2010-05-25 | Symantec Corporation | Capturing a security breach |
CN107786532A (zh) * | 2016-08-31 | 2018-03-09 | 西门子公司 | 工业自动化系统和云连接器中使用虚拟蜜罐的系统和方法 |
CN106941493A (zh) * | 2017-03-30 | 2017-07-11 | 北京奇艺世纪科技有限公司 | 一种网络安全态势感知结果输出方法及装置 |
CN107995179A (zh) * | 2017-11-27 | 2018-05-04 | 深信服科技股份有限公司 | 一种未知威胁感知方法、装置、设备及系统 |
CN107707576A (zh) * | 2017-11-28 | 2018-02-16 | 深信服科技股份有限公司 | 一种基于蜜罐技术的网络防御方法及系统 |
CN107872467A (zh) * | 2017-12-26 | 2018-04-03 | 中国联合网络通信集团有限公司 | 基于Serverless架构的蜜罐主动防御方法和蜜罐主动防御系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108900467A (zh) | 2018-11-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108900467B (zh) | 一种基于Docker的自动化蜜罐搭建及威胁感知的方法 | |
CN102088379B (zh) | 基于沙箱技术的客户端蜜罐网页恶意代码检测方法与装置 | |
CN113645232B (zh) | 一种面向工业互联网的智能化流量监测方法、系统及存储介质 | |
US20130291111A1 (en) | Method and Device for Program Identification Based on Machine Learning | |
CN110493179B (zh) | 基于时间序列的网络安全态势感知系统和方法 | |
WO2017152877A1 (zh) | 网络威胁事件评估方法及装置 | |
CN108123939A (zh) | 恶意行为实时检测方法及装置 | |
RU2757597C1 (ru) | Системы и способы сообщения об инцидентах компьютерной безопасности | |
CN114301712A (zh) | 一种基于图方法的工业互联网告警日志关联分析方法及系统 | |
CN102882748A (zh) | 网络接入检测系统和网络接入检测方法 | |
US20230418943A1 (en) | Method and device for image-based malware detection, and artificial intelligence-based endpoint detection and response system using same | |
CN111277598A (zh) | 一种基于流量的应用攻击识别方法及系统 | |
CN113938401A (zh) | 一种舰艇网络安全可视化系统 | |
Harbola et al. | Improved intrusion detection in DDoS applying feature selection using rank & score of attributes in KDD-99 data set | |
CN108055166A (zh) | 一种嵌套的应用层协议的状态机提取系统及其提取方法 | |
CN108229175B (zh) | 一种多维异构取证信息的关联分析系统及方法 | |
Landauer et al. | A framework for automatic labeling of log datasets from model-driven testbeds for HIDS evaluation | |
CN113645215A (zh) | 异常网络流量数据的检测方法、装置、设备及存储介质 | |
CN113098852A (zh) | 一种日志处理方法及装置 | |
CN112235242A (zh) | 一种c&c信道检测方法及系统 | |
CN117454376A (zh) | 工业互联网数据安全检测响应与溯源方法及装置 | |
CN116208356B (zh) | 一种基于深度学习的虚拟货币挖矿流量检测方法 | |
CN114329450A (zh) | 数据安全处理方法、装置、设备及存储介质 | |
KR102247179B1 (ko) | 이상행위탐지모델의 비지도 학습을 위한 xai 기반 정상학습데이터 생성방법 및 장치 | |
Liu et al. | Interpretable deep learning method for attack detection based on spatial domain attention |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |