CN103297433A - 基于网络数据流的http僵尸网络检测方法及系统 - Google Patents

基于网络数据流的http僵尸网络检测方法及系统 Download PDF

Info

Publication number
CN103297433A
CN103297433A CN2013102066511A CN201310206651A CN103297433A CN 103297433 A CN103297433 A CN 103297433A CN 2013102066511 A CN2013102066511 A CN 2013102066511A CN 201310206651 A CN201310206651 A CN 201310206651A CN 103297433 A CN103297433 A CN 103297433A
Authority
CN
China
Prior art keywords
http
http session
cluster
session
botnet
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.)
Granted
Application number
CN2013102066511A
Other languages
English (en)
Other versions
CN103297433B (zh
Inventor
李可
刘潮歌
崔翔
王帅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN201310206651.1A priority Critical patent/CN103297433B/zh
Publication of CN103297433A publication Critical patent/CN103297433A/zh
Application granted granted Critical
Publication of CN103297433B publication Critical patent/CN103297433B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明提供了一种基于网络数据流、能检测未知HTTP僵尸网络方法。该方法对主机的HTTP通信数据流进行提取,通过X-means聚类方法,结合僵尸网络通信特征相似性判断出僵尸主机并对其进行类型的划分。该方法的优点包括:可检测未知的HTTP僵尸网络的目标,能及时发现指定网络内潜在的僵尸主机;增强了聚类和检测的效率,具有低误报率和漏报率的特性。

Description

基于网络数据流的HTTP僵尸网络检测方法及系统
技术领域
本发明属于网络安全领域,尤其涉及一种HTTP僵尸网络检测方法。
背景技术
近年来,随着计算机的普及以及互联网行业的高速发展,互联网已成为了人们生活中不可缺少的重要组成部分。然而,由于网民普遍缺乏安全意识、计算机操作系统和应用软件包含各种漏洞等,越来越多的计算机已悄然成为了僵尸网络中的“肉鸡”,成为了他人从事窃取隐私、攻击网络资源、非法牟取暴利等违法犯罪活动的棋子。
僵尸网络(Botnet)是一种“通过入侵网络空间内若干非合作用户终端构建的、可被攻击者远程控制的通用计算平台”。其中,“非合作”是指被入侵的用户终端没有感知;“攻击者”指的是对所形成的僵尸网络具有操控权力的控制者(Botmaster);“远程控制”指攻击者可以通过命令与控制(command and control,简写为C&C)信道一对多地控制非合作用户终端。一个被控制的受害用户终端成为僵尸网络的一个节点,可称之为“僵尸主机”,俗称“肉鸡”。僵尸网络的命令与控制协议主要有IRC(InternetRelay Chat)、HTTP、P2P三种类型,近年来越来越多的攻击者选择HTTP协议作为其命令与控制协议。僵尸网络可以控制大量的用户终端,可以获得强大的分布式计算能力和丰富的信息资源储备。利用僵尸网络,攻击者更易于发起分布式拒绝服务攻击(DDoS)、在线身份窃取(Online IdentityTheft)、垃圾邮件(Spam)、木马和间谍软件分发等网络攻击。根据2010年赛门铁克公司发布的互联网安全报告显示,中国已成为了僵尸网络最大的受害国之一。僵尸网络作为攻击者手中最有效的通用攻击平台,已成为当今互联网最大的安全威胁之一。
僵尸网络之所以会有如此大的威胁,主要有以下几点原因:
(1)僵尸网络是从传统蠕虫和木马衍生的一种新的攻击形式。蠕虫具有利用安全漏洞快速传播扩散的优势但却具有不可控性;木马具有对受害者远程控制的能力,但存在感染速度慢、管理规模小和控制方式简单的缺点。僵尸网络是结合了两者优势、弥补了两者不足而形成的产物,危害性更强。
(2)僵尸网络具有高度可控性以及控制逻辑与攻击相分离的特性。僵尸网络中的“肉鸡”通过命令与控制(command and control)信道能被控制者所操纵,能在短时间内对某个特定目标发起大规模攻击(DDos攻击等),具有高度的可控性。此外,僵尸主机上的僵尸程序负责控制逻辑,真正的攻击任务由控制者按需动态分发。这种方法能将完整的威胁实体分割为多个部分,从而既可以为任务分发提供良好的灵活性,又可以提高僵尸网络的生存性。
(3)安全措施往往滞后于所对应的信息新技术的应用,正是这个原因导致许多黑客利用新技术的漏洞来构建僵尸网络的通信信道和控制服务器。比如ZeuS(全球感染了约1300万台主机),亚马逊EC2云被它穿透进而被作为僵尸网络控制服务器;一些缺乏信息安全立法的国家所提供的服务器托管服务也经常被黑客们利用作为僵尸网络的控制服务器。
在僵尸网络问题日益得到人们关注的同时,出现了许多种僵尸网络的检测系统。然而,大多数僵尸网络检测系统主要存在着以下几种问题:
(a)现有的僵尸网络检测方法大多只针对传统IRC僵尸网络(Botnet),对于主流HTTP僵尸网络的检测效果不佳。由于IRC僵尸网络隐蔽性差以及P2P僵尸网络可控性差的特点,HTTP僵尸网络逐渐成为了主流。不同类型的僵尸网络对应的命令与控制协议类型不同,因此针对IRC僵尸网络检测方法往往无法有效检测HTTP僵尸网络的存在,因为HTTP僵尸主机通信数据流容易混在大量正常的HTTP数据包中,难以被检测到。
(b)现有的僵尸网络检测方法效率较低、检测结果不够准确。基于数据流检测方法的核心是聚类算法。聚类算法能根据数据流之间统计和行为的差异性把数据流集合划分为指定数量的簇类,每个簇类中的数据流具有相似性,而类与类之间的数据流则具有较显著的差异。现在的僵尸网络检测系统大多采用K-means聚类算法,其中在第一步随机选取类中心点时,不同的选取结果往往会影响迭代计算时间甚至是聚类结果,这将影响到整个检测结果的准确性。
(c)僵尸网络检测过程过分依赖主机的恶意行为。许多僵尸网络检测系统在判断一台主机是否为僵尸主机时往往把其主机自身的恶意行为(发送垃圾邮件、端口扫描、拒绝服务攻击等)作为重要的依据。这些系统往往无法检测处于“静默”状态(只进行命令与控制通信未进行恶意攻击行为)的“肉鸡”,从而产生了较高的漏报率。
发明内容
因此,本发明的目的在于克服上述现有技术的缺陷,提供一种基于网络数据流、可检测潜在未知HTTP僵尸网络的检测方法。
本发明的目的是通过以下技术方案实现的:
在一个方面,本发明提供了一种基于网络数据流的HTTP僵尸网络检测方法,所述方法包括:
步骤1)以HTTP会话为单位从网络数据流中提取所有HTTP数据包;
步骤2)对各个HTTP会话进行聚类分析,以将不同的HTTP会话按照聚类结果归入相应的簇类;其中用于所述聚类分析的聚类属性包括每个HTTP会话中的数据包平均字节大小、数据包个数;
步骤3)根据下列三个因素中的任意两个或全部来判断HTTP会话的源主机是否为僵尸主机,以及按所述聚类结果划分僵尸网络类型:
(1)HTTP会话首次请求和响应包头域中首行信息;
(2)首次请求和响应包头部包含的敏感字符串;
(3)会话请求是否周期性发送。
上述方法中,在步骤2)中,用于所述聚类分析的聚类属性还可包括每个HTTP会话中首次请求头部内容长度、首次响应头部内容长度。
上述方法中,所述步骤2)可包括:
步骤21)统计每个HTTP会话的所述各个聚类属性值。
步骤22)选取初始的聚类中心点;在选取初始聚类中心点时对聚类属性相同的节点进行过滤,避免聚类属性相同的节点同时作为不同的初始聚类中心点;
步骤23)基于经步骤21)得到的聚类属性值,对各个HTTP会话进行聚类分析,将不同的HTTP会话按照聚类结果归入相应的簇类。
上述方法中,还可包括在步骤2)进行聚类分析的同时,记录每一个HTTP会话中首次请求中Host选项字段对应的IP地址或域名。
上述方法中,还可包括定期地检测所保存的HTTP会话中Host对应的IP地址和/或域名是否跨域频繁变化,如果是,则直接判定该HTTP会话的源IP地址主机为僵尸主机。
上述方法中,所述步骤3)对于还没有进行判定的每个HTTP会话,可根据所述三个因素来判断该HTTP会话的源主机是否为僵尸主机判定该会话的源主机是否是僵尸主机,以及按所述聚类结果划分僵尸网络类型。
上述方法中,所述步骤3)可包括对于HTTP会话执行下列步骤:
步骤31)将HTTP首次请求和响应包头域中首行信息的结构划分为请求方式、路径、参数、参数值四个部分,利用加权最长公共子序列的计算方法来统计将该HTTP会话与属于同一簇类中的各个HTTP会话在每个部分相似值,并得到两个不同HTTP会话间的整体相似值,以及将两两比较结果中最高的相似值作为该HTTP会话在所述因素(1)的判断值;
步骤32)通过将该HTTP会话的首次请求和响应与现有的公知的僵尸网络通信的特征字符串进行匹配,从而基于该HTTP会话首次请求和响应是否包含特征字符串,以及包含多少特征字符串来设定该HTTP会话在所述因素(2)的判断值;
步骤33)基于该HTTP会话周期性发送频次来设定该HTTP会话在所述因素(3)的判断值;
步骤34)所述在三个因素的判断值乘上各个因素所占权重相加即得到了对该HTTP会话的最终判断值;
步骤35)如果所述最终判断值超过预设的阀值,则判定该HTTP会话的源主机为僵尸主机;属同一聚类结果的僵尸主机被判定为同一类僵尸网络主机。
在另一个方面,本发明提供了一种基于网络数据流的HTTP僵尸网络检测系统,所述系统包括:
网络数据过滤模块,用于以HTTP会话为单位从网络数据流中提取所有HTTP数据包;
聚类分析装置,用于对各个HTTP会话进行聚类分析,以将不同的HTTP会话按照聚类结果归入相应的簇类;其中用于所述聚类分析的聚类属性包括每个HTTP会话中的数据包平均字节大小、数据包个数、首次请求头部内容长度、首次响应头部内容长度;
僵尸网络判断装置,用于根据下列三个因素中的任两个或全部来判断HTTP会话的源主机是否为僵尸主机,以及按所述聚类结果划分僵尸网络类型:
(1)HTTP会话首次请求和响应包头域中首行信息;
(2)首次请求和响应包头部包含的敏感字符串;
(3)会话请求是否周期性发送。
上述系统中,用于所述聚类分析的聚类属性还可包括每个HTTP会话中首次请求头部内容长度、首次响应头部内容长度。
上述系统中,所述聚类分析装置还可用于在进行聚类分析的同时,记录每一个HTTP会话中首次请求中Host选项字段对应的IP地址或域名。
上述系统中,还可包括主机分析装置,用于定期地检测所保存的HTTP会话中Host字段对应的IP地址和/或域名是否跨域频繁变化,如果是,则直接判定该HTTP会话的源IP地址主机为僵尸主机。
与现有技术相比,本发明的优点在于:
针对HTTP网络数据流统计特性而非具体通信内容进行聚类划分,检测具有普适性且类型判断准确,而且检测不依赖特定的僵尸主机恶意行为,与数据通信的具体内容无关,可以有效检测各种HTTP僵尸网络,包括检测潜在、未知的HTTP僵尸网络,使得僵尸主机检测的误报率和漏报率低。此外,在进行聚类时,对初始的聚类中心节点的选择上进行了改进,使得聚类计算过程更快,检测效率高。
附图说明
以下参照附图对本发明实施例作进一步说明,其中:
图1为根据本发明实施例的基于网络数据流的HTTP僵尸网络检测方法的流程示意图。
具体实施方式
为了使本发明的目的,技术方案及优点更加清楚明白,以下结合附图通过具体实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1为根据本发明实施例的基于网络数据流的HTTP僵尸网络检测方法的流程图。概括来讲,该方法主要包括:步骤1),以HTTP会话为单位从网络数据流中提取所有HTTP数据包;步骤2),对各个HTTP会话进行聚类分析,以将不同的HTTP会话按照聚类结果归入相应的簇类;步骤3)对于每个HTTP会话进行僵尸网络判定。
参考图1,更具体地,在步骤1,对网络数据流进行过滤,从中提取出所有的HTTP数据包,并以HTTP会话为单位来保存这些HTTP数据,例如可以保存到数据库或任何其他存储装置中。
在步骤2,对各个HTTP会话进行聚类分析,以将不同的HTTP会话按照聚类结果归入相应的簇类。
聚类分析的目的在于尽可能将相同类型的僵尸网络数据聚集在一起。在一个优选的实施例中,可以以每个HTTP会话中的数据包平均字节大小、数据包个数、首次请求头部内容长度、首次响应头部内容长度作为四个聚类属性,来对HTTP会话进行聚类分析。
根据本发明的一个实施例,所述聚类分析包括以下步骤:
(1)统计每个HTTP会话的上述四个聚类属性值。
(2)进行初始化预处理,在选取初始聚类中心点时对聚类属性相同的节点进行过滤,避免聚类属性相同的节点同时作为不同的初始聚类中心点。初始化预处理的目的在于使选取出来的K个初始中心点分布更合理,使下面的聚类过程计算更快捷、聚类结果不会出现空簇。
(3)采用X-means算法进行聚类计算。聚类完毕后把不同的HTTP会话按照聚类结果归入相应的簇类。
在该聚类分析过程中,所处理的数据是上述四个聚类属性值,而非所有数据流和数据包,这样大大减少了系统的计算和存储开销。上述的仅是根据本发明实施例的一种优选的聚类分析方式,在其他实施例中,也可以仅采用每个HTTP会话中的数据包平均字节大小、数据包个数作为聚类属性;或者也可以不包括初始化预处理的步骤;或者也可以采用K-means算法来进行聚类计算。
在步骤3,对于每个HTTP会话,判定该会话的源主机是否是僵尸主机,以及按聚类结果划分僵尸网络类型。
根据属于相同僵尸网络类型的主机的通信具有相似性(例如,包括去往和/或来自同一控制服务器的通信)、僵尸主机会周期性地向控制服务器发送请求询问以及请求头部中URL或某些字段中含有与僵尸主机信息相关的敏感字符串(例如id、version、Mac地址等)等特点。在一个实施例中,以HTTP会话为单位,选取(1)HTTP会话首次请求和响应包头域中首行信息;(2)首次请求和响应包头部包含的敏感字符串;(3)会话请求是否周期性发送这三个方面内容来综合判断HTTP会话的源主机是否为僵尸主机。例如,这三个方面中每个方面的判断值乘上对应的权重得到最终判定值,超过预定阀值则认为该会话的源主机是僵尸主机,并按聚类结果划分僵尸网络类型。下面根据本发明的一个实施例,具体分析如何获得这三个方面的判定值。
(1)对于每个HTTP会话,将HTTP首次请求和响应包头域中首行信息作为判别不同源/目的主机间HTTP通信相似性的依据,将该HTTP会话与属于同一聚类中的其他各个会话进行相似性比较。例如,将HTTP首次请求和响应包头域中首行信息的结构划分为请求方式(GET或POST)、路径、参数、参数值四个部分,利用加权最长公共子序列的计算方法来统计每个部分相似值,并最终得到两个不同会话间的整体相似值(例如,可对各部分相似值进行加权求和),把两两比较结果中最高的相似值作为该HTTP会话在HTTP通信相似性方面的最终判断值。例如,一个聚类中有A、B、C、D四个会话,A与B在(GET或POST)、路径、参数、参数值四个部分相似度判断值依次为20、40、0、0,那么A与B会话整体相似值为60,依此类推,假如A与C、D的整体相似值为20、50,那么在这个类中A与B的整体相似值最高,因此会话A在HTTP通信相似性方面的最终判断值为60。
(2)对于每个HTTP会话,首次请求和响应是否包含敏感字符串是指HTTP会话首次请求和响应头部中是否含有一些僵尸网络通信的特征字符串(比如URL中常包含id、version、Mac地址等内容)。例如,可通过将该HTTP会话的首次请求和响应与现有的公知的僵尸网络通信的特征字符串进行匹配,来判断该HTTP会话首次请求和响应是否包含敏感字符串,以及包含多少敏感字符串来设定该HTTP会话在该方面的判断值。
(3)在会话请求是否周期发送方面,由于许多HTTP僵尸主机具有周期性询问的特性,相同源IP、目的主机的会话之间的时间间隔可能呈现周期性,比如在一定误差范围内,间隔时间可能相同、或拥有相同公约数、或呈倍数关系等,可以作为判断僵尸网络的依据之一。例如,可以该HTTP会话周期性发送频次为依据来设定该HTTP会话在该方面的判断值。
一个HTTP会话会经过“会话首次请求和响应包头域中首行信息”、“首次请求和响应包头部包含的敏感字符串”、“会话请求是否周期发送”三个方面的判断,每个方面会得到一个判断值,三个方面判断值乘上各方面所占权重相加即得到了对该HTTP会话的最终判断值,例如一个HTTP会话在三个方面依次得到100、40、80的判断值,如果权重依次为20%、40%、40%,那么它最终判断值为20+16+32=68。
其中上述三个方面的权重可以根据统计得到的正常数据包和僵尸网络异常数据包的区分度来进行分配。通常“会话请求是否周期发送”和“首次请求和响应包头部包含的敏感字符串”为较强的判断因素,而“HTTP会话首次请求和响应包头域中首行信息”为较弱的判断因素。因此,例如可将权重依次设置为20%、40%、40%。
最后,查看经计算得到的对该HTTP会话的最终判断值是否超过预设的阀值。如果超过,则认为该HTTP会话的源主机是僵尸主机;如果没有超过,则认为是正常用户主机。属同一聚类结果的僵尸主机认为是同一种(类)僵尸网络主机,得到最终检测结果。其中阈值的设定可根据大量数据集中正常数据包和僵尸网络通信异常数据包进行统计对比最终综合得出的。
在又一个实施例中,在进行聚类分析的同时,可以记录每一个HTTP会话中首次请求中Host选项字段的内容(没有就为空),例如可以记录在数据库或任何存储装置中。正常HTTP访问请求中Host选项字段填写的域名解析的IP地址大多是固定或在同一个区域的IP段内变换。而僵尸网络的控制者为了逃避追踪,主机域名使用已知的动态域名,IP地址往往频繁跨域变换或使用一些已知的公用服务器地址。一旦发现有这样可疑的行为即可判定该会话源主机为僵尸主机。因此,可以定期地解析所保存的HTTP会话的Host对应的IP地址。如果发现某Host解析的IP地址跨域频繁变化,则认为该会话的源主机为可疑的僵尸网络服务器。也就是定期查看所检测的HTTP会话中是否存在Host对应的IP有跨域频繁变化的情况,如果有,可以直接判定该HTTP会话的源IP地址主机为僵尸主机。或者也可以通过检测所保存的HTTP会话的Host对应的IP地址或域名是否在僵尸网络黑名单中,来直接判定该HTTP会话的源IP地址主机为僵尸主机。僵尸网络黑名单可来自于各大僵尸网络追踪和恶意样本发布权威网站。
这样,通过对HTTP会话中Host对应的IP或域名的分析被判定为其源IP地址主机为僵尸主机的HTTP会话,就不必再对该HTTP会话执行步骤3)的检测,从而在一定程度上减少了步骤3)所检测的HTTP会话数量,提高了检测的速度和效率。
在本发明的又一个实施例中,提供了一种基于网络数据流的HTTP僵尸网络检测系统,包括网络过滤装置、聚类分析装置、僵尸网络判断装置。其中,网络过滤装置用于对网络数据流进行过滤,从中提取出所有的HTTP数据包,并且还可以用于以HTTP会话为单位将这些HTTP数据保存到数据库或任何其他存储装置中。
聚类分析装置以每个HTTP会话中的数据包平均字节大小、数据包个数、首次请求头部内容长度、首次响应头部内容长度作为四个聚类属性,采用X-means算法进行聚类计算,聚类完毕后把不同的HTTP会话按照聚类结果归入相应的簇类。由于该聚类分析装置将HTTP数据流、HTTP会话首次请求和首次应答数据包作为检测对象并利用HTTP数据包的统计特性来进行聚类分析,从而使该检测系统所处理的数据非所有数据流和数据包,这样大大减少了系统的计算和存储开销。
僵尸网络判断装置,以HTTP会话为单位,选取首次请求/响应包头域中首行信息相似性、首次请求和响应包头部是否包含敏感字符串、会话请求是否周期发送三个方面内容作为判断依据,来判断HTTP会话的源主机是否是僵尸主机。
在又一个实施例中,该检测系统还包括Host(主机)分析装置。该Host分析装置,定期地解析所保存的HTTP会话的Host对应的IP地址。如果发现某Host解析的IP地址跨域频繁变化,则可以直接判断该会话的源主机为可疑的僵尸网络服务器。也就是定期查看所检测的HTTP会话中是否存在Host对应的IP有跨域频繁变化的情况,如果有,可以直接判定源IP地址主机为僵尸主机。僵尸网络判断装置不再对经Host分析装置判定其源IP地址主机为僵尸主机的HTTP会话进行处理或判定。
该检测系统可以被部署在指定网络的网关位置。例如对流经该网关的流入和流出的数据进行旁路后,将旁路的数据送入该检测系统。
为了验证上述检测方法的性能,发明人还在给定的测试集上进行了实验。在该测试集中,包含10105个HTTP会话,其中有4个僵尸主机的HTTP会话,通过采用上文所述的检测方法,可以检测出所有的僵尸主机,误报率仅为0.22%。
在上述本发明具体实施例,针对网络数据流统计特性而非具体通信内容进行聚类划分,检测具有普适性且类型判断准确,而且检测不依赖特定的僵尸主机恶意行为,与数据通信的具体内容无关,可以有效检测各种HTTP僵尸网络,包括检测潜在、未知的HTTP僵尸网络,使得僵尸主机检测的误报率和漏报率低。可以看出,本发明的僵尸网络检测方法不需要任何先验知识可以对任意HTTP僵尸网络进行检测,甚至可以检测出未知HTTP或者通信信道加密的僵尸网络。此外,在聚类分析时,对初始的聚类中心节点的选择上进行了改进,使得聚类计算过程更快,检测效率高。
虽然本发明已经通过优选实施例进行了描述,然而本发明并非局限于这里所描述的实施例,在不脱离本发明范围的情况下还包括所作出的各种改变以及变化。

Claims (11)

1.一种基于网络数据流的HTTP僵尸网络检测方法,所述方法包括:
步骤1)以HTTP会话为单位从网络数据流中提取所有HTTP数据包;
步骤2)对各个HTTP会话进行聚类分析,以将不同的HTTP会话按照聚类结果归入相应的簇类;其中用于所述聚类分析的聚类属性包括每个HTTP会话中的数据包平均字节大小、数据包个数;
步骤3)根据下列三个因素中的任意两个或全部来判断HTTP会话的源主机是否为僵尸主机,以及按所述聚类结果划分僵尸网络类型:
(1)HTTP会话首次请求和响应包头域中首行信息;
(2)首次请求和响应包头部包含的敏感字符串;
(3)会话请求是否周期性发送。
2.根据权利要求1所述的方法,在步骤2)中,用于所述聚类分析的聚类属性还包括每个HTTP会话中首次请求头部内容长度、首次响应头部内容长度。
3.根据权利要求2所述的方法,所述步骤2)包括:
步骤21)统计每个HTTP会话的所述各个聚类属性值。
步骤22)选取初始的聚类中心点;在选取初始聚类中心点时对聚类属性相同的节点进行过滤,避免聚类属性相同的节点同时作为不同的初始聚类中心点;
步骤23)基于经步骤21)得到的聚类属性值,对各个HTTP会话进行聚类分析,将不同的HTTP会话按照聚类结果归入相应的簇类。
4.根据权利要求1、2或3所述的方法,还包括在步骤2)进行聚类分析的同时,记录每一个HTTP会话中首次请求中Host选项字段对应的IP地址或域名。
5.根据权利要求4所述的方法,还包括定期地检测所保存的HTTP会话中Host对应的IP地址和/或域名是否跨域频繁变化,如果是,则直接判定该HTTP会话的源IP地址主机为僵尸主机。
6.根据权利要求5所述的方法,所述步骤3)对于还没有进行判定的每个HTTP会话,根据所述三个因素来判断该HTTP会话的源主机是否为僵尸主机判定该会话的源主机是否是僵尸主机,以及按所述聚类结果划分僵尸网络类型。
7.根据权利要求2所述的方法,所述步骤3)包括对于HTTP会话执行下列步骤:
步骤31)将HTTP首次请求和响应包头域中首行信息的结构划分为请求方式、路径、参数、参数值四个部分,利用加权最长公共子序列的计算方法来统计将该HTTP会话与属于同一簇类中的各个HTTP会话在每个部分相似值,并得到两个不同HTTP会话间的整体相似值,以及将两两比较结果中最高的相似值作为该HTTP会话在所述因素(1)的判断值;
步骤32)通过将该HTTP会话的首次请求和响应与现有的公知的僵尸网络通信的特征字符串进行匹配,从而基于该HTTP会话首次请求和响应是否包含特征字符串,以及包含多少特征字符串来设定该HTTP会话在所述因素(2)的判断值;
步骤33)基于该HTTP会话周期性发送频次来设定该HTTP会话在所述因素(3)的判断值;
步骤34)所述在三个因素的判断值乘上各个因素所占权重相加即得到了对该HTTP会话的最终判断值;
步骤35)如果所述最终判断值超过预设的阀值,则判定该HTTP会话的源主机为僵尸主机;属同一聚类结果的僵尸主机被判定为同一类僵尸网络主机。
8.一种基于网络数据流的HTTP僵尸网络检测系统,所述系统包括:
网络数据过滤模块,用于以HTTP会话为单位从网络数据流中提取所有HTTP数据包;
聚类分析装置,用于对各个HTTP会话进行聚类分析,以将不同的HTTP会话按照聚类结果归入相应的簇类;其中用于所述聚类分析的聚类属性包括每个HTTP会话中的数据包平均字节大小、数据包个数、首次请求头部内容长度、首次响应头部内容长度;
僵尸网络判断装置,用于根据下列三个因素中的任两个或全部来判断HTTP会话的源主机是否为僵尸主机,以及按所述聚类结果划分僵尸网络类型:
(1)HTTP会话首次请求和响应包头域中首行信息;
(2)首次请求和响应包头部包含的敏感字符串;
(3)会话请求是否周期性发送。
9.根据权利要求8所述的系统,其中,用于所述聚类分析的聚类属性还包括每个HTTP会话中首次请求头部内容长度、首次响应头部内容长度。
10.根据权利要求9所述的系统,所述聚类分析装置还用于在进行聚类分析的同时,记录每一个HTTP会话中首次请求中Host选项字段对应的IP地址或域名。
11.根据权利要求10所述的系统,还包括主机分析装置,用于定期地检测所保存的HTTP会话中Host字段对应的IP地址和/或域名是否跨域频繁变化,如果是,则直接判定该HTTP会话的源IP地址主机为僵尸主机。
CN201310206651.1A 2013-05-29 2013-05-29 基于网络数据流的http僵尸网络检测方法及系统 Active CN103297433B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310206651.1A CN103297433B (zh) 2013-05-29 2013-05-29 基于网络数据流的http僵尸网络检测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310206651.1A CN103297433B (zh) 2013-05-29 2013-05-29 基于网络数据流的http僵尸网络检测方法及系统

Publications (2)

Publication Number Publication Date
CN103297433A true CN103297433A (zh) 2013-09-11
CN103297433B CN103297433B (zh) 2016-03-30

Family

ID=49097753

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310206651.1A Active CN103297433B (zh) 2013-05-29 2013-05-29 基于网络数据流的http僵尸网络检测方法及系统

Country Status (1)

Country Link
CN (1) CN103297433B (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103746982A (zh) * 2013-12-30 2014-04-23 中国科学院计算技术研究所 一种http网络特征码自动生成方法及其系统
CN104683346A (zh) * 2015-03-06 2015-06-03 西安电子科技大学 基于流量分析的p2p僵尸网络检测装置及方法
CN105843851A (zh) * 2016-03-16 2016-08-10 新浪网技术(中国)有限公司 欺诈邮件分析与提取方法和装置
CN106850571A (zh) * 2016-12-29 2017-06-13 北京奇虎科技有限公司 僵尸网络家族的识别方法和装置
CN107241352A (zh) * 2017-07-17 2017-10-10 浙江鹏信信息科技股份有限公司 一种网络安全事件分类与预测方法及系统
CN108111476A (zh) * 2017-08-08 2018-06-01 西安交大捷普网络科技有限公司 C&c通道检测方法
CN108429802A (zh) * 2018-03-07 2018-08-21 国家计算机网络与信息安全管理中心 物联网设备信息获取方法及装置
CN109462612A (zh) * 2018-12-27 2019-03-12 北京神州绿盟信息安全科技股份有限公司 一种僵尸网络中的攻击域名的确定方法及装置
CN109474485A (zh) * 2017-12-21 2019-03-15 北京安天网络安全技术有限公司 基于网络流量信息检测僵尸网络的方法、系统及存储介质
CN109474452A (zh) * 2017-12-25 2019-03-15 北京安天网络安全技术有限公司 自动识别b/s僵尸网络后台的方法、系统及存储介质
CN110995696A (zh) * 2019-11-29 2020-04-10 上海观安信息技术股份有限公司 一种伪造mac群体的发现方法及装置
CN111182002A (zh) * 2020-02-19 2020-05-19 北京亚鸿世纪科技发展有限公司 基于http首个问答包聚类分析的僵尸网络检测装置
CN111178380A (zh) * 2019-11-15 2020-05-19 腾讯科技(深圳)有限公司 数据分类方法、装置及电子设备
CN113381996A (zh) * 2021-06-08 2021-09-10 中电福富信息科技有限公司 基于机器学习的c&c通讯攻击检测方法
CN115001827A (zh) * 2022-06-02 2022-09-02 电子科技大学 一种云端结合IoT僵尸网络检测原型系统及方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102333313A (zh) * 2011-10-18 2012-01-25 中国科学院计算技术研究所 移动僵尸网络特征码生成方法和移动僵尸网络检测方法
CN102932373A (zh) * 2012-11-22 2013-02-13 北京荣之联科技股份有限公司 一种僵尸网络检测方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102333313A (zh) * 2011-10-18 2012-01-25 中国科学院计算技术研究所 移动僵尸网络特征码生成方法和移动僵尸网络检测方法
CN102932373A (zh) * 2012-11-22 2013-02-13 北京荣之联科技股份有限公司 一种僵尸网络检测方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
邓君: "基于数据流的僵尸网络检测系统设计与实现", 《哈尔滨工业大学硕士学位论文》 *

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103746982B (zh) * 2013-12-30 2017-05-31 中国科学院计算技术研究所 一种http网络特征码自动生成方法及其系统
CN103746982A (zh) * 2013-12-30 2014-04-23 中国科学院计算技术研究所 一种http网络特征码自动生成方法及其系统
CN104683346A (zh) * 2015-03-06 2015-06-03 西安电子科技大学 基于流量分析的p2p僵尸网络检测装置及方法
CN105843851A (zh) * 2016-03-16 2016-08-10 新浪网技术(中国)有限公司 欺诈邮件分析与提取方法和装置
CN106850571A (zh) * 2016-12-29 2017-06-13 北京奇虎科技有限公司 僵尸网络家族的识别方法和装置
CN107241352B (zh) * 2017-07-17 2020-01-21 浙江鹏信信息科技股份有限公司 一种网络安全事件分类与预测方法及系统
CN107241352A (zh) * 2017-07-17 2017-10-10 浙江鹏信信息科技股份有限公司 一种网络安全事件分类与预测方法及系统
CN108111476B (zh) * 2017-08-08 2021-01-19 西安交大捷普网络科技有限公司 C&c通道检测方法
CN108111476A (zh) * 2017-08-08 2018-06-01 西安交大捷普网络科技有限公司 C&c通道检测方法
CN109474485A (zh) * 2017-12-21 2019-03-15 北京安天网络安全技术有限公司 基于网络流量信息检测僵尸网络的方法、系统及存储介质
CN109474452A (zh) * 2017-12-25 2019-03-15 北京安天网络安全技术有限公司 自动识别b/s僵尸网络后台的方法、系统及存储介质
CN109474452B (zh) * 2017-12-25 2021-09-28 北京安天网络安全技术有限公司 自动识别b/s僵尸网络后台的方法、系统及存储介质
CN108429802A (zh) * 2018-03-07 2018-08-21 国家计算机网络与信息安全管理中心 物联网设备信息获取方法及装置
CN108429802B (zh) * 2018-03-07 2021-01-26 国家计算机网络与信息安全管理中心 物联网设备信息获取方法及装置
CN109462612B (zh) * 2018-12-27 2021-06-11 绿盟科技集团股份有限公司 一种僵尸网络中的攻击域名的确定方法及装置
CN109462612A (zh) * 2018-12-27 2019-03-12 北京神州绿盟信息安全科技股份有限公司 一种僵尸网络中的攻击域名的确定方法及装置
CN111178380A (zh) * 2019-11-15 2020-05-19 腾讯科技(深圳)有限公司 数据分类方法、装置及电子设备
CN111178380B (zh) * 2019-11-15 2023-07-04 腾讯科技(深圳)有限公司 数据分类方法、装置及电子设备
CN110995696A (zh) * 2019-11-29 2020-04-10 上海观安信息技术股份有限公司 一种伪造mac群体的发现方法及装置
CN110995696B (zh) * 2019-11-29 2022-02-11 上海观安信息技术股份有限公司 一种伪造mac群体的发现方法及装置
CN111182002A (zh) * 2020-02-19 2020-05-19 北京亚鸿世纪科技发展有限公司 基于http首个问答包聚类分析的僵尸网络检测装置
CN113381996A (zh) * 2021-06-08 2021-09-10 中电福富信息科技有限公司 基于机器学习的c&c通讯攻击检测方法
CN115001827A (zh) * 2022-06-02 2022-09-02 电子科技大学 一种云端结合IoT僵尸网络检测原型系统及方法

Also Published As

Publication number Publication date
CN103297433B (zh) 2016-03-30

Similar Documents

Publication Publication Date Title
CN103297433B (zh) 基于网络数据流的http僵尸网络检测方法及系统
CN109951500B (zh) 网络攻击检测方法及装置
US10721243B2 (en) Apparatus, system and method for identifying and mitigating malicious network threats
US11924170B2 (en) Methods and systems for API deception environment and API traffic control and security
US10721244B2 (en) Traffic feature information extraction method, traffic feature information extraction device, and traffic feature information extraction program
Lu et al. Clustering botnet communication traffic based on n-gram feature selection
CN105681250B (zh) 一种僵尸网络分布式实时检测方法和系统
KR101391781B1 (ko) 웹 트랜잭션 밀집도 기반 에이치티티피 봇넷 탐지 장치 및 방법
CN107018084B (zh) 基于sdn架构的ddos攻击防御网络安全方法
US20200106790A1 (en) Intelligent system for mitigating cybersecurity risk by analyzing domain name system traffic
CN104135474B (zh) 基于主机出入度的网络异常行为检测方法
Zhang et al. BotDigger: Detecting DGA Bots in a Single Network.
Cai et al. Detecting HTTP botnet with clustering network traffic
US20200106791A1 (en) Intelligent system for mitigating cybersecurity risk by analyzing domain name system traffic metrics
Teng et al. A cooperative intrusion detection model for cloud computing networks
KR101045330B1 (ko) 네트워크 기반의 http 봇넷 탐지 방법
TWI634769B (zh) Method for detecting domain name transformation botnet through proxy server log
CN113596037B (zh) 一种基于网络全流量中事件关系有向图的apt攻击检测方法
TWI666568B (zh) 在Netflow上以會話型式之P2P殭屍網路偵測方法
TWI636680B (zh) System and method for detecting suspicious domain names based on semi-passive domain name server
Kheir et al. Peerviewer: Behavioral tracking and classification of P2P malware
Yang et al. Cyber threat detection and application analysis
Jeng et al. CC-Tracker: Interaction profiling bipartite graph mining for malicious network activity detection
Meharouech et al. Trusted intrusion detection architecture for high‐speed networks based on traffic classification, load balancing and high availability mechanism
Singh et al. Distilling command and control network intrusions from network flow metadata using temporal pagerank

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20130911

Assignee: Branch DNT data Polytron Technologies Inc

Assignor: Institute of Computing Technology, Chinese Academy of Sciences

Contract record no.: 2018110000033

Denomination of invention: HTTP botnet detection method and system based on net data stream

Granted publication date: 20160330

License type: Common License

Record date: 20180807