CN106060038A - 基于客户端程序行为分析的钓鱼网站检测方法 - Google Patents
基于客户端程序行为分析的钓鱼网站检测方法 Download PDFInfo
- Publication number
- CN106060038A CN106060038A CN201610367652.8A CN201610367652A CN106060038A CN 106060038 A CN106060038 A CN 106060038A CN 201610367652 A CN201610367652 A CN 201610367652A CN 106060038 A CN106060038 A CN 106060038A
- Authority
- CN
- China
- Prior art keywords
- url
- jalangi
- website
- fishing website
- fishing
- 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
Links
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/1483—Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
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)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了基于客户端程序行为分析的钓鱼网站监测方法,首先利用jalangi对访问的网页进行实时插桩,在获取钓鱼网站黑名单和白名单后判断访问的URL是否出现在黑名单中,再判断该URL是否在白名单中。如果不在白名单中,用jalangi通过动静结合的方式检测该URL是否存在form登录表单,如果存在登录表单,则利用jalangi发送随机生成的用户名和密码来判断是否钓鱼网站,以此获取训练样本集,提取动态静态属性行为特征,并借助朴素贝叶斯方法,获得贝叶斯分类器。本发明可以利用jalangi获取网页程序的动态行为特征,借助jalangi检测动态生成的授权登录表单,并动态分析form表单的action属性的最终值,从而作出判断。实现了启发式和数据挖掘等方法的结合,有效提高了检测效果。
Description
技术领域
本发明属于以程序行为为特征的数字信息传输领域,具体涉及一种基于客户端程序行为分析的钓鱼网站检测方法。
背景技术
随着互联网的快速发展,网络购物成为一种潮流。据中国互联网络信息中心(China Internet Network Information Center,简称CNNIC)的统计数据显示,截至2014年12月,我国网络购物用户规模达到3.61亿,较2013年底增加5953万人,增长率为19.7%;我国网民使用网络购物的比例从48.9%提升至55.7%。据报道,2015年双11的交易额就超过124亿,比去年同期增长一倍。
伴随着电子商务的发展,在线支付也越来越受到网民的青睐,可供选择的在线支付方式越来越多。与此同时,一些网络的不法份子从中嗅到“商机”。他们通过邮件等方式诱骗用户进入经过精心布置的,在外观上与真实网站几乎没有区别的网站,诱使用户提交账号密码等重要信息。这个网站就是钓鱼网站,也就是网络安全中的网络钓鱼攻击。
网络钓鱼攻击是一种社会工程学攻击,它主要是利用系统终端用户的弱点来达到攻击的目的。举个例子,一个系统技术上足够防止密码被盗窃,然后如果一个攻击者通过一个URL让终端用户更新密码,那么该密码就会被蒙在鼓里的用户泄露。据APAC(Anti-phishing Alliance of China中国反钓鱼联盟)最新报告显示,网络钓鱼攻击仍然非常活跃。被仿造网站主要在于涉及在线交易的金融证券行业、电子商务行业,而截止2014年11月所占比率更是高达99.6%,导致网民对电子商务信任度降低,从而造成网络交易用户的流失。而国家计算机网络应急技术处理协调中心(简称“国家互联网应急中心”,英文简称是CNCERT或CNCERT/CC)2014年初公布的数据显示,目前国内网络钓鱼给网民造成的损失已经达到了76亿元。
综上所述,研究网络钓鱼攻击,检测网络钓鱼具有非常重要的现实意义。
目前还没有一个非常完美的解决方法可以百分百检测出一个网站是否是钓鱼网站。当前已存在的检测钓鱼网站的方法分为两大类:用户识别与软件检测。
钓鱼网站主要是利用没有经验的终端用户来诱骗获取用户的账号密码等敏感信息,所以一个很显然的想法就是通过训练用户认识钓鱼网站的本质,提高用户对钓鱼网站的识别能力。
软件检测钓鱼网站的方法又可以分为四类:基于黑名单的、基于启发式的、基于视觉相似性的以及基于数据挖掘的钓鱼检测。
黑名单指的是已检测出来的钓鱼URL、IP地址或者关键字所组成的列表集合。与此对应的就是白名单,它可以用来减少FP值(False Positive,即误报率)。基于黑名单的方法不能检测还未出现过的钓鱼网站,但是与启发式的检测方法相比,它具有更小的误报率。
相对于基于黑名单的检测,基于启发式检测可以检测到还未被发现的网络钓鱼攻击。如由斯坦福大学设计的作为浏览器工具条的SpoofGuard通过加权某些在HTML内容中发现的异常,然后与一个已经定义好的阈值进行比较来检测基于HTTP(S)的网络钓鱼攻击。而Phishguard这个浏览器插件的开发者则采用另一种思想,即钓鱼网站不会对用户提交的用户密码进行认证,而仅仅是存储它们,但是无法判断钓鱼网站是否在后台进行数据验证。CANTINA是一个IE工具条,它通过分析网页的内容来判断一个正在访问的网站是否是一个钓鱼网站。CANTINA借助Term Frequency-Inverse Document Frequency(TF-IDF),搜索引擎以及一些启发式规则来减少误报率。还有的工具则提出一个通过搜索引擎动态建立黑名单的机制,然后检测钓鱼网站,并将它们存入到数据库。
与基于源代码或网络层信息的检测方法不同,基于视觉相似度的检测方法则是通过比较可疑网站与数据库中的存储的钓鱼目标网站的视觉相似度来判断可疑网页是否是钓鱼网站。K.-T.Chen提出的方法就是基于内容显示而不是基于内容代码,这个方法需要浏览器对每一个可疑网站提供一个快照,然后通过计算该快照与目标网站的匹配程度,从而判断该可疑网站是否是钓鱼网站。这种方法检测静态的可疑网站有很好的检测效果,但是对于动态生成的网站(如攻击者可能通过事件触发来构建钓鱼网站)效果不明显。SotirovA提出的方案也是采用基于视觉相似度的方法。现有专利文献中,授权号为CN101534306B的发明专利提出的钓鱼检测方法是对静态页面提取特征,但无法分析javascript动态生成页面的情况。另一件专利CN103023874B提出的钓鱼检测方法是对CSS文本提取特征,本质上也属于静态分析,其局限是无法提取javascript动态生成的CSS样式。另外,公开专利CN103856437A提出的钓鱼检测方法是分析目标URL的标题标签,然后与白名单数据库匹配,从而判断判断该URL是否是钓鱼网站。也就是说,每次访问一个正常的URL都得匹配白名单,如果白名单有100亿条记录,则会大大影响实际的可操作性。
基于数据挖掘的钓鱼网站检测算法是将钓鱼检测看作一个文档分类或者聚类问题,然后借助机器学习以及聚类算法来构建模型,常用的算法有k-Nearest Neighbors(k-NN),C4.5,支持向量机(Support Vector Machines,SVM),k-means and Density-BasedSpatial Clustering of Applications with Noise(DBSCAN)。该类检测方法首先要确定提取可疑网站与目标网站之间的哪些特征属性,然后通过训练样本集训练出分类器,最后对某个可疑网站提取特征属性,作为分类器的输入,从而分类器判断出该URL是否是钓鱼网站,但缺点是这些方法无法提取程序的动态行为特征,特征属性的提取也不充分。
综上所述,上述方法从本质上讲都是从非程序分析的角度进行分析,对于一些动态操作非常频繁的网页,如包含javascript动态生成DOM元素的网页,上述这些方法的命中率会大大降低。
发明内容
本发明要解决的技术问题是针对现有钓鱼网站检测技术中存在的没有考虑网页内容的动态生成,都是从非程序分析的角度进行分析而导致的缺陷而提出的。
为解决上述问题,本发明提出一种基于启发式和贝叶斯的混合型的钓鱼网站检测方法,具有精简高效的效果。具体的技术方案为一种基于客户端程序行为分析的钓鱼网站监测方法,包含以下步骤:
1)搭建代理服务器,利用jalangi对访问的网页进行实时插桩;
2)获取钓鱼网站黑名单和白名单;
3)获取当前访问的URL,并查询钓鱼网站黑名单中是否包含该URL,如果该URL出现在钓鱼网站黑名单中,则提醒用户该URL是一个钓鱼网站;
4)如果被检测的URL不在钓鱼网站黑名单中,那么再判断该URL是否在白名单中,即判断该URL是否是已知的正常网站,如果在,则退出检测;
5)如果该URL不在白名单中,用jalangi通过动静结合的方式检测该URL是否存在form登录表单,如果存在登录表单,则利用jalangi发送随机生成的用户名和密码,如果登录成功,则提醒用户该URL是一个钓鱼网站;如果未检测到登陆表单,则利用jalangi检测其是否存在进行第三方授权登录操作,如果检测到,则用jalangi动态判断该表单的action指向的域名是否与想要请求授权的网站域名一致,如果一致,那么认为该URL是钓鱼网站;
6)如果提醒用户登录失败,则用jalangi发送同样的用户名和密码,如果登录成功,提醒用户该URL是一个钓鱼网站;
7)如果提醒用户登录失败,再利用jalangi结合动静态方法检测“忘记密码”,判断该URL连接是否指向第三方域名,如果是,则提醒用户该URL是一个钓鱼网站;
8)如果提醒失败,则获取训练样本集,提取动态静态属性行为特征,然后借助朴素贝叶斯方法,获得贝叶斯分类器;
9)通过jalangi提取该网站的动态静态行为特征,然后作为上步骤获得的贝叶斯分类器的输入,再判断该URL是否是钓鱼网站。
进一步,步骤1中所述搭建代理服务器是利用mitmproxy完成的。
进一步,步骤2获取钓鱼网站黑名单和白名单是通过phishtank提供的API取得。
作为优选,上述白名单是通过获取一定数量的知名度较高的网站URL生成的。
进一步,步骤5中检测是否存在进行第三方授权登录操作是通过静态动态的方法。
本发明相比较现有技术具有的有益效果在于:
1)可以利用jalangi获取网页程序的动态行为特征。
2)借助jalangi检测动态生成的授权登录表单,并动态分析form表单的action属性的最终值,从而判断该授权登录是否是钓鱼网站。
3)实现了启发式和数据挖掘等方法的结合,有效提高了检测效果。
附图说明
图1为本发明的检测流程图。
图2为检测登陆表单的流程图。
图3为检测授权登陆的流程图。
图4为朴素贝叶斯分类的流程图。
具体实施方式
现结合附图对本发明的具体实施做进一步详细详细的说明。基于客户端程序行为分析的钓鱼网站检测方法,包括的详细步骤如下:
1)利用mitmproxy搭建代理服务器,编写jalangi分析脚本,然后用代理服务器借助jalangi对web服务器返回的请求响应进行实时插桩,最后代理服务器将插装之后的网页内容返回给浏览器解析、执行。
2)通过phishtank提供的API,获取钓鱼网站黑名单和白名单。
3)获取当前访问的URL,并查询钓鱼网站黑名单中是否包含该URL。如果该URL出现在钓鱼网站黑名单中,那么提醒用户这个URL是一个钓鱼网站。
4)通过alexa网站获取世界排名前500的网站URL。如果该URL不在钓鱼网站黑名单中,那么再判断该URL是否在白名单中(即判断该URL是否是已知的正常网站),如果在,则退出检测。
5)如果该URL不在白名单中,那么接着用jalangi,通过动静结合的方式检测该URL是否存在form登录表单,如果存在登录表单,那么借助jalangi,发送随机生成的用户名和密码,如果登录成功,那么提醒用户该URL是一个钓鱼网站,如图3所示。
6)如果未检测到登陆表单,那么接着利用jalangi进行检测是否存在进行第三方授权登录操作(通过静态动态的方法),如果检测到,那么用jalangi动态判断该表单的action指向的域名是否与想要请求授权的网站域名一致,如果一致,那么认为该URL是钓鱼网站。如图2所示。
7)如果提醒用户登录失败,那么在用jalangi发送同样的用户名和密码,如果登录成功,那么提醒用户该URL是一个钓鱼网站。
8)如果提醒用户登录失败,那么再利用jalangi,结合动静态方法,检测“忘记密码”这个功能链接的链接地址,判断该url连接是否是指向第三方域名,如果是,则提醒用户该URL是一个钓鱼网站。
9)如果提醒失败,那么根据之前写好的jalangi分析脚本,获取训练样本集,提取动态静态属性行为特征,然后借助朴素贝叶斯方法,获得贝叶斯分类器,有了这个分类器,就可以用来判断某个URL是否是非法的URL。
10)通过jalangi提取该网站的动态静态行为特征,然后作为之前已经训练好的贝叶斯分类器的输入,再判断该URL是否是钓鱼网站。如图4所示。
需要说明的是,本发明所提供的实施例仅具有示意性,实施例中所阐述的方法也可以通过其它方式实现,在符合本发明的基本构思的前提下,都属于本发明的保护范围。
Claims (5)
1.基于客户端程序行为分析的钓鱼网站监测方法,其特征在于包含以下步骤:
1)搭建代理服务器,利用jalangi对访问的网页进行实时插桩;
2)获取钓鱼网站黑名单和白名单;
3)获取当前访问的URL,并查询钓鱼网站黑名单中是否包含该URL,如果该URL出现在钓鱼网站黑名单中,则提醒用户该URL是一个钓鱼网站;
4)如果被检测的URL不在钓鱼网站黑名单中,那么再判断该URL是否在白名单中,即判断该URL是否是已知的正常网站,如果在,则退出检测;
5)如果该URL不在白名单中,用jalangi通过动静结合的方式检测该URL是否存在form登录表单,如果存在登录表单,则利用jalangi发送随机生成的用户名和密码,如果登录成功,则提醒用户该URL是一个钓鱼网站;如果未检测到登陆表单,则利用jalangi检测其是否存在进行第三方授权登录操作,如果检测到,则用jalangi动态判断该表单的action指向的域名是否与想要请求授权的网站域名一致,如果一致,那么认为该URL是钓鱼网站;
6)如果提醒用户登录失败,则用jalangi发送同样的用户名和密码,如果登录成功,提醒用户该URL是一个钓鱼网站;
7)如果提醒用户登录失败,再利用jalangi结合动静态方法检测“忘记密码”,判断该URL连接是否指向第三方域名,如果是,则提醒用户该URL是一个钓鱼网站;
8)如果提醒失败,则获取训练样本集,提取动态静态属性行为特征,然后借助朴素贝叶斯方法,获得贝叶斯分类器;
9)通过jalangi提取该网站的动态静态行为特征,然后作为上步骤获得的贝叶斯分类器的输入,再判断该URL是否是钓鱼网站。
2.根据权利要求1所述的基于客户端程序行为分析的钓鱼网站监测方法,其特征在于步骤1中所述搭建代理服务器是利用mitmproxy完成的。
3.根据权利要求1所述的基于客户端程序行为分析的钓鱼网站监测方法,其特征在于步骤2获取钓鱼网站黑名单和白名单是通过phishtank提供的API取得。
4.根据权利要求3所述的基于客户端程序行为分析的钓鱼网站监测方法,其特征在于所述白名单是通过获取一定数量的知名度较高的网站URL生成的。
5.根据权利要求1所述的基于客户端程序行为分析的钓鱼网站监测方法,其特征在于步骤5中检测是否存在进行第三方授权登录操作是通过静态动态的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610367652.8A CN106060038B (zh) | 2016-05-30 | 2016-05-30 | 基于客户端程序行为分析的钓鱼网站检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610367652.8A CN106060038B (zh) | 2016-05-30 | 2016-05-30 | 基于客户端程序行为分析的钓鱼网站检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106060038A true CN106060038A (zh) | 2016-10-26 |
CN106060038B CN106060038B (zh) | 2019-07-12 |
Family
ID=57175713
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610367652.8A Active CN106060038B (zh) | 2016-05-30 | 2016-05-30 | 基于客户端程序行为分析的钓鱼网站检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106060038B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108173814A (zh) * | 2017-12-08 | 2018-06-15 | 深信服科技股份有限公司 | 钓鱼网站检测方法、终端设备及存储介质 |
CN111669353A (zh) * | 2019-03-08 | 2020-09-15 | 顺丰科技有限公司 | 钓鱼网站检测方法及系统 |
CN112702334A (zh) * | 2020-12-21 | 2021-04-23 | 中国人民解放军陆军炮兵防空兵学院 | 静态特征与动态页面特征结合的web弱口令检测方法 |
CN112785130A (zh) * | 2021-01-13 | 2021-05-11 | 上海派拉软件股份有限公司 | 一种网站风险等级识别方法、装置、设备及存储介质 |
EP4195077A1 (en) * | 2021-12-09 | 2023-06-14 | BlackBerry Limited | Identifying a phishing attempt |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101820366A (zh) * | 2010-01-27 | 2010-09-01 | 南京邮电大学 | 一种基于预取的钓鱼网页检测方法 |
CN102170447A (zh) * | 2011-04-29 | 2011-08-31 | 南京邮电大学 | 一种基于最近邻及相似度测量检测钓鱼网页的方法 |
CN102629261A (zh) * | 2012-03-01 | 2012-08-08 | 南京邮电大学 | 由钓鱼网页查找目标网页的方法 |
US8307431B2 (en) * | 2008-05-30 | 2012-11-06 | At&T Intellectual Property I, L.P. | Method and apparatus for identifying phishing websites in network traffic using generated regular expressions |
CN102790762A (zh) * | 2012-06-18 | 2012-11-21 | 东南大学 | 基于url分类的钓鱼网站检测方法 |
-
2016
- 2016-05-30 CN CN201610367652.8A patent/CN106060038B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8307431B2 (en) * | 2008-05-30 | 2012-11-06 | At&T Intellectual Property I, L.P. | Method and apparatus for identifying phishing websites in network traffic using generated regular expressions |
CN101820366A (zh) * | 2010-01-27 | 2010-09-01 | 南京邮电大学 | 一种基于预取的钓鱼网页检测方法 |
CN102170447A (zh) * | 2011-04-29 | 2011-08-31 | 南京邮电大学 | 一种基于最近邻及相似度测量检测钓鱼网页的方法 |
CN102629261A (zh) * | 2012-03-01 | 2012-08-08 | 南京邮电大学 | 由钓鱼网页查找目标网页的方法 |
CN102790762A (zh) * | 2012-06-18 | 2012-11-21 | 东南大学 | 基于url分类的钓鱼网站检测方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108173814A (zh) * | 2017-12-08 | 2018-06-15 | 深信服科技股份有限公司 | 钓鱼网站检测方法、终端设备及存储介质 |
CN108173814B (zh) * | 2017-12-08 | 2021-02-05 | 深信服科技股份有限公司 | 钓鱼网站检测方法、终端设备及存储介质 |
CN111669353A (zh) * | 2019-03-08 | 2020-09-15 | 顺丰科技有限公司 | 钓鱼网站检测方法及系统 |
CN112702334A (zh) * | 2020-12-21 | 2021-04-23 | 中国人民解放军陆军炮兵防空兵学院 | 静态特征与动态页面特征结合的web弱口令检测方法 |
CN112785130A (zh) * | 2021-01-13 | 2021-05-11 | 上海派拉软件股份有限公司 | 一种网站风险等级识别方法、装置、设备及存储介质 |
CN112785130B (zh) * | 2021-01-13 | 2024-04-16 | 上海派拉软件股份有限公司 | 一种网站风险等级识别方法、装置、设备及存储介质 |
EP4195077A1 (en) * | 2021-12-09 | 2023-06-14 | BlackBerry Limited | Identifying a phishing attempt |
Also Published As
Publication number | Publication date |
---|---|
CN106060038B (zh) | 2019-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110413908B (zh) | 基于网站内容对统一资源定位符进行分类的方法和装置 | |
CN104077396B (zh) | 一种钓鱼网站检测方法及装置 | |
Aljofey et al. | An effective detection approach for phishing websites using URL and HTML features | |
Feher et al. | User identity verification via mouse dynamics | |
Prabhu Kavin et al. | Machine Learning‐Based Secure Data Acquisition for Fake Accounts Detection in Future Mobile Communication Networks | |
Chu et al. | Blog or block: Detecting blog bots through behavioral biometrics | |
Han et al. | Using automated individual white-list to protect web digital identities | |
Borgolte et al. | Meerkat: Detecting website defacements through image-based object recognition | |
US11381598B2 (en) | Phishing detection using certificates associated with uniform resource locators | |
CN107368718B (zh) | 一种用户浏览行为认证方法及系统 | |
CN106060038B (zh) | 基于客户端程序行为分析的钓鱼网站检测方法 | |
US8505094B1 (en) | Detection of malicious URLs in a web page | |
US8745151B2 (en) | Web page protection against phishing | |
Mourtaji et al. | Hybrid Rule‐Based Solution for Phishing URL Detection Using Convolutional Neural Network | |
Dadkhah et al. | An introduction to journal phishings and their detection approach | |
CN109922065A (zh) | 恶意网站快速识别方法 | |
Apte et al. | Frauds in online social networks: A review | |
Divakaran et al. | Phishing detection leveraging machine learning and deep learning: A review | |
Wu et al. | TrackerDetector: A system to detect third-party trackers through machine learning | |
Wen et al. | Detecting malicious websites in depth through analyzing topics and web-pages | |
Weller | Compromised account detection based on clickstream data | |
Sushma et al. | Deep learning for phishing website detection | |
CN116318974A (zh) | 站点风险识别方法、装置、计算机可读介质及电子设备 | |
Yang | A robust recommended system based on attack detection | |
Jansi | An Effective Model of Terminating Phishing Websites and Detection Based On Logistic Regression |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |