CN110427579B - 一种基于chrome插件的危险网页识别方法 - Google Patents
一种基于chrome插件的危险网页识别方法 Download PDFInfo
- Publication number
- CN110427579B CN110427579B CN201910720615.4A CN201910720615A CN110427579B CN 110427579 B CN110427579 B CN 110427579B CN 201910720615 A CN201910720615 A CN 201910720615A CN 110427579 B CN110427579 B CN 110427579B
- Authority
- CN
- China
- Prior art keywords
- domain name
- class
- webpage
- risk
- elements
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种基于chrome插件的危险网页识别方法,包括根据网页中所有外部链接的URL提取支持向量机第一维度数据,根据页面html代码中所有<script>标签内嵌或引用的JavaScript代码提取支持向量机第二维度数据,根据提取到的支持向量机第一维度数据和第二维度数据求解支持向量机,输出是分离超平面的参数w*和b*以及分类决策函数,本发明通过比对域名与知名网页域名的相似程度,以及对网页内嵌或引用JavaScript代码进行分析来判别网页是否为危险网页,有效解决了已有网页安全性识别方法存在的准确率不够高和通用性不够强的问题。
Description
技术领域
本发明涉及一种基于chrome插件的危险网页识别方法,属于因特网信息安全领域。
背景技术
目前已有的恶意网页识别***大都面向某一类特定应用,因此***结构和实现方式存在一些差异。恶意网页识别***的基本框架主要分为3个部分:
(1)网页采集。负责对互联网上的网页进行收集、去重和过滤。其中,按照网页收集方式,一般可分为主动和被动两种。主动收集,主要是运用网络爬虫技术,从互联网中定向抓取网页集合。而被动收集,主要是在网关或客户端蜜罐中,对经过的访问流量进行采集。而流量过滤是根据网页的相关信息(例如,网页后缀、网页类型等),对明显不属于恶意网页的部分进行过滤,以提升恶意网页识别***的运行效率。
(2)特征抽取。特征抽取是指不同的识别方法从识别不同种类恶意网页的实际需求出发,依据网页自身特点,抽取信息作为识别恶意网页依据的过程。
这些特征包括但不限于URL词汇特征、主机信息特征、网页内容特征、URL(DNS)黑名单、链接关系以及跳转关系等。针对不同类别的恶意网页,学者们从不同角度提出了很多恶意网页的特征。常用的识别特征按照其来源的不同可以分为静态特征和动态特征两类。
静态特征主要来源于网页静态信息,其种类繁多,但抽取过程相对简单。常见的静态特征主要包括主机信息,URL信息和网页内容等。而动态特征主要来自于网页动态行为,其种类较少,但抽取过程相对复杂。常见的动态特征主要包括浏览器行为,网页跳转关系,注册表以及文件夹变化情况等。这些特征往往需要人们对可疑的网页进行长时间的深入分析才能获得。同时,在使用动态特征的过程中,往往需要结合蜜网技术和虚拟化技术辅助恶意网页识别。
(3)网页判别。目前常用的网页判别方法包括:黑名单过滤法、规则匹配法、机器学习方法以及基于交互式主机行为的识别方法。
发明内容
发明目的:为准确识别数量众多、种类多样的恶意网页,恶意网页识别***应当同时具备可用性与可扩展性,本发明提供一种基于chrome插件的危险网页识别方法,本发明通过分析网页静态特征的URL信息,如排名信息,并对URL有含义的域名部分进行特征抽取建立域名库,结合域名长度以对比的方法分析网页安全性。
技术方案:为实现上述目的,本发明采用的技术方案为:
一种基于chrome插件的危险网页识别方法,从源代码的角度通过二维支持向量机算法,分析危险网页,给出一种网页安全性分类的方案,两个维度数据来源如下:
1.根据网页URL获得网页Alexa排名,分析网页知名度;收集假冒网站,分析假冒网站域名,分割出被假冒网站的二级或三级域名,组成域名库;再利用域名分割技术分割出当前网页URL的二级或三级域名,比较域名长度是否超出可疑网页平均值;提取网页源代码中所有<a>标签的href属性,分析得到网页上所有超链接指向页面的URL,再过滤得到外部链接,利用切割域名逐字符比对法和DICE距离算法分别分析当前网页域名及其外部链接域名与域名库中域名的相似性,并结合域名长度,计算得到这一维度的网页安全性评价。
2.首先提取网页源代码中所有<script>标签的src属性指向的地址和所有内部js代码,比对src指向地址与网页域名的相关性,若src指向地址与网页域名不相关,再比对src指向地址与知名开源外部脚本商的相关性;对所有<script>内部代码以及所有<script>的src所指向的知名开源外部脚本商代码之外的代码进行分析,查找javascript代码中存在的可疑代码段,结合脚本嵌入HTML代码中的位置,判断所引用脚本的安全性。
将两个维度获得的数据注入向量机中,输出是分离超平面的参数w*和b*和分类决策函数。
本发明中使用如下概念:
(1)域名:域名是由一串用点分隔的名字组成的因特网上某一台计算机或计算机组的名称。域名分为顶级域名和其他级别域名,二级域名就是最靠近顶级域名左侧的字段。从右向左依次为顶级域名、二级域名、三级域名、四级域名等等。通常二级或三级域名为网站名字。
(2)URL:统一资源定位符,对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。
(3)外部链接:指向其他网站的超链接
(4)javascript脚本:是一种由Netscape的LiveScript发展而来的脚本语言,可由浏览器解释执行。
(5)支持向量机:一类按监督学***面。
具体包括以下步骤:
步骤1)根据网页中所有外部链接的URL提取支持向量机第一维度数据,步骤包括:
步骤1.1)提取一个网页中所有外部链接的URL;
步骤1.2)访问http://data.alexa.com,根据网页URL中的域名获得网页所在网站的Alexa排名;若该网站排名在1000名以内,直接将该网页视为安全,若该网站排名在1000名以外或索取不到排名,则危险因素零danger0置1;
步骤1.3)分析当前网页URL以及网页外部链接的URL中的各级域名,取其中最长的一级域名;若最长的一段域名长度大于18,危险因素三danger3置1,否则为0;对URL的划分方法如下:先以“/”划分URL,取其中的域名段,再在域名段用“.”划分,将各级域名作为字符串加入到一个数组中;
步骤1.4)对当前网页URL以及网页外部链接的URL进行再次切割并提取信息:若域名以“.com.cn”结尾,则提取三级域名;若不是,则提取二级域名;
步骤1.5)将从每个外部链接URL提取的域名与知名域名数据库中的域名一一比对,计算相似率,取相似率小于1的最高值,记为p,与知名域名数据库中某域名相似率为p的从外部链接提取的域名记为dname;
步骤1.6)若dname长度大于6且p值大于0.8,或者dname长度小于6且p值大于0.54,则取危险因素一danger1为1,不符合上述情况,危险因素一置0;
步骤1.7)将从当前网页URL提取的域名与知名域名数据库中的域名一一比对,并计算相似率,若所提取的域名长度大于6且相似率大于0.8,或者所提取的域名长度小于6且相似率大于0.54,则取危险因素二danger2为1,不符合上述情况,危险因素二置0;
步骤1.8)若danger1=1而其他危险因素为0,则输出“The web page is notfamous!”,并令danger=danger0+danger1+danger2+danger3,danger为0、1、2或3时分别输出“The web page is safe!”,“The web page is slightly suspicious!”,“The webpage is suspicious!”,“The web page is dangerous!”;
步骤2)根据页面html代码中所有<script>标签提取支持向量机第二维度数据,具体步骤包括:
步骤2.1)获取页面html代码中所有<script>标签里面内容,将里面所有src指向内容提取出来,组成数组X,统计数组元素总数,设共有x个;
步骤2.2)匹配页面URL,提取当前页面URL的二级域名,若出现诸如.com.cn类型的则提取三级域名,将数组元素中含有此二级或三级域名的元素归入X1组,个数记为x1;对数组X的其余元素,匹配国内知名开源静态资源公共库,匹配的元素归入X2组,个数记为x2;对数组X的其余元素,匹配国外著名开源静态资源公共库,匹配的元素归入X3组,个数记为x3;最终未匹配的元素归入X4组,个数记为x4;满足关系:x1+x2+x3+x4=x;
步骤2.3)若x4/x大于0.1,则判定脚本引用存在甲类风险,若x2、x3同时不为0,并且x4不为0,则判定脚本引用存在乙类风险;若x4为0同时满足如下三种条件之一:x1/x>0.8、(x1+x2)/x>0.9、(x1+x3)/x>0.9,认为脚本引用存在丁类风险,其余情形判定脚本引用存在丙类风险;
步骤2.4)获取html代码中所有内部js脚本以及所有外部js脚本,将所有js脚本组成一个数组Y,统计数组元素个数,设共有y个;匹配以下三种常见js挂马方法:
1.document.write(“<iframe
2.document.body.innerHTML
3.open(***,”NewWindow”,”toolbar
统计每个脚本中以上三个语句出现的次数;统计每个js脚本的字符数;
一个数组元素含有以上三种常见挂马a个,脚本长度b个字符,比较lg(b2)与a的关系;数组Y中满足lg(b2)>a的元素,组成数组K,共有k个;再观察K中每一个元素与之前X数组元素的关系,若发现数组K中任意一个元素的来源是之前X4中的元素,判定js代码危险级别为A类;再记K中元素来源于X1中的元素的数量为k1个;若k/y>0.2且k1/k>0.5,则判定危险级别为B类;若k/y>0.1且k1/k>0.3,则判定危险级别为C类,其他情况为D类;
步骤2.5)在两次判定之后,记甲、乙、丙、丁类依次为4、3、2、1分;记A、B、C、D类依次为4、3、2、1分;将两个分值相乘得到最终该网页第二维判定得分;
步骤3)根据提取到的支持向量机第一维度数据和第二维度数据求解支持向量机,输出是分离超平面的参数w*和b*和分类决策函数,其中,w*表示超平面(这里是二维平面)的法向量,b*表示超平面(这里是二维平面)的截距,分类决策函数表示:若输入数据所在的特征空间存在作为决策边界的超平面,则将学***面距离大于等于1。
步骤1.5)中相似率计算方法是:先将提取的每个域名分别与数据库中与其长度L相同的知名域名一一比对,找到其中相同的字母数s,计算相同字母占比pr,公式为:
pr=s/L(公式1)
记录相同字母占比pr小于1的最大值,将其赋给变量percent,若pr为1,则所提取域名相关的链接直接视作安全,并记录pr为percent的域名;
然后再将提取的每个域名分别与数据库中与其长度不相同的知名域名一一比对,把域名看作字符的集合,利用Dice系数计算域名之间的相似度:
其中,s表示域名之间的相似度,A表示当前访问的域名,B表示数据库中的域名,记录相似度s小于1的最大值,将其赋给变量dpercent,并记录s为dpercent的域名;
比较percent和dpercent的值,取较大值赋予p,并记录与知名域名数据库中域名相似率为p的域名,记为dname。
步骤3)中求解支持向量机的方法如下:
步骤3.1)取malwaredomainlist库中最新添加的100个可用访问的危险网页,加上50个ALEXA著名网页以及日常生活中用到的安全网页组成200个网页测试库,将这200个网页进行测试,查看最后拟合曲线;
步骤3.2)在每一个获得的第一维度数据和第二维度数据利用随机数改变原来数据值,将注入向量机数据改为原有数据的90%-110%;
步骤3.3),使用支持向量机中的降噪部分删除影响线性可分性的点,获得线性可分数据;将剩余的线性可分的点仿真,最后获得仿真平面S为:y=(w*)*x+b*;其中w*=-2.320,b*=12.329;w*是超平面(这里是二维平面)的法向量,b*是表示超平面(这里是二维平面)的截距,x表示数据第一维度分数集合,y表示数据第二维度分数集合。
步骤2.2)中国内知名开源静态资源公共库为百度或Bootstrap中文网,国外著名开源静态资源公共库为***或Microsoft Ajax。
步骤2.3)中甲类风险为高风险类,乙类风险为可能存在危险类,丁类风险为安全类,丙类风险为尚未发现危险类。
步骤2.4)中A类为高风险类,B类为可能存在危险类,C类为小概率危险类,D类为安全类。
本发明相比现有技术,具有以下有益效果:
1、本发明通过提取网页URL及其外部链接的URL中的域名,根据分析所得的危险网页(尤其是钓鱼网页)常用的域名的基本特征(常为长度过长;模仿和假冒知名网页域名),通过比对域名中字符的相似程度来判别是危险网页的可能。
2、本发明提供了一种通过代码分析识别危险网页的方法,在模型优化之后可以对接DNS服务器直接解析网页进行主动防御。
3、本发明方法有效解决了已有网页安全性识别方法存在的准确率不够高和通用性不够强的问题。
附图说明
图1为混淆后的数据
图2为降噪后线性可分的数据
图3为支持向量机第一维度数据产生流程图
图4为支持向量机第二维度数据产生流程图
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明,应理解这些实例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
一种基于chrome插件的危险网页识别方法,用于识别危险网页,包括如下步骤:
步骤1)支持向量机第一维度数据提取,如图3所示,具体步骤包括:
步骤1.1)提取一个网页中所有外部链接的URL;
步骤1.2)访问http://data.alexa.com,根据网页URL中的域名获得网页所在网站的Alexa排名;若该网站排名在1000名以内,直接将该网页视为安全,若该网站排名在1000名以外或索取不到排名,则危险因素零(danger0)置1;
步骤1.3)分析当前网页URL以及网页外部链接的URL中的各级域名,取其中最长的一级域名;若最长的一段域名长度大于18,危险因素三(danger3)置1,否则为0。对URL的划分方法如下:先以“/”划分URL,取其中的域名段,再在域名段用“.”划分,将各级域名作为字符串加入到一个数组中;
步骤1.4)对当前网页URL以及网页外部链接的URL进行再次切割并提取信息:若域名以“.com.cn”结尾,则提取三级域名;若不是,则提取二级域名;
步骤1.5)将从每个外部链接URL提取的域名与知名域名数据库中的域名一一比对,计算相似率,取相似率小于1的最高值,记为p,与知名域名数据库中某域名相似率为p的从外部链接提取的域名记为dname。
比对及相似率计算方法是:先将提取的每个域名分别与数据库中与其长度(L)相同的知名域名一一比对,找到其中相同的字母数s,计算相同字母占比(pr),公式为:
pr=s/L (公式1)记录相似率pr小于1的最大值,将其赋给变量percent(若pr为1,则所提取域名相关的链接直接视作安全),并记录pr为percent的域名。
然后再将提取的每个域名分别与数据库中与其长度不相同的知名域名一一比对,把域名看作字符的集合,利用Dice系数计算域名之间的相似度:
记录相似率s小于1的最大值,将其赋给变量dpercent,并记录s为dpercent的域名。
比较变量percent和dpercent的值,取较大值赋予p,并记录与知名域名数据库中域名相似率为p的域名,记为dname。
步骤1.6)若dname长度大于6且p值大于0.8,或者dname长度小于6且p值大于0.54,则取危险因素一(danger1)为1,不符合上述情况,危险因素一置0;
步骤1.7)将从当前网页URL提取的域名与知名域名数据库中的域名一一比对,按照步骤1.5)中的方法计算相似率,若所提取的域名长度大于6且相似率大于0.8,或者所提取的域名长度小于6且相似率大于0.54,则取危险因素二(danger2)为1,不符合上述情况,危险因素二置0。
步骤1.8)若danger1=1而其他危险因素为0,则输出“The web page is notfamous!”,并令danger=danger0+danger1+danger2+danger3,danger为0、1、2、3或4时分别输出“The web page is safe!”,“The web page is slightly suspicious!”,“The webpage is suspicious!”,“The web page is dangerous!”。
步骤2)支持向量机第二维度数据提取,如图4所示,具体步骤包括:
步骤2.1)获取页面html代码中所有<script>标签里面内容,将里面所有src指向内容提取出来,组成数组X,统计数组元素总数,设共有x个;
步骤2.2)匹配页面URL,提取当前页面URL的二级域名(若出现诸如.com.cn类型的则提取三级域名),将数组元素中含有此二级(三级)域名的元素归入X1组,个数记为x1;对数组X的其余元素,匹配国内知名开源静态资源公共库(如百度、Bootstrap中文网等),匹配的元素归入X2组,个数记为x2;对数组X的其余元素,匹配国外著名开源静态资源公共库(如***,Microsoft Ajax等),匹配的元素归入X3组,个数记为x3;最终未匹配的元素归入X4组,个数记为x4。满足关系:x1+x2+x3+x4=x;
步骤2.3)若x4/x大于0.1,则判定脚本引用存在甲类风险(高风险类);若x2、x3同时不为0,并且x4不为0,则判定脚本引用存在乙类风险(可能存在危险类);若x4为0同时满足如下三种条件之一:x1/x>0.8、(x1+x2)/x>0.9、(x1+x3)/x>0.9即认为脚本引用存在丁类风险(安全类),其余情形判定脚本引用存在丙类风险(尚未发现危险类)。
步骤2.4)获取html代码中所有内部js脚本以及所有外部js脚本,将所有js脚本组成一个数组Y,统计数组元素个数,设共有y个。匹配以下三种常见js挂马方法:
1.document.write(“<iframe
2.document.body.innerHTML
3.open(***,”NewWindow”,”toolbar
统计每个脚本中以上三个语句出现的次数。统计每个js脚本的字符数。
设一个数组元素含有以上三种常见挂马a个,脚本长度b个字符,比较lg(b2)与a的关系。数组Y中满足lg(b2)>a的元素,组成数组K,设共有k个。再观察K中每一个元素与之前X数组元素的关系,若发现数组K中任意一个元素的来源是之前X4中的元素,即判定js代码危险级别为A类(高风险类);再记K中元素来源于X1中的元素的数量为k1个。若k/y>0.2且k1/k>0.5,则判定危险级别为B类(可能存在危险类);若k/y>0.1且k1/k>0.3,则判定危险级别为C类(小概率危险类),其他情况为安全类D类。
步骤2.5)在两次判定之后,记甲、乙、丙、丁类为4、3、2、1分;记A、B、C、D类也为4、3、2、1分。将两个分值相乘得到最终该网页第二维判定得分。
步骤3)求解支持向量机
步骤3.1)取malwaredomainlist(https://www.malwaredomainlist.com/mdl.php)库中最新添加的100个可用访问的危险网页,加上50个ALEXA著名网页以及日常生活中用到的安全网页组成200个网页测试库(100安全100不安全)将这200个点进行测试,查看最后拟合曲线;
步骤3.2)由于我们两个维度的数据都是整数,在拟合的时候会出现很多重合点,考虑到数据量相对于一般二维支持向量机来说较大,故决定在数据中做一定的混淆,在每一个获得的数据利用随机数改变原来数据值,将注入向量机数据改为原有数据的90%-110%。注入前混淆数据如图1所示。
步骤3.3)使用支持向量机中的降噪部分删除影响线性可分性的点,获得如图2所示的线性可分数据。将剩余的线性可分的点仿真,最后获得仿真结果w*=-2.320和b*=12.329,即平面S为:y=-2.320*x+12.329。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (3)
1.一种基于chrome插件的危险网页识别方法,其特征在于,包括如下步骤:
步骤1)根据网页中所有外部链接的URL提取支持向量机第一维度数据,步骤包括:
步骤1.1)提取一个网页中所有外部链接的URL;
步骤1.2)访问http://data.alexa.com,根据网页URL中的域名获得网页所在网站的Alexa排名;若该网站排名在1000名以内,直接将该网页视为安全,若该网站排名在1000名以外或索取不到排名,则危险因素零danger0置1;
步骤1.3)分析当前网页URL以及网页外部链接的URL中的各级域名,取其中最长的一级域名;若最长的一段域名长度大于18,危险因素三danger3置1,否则为0;对URL的划分方法如下:先以“/”划分URL,取其中的域名段,再在域名段用“.”划分,将各级域名作为字符串加入到一个数组中;
步骤1.4)对当前网页URL以及网页外部链接的URL进行再次切割并提取信息:若域名以“.com.cn”结尾,则提取三级域名;若不是,则提取二级域名;
步骤1.5)将从每个外部链接URL提取的域名与知名域名数据库中的域名一一比对,计算相似率,取相似率小于1的最高值,记为p,与知名域名数据库中某域名相似率为p的从外部链接提取的域名记为dname;
步骤1.6)若dname长度大于6且p值大于0.8,或者dname长度小于6且p值大于0.54,则取危险因素一danger1为1,不符合上述情况,危险因素一置0;
步骤1.7)将从当前网页URL提取的域名与知名域名数据库中的域名一一比对,并计算相似率,若所提取的域名长度大于6且相似率大于0.8,或者所提取的域名长度小于6且相似率大于0.54,则取危险因素二danger2为1,不符合上述情况,危险因素二置0;
步骤1.8)若danger1=1而其他危险因素为0,则输出“The web page is notfamous!”,并令danger=danger0+danger1+danger2+danger3,danger为0、1、2或3时分别输出“The web page is safe!”,“The web page is slightly suspicious!”,“The webpage is suspicious!”,“The web page is dangerous!”;
步骤2)根据页面html代码中所有<script>标签提取支持向量机第二维度数据,具体步骤包括:
步骤2.1)获取页面html代码中所有<script>标签里面内容,将里面所有src指向内容提取出来,组成数组X,统计数组元素总数,设共有x个;
步骤2.2)匹配页面URL,提取当前页面URL的二级域名,若出现诸如.com.cn类型的则提取三级域名,将数组元素中含有此二级或三级域名的元素归入X1组,个数记为x1;对数组X的其余元素,匹配国内知名开源静态资源公共库,匹配的元素归入X2组,个数记为x2;对数组X的其余元素,匹配国外著名开源静态资源公共库,匹配的元素归入X3组,个数记为x3;最终未匹配的元素归入X4组,个数记为x4;满足关系:x1+x2+x3+x4=x;其中国内知名开源静态资源公共库为百度或Bootstrap中文网,国外著名开源静态资源公共库为***或Microsoft Ajax;
步骤2.3)若x4/x大于0.1,则判定脚本引用存在甲类风险,若x2、x3同时不为0,并且x4不为0,则判定脚本引用存在乙类风险;若x4为0同时满足如下三种条件之一:x1/x>0.8、(x1+x2)/x>0.9、(x1+x3)/x>0.9,认为脚本引用存在丁类风险,其余情形判定脚本引用存在丙类风险;其中甲类风险为高风险类,乙类风险为可能存在危险类,丁类风险为安全类,丙类风险为尚未发现危险类;
步骤2.4)获取html代码中所有内部js脚本以及所有外部js脚本,将所有js脚本组成一个数组Y,统计数组元素个数,设共有y个;匹配以下三种常见js挂马方法:
1.document.write(“<iframe
2.document.body.innerHTML
3.open(***,”NewWindow”,”toolbar
统计每个脚本中以上三个语句出现的次数;统计每个js脚本的字符数;
一个数组元素含有以上三种常见挂马a个,脚本长度b个字符,比较lg(b2)与a的关系;数组Y中满足lg(b2)>a的元素,组成数组K,共有k个;再观察K中每一个元素与之前X数组元素的关系,若发现数组K中任意一个元素的来源是之前X4中的元素,判定js代码危险级别为A类;再记K中元素来源于X1中的元素的数量为k1个;若k/y>0.2且k1/k>0.5,则判定危险级别为B类;若k/y>0.1且k1/k>0.3,则判定危险级别为C类,其他情况为D类;其中A类为高风险类,B类为可能存在危险类,C类为小概率危险类,D类为安全类;
步骤2.5)在两次判定之后,记甲、乙、丙、丁类依次为4、3、2、1分;记A、B、C、D类依次为4、3、2、1分;将两个分值相乘得到最终该网页第二维判定得分;
步骤3)根据提取到的支持向量机第一维度数据和第二维度数据求解支持向量机,输出是分离超平面的参数w*和b*和分类决策函数,其中,w*表示超平面的法向量,b*表示超平面的截距,分类决策函数表示:若输入数据所在的特征空间存在作为决策边界的超平面,则将学***面距离大于等于1。
2.根据权利要求1所述基于chrome插件的危险网页识别方法,其特征在于:步骤1.5)中相似率计算方法是:先将提取的每个域名分别与数据库中与其长度L相同的知名域名一一比对,找到其中相同的字母数s,计算相同字母占比pr,公式为:
pr=s/L (公式1)
记录相同字母占比pr小于1的最大值,将其赋给变量percent,若pr为1,则所提取域名相关的链接直接视作安全,并记录pr为percent的域名;
然后再将提取的每个域名分别与数据库中与其长度不相同的知名域名一一比对,把域名看作字符的集合,利用Dice系数计算域名之间的相似度:
其中,s表示域名之间的相似度,A表示当前访问的域名,B表示数据库中的域名;
记录相似度s小于1的最大值,将其赋给变量dpercent,并记录s为dpercent的域名;
比较percent和dpercent的值,取较大值赋予p,并记录与知名域名数据库中域名相似率为p的域名,记为dname。
3.根据权利要求2所述基于chrome插件的危险网页识别方法,其特征在于:步骤3)中求解支持向量机的方法如下:
步骤3.1)取malwaredomainlist库中最新添加的100个可用访问的危险网页,加上50个ALEXA著名网页以及日常生活中用到的安全网页组成200个网页测试库,将这200个网页进行测试,查看最后拟合曲线;
步骤3.2)在每一个获得的第一维度数据和第二维度数据利用随机数改变原来数据值,将注入向量机数据改为原有数据的90%-110%;
步骤3.3)使用支持向量机中的降噪部分删除影响线性可分性的点,获得线性可分数据;将剩余的线性可分的点仿真,最后获得仿真分类超平面S为:y=(w*)*x+b*;其中w*=-2.320,b*=12.329;w*是超平面的法向量,b*是表示超平面的截距,x表示数据第一维度分数集合,y表示数据第二维度分数集合。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910720615.4A CN110427579B (zh) | 2019-08-06 | 2019-08-06 | 一种基于chrome插件的危险网页识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910720615.4A CN110427579B (zh) | 2019-08-06 | 2019-08-06 | 一种基于chrome插件的危险网页识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110427579A CN110427579A (zh) | 2019-11-08 |
CN110427579B true CN110427579B (zh) | 2020-12-01 |
Family
ID=68414326
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910720615.4A Active CN110427579B (zh) | 2019-08-06 | 2019-08-06 | 一种基于chrome插件的危险网页识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110427579B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101692639A (zh) * | 2009-09-15 | 2010-04-07 | 西安交通大学 | 一种基于url的不良网页识别方法 |
CN102332028A (zh) * | 2011-10-15 | 2012-01-25 | 西安交通大学 | 一种面向网页的不良Web内容识别方法 |
-
2019
- 2019-08-06 CN CN201910720615.4A patent/CN110427579B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101692639A (zh) * | 2009-09-15 | 2010-04-07 | 西安交通大学 | 一种基于url的不良网页识别方法 |
CN102332028A (zh) * | 2011-10-15 | 2012-01-25 | 西安交通大学 | 一种面向网页的不良Web内容识别方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110427579A (zh) | 2019-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11463476B2 (en) | Character string classification method and system, and character string classification device | |
CN110808968B (zh) | 网络攻击检测方法、装置、电子设备和可读存储介质 | |
CN107707545B (zh) | 一种异常网页访问片段检测方法、装置、设备及存储介质 | |
Mahajan et al. | Phishing website detection using machine learning algorithms | |
CN107204960B (zh) | 网页识别方法及装置、服务器 | |
CN103559235B (zh) | 一种在线社交网络恶意网页检测识别方法 | |
Buber et al. | NLP based phishing attack detection from URLs | |
Zhang et al. | Boosting the phishing detection performance by semantic analysis | |
US7565350B2 (en) | Identifying a web page as belonging to a blog | |
CN104077396A (zh) | 一种钓鱼网站检测方法及装置 | |
CN104156490A (zh) | 基于文字识别检测可疑钓鱼网页的方法及装置 | |
CN105279277A (zh) | 知识数据的处理方法和装置 | |
CN110191096B (zh) | 一种基于语义分析的词向量网页入侵检测方法 | |
CN111581355A (zh) | 威胁情报的主题检测方法、装置和计算机存储介质 | |
CN111967503B (zh) | 多类型异常网页分类模型的构建方法、异常网页检测方法 | |
CN110572359A (zh) | 基于机器学习的钓鱼网页检测方法 | |
CN102446255A (zh) | 一种检测页面篡改的方法及装置 | |
CN103617213A (zh) | 识别新闻网页属性特征的方法和*** | |
WO2020082763A1 (zh) | 基于决策树的钓鱼网站检测方法、装置及计算机设备 | |
CN104239582A (zh) | 基于特征向量模型识别钓鱼网页的方法及装置 | |
CN112528294A (zh) | 漏洞匹配方法、装置、计算机设备和可读存储介质 | |
CN112948725A (zh) | 基于机器学习的钓鱼网站url检测方法及*** | |
Rajalakshmi et al. | DLRG@ HASOC 2019: An Enhanced Ensemble Classifier for Hate and Offensive Content Identification. | |
CN115442075A (zh) | 一种基于异质图传播网络的恶意域名检测方法和*** | |
CN109064067B (zh) | 基于互联网的金融风险运营主体判定方法及装置 |
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 | ||
CB02 | Change of applicant information |
Address after: 210000, 66 new model street, Gulou District, Jiangsu, Nanjing Applicant after: NANJING University OF POSTS AND TELECOMMUNICATIONS Address before: 210000 Nanjing, Jiangsu Province, Yuhuatai District, software Avenue, No. 186 Applicant before: NANJING University OF POSTS AND TELECOMMUNICATIONS |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |