CN110321702A - 检测网络资源的修改的系统和方法 - Google Patents

检测网络资源的修改的系统和方法 Download PDF

Info

Publication number
CN110321702A
CN110321702A CN201811243638.2A CN201811243638A CN110321702A CN 110321702 A CN110321702 A CN 110321702A CN 201811243638 A CN201811243638 A CN 201811243638A CN 110321702 A CN110321702 A CN 110321702A
Authority
CN
China
Prior art keywords
internet resources
modification
script
convolution
verifying
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.)
Pending
Application number
CN201811243638.2A
Other languages
English (en)
Inventor
弗拉基米尔·A·斯科沃尔佐夫
叶夫根尼·B·科罗汀斯基
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.)
Kaspersky Lab AO
Original Assignee
Kaspersky Lab AO
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 Kaspersky Lab AO filed Critical Kaspersky Lab AO
Publication of CN110321702A publication Critical patent/CN110321702A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/56Information retrieval; Database structures therefor; File system structures therefor of still image data having vectorial format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/561Virus type analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/565Static detection by checking file integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/048Fuzzy inferencing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/778Active pattern-learning, e.g. online learning of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Virology (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Medical Informatics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioethics (AREA)
  • Evolutionary Biology (AREA)
  • Fuzzy Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了用于检测网络资源的修改的系统和方法。示例性方法包括:生成用于验证网络资源的完整性的脚本,其中,脚本是计算该网络资源的对象的特征的过程的描述;将脚本嵌入在所述网络资源中;在执行之后接收所述网络资源的卷积;基于计算出的至少一个卷积生成所述网络资源的图像,所述网络资源的图像是所述网络资源的内容的矢量表示,并且,由处理器基于所述网络资源的修改的所确定的特征,作出关于所述网络资源的修改的判定。

Description

检测网络资源的修改的系统和方法
技术领域
本发明涉及防病毒技术,并且更具体地涉及检测网络资源的修改的系统和方法。
背景技术
近几十年来,个人计算机、笔记本电脑、平板电脑、智能手机等已得到广泛使用。这种广泛使用已成为在各种活动领域中使用此类设备并解决各种问题(从因特网冲浪到银行转账和管理电子文档)的强大动机。随着在这些设备上运行的计算设备和软件数量的增长,恶意程序的数量也成比例增长。
目前,有无数的恶意程序在各种网络上传播,且还有其它恶意程序正在开发中。这些恶意程序中的一些恶意程序从用户设备窃取个人信息和机密信息(诸如,登录名和密码、银行信息、电子文档)。另一些恶意程序将用户设备转换为所谓的僵尸网络,用于攻击(诸如,分布式拒绝服务(distributed denial of service,DDOS)攻击)、或者通过其它计算机或计算机网络上的暴力破解方法来翻查密码。还有其它的一些恶意程序通过侵入式广告、付费订阅、向收费号码发送SMS等向用户呈现付费内容。
将恶意程序嵌入用户的计算机中的方法也各不相同。一些方法是秘密地(诸如,通过使用软件的漏洞)或公开地(诸如,通过用户自己的所做的活动使用社交工程技术)下载并安装在服务器或客户端(用户的计算机)上。另一些方法是将恶意软件嵌入到由第三方拦截的、在服务器和客户端之间传输的数据中。
网络资源(银行站点、对服务器的查询结果等)是恶意程序攻击的一些热门对象,攻击的目标是机密用户数据(登录名和密码、账号等)、计算资源(用于攻击其它计算机(诸如参与DDOS攻击)、未经授权的计算(诸如如挖掘加密货币等))等等。所描述的攻击活动开始于替换在服务器和客户端之间传输的数据(例如,通过假的个人账户替换个人银行账户的内容、嵌入恶意脚本等)。
与所描述的攻击形式对抗的主要因素是确定网络资源的正在传输的数据的修改,为此使用以下各种技术,包括:
●签名分析,通过该签名分析,在与预定的网络资源模板进行比较的基础上,尝试确定网络资源的修改;
●启发式分析,通过该启发式分析,在检查是否满足先前指定的网络资源形成规则的基础上,尝试确定网络资源的修改;
●黑名单和白名单,通过该黑名单和白名单,尝试确定链接和地址插入到网络资源中。
发明内容
本发明描述了在一方面可以检测网站的未知修改的系统和方法。通常,在已知的分析技术中,可以将个人用户数据从客户端发送到服务器(可以包含在网站的要素中)。这种数据传输可能易受攻击,一些国家的立法可能认为这种传输是非法的。
本发明描述了用于检测网络资源的修改的系统和方法。本发明描述了用于提供信息安全性的方法和系统。根据本发明的一个方面,实现的技术效果为:通过分析网络资源的图像来确定网络资源被修改。
示例性方法包括:基于关于网络资源的结构和内容的数据,生成用于验证所述网络资源的完整性的脚本,其中,所述脚本是计算所述网络资源的对象的特征的过程的描述;将生成的所述脚本嵌入在所述网络资源中;在执行所述网络资源之后,接收所述网络资源的至少一个卷积,其中,根据嵌入到正被执行的网络资源中的、用于验证所述网络资源的完整性的所述脚本来计算卷积;基于计算出的所述至少一个卷积生成所述网络资源的图像,所述网络资源的图像是所述网络资源的内容的矢量表示;以及由处理器基于所述网络资源的修改的所确定的特征,作出关于所述网络资源的所述修改的判定。
在另一方面,基于生成的所述网络资源的所述图像,利用经训练的用于验证完整性的模型,确定所述网络资源的所述修改的特征,其中,所述用于验证完整性的模型是用于计算所述网络资源的修改的概率的规则的集合。
在另一方面,基于网络资源的图像附加地训练用于验证完整性的模型,其中,所述网络资源的图像至少基于以下而生成:先前分析的网络资源;在其被执行之前而正被分析的网络资源。
在另一方面,所述网络资源的所述对象的特征包括以下项的一者或多者:描述所述网络资源的所有对象的集合中的所述网络资源的对象的参数、所述网络资源的所述对象的卷积的形成规则、以及所述网络资源的所述对象的卷积。
在另一方面,所述网络资源的所述对象的卷积包括以下项中的一者:描述所述网络资源的所述对象的参数的卷积、以及所述网络资源的所述对象中包含的数据的卷积。
在又一方面,执行所述网络资源包括以下项中的一者:执行嵌入在所述网络资源中的、用于验证所述网络资源的完整性的脚本,分析所述网络资源,解释所述网络资源,以及可视化所述网络资源。
在另一方面,在在线会话期间执行对所述网络资源的分析,其中,在所述在线会话期间执行所述网络资源。
在另一方面,所述网络资源的对象包括以下项中的一者或多者:脚本、表单、HTML数据、XHR查询和DOM事件。
在另一方面,嵌入在所述网络资源中的、用于验证网络资源的完整性的脚本从所述网络资源中选择至少一个对象。
在另一方面,公开了一种用于检测网络资源的修改的系统,其包括硬件处理器,所述硬件处理器被配置为:基于关于所述网络资源的结构和内容的数据,生成用于验证所述网络资源的完整性的脚本,其中,用于验证所述网络资源的完整性的所述脚本是对计算所述网络资源的对象的特征的过程的描述;将生成的所述脚本嵌入到所述网络资源中;在执行所述网络资源之后,接收所述网络资源的至少一个卷积,其中,根据嵌入到正被执行的网络资源中的、用于验证所述网络资源的完整性的所述脚本来计算卷积;基于计算出的所述至少一个卷积生成所述网络资源的图像,所述网络资源的图像是所述网络资源的内容的矢量表示;以及基于所述网络资源的修改的所确定的特征,作出关于所述网络资源的所述修改的判定。
在另一方面,公开了一种非暂时性计算机可读介质,其上存储有用于根据本文公开的系统和方法的各方面检测网络资源的修改的指令。
以上对示例性方面的简要概述用于提供对本发明的基本理解。该概述不是对所有预期方面的广泛综述,并且既不旨在标识所有方面的关键的或主要的要素,也不旨在描绘本发明的任何方面或所有方面的范围。该概述的唯一目的是以简化的形式呈现一个或多个方面,作为随后的对本发明的更详细的描述的前奏。为了实现前述内容,本发明的一个或多个方面包括在权利要求中所描述的且示例性指出的特征。
附图说明
并入本说明书中并且构成本说明书的一部分的附图示出了本发明的一个或多个示例性方面,并与具体实施方式一起用来阐述这些示例性方面的原理和实现方式。
图1示出了检测网络资源的修改的系统的结构图的示例。
图2示出了检测网络资源的修改的方法的结构图的示例。
图3示出了通用计算机系统、个人计算机或服务器的示例。
具体实施方式
本文在用于检测网络资源的修改的系统、方法和计算机程序产品的上下文中描述了示例性方面。本领域的普通技术人员能够认识到,以下描述仅仅是说明性的,而不旨在以任何方式进行限制。其它方面将很容易将其自身暗示给了解本发明的优点的本领域的技术人员。现在将详细地参考如附图中所示的示例性方面的实现方式。贯穿附图和以下描述将尽可能地使用相同的附图标记来指代相同或类似的项目。
图1是根据本发明的示例性方面的用于检测网络资源的修改的系统100的框图。
系统100可以包括客户端101、服务器102、网络资源111(该网络资源111可以表示一个或多个网络对象,该网络资源111至少包括初始网络资源111A、受保护的网络资源111B、修改后的网络资源111C、生成的网络资源111D)、用于验证网络资源的完整性的脚本112、网络资源的修改后的数据113、网络资源保护模块110、执行模块120、对象选择模块130、图像形成模块140、分析模块150、用于验证完整性的模型151、以及统计数据收集模块160。
在一个示例性方面,系统100在客户端-服务器架构上建模,其中,执行模块120和对象选择模块130在客户端101侧上运行,而网络资源保护模块110、图像形成模块140、分析模块150和统计数据收集模块160在服务器102侧上运行。
例如,客户端101可以是用户的运行浏览器的计算机或移动设备。用户可能正在使用浏览器查看个人用户账户的页面,其中,该页面的代码已经从银行服务器102下载。
在又一示例性方面,网络资源111是包含至少一个页面的因特网站点,该页面至少包含:
●包含网络资源的对象的HTML代码;
●存储在服务器102上的多媒体资源(例如,与图像、音频和视频文件的链接,或与直接以url形式('data:image/png;base64,...'))写在页面上的图像、音频和视频文件的链接);
●脚本文件;
●样式表文件(层叠样式表(Cascading Style Sheets,CSS))。
例如,显示个人用户账户信息的页面包含:描述页面的结构和内容的HTML代码、与个人用户账户相关联的图像(诸如银行标识)、验证和确证表单条目的JavaScript脚本等等。
在又一示例性方面,网络资源111的对象至少:
●被包含在网络资源111中(例如,在初始网络资源111A中);
●包含在执行网络资源111期间(例如,生成的网络资源111D)。
例如,初始网络资源111A可以包含负责形成页面的要素的脚本(例如表单),并且在执行生成的网络资源111D时,生成的表单可以呈现于与由加载在客户端101的RAM中的网络浏览器显示的网页相关联的文档对象模型(document object model,DOM)中。
在又一示例性方面,网络资源111的对象至少包括:
●脚本;
●表单;
●HTML数据;
●XHR请求(XMLHttpRequest);
●DOM事件。
脚本可以用任何脚本语言编写,例如,JavaScript等。
在又一示例性方面,如下进行使用网络资源111的工作:
●首先,在服务器102上形成初始网络资源111A,该初始网络资源111A是安全的并且不包含任何恶意修改;
●然后,形成受保护的网络资源111B;生成用于验证网络资源的完整性的脚本112,并且将脚本嵌入在初始网络资源111A中;
●然后,将受保护的网络资源111B发送到客户端101以待执行,于是,在以下任何一个步骤期间:
○将受保护的网络资源111B从服务器102发送到客户端101;
○在客户端101上执行受保护的网络资源111B;
由恶意应用程序进行对网络资源的修改,由此受保护的网络资源111B的一些数据113被修改,从而形成了修改后的网络资源111C;
●然后,形成生成的网络资源111D,执行修改后的网络资源111C用于形成生成的网络资源111D。
系统100可以基于对生成的网络资源111D的分析来确定初始网络资源111A是否已经被修改。
网络资源保护模块110被设计为:
●基于关于网络资源111的结构和内容的数据,生成用于验证网络资源的完整性的脚本112,其中,用于验证网络资源的完整性的脚本112涉及确定该网络资源111的对象的特征;
●将生成的用于验证网络资源的完整性的脚本112嵌入在该网络资源111中。
在一个示例性方面,网络资源111的对象的特征至少是:
●对该网络资源111的所有对象的集合中的该网络资源111的该对象进行描述的一个或多个参数;
●网络资源111的该对象的卷积的形成规则;
●网络资源111的该对象的卷积。
在又一示例性方面,网络资源111的对象的卷积至少包括:
●描述网络资源111的对象的参数的卷积;
●网络资源111的对象中包含的数据的卷积。
在又一示例性方面,用于验证网络资源的完整性的脚本112是ECMAScript脚本(例如,以JavaScript语言编写的脚本)。
在又一示例性方面,用于验证网络资源的完整性的脚本112是用于执行相应网络资源的浏览器的扩展。
在又一示例性方面,用于验证网络资源的完整性的脚本112是预先(在分析网络资源111之前)生成的,并且在分析网络资源111期间,为用于验证网络资源的完整性的脚本112的工作生成初始参数,而用于验证网络资源的完整性的脚本112自身对于不同的网络资源可以是相同的。
执行模块120被设计为执行网络资源111。
在一个示例性方面,执行网络资源111至少包括:
●执行嵌入在该网络资源111中的、用于验证网络资源的完整性的脚本112;
●分析网络资源111;
●解释网络资源111;
●可视化网络资源111。
在又一示例性方面,网络资源的执行由在客户端101上工作的浏览器执行,或者由使用网络资源的数据且能够运行嵌入在该网络资源中的用于验证网络资源的完整性的脚本112的任何给定应用程序执行。
对象选择模块130被设计为:
●确定网络资源111的至少一个对象的卷积,(如本发明中其它地方所述执行的)卷积被确定以便运行嵌入在该网络资源111中的、用于验证网络资源的完整性的脚本112;
●将计算出的卷积发送到图像形成模块140。
在一个示例性方面,对象选择模块130可以从网络资源111中选择至少一个对象,在执行嵌入在该网络资源111中的用于验证网络资源的完整性的脚本112期间,进行从网络资源111中选择对象。
在又一示例性方面,网络资源的对象的卷积至少是:
●模糊哈希;
●局部敏感哈希(locality-sensitive hashing,LHS)。
例如,可以为从网络对象中挑出的任何给定文本构造模糊哈希,其中文本可以是:
●从标记“script”的“innerHTML”属性中提取的JavaScript脚本;
●由AJAX请求在脚本的网络资源的网络地址(URL)下载的JavaScript脚本;
●在setInterval中传输的函数中通过调用“toString()”获得的JavaScript脚本;
●来自“outerHTML”属性的DOM要素的HTML表示;
●经由附加AJAX请求获取当前下载页面。
通过n元语法(n-gram)的长度和重叠将用于构造哈希的算法参数化:
●通过给定长度和重叠的词将文本分解为多个n元语法;
●对于各个n元语法,构造CRC32;
●由通用哈希函数处理得到的整数数组。
在输出端,取决于系数的集合,获得32个、64个或128个数字的数组。
在哈希函数的一个示例性方面,其公式具有以下形式:
h(x)=(ax+b)mod c
在又一示例性方面,来自网络资源111的每个类型的对象通过与用于分析其它类型的对象的方法不同的单独方法来分析。
例如,在分析网络脚本(例如JavaScript脚本)时,使用一种方法来查找恶意脚本、以及不是典型的银行页面的脚本:
●如果脚本包含属性“src”,则选择该脚本;
●选择的脚本(其中,属性“src”是data-url)被解释为内联脚本(为此,首先解码data-url)。
例如:
data:text/javascript;base64,aWYoImh0dHBzOiI9PT13aW5kb3cubG9jYXRpb24ucHJvdG9jb2wpe3ZhciBzY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcH
QiKTtzY3JpcHQuc3JjID0gImh0dHBzOi8vcGxhZmYtZ28ucnUvbGluay9sNWllYWw0MS8
iO2RvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJoZWFkIilbMF0uYXBwZW5kQ2hp
bGQoc2NyaXB0KTt9
○使用了多种JavaScript表示:
○通过换行分隔符[\r\n]将脚本分解为字符串;
○将脚本分解为令牌;
为了将脚本分解为令牌,使用现有技术中已知的令牌分隔符(诸如“\r\n\t”)。
○将脚本分解为符号;
●从令牌中,使用用于构造n元语法的参数来构造哈希签名,其中,n元语法的:
○长度-11个令牌,
○重叠-4个令牌,
●从脚本的字符串,使用用于构造n元语法的参数来构造哈希签名,其中,
n元语法的:
○长度-7个字符串,
○重叠-3个字符串,
●编写脚本语言的恶意调用列表:
下面给出恶意脚本调用列表的示例(具体地,JavaScript调用,但不限于此):
●编写JavaScript的关键字列表;
例如,这些字是关键字:
["break","do","instanceof","typeof","case","else","new","var","catch","finally","return","function","this","with","default","if","throw","try","abstract","export","interface","static","null","true","false"];
●考虑主要属性;
●对于各个潜在的恶意调用,计算在令牌中遇到的次数;
●建立结果数据(例如,以JSON格式)。
例如
例如,对于XHR请求的分析:
●拦截用于执行XHR的方法:XMLHttpRequest.prototype.open,XMLHttpRequest.prototype.send;
●对于各个截获的DOM级别3调用,记录时间、事件类型、url和堆栈踪迹;
●建立结果数据(例如,以JSON格式)。
例如:
图像形成模块140被设计为:
●基于获得的卷积,生成网络资源的图像,网络资源的图像是网络资源111的内容的矢量表示;
●将生成的网络资源的图像发送到分析模块150。
分析模块150被设计为:
●基于获得的网络资源的图像,使用用于验证完整性的模型151来确定网络资源111的修改的特征113,用于验证完整性的模型151是用于计算网络资源111的修改概率的规则的集合;
●基于确定的网络资源111的修改的特征113,作出关于网络资源111的修改的判定。
在一个示例性方面,网络资源111的修改的特征113至少是:
●网络资源111已被修改的概率,至少包括:
○针对网络资源111的先前指定的用户组的概率;
○针对网络资源111的特定用户的概率;
●网络资源111的修改的参数113:
○网络资源111的修改的方法113;
○在网络资源111的修改中使用的数据。
在一个示例性方面,网络资源111的分析在在线会话期间完成,在该会话期间执行所提及的网络资源111。
统计数据收集模块160可以基于至少从以下项生成的网络资源的图像来执行用于验证完整性的模型151的机器训练:
●先前分析的网络资源111;
●在执行网络资源111之前而正被分析的该网络资源111。
图2示出了用于检测网络资源的修改的方法的结构流程图的示例。
用于检测网络资源的修改的方法包含:步骤210,在步骤210中,可以生成用于验证网络资源的完整性的脚本;步骤220,在步骤220中,可以嵌入生成的用于验证网络资源的完整性的脚本;步骤230,在步骤230中,可以执行网络资源;步骤240,在步骤240中,可以计算网络资源的卷积;步骤250,在步骤250中,生成网络资源的图像;步骤260,在步骤260中,可以确定网络资源的修改的特征;步骤270,在步骤270中,可以对网络资源的修改作出判定;以及步骤280,在步骤280中,可以训练用于验证完整性的模型。
在步骤210中,基于关于网络资源111的结构和内容的数据,可以生成用于验证网络资源的完整性的脚本112,其中,用于验证网络资源的完整性的脚本112是计算该网络资源111的对象的特征的过程的描述。
在步骤220中,可以将生成的用于验证网络资源的完整性的脚本112嵌入在该网络资源111中。
在步骤230中,可以执行网络资源111。为此,首先分析在客户端101侧下载的网络资源(例如,对页面执行语法分析),并且基于其结果下载附加数据(例如,从因特网在识别出的地址下载图像),执行包含在网络资源中的脚本(例如,JavaScript脚本),生成页面要素(诸如表单),基于生成的页面要素可视化正在被执行的网络资源111,以及此外,在网络资源111的执行过程中还收集数据(例如,截获在页面要素的生成和使用期间创建的事件)。
在步骤240中,根据嵌入在网络资源111中的、用于验证网络资源的完整性的脚本112,可以计算网络资源111的至少一个卷积。
在步骤250中,基于计算的至少一个卷积,可以生成网络资源的图像,网络资源的图像是网络资源111的内容的矢量表示。
在步骤260中,基于生成的网络资源的图像,利用经训练的用于验证完整性的模型151可以确定网络资源111的修改的特征113,其中,用于验证完整性的模型151是用于计算网络资源111的修改的概率的规则的集合。
在步骤270中,基于已确定的网络资源111的修改的特征113,作出关于网络资源111的修改的判定。
在步骤280中,基于至少基于以下项生成的网络资源的图像,可以训练用于验证完整性的模型151:
●先前分析的网络资源111;
●在执行网络资源111之前被分析的该网络资源111。
图3是示出了根据示例性方面的通用计算机系统20的框图,在该通用计算机系统20上可以实现本发明的各方面。应当注意,计算机系统20可对应于系统100和/或其各个部件。
如图所示,该计算机系统20(其可以是个人计算机或服务器)包括中央处理单元21、系统存储器22和连接各种系统部件的系统总线23,各种系统部件包括与中央处理单元21相关联的存储器。如本领域的普通技术人员能够领会的,系统总线23可以包括总线存储器或总线存储器控制器、外围总线、以及能够与任何其它总线架构交互的本地总线。系统存储器可以包括永久性存储器(ROM)24和随机存取存储器(Random-Access Memory,RAM)25。基本输入/输出系统(Basic Input/Output System,BIOS)26可以存储用于在计算机系统20的元件之间传输信息的基本程序,例如在使用ROM 24加载操作系统时的那些基本程序。
计算机系统20还可以包括用于读取和写入数据的硬盘27、用于在可移动磁盘29上读取和写入的磁盘驱动器28、以及用于读取和写入可移动光盘31(诸如CD-ROM、DVD-ROM和其它光学介质)的光盘驱动器30。硬盘27、磁盘驱动器28和光盘驱动器30分别通过硬盘接口32、磁盘接口33和光盘驱动器接口34连接到系统总线23。驱动器和对应的计算机信息介质为用于存储计算机系统20的计算机指令、数据结构、程序模块和其它数据的电源独立的模块。
示例性方面包括系统,该系统使用经由控制器55连接到系统总线23的硬盘27、可移动磁盘29和可移动光盘31。本领域的普通技术人员能够理解,也可以利用能够存储计算机可读形式的数据的任何类型的介质56(固态驱动器、闪存卡、数字盘、随机存取存储器(RAM)等等)。
计算机系统20具有可以存储操作系统35的文件系统36、以及另外的程序应用37、其它程序模块38和程序数据39。计算机系统20的用户可以使用键盘40、鼠标42、或本领域的普通技术人员已知的任何其它输入设备(诸如但不限于麦克风、操纵杆、游戏控制器、扫描仪等)输入命令和信息。这些输入设备通常通过串行端口46插入到计算机系统20中,串行端口46又连接到系统总线,但是本领域的普通技术人员能够领会,输入设备也可以以其它方式被连接,诸如但不限于经由并行端口、游戏端口、或通用串行总线(Universal SerialBus,USB)连接。监控器47或其它类型的显示设备也可以通过接口(例如视频适配器48)连接到系统总线23。除了监控器47,个人计算机还可以配备有其它的外围输出设备(未示出),例如扬声器、打印机等。
计算机系统20可以使用到一个或多个远程计算机49的网络连接而工作在网络环境中。一个或多个远程计算机49可以为本地计算机工作站或服务器,其包括在描述计算机系统20的性质时所述的元件中的大多数元件或全部元件。其它设备也可以存在于计算机网络中,诸如但不限于路由器、网站、对等设备或其它的网络节点。
网络连接可以形成局域计算机网络(Local-Area computer Network,LAN)50和广域计算机网络(Wide-Area computer Network,WAN)。这些网络用在企业计算机网络和公司内部网络中,并且这些网络通常有权访问因特网。在LAN或WAN网络中,个人计算机20通过网络适配器或网络接口51连接到局域网50。当使用网络时,计算机20系统可以采用调制解调器54或本领域的普通技术人员所熟知的能够与广域计算机网络(诸如因特网)通信的其它模块。可以是内部设备或外部设备的调制解调器54,可以通过串行端口46连接到系统总线23。本领域的普通技术人员能够领会,所述网络连接是使用通信模块建立一个计算机与另一个计算机的连接的许多熟知方式的非限制性示例。
在各个方面中,本文中所描述的系统和方法可以以硬件、软件、固件或其任何组合来实施。如果以软件来实施,则上述方法可以作为一个或多个指令或代码而被存储在非暂时性计算机可读介质上。计算机可读介质包括数据存储器。以示例性而非限制性的方式,这种计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM、闪存或其它类型的电存储介质、磁存储介质或光存储介质、或可用来携带或存储所期望的指令或数据结构形式的程序代码并可以被通用计算机的处理器访问的任何其它介质。
在各个方面中,本发明中所描述的系统和方法可以按照模块来处理。本文中所使用的术语“模块”指的是例如现实世界的设备、部件、或使用硬件(例如通过专用集成电路(Application Specific Integrated Circuit,ASIC)或现场可编程门阵列(Field-Programmable Gate Array,FPGA))实现的部件的布置、或者硬件和软件的组合,诸如通过微处理器系统和实现模块功能的指令组(该指令组在被执行时将微处理器系统转换成专用设备)来实现这样的组合。一个模块还可以被实施为两个模块的组合,其中单独地通过硬件促进某些功能,并且通过硬件和软件的组合促进其它功能。在某些实现方式中,模块的至少一部分(以及在一些情况下,模块的全部)可以在通用计算机(诸如上文在图3中更详细描述的通用计算机)的处理器上执行。因此,每个模块可以以各种合适的配置来实现,而不应受限于本文中所列举的任何特定的实现方式。
为了清楚起见,本文没有公开各个方面的所有例行特征。应当领会的是,在本发明的任何实际的实现方式的开发中,必须做出许多特定实现方式的决定,以便实现开发者的特定目标,并且这些特定目标对于不同的实现方式和不同的开发者将变化。应当理解的是,这种开发努力可能是复杂的且费时的,但对于了解本发明的优点的本领域的普通技术人员来说仍然是工程的例行任务。
此外,应当理解的是,本文中所使用的措辞或术语出于描述而非限制的目的,从而本说明书的术语或措辞应当由本领域技术人员根据本文中所提出的教导和指导结合相关领域技术人员的知识来解释。此外,不旨在将本说明书或权利要求中的任何术语归于不常见的或特定的含义,除非明确如此阐述。
本文中所公开的各个方面包括本文中以说明性方式所引用的已知模块的现在和未来已知的等同物。此外,尽管已经示出并描述了各个方面和应用,但是对于了解本发明的优点的本领域技术人员将显而易见的是,在不脱离本文中所公开的发明构思的前提下,相比于上文所提及的内容而言的更多修改是可行的。

Claims (21)

1.一种用于检测网络资源的修改的方法,包括:
由硬件处理器基于关于所述网络资源的结构和内容的数据,生成用于验证所述网络资源的完整性的脚本,其中,所述脚本是计算所述网络资源的对象的特征的过程的描述;
由硬件处理器将生成的所述脚本嵌入在所述网络资源中;
在执行所述网络资源之后,由硬件处理器接收所述网络资源的至少一个卷积,其中,根据嵌入到正被执行的所述网络资源中的、用于验证所述网络资源的完整性的所述脚本来计算所述卷积;
由硬件处理器基于计算出的所述至少一个卷积生成所述网络资源的图像,所述网络资源的图像是所述网络资源的内容的矢量表示;以及
由所述处理器基于所述网络资源的修改的所确定的特征,作出关于所述网络资源的所述修改的判定。
2.如权利要求1所述的方法,其中,基于生成的所述网络资源的所述图像,利用经训练的用于验证完整性的模型,确定所述网络资源的所述修改的特征,其中,所述用于验证完整性的模型是用于计算所述网络资源的修改的概率的规则的集合。
3.如权利要求2所述的方法,其中,基于所述网络资源的图像来附加地训练所述用于验证完整性的模型,其中,所述网络资源的图像至少基于以下而生成:先前分析的网络资源;在所述网络资源被执行之前而正被分析的所述网络资源。
4.如权利要求1所述的方法,其中,所述网络资源的所述对象的特征包括以下项中的一者或多者:描述所述网络资源的所有对象的集合中的所述网络资源的所述对象的参数、所述网络资源的所述对象的卷积的形成规则、以及所述网络资源的所述对象的卷积。
5.如权利要求1所述的方法,其中,所述网络资源的所述对象的卷积包括以下项中的一者:描述所述网络资源的所述对象的参数的卷积、以及所述网络资源的所述对象中包含的数据的卷积。
6.如权利要求1所述的方法,其中,执行所述网络资源包括以下项中的一者:执行嵌入在所述网络资源中的、用于验证所述网络资源的完整性的脚本,分析所述网络资源,解释所述网络资源,以及可视化所述网络资源。
7.如权利要求6所述的方法,其中,在在线会话期间执行分析所述网络资源,其中,在所述在线会话期间执行所述网络资源。
8.如权利要求1所述的方法,其中,所述网络资源的对象包括以下项中的一者或多者:脚本、表单、HTML数据、XHR查询和DOM事件。
9.如权利要求1所述的方法,其中,嵌入在所述网络资源中的、用于验证所述网络资源的完整性的所述脚本从所述网络资源中选择至少一个对象。
10.如权利要求1所述的方法,其中,所述网络资源的修改的特征包括以下项中的一者或多者:
所述网络资源已被修改的概率,其包括针对所述网络资源的先前指定的用户组的概率以及针对所述网络资源的特定用户的概率中的至少一者;
所述网络资源的修改的参数:所述网络资源的修改的方法以及在所述网络资源的修改中使用的数据。
11.一种用于检测网络资源的修改的系统,包括:
硬件处理器,所述硬件处理器被配置为:
基于关于所述网络资源的结构和内容的数据,生成用于验证所述网络资源的完整性的脚本,其中,用于验证所述网络资源的完整性的所述脚本是对计算所述网络资源的对象的特征的过程的描述;
将生成的所述脚本嵌入到所述网络资源中;
在执行所述网络资源之后,接收所述网络资源的至少一个卷积,其中,根据嵌入到正被执行的所述网络资源中的、用于验证所述网络资源的完整性的所述脚本来计算所述卷积;
基于计算出的所述至少一个卷积生成所述网络资源的图像,所述网络资源的图像是所述网络资源的内容的矢量表示;以及
基于所述网络资源的修改的所确定的特征,作出关于所述网络资源的所述修改的判定。
12.如权利要求11所述的系统,其中,基于生成的所述网络资源的所述图像,利用经训练的用于验证完整性的模型,确定所述网络资源的所述修改的特征,其中,所述用于验证完整性的模型是用于计算所述网络资源的修改的概率的规则的集合。
13.如权利要求12所述的系统,其中,基于所述网络资源的图像附加地训练所述用于验证完整性的模型,其中,所述网络资源的图像至少基于以下项中的一者或多者而生成:先前分析的网络资源;和在所述网络资源被执行之前正被分析的所述网络资源。
14.如权利要求11所述的系统,其中,所述网络资源的所述对象的特征包括以下项中的一者或多者:描述所述网络资源的所有对象的集合中的所述网络资源的所述对象的参数、所述网络资源的所述对象的卷积的形成规则、以及所述网络资源的所述对象的卷积。
15.如权利要求11所述的系统,其中,所述网络资源的所述对象的卷积包括以下项中的一者:描述所述网络资源的所述对象的参数的卷积、以及所述网络资源的所述对象中包含的数据的卷积。
16.如权利要求11所述的系统,其中,执行所述网络资源包括以下项中的一者:执行嵌入在所述网络资源中的、用于验证所述网络资源的完整性的所述脚本,分析所述网络资源,解释所述网络资源,以及可视化所述网络资源。
17.如权利要求16所述的系统,其中,所述硬件处理器还被配置为:在在线会话期间执行对所述网络资源的分析,其中,在所述在线会话期间执行所述网络资源。
18.如权利要求11所述的系统,其中,所述网络资源的对象包括以下项中的一者或多者:脚本、表单、HTML数据、XHR查询和DOM事件。
19.如权利要求11所述的系统,其中,嵌入在所述网络资源中的、用于验证所述网络资源的完整性的所述脚本从所述网络资源中选择至少一个对象。
20.如权利要求11所述的系统,其中,所述网络资源的修改的特征包括以下项中的一者或多者:
所述网络资源已被修改的概率,其包括针对所述网络资源的先前指定的用户组的概率以及针对所述网络资源的特定用户的概率中的至少一者;
所述网络资源的修改的参数:所述网络资源的修改的方法以及在所述网络资源的修改中使用的数据。
21.一种非暂时性计算机可读介质,其上存储有用于检测网络资源的修改的指令,所述非暂时性计算机可读介质包括用于以下操作的指令:
基于关于所述网络资源的结构和内容的数据,生成用于验证所述网络资源的完整性的脚本,其中,用于验证所述网络资源的完整性的所述脚本是对计算所述网络资源的对象的特征的过程的描述;
将生成的所述脚本嵌入到所述网络资源中;
在执行所述网络资源之后,接收所述网络资源的至少一个卷积,其中,根据嵌入到正被执行的所述网络资源中的、用于验证所述网络资源的完整性的所述脚本来计算卷积;
基于计算出的所述至少一个卷积生成所述网络资源的图像,所述网络资源的图像是所述网络资源的内容的矢量表示;以及
基于所述网络资源的修改的所确定的特征,作出关于所述网络资源的所述修改的判定。
CN201811243638.2A 2018-03-30 2018-10-24 检测网络资源的修改的系统和方法 Pending CN110321702A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
RU2018111479A RU2702081C2 (ru) 2018-03-30 2018-03-30 Система и способ обнаружения модификации веб-ресурса
RU2018111479 2018-03-30
US16/128,703 US10878095B2 (en) 2018-03-30 2018-09-12 System and method of detecting a modification of a web resource
US16/128,703 2018-09-12

Publications (1)

Publication Number Publication Date
CN110321702A true CN110321702A (zh) 2019-10-11

Family

ID=68056321

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811243638.2A Pending CN110321702A (zh) 2018-03-30 2018-10-24 检测网络资源的修改的系统和方法

Country Status (4)

Country Link
US (2) US10878095B2 (zh)
JP (1) JP6840708B2 (zh)
CN (1) CN110321702A (zh)
RU (1) RU2702081C2 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6848766B2 (ja) * 2017-08-23 2021-03-24 株式会社Jvcケンウッド データ改ざん検出装置、データ改ざん検出方法、および画像データのデータ構造
US20230053322A1 (en) * 2021-08-06 2023-02-16 Google Llc Script Classification on Computing Platform

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677481B1 (en) * 2008-09-30 2014-03-18 Trend Micro Incorporated Verification of web page integrity
RU2638710C1 (ru) * 2016-10-10 2017-12-15 Акционерное общество "Лаборатория Касперского" Способы обнаружения вредоносных элементов веб-страниц

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8495735B1 (en) * 2008-12-30 2013-07-23 Uab Research Foundation System and method for conducting a non-exact matching analysis on a phishing website
RU2446459C1 (ru) 2010-07-23 2012-03-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ проверки веб-ресурсов на наличие вредоносных компонент
US9270691B2 (en) * 2010-11-01 2016-02-23 Trusteer, Ltd. Web based remote malware detection
US9032519B1 (en) * 2012-10-29 2015-05-12 Amazon Technologies, Inc. Protecting websites from cross-site scripting
JP6274415B2 (ja) * 2014-02-27 2018-02-07 日立工機株式会社 電動工具
JP2016053956A (ja) * 2014-09-02 2016-04-14 エスケー インフォセック カンパニー リミテッドSK INFOSEC Co.,Ltd. ウェブ基盤の悪性コード探知システムおよび方法
US9979748B2 (en) * 2015-05-27 2018-05-22 Cisco Technology, Inc. Domain classification and routing using lexical and semantic processing
RU2617654C2 (ru) * 2015-09-30 2017-04-25 Акционерное общество "Лаборатория Касперского" Система и способ формирования набора антивирусных записей, используемых для обнаружения вредоносных файлов на компьютере пользователя
RU2622870C2 (ru) * 2015-11-17 2017-06-20 Общество с ограниченной ответственностью "САЙТСЕКЬЮР" Система и способ оценки опасности веб-сайтов

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677481B1 (en) * 2008-09-30 2014-03-18 Trend Micro Incorporated Verification of web page integrity
RU2638710C1 (ru) * 2016-10-10 2017-12-15 Акционерное общество "Лаборатория Касперского" Способы обнаружения вредоносных элементов веб-страниц

Also Published As

Publication number Publication date
RU2702081C2 (ru) 2019-10-03
US10878095B2 (en) 2020-12-29
US11481489B2 (en) 2022-10-25
RU2018111479A (ru) 2019-09-30
JP6840708B2 (ja) 2021-03-10
RU2018111479A3 (zh) 2019-09-30
JP2019194832A (ja) 2019-11-07
US20190303577A1 (en) 2019-10-03
US20210073384A1 (en) 2021-03-11

Similar Documents

Publication Publication Date Title
Petsas et al. Two-factor authentication: is the world ready? Quantifying 2FA adoption
Drakonakis et al. The cookie hunter: Automated black-box auditing for web authentication and authorization flaws
Gupta et al. PHP-sensor: a prototype method to discover workflow violation and XSS vulnerabilities in PHP web applications
Shahriar et al. Trustworthiness testing of phishing websites: A behavior model-based approach
Chen et al. Gui-squatting attack: Automated generation of android phishing apps
Stock et al. Protecting users against xss-based password manager abuse
RU2697950C2 (ru) Система и способ выявления скрытого поведения расширения браузера
US10373135B2 (en) System and method for performing secure online banking transactions
US11985145B1 (en) Method and system for detecting credential stealing attacks
Calzavara et al. Machine learning for web vulnerability detection: the case of cross-site request forgery
Koide et al. Detecting phishing sites using chatgpt
Rajalingam et al. Prevention of phishing attacks based on discriminative key point features of webpages
CN110581841B (zh) 一种后端反爬虫方法
CN108028843A (zh) 被动式web应用防火墙
US11481489B2 (en) System and method for generating a representation of a web resource to detect malicious modifications of the web resource
Roy et al. From Chatbots to PhishBots?--Preventing Phishing scams created using ChatGPT, Google Bard and Claude
Ahmed et al. PhishCatcher: Client-Side Defense Against Web Spoofing Attacks Using Machine Learning
Parimala et al. Efficient web vulnerability detection tool for sleeping giant-cross site request forgery
Prasad Mastering modern Web penetration testing
Pramila et al. A survey on adaptive authentication using machine learning techniques
WO2023075961A1 (en) Detecting and protecting against inconsistent use of cross-site request forgery mitigation features
EP3547646B1 (en) System and method of detecting a modification of a web resource
Patel Test utility for live and online testing of an anti-phishing message security system
Nilsson Security in Behaviour Driven Authentication for Web Applications
US20230065787A1 (en) Detection of phishing websites using machine learning

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20191011