CN104252477A - 一种控制网页弹出窗口的方法及装置 - Google Patents

一种控制网页弹出窗口的方法及装置 Download PDF

Info

Publication number
CN104252477A
CN104252477A CN201310263014.8A CN201310263014A CN104252477A CN 104252477 A CN104252477 A CN 104252477A CN 201310263014 A CN201310263014 A CN 201310263014A CN 104252477 A CN104252477 A CN 104252477A
Authority
CN
China
Prior art keywords
window
pop
function
dynamic link
link library
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
CN201310263014.8A
Other languages
English (en)
Other versions
CN104252477B (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.)
Beijing Kingsoft Internet Security Software Co Ltd
Conew Network Technology Beijing Co Ltd
Shell Internet Beijing Security Technology Co Ltd
Zhuhai Juntian Electronic Technology Co Ltd
Beijing Kingsoft Internet Science and Technology Co Ltd
Original Assignee
Beijing Kingsoft Internet Security Software Co Ltd
Conew Network Technology Beijing Co Ltd
Shell Internet Beijing Security Technology Co Ltd
Zhuhai Juntian Electronic Technology Co Ltd
Beijing Kingsoft Internet Science and Technology Co Ltd
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 Beijing Kingsoft Internet Security Software Co Ltd, Conew Network Technology Beijing Co Ltd, Shell Internet Beijing Security Technology Co Ltd, Zhuhai Juntian Electronic Technology Co Ltd, Beijing Kingsoft Internet Science and Technology Co Ltd filed Critical Beijing Kingsoft Internet Security Software Co Ltd
Priority to CN201310263014.8A priority Critical patent/CN104252477B/zh
Publication of CN104252477A publication Critical patent/CN104252477A/zh
Application granted granted Critical
Publication of CN104252477B publication Critical patent/CN104252477B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • 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/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种控制网页弹出窗口的方法及装置。其中所述方法包括:挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息,所述预定动态链接库文件为预先确定的网页弹出窗口需要加载的动态链接库文件;将弹出窗口的信息与预设规则进行匹配,判断是否需要拦截弹出窗口;根据判断结果,禁止或允许所述弹出窗口的弹出。本发明能够实现对网页弹出窗口的合理控制,减少或避免恶意弹窗所导致的占用系统资源、危害系统安全及用户体验差等问题。

Description

一种控制网页弹出窗口的方法及装置
技术领域
本发明涉及计算机安全技术领域,具体涉及一种控制网页弹出窗口的方法及装置。
背景技术
互联网高速发展和强势普及的今天,通过浏览器阅读网页来获取外部信息已经成为人们生活中必不可少的一部分。随着用户量的聚集,部分网站的持有者通过网页弹窗弹新网页的方式给第三方商家做广告进而实现收入。这种弹窗已经成为了一种趋势,甚至愈演愈烈,以至于互联网用户很难找到一个清净的不被干扰的浏览网页环境。
网页恶意弹窗弹网页的涌现,轻则使用户不得不手动关闭其原本不想浏览的网页,影响用户心情和上网体验,重则占用系统资源,使计算机系统变慢,甚至可能弹出的是带病毒挂木马的网址,从而严重危害用户的系统安全。
当前屏蔽网页弹窗弹新网页的方式通常是在浏览器中直接取消JavaScript功能。通常网页的弹窗(包括弹新网页)的功能是由嵌套在网页里面的JavaScript脚本语言语句实现的。通过设置浏览器取消JavaScript功能,可以屏蔽弹窗弹新网页。但是这种一刀切的方式,会使网页中其他的JavaScript特效失效,会使网页的精彩程度大打折扣。
因此,亟需一种方法,能够对网页弹窗进行合理控制,减少或避免恶意弹窗所导致的占用系统资源、危害系统安全及用户体验差等问题。
发明内容
有鉴于此,本发明实施例的目的是提供一种控制网页弹出窗口的方法及装置,实现对网页弹出窗口的合理控制,减少或避免恶意弹窗所导致的占用系统资源、危害系统安全及用户体验差等问题。
为解决上述技术问题,本发明实施例提供方案如下:
一种控制网页弹出窗口的方法,包括:
挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息,所述预定动态链接库文件为预先确定的网页弹出窗口需要加载的动态链接库文件;
将弹出窗口的信息与预设规则进行匹配,判断是否需要拦截弹出窗口;
根据判断结果,禁止或允许所述弹出窗口的弹出。
优选地,上述方法中,在所述挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息之前,所述方法还包括:
挂钩动态链接库加载函数的入口点函数,获得传入所述动态链接库加载函数的参数;
根据传入所述动态链接库加载函数的参数,判断当前加载的动态链接库文件是否为所述预定动态链接库文件;
所述挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息具体为:
在当前加载的动态链接库文件为所述预定动态链接库文件时,挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息。
优选地,上述方法中,所述挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息,包括:
在所述预定动态链接库文件的虚拟内存空间中,搜索与窗口类函数的内存特征相匹配的函数入口点;
在所述函数入口点挂钩一伪造函数,通过所述伪造函数获得传入所述窗口类函数的参数,得到所述弹出窗口的信息,所述弹出窗口的信息包括弹出窗口的网址和/或文本内容。
优选地,上述方法中,所述将弹出窗口的信息与预设规则进行匹配,判断是否需要拦截弹出窗口,包括:
将所述弹出窗口的网址和/或文本内容,与预先设定的规则库进行匹配,所述规则库包括下列规则中的至少一种:需要拦截的窗口的网址、允许弹出的窗口的网址、需要拦截的窗口涉及的内容、允许弹出的窗口涉及的内容;
根据匹配的规则,输出是否需要拦截弹出窗口的判断结果。
优选地,上述方法中,所述窗口类函数包括窗口类警告函数和窗口类打开函数。
本发明实施例还提供了一种控制网页弹出窗口的装置,包括:
第一挂钩单元,用于挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息,所述预定动态链接库文件为预先确定的网页弹出窗口需要加载的动态链接库文件;
第一判断单元,用于将弹出窗口的信息与预设规则进行匹配,判断是否需要拦截弹出窗口;
处理单元,用于根据判断结果,禁止或允许所述弹出窗口的弹出。
优选地,上述装置还包括:
第二挂钩单元,用于挂钩动态链接库加载函数的入口点函数,获得传入所述动态链接库加载函数的参数;
第二判断单元,用于根据传入所述动态链接库加载函数的参数,判断当前加载的动态链接库文件是否为所述预定动态链接库文件;
触发处理单元,用于在所述第二判断单元判断当前加载的动态链接库文件为所述预定动态链接库文件时,触发所述第一挂钩单元。
优选地,上述装置中,所述第一挂钩单元包括:
搜索单元,用于在所述预定动态链接库文件的虚拟内存空间中,搜索与窗口类函数的内存特征相匹配的函数入口点;
截获单元,用于在所述函数入口点挂钩一伪造函数,通过所述伪造函数获得传入所述窗口类函数的参数,得到所述弹出窗口的信息,所述弹出窗口的信息包括弹出窗口的网址和/或文本内容。
优选地,上述装置中,所述判断单元,具体用于:
将所述弹出窗口的网址和/或文本内容,与预先设定的规则库进行匹配,所述规则库包括下列规则中的至少一种:需要拦截的窗口的网址、允许弹出的窗口的网址、需要拦截的窗口涉及的内容、允许弹出的窗口涉及的内容;
根据匹配的规则,输出是否需要拦截弹出窗口的判断结果。
优选地,上述装置中,所述窗口类函数包括窗口类警告函数和窗口类打开函数。
从以上所述可以看出,本发明实施例提供的控制网页弹出窗口的方法及装置,不需要屏蔽浏览器的JavaScript脚本功能,不影响网页正常的脚本特效,并且,本发明实施例直接挂钩弹窗入口点函数,相对于使用全局消息钩子拦截系统中所有进程的指定消息,本发明实施例具有弹窗拦截针对性强,拦截效率高,且对系统性能影响小的优点。
附图说明
图1为本发明实施例提供的控制网页弹出窗口的方法的流程示意图;
图2为本发明实施例提供的控制网页弹出窗口的装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明进行详细描述。
在网页中嵌入JavaScript脚本代码,可以实现弹出窗口。通过调试器对窗口所属线程的调用栈进行分析可以得知:网页中的JavaScript脚本弹出窗口利用的是微软的一个动态链接库文件,具体为hmtl解析器模块(mshtml.dll)提供的接口。例如,在脚本代码中弹窗代码用的是“alert("Finished")”时,弹出一个窗口,其窗口内容为“Finished”。从该网页调用栈中可以清楚的看到窗口类警告函数(mshtml!CWindow::alert)正是与此对应的入口点函数。经过进一步研究发现,与此类似的,弹出新网页对应的入口点函数则是窗口类打开函数(mshtml!CWindow::OpenEx)。通过对动态链接库mshtml.dll的分析,发现可以从内存中分析出弹出窗口的内容以及弹出窗口的网页地址。
基于以上分析,本发明实施例提出了一种控制网页弹出窗口的方法,对动态链接库模块mshtml.dll中如上所述入口点函数挂钩,通过入口点函数参数分析窗口内容及新网页地址等信息,然后交给规则处理模块进行规则判断,最后根据返回结果进行拦截或放行,从而可以根据过滤规则实现有选择的弹窗拦截。请参照图1,本发明实施例所述控制网页弹出窗口的方法,包括以下步骤:
步骤11,挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息,所述预定动态链接库文件为预先确定的网页弹出窗口需要加载的动态链接库文件。
在微软的视窗操作系统下,不同的网页浏览器对应的动态链接库可能有所不同,例如,对于微软的IE浏览器,所述预定动态链接库文件具体为html解析器模块文件mshtml.dll;对于Firefox、Mozilla等其他非ie内核的浏览器,具体的动态链接库和与之相应的挂钩函数点需要根据情况分析确定。
具体的,上述步骤11中,可以通过在所述预定动态链接库文件的虚拟内存空间中,搜索与窗口类函数的内存特征相匹配的函数入口点;然后,在所述函数入口点挂钩一伪造函数,通过所述伪造函数获得传入所述窗口类函数的参数,得到所述弹出窗口的信息,所述弹出窗口的信息包括弹出窗口的网址和/或弹出窗口的文本内容,所述窗口类函数包括窗口类警告函数和窗口类打开函数。
步骤12,将弹出窗口的信息与预设规则进行匹配,判断是否需要拦截弹出窗口。
这里,可以将弹出窗口的网址和/或文本内容,与预先设定的规则库进行匹配,所述规则库具体可以包括下列规则中的至少一种:需要拦截的窗口的网址、允许弹出的窗口的网址、需要拦截的窗口涉及的内容、允许弹出的窗口涉及的内容。然后,根据匹配上的规则,输出是否需要拦截弹出窗口的判断结果。
步骤13,根据判断结果,禁止或允许所述弹出窗口的弹出。
通过以上步骤,本实施例实现了对弹窗的有效控制,即,可以根据事先确定的规则库以及截获的窗口相关信息,来判断是否需要禁止窗口的弹窗,可以有效地对恶意窗口进行拦截,减少或避免恶意弹窗所导致的占用系统资源、危害系统安全,提高用户网络浏览的安全性。并且,本实施例无需取消浏览器的JavaScript功能,能够不影响网页的显示特性。
在上述步骤11之前,本实施例还可以包括以下步骤,用以判断是否需要进入图1所示的流程:
步骤21,挂钩动态链接库加载函数的入口点函数,获得传入所述动态链接库加载函数的参数。
这里,对于微软视窗操作系统,动态链接库加载函数具体为kernel32.dll导出的函数LoadLibraryA、LoadLibraryW、LoadLibraryExA和LoadLibraryExW四个函数,这四个函数功能都是用来加载动态链接库。其中,kernel32.dll是Windows操作系统中内核级的动态链接库文件,用于控制系统的内存管理、数据的输入输出操作和中断处理。
步骤22,根据传入所述动态链接库加载函数的参数,判断当前加载的动态链接库文件是否为所述预定动态链接库文件。
这里,根据传入所述动态链接库加载函数的参数,是否与所述预定动态链接库文件的名称相匹配,可以判断加载的是否为所述预定动态链接库文件。
步骤23,在当前加载的动态链接库文件为所述预定动态链接库文件时,,执行所述挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息及后续步骤,即进入步骤11及其后续步骤;否则,执行所加载的动态链接库文件的原有逻辑。
下面以Windows视窗操作系统下的IE浏览器为例,通过一个具体示例对上述步骤进行更为详细的说明。
本示例提供的网页弹窗的控制方法,基于Windows平台挂钩技术。本示例通过挂钩动态链接库mshtml.dll内部函数mshtml!CWindow::alert(窗口类警告函数),mshtml!CWindow::OpenEx(窗口类打开函数)等,使得在mshtml.dll内部的原入口点的逻辑执行之前,与其对应的伪造函数先得到执行,在伪造函数内分析需要的信息,以决定是否拦截弹窗。采用本示例的方法可以成功实现对网页弹窗弹新窗口的拦截,本示例只是提供了一种思路和方案,并不用于限制本发明的保护范围。本示例提供的方法,包括以下步骤:
步骤31,挂钩kernel32.dll导出的函数:LoadLibraryA,LoadLibraryW,LoadLibraryExA和LoadLibraryExW四个函数,这四个函数功能都是用来加载动态链接库。
这里,kernel32.dll是Windows操作系统中内核级的动态链接库文件,用于控制系统的内存管理、数据的输入输出操作和中断处理。Windows系统中带有字符串参数的API函数通常都有W和A两个版本,分别对应于Unicode和ANSI版本。通过挂钩上述四个函数,可以根据传入上述函数的参数,判断加载的是否为预定动态链接库文件,该预定动态链接库文件是预先确定的用于控制弹出窗口的动态链接库文件,在本示例中该预定动态链接库文件为mshtml.dll。
步骤32,判断传入上述四个函数的第一个参数是否匹配字符串“mshtml.dll”。如果是则继续执行步骤33,否则交给系统按照上述四个函数的原始逻辑处理。
这里,上述四个函数的第一个参数都是指将要被系统加载的动态链接库的全路径,若该第一个参数中存在与字符串“mshtml.dll”相匹配的字符串,则说明加载的动态链接库文件是mshtml.dll,此时需要执行后续的步骤33以进行弹窗控制。
步骤33,在满足步骤32匹配的情况下,待上述四个函数被系统执行完(即,mshtml.dll被成功加载到进行用户内存空间),通过搜索加载的mshtml.dll的虚拟内存空间,匹配mshtml!CWindow::alert(窗口类警告函数),mshtml!CWindow::OpenEx(窗口类打开函数)等函数特征,通过内存特征搜索找到mshtml!CWindow::alert(窗口类警告函数),mshtml!CWindow::OpenEx(窗口类打开函数)等内部函数的入口点。
步骤34,在步骤33执行完成后,挂钩上述内部函数的入口点,替换为自己的处理函数(伪造函数)。
步骤35,当浏览器打开的网页有弹出窗口或者弹出新网页事件即将发生时,该伪造函数先于原始函数入口点被调用。
步骤36,这里,伪造函数声明与相应的原函数声明保持一致。即,int__stdcall CWindow__alert(int,unsigned__int16*)和int__stdcallCWindow__OpenEx(int,int,LPCWSTR Source,LPCWSTR lpString,int,__int16,void**ppvOut)。根据调试器分析得知,如上弹窗函数的第二个参数即为弹窗文本内容,本例中为“Finished”;如上弹网页函数的第三个参数即为将要打开的网页地址,本脚本的代码为“window.open('Noname1.html')”,从第三个参数可获取的数据为网页地址全路径“file://C:\Documents andSettings\Administrator\Noname1.html”
步骤37,在步骤36分析获取弹窗及弹新网页的信息后,将数据组织整理后统一发送给规则处理模块,并等待规则处理模块的返回结果。
步骤38,规则处理模块收到上述数据后,根据预先设定的规则进行匹配。例如,可以采用事先由用户指定过滤条件指定黑、白名单的机制或者形成规则库,也可以让用户直接指定进行拦截与否,并启用规则学习功能,还可以对消息进行统计以识别恶意性。最后,规则处理模块将是否拦截的决定以结果的形式返回给伪造函数。
步骤39,伪造函数等待到返回结果后,据此拦截或放行。
这里,若需要拦截弹窗,则不调用原始函数,并向原始函数返回失败的结果;若不需要拦截弹窗,则调用原函数入口点,并将其结果返回原始函数,这样原始函数被执行,窗口得以弹出。
从以上所述可以看出,本示例由于事先经过研究分析找到了浏览器弹窗及弹新网页的关键入口点,因而浏览器的弹窗口弹新网页动作都会被成功拦截,省去了禁用浏览器JavaScript脚本带来的其他问题。又由于此入口点仅仅是浏览器弹窗弹新网页才会被执行,对于其他程序的弹窗及弹新网页等操作不会经过此入口点,因而针对性强,不会像使用全局消息钩子拦截系统中所有进程的指定消息一般对系统性能产生较大不良影响,具有拦截效率高的优点。
基于以上实施例提供的方法,本发明实施例还提供了一种控制网页弹出窗口的装置,如图2所示,该装置包括:
第一挂钩单元,用于挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息,所述预定动态链接库文件为预先确定的网页弹出窗口需要加载的动态链接库文件;
第一判断单元,用于将弹出窗口的信息与预设规则进行匹配,判断是否需要拦截弹出窗口;
处理单元,用于根据判断结果,禁止或允许所述弹出窗口的弹出。
进一步的,该装置还可以包括:
第二挂钩单元,用于挂钩动态链接库加载函数的入口点函数,获得传入所述动态链接库加载函数的参数;
第二判断单元,用于根据传入所述动态链接库加载函数的参数,判断当前加载的动态链接库文件是否为所述预定动态链接库文件;
触发处理单元,用于在所述第二判断单元判断当前加载的动态链接库文件为所述预定动态链接库文件时,触发所述第一挂钩单元。
具体的,所述第一挂钩单元包括:
搜索单元,用于在所述预定动态链接库文件的虚拟内存空间中,搜索与窗口类函数的内存特征相匹配的函数入口点;
截获单元,用于在所述函数入口点挂钩一伪造函数,通过所述伪造函数获得传入所述窗口类函数的参数,得到所述弹出窗口的信息,所述弹出窗口的信息包括弹出窗口的网址和/或文本内容。
所述判断单元,具体用于:
将所述弹出窗口的网址和/或文本内容,与预先设定的规则库进行匹配,所述规则库包括下列规则中的至少一种:需要拦截的窗口的网址、允许弹出的窗口的网址、需要拦截的窗口涉及的内容、允许弹出的窗口涉及的内容;
根据匹配上的规则,输出是否需要拦截弹出窗口的判断结果。
这里,所述预定动态链接库文件为html解析器模块文件mshtml.dll,所述窗口类函数包括窗口类警告函数和窗口类打开函数。
此说明书中所描述的许多功能部件都被称为单元,以便更加特别地强调其实现方式的独立性。
本发明实施例中,单元可以用软件实现,以便由各种类型的处理器执行。举例来说,一个标识的可执行代码单元可以包括计算机指令的一个或多个物理或者逻辑块,举例来说,其可以被构建为对象、过程或函数。尽管如此,所标识单元的可执行代码无需物理地位于一起,而是可以包括存储在不同位里上的不同的指令,当这些指令逻辑上结合在一起时,其构成单元并且实现该单元的规定目的。
实际上,可执行代码单元可以是单条指令或者是许多条指令,并且甚至可以分布在多个不同的代码段上,分布在不同程序当中,以及跨越多个存储器设备分布。同样地,操作数据可以在单元内被识别,并且可以依照任何适当的形式实现并且被组织在任何适当类型的数据结构内。所述操作数据可以作为单个数据集被收集,或者可以分布在不同位置上(包括在不同存储设备上),并且至少部分地可以仅作为电子信号存在于系统或网络上。
在单元可以利用软件实现时,考虑到现有硬件工艺的水平,所以可以以软件实现的单元,在不考虑成本的情况下,本领域技术人员都可以搭建对应的硬件电路来实现对应的功能,所述硬件电路包括常规的超大规模集成(VLSI)电路或者门阵列以及诸如逻辑芯片、晶体管之类的现有半导体或者是其它分立的元件。单元还可以用可编程硬件设备,诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑设备等实现。
以上所述仅是本发明的实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种控制网页弹出窗口的方法,其特征在于,包括:
挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息,所述预定动态链接库文件为预先确定的网页弹出窗口需要加载的动态链接库文件;
将弹出窗口的信息与预设规则进行匹配,判断是否需要拦截弹出窗口;
根据判断结果,禁止或允许所述弹出窗口的弹出。
2.根据权利要求1所述的方法,其特征在于,在所述挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息之前,所述方法还包括:
挂钩动态链接库加载函数的入口点函数,获得传入所述动态链接库加载函数的参数;
根据传入所述动态链接库加载函数的参数,判断当前加载的动态链接库文件是否为所述预定动态链接库文件;
所述挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息具体为:
在当前加载的动态链接库文件为所述预定动态链接库文件时,挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息。
3.根据权利要求1或2所述的方法,其特征在于,所述挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息,包括:
在所述预定动态链接库文件的虚拟内存空间中,搜索与窗口类函数的内存特征相匹配的函数入口点;
在所述函数入口点挂钩一伪造函数,通过所述伪造函数获得传入所述窗口类函数的参数,得到所述弹出窗口的信息,所述弹出窗口的信息包括弹出窗口的网址和/或文本内容。
4.根据权利要求3所述的方法,其特征在于,所述将弹出窗口的信息与预设规则进行匹配,判断是否需要拦截弹出窗口,包括:
将所述弹出窗口的网址和/或文本内容,与预先设定的规则库进行匹配,所述规则库包括下列规则中的至少一种:需要拦截的窗口的网址、允许弹出的窗口的网址、需要拦截的窗口涉及的内容、允许弹出的窗口涉及的内容;
根据匹配的规则,输出是否需要拦截弹出窗口的判断结果。
5.根据权利要求4所述的方法,其特征在于,所述窗口类函数包括窗口类警告函数和窗口类打开函数。
6.一种控制网页弹出窗口的装置,其特征在于,包括:
第一挂钩单元,用于挂钩预定动态链接库文件的入口点函数,截获弹出窗口的信息,所述预定动态链接库文件为预先确定的网页弹出窗口需要加载的动态链接库文件;
第一判断单元,用于将弹出窗口的信息与预设规则进行匹配,判断是否需要拦截弹出窗口;
处理单元,用于根据判断结果,禁止或允许所述弹出窗口的弹出。
7.根据权利要求6所述的装置,其特征在于,还包括:
第二挂钩单元,用于挂钩动态链接库加载函数的入口点函数,获得传入所述动态链接库加载函数的参数;
第二判断单元,用于根据传入所述动态链接库加载函数的参数,判断当前加载的动态链接库文件是否为所述预定动态链接库文件;
触发处理单元,用于在所述第二判断单元判断当前加载的动态链接库文件为所述预定动态链接库文件时,触发所述第一挂钩单元。
8.根据权利要求6或7所述的装置,其特征在于,所述第一挂钩单元包括:
搜索单元,用于在所述预定动态链接库文件的虚拟内存空间中,搜索与窗口类函数的内存特征相匹配的函数入口点;
截获单元,用于在所述函数入口点挂钩一伪造函数,通过所述伪造函数获得传入所述窗口类函数的参数,得到所述弹出窗口的信息,所述弹出窗口的信息包括弹出窗口的网址和/或文本内容。
9.根据权利要求8所述的装置,其特征在于,所述判断单元,具体用于:
将所述弹出窗口的网址和/或文本内容,与预先设定的规则库进行匹配,所述规则库包括下列规则中的至少一种:需要拦截的窗口的网址、允许弹出的窗口的网址、需要拦截的窗口涉及的内容、允许弹出的窗口涉及的内容;
根据匹配的规则,输出是否需要拦截弹出窗口的判断结果。
10.根据权利要求9所述的装置,其特征在于,所述窗口类函数包括窗口类警告函数和窗口类打开函数。
CN201310263014.8A 2013-06-27 2013-06-27 一种控制网页弹出窗口的方法及装置 Active CN104252477B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310263014.8A CN104252477B (zh) 2013-06-27 2013-06-27 一种控制网页弹出窗口的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310263014.8A CN104252477B (zh) 2013-06-27 2013-06-27 一种控制网页弹出窗口的方法及装置

Publications (2)

Publication Number Publication Date
CN104252477A true CN104252477A (zh) 2014-12-31
CN104252477B CN104252477B (zh) 2018-06-15

Family

ID=52187380

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310263014.8A Active CN104252477B (zh) 2013-06-27 2013-06-27 一种控制网页弹出窗口的方法及装置

Country Status (1)

Country Link
CN (1) CN104252477B (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105303105A (zh) * 2015-10-20 2016-02-03 珠海市君天电子科技有限公司 窗口消息拦截方法、装置和终端设备
CN105608372A (zh) * 2016-01-15 2016-05-25 百度在线网络技术(北京)有限公司 一种检测应用被杀毒软件报毒的方法和装置
CN105975380A (zh) * 2016-05-26 2016-09-28 北京金山安全软件有限公司 一种处理弹窗的方法、装置及电子设备
CN106203069A (zh) * 2016-06-27 2016-12-07 北京金山安全软件有限公司 一种动态链接库文件的拦截方法、装置及终端设备
CN106325945A (zh) * 2016-08-26 2017-01-11 北京北信源软件股份有限公司 利用视窗操作系统的ie浏览器进行网络数据采集方法
CN106445603A (zh) * 2016-09-28 2017-02-22 腾讯科技(深圳)有限公司 程序处理方法和装置
CN107256147A (zh) * 2017-05-22 2017-10-17 努比亚技术有限公司 应用窗口的弹窗控制方法、终端及计算机可读存储介质
CN107330054A (zh) * 2017-06-28 2017-11-07 赵宇航 一种弹窗屏蔽方法及装置
CN108228680A (zh) * 2016-12-22 2018-06-29 广州市动景计算机科技有限公司 页面防劫持方法、装置及客户终端
CN109144608A (zh) * 2018-08-23 2019-01-04 深圳市元征科技股份有限公司 在应用程序中屏蔽控件应用的功能弹窗的方法及装置
CN110889116A (zh) * 2019-11-15 2020-03-17 珠海豹趣科技有限公司 一种广告拦截方法、装置及电子设备
CN111159599A (zh) * 2019-12-26 2020-05-15 珠海格力电器股份有限公司 一种处理广告的方法、装置、电子设备及存储介质
CN112905890A (zh) * 2021-03-04 2021-06-04 深信服科技股份有限公司 一种待拦截窗口识别方法、装置、设备及存储介质
CN113448668A (zh) * 2021-06-22 2021-09-28 北京百度网讯科技有限公司 一种跳过弹窗的方法、装置及电子设备
CN113761524A (zh) * 2021-09-03 2021-12-07 奇安信科技集团股份有限公司 激活窗口审计方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000062141A3 (en) * 1999-04-08 2001-01-04 Chicago Soft Ltd Method and system for dynamic injection of execution logic into a shared memory space of a windowed operating system
CN103034800A (zh) * 2012-12-14 2013-04-10 北京奇虎科技有限公司 用于拦截弹窗的装置和方法
CN103116723A (zh) * 2013-02-06 2013-05-22 北京奇虎科技有限公司 一种网址拦截处理的方法、装置和系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000062141A3 (en) * 1999-04-08 2001-01-04 Chicago Soft Ltd Method and system for dynamic injection of execution logic into a shared memory space of a windowed operating system
CN103034800A (zh) * 2012-12-14 2013-04-10 北京奇虎科技有限公司 用于拦截弹窗的装置和方法
CN103116723A (zh) * 2013-02-06 2013-05-22 北京奇虎科技有限公司 一种网址拦截处理的方法、装置和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
田长根等: "基于hook技术拦截IE 弹出广告窗口的实现", 《计算机与现代化》 *

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105303105A (zh) * 2015-10-20 2016-02-03 珠海市君天电子科技有限公司 窗口消息拦截方法、装置和终端设备
CN105608372B (zh) * 2016-01-15 2019-07-23 百度在线网络技术(北京)有限公司 一种检测应用被杀毒软件报毒的方法和装置
CN105608372A (zh) * 2016-01-15 2016-05-25 百度在线网络技术(北京)有限公司 一种检测应用被杀毒软件报毒的方法和装置
CN105975380A (zh) * 2016-05-26 2016-09-28 北京金山安全软件有限公司 一种处理弹窗的方法、装置及电子设备
CN105975380B (zh) * 2016-05-26 2019-10-15 珠海豹趣科技有限公司 一种处理弹窗的方法、装置及电子设备
CN106203069A (zh) * 2016-06-27 2016-12-07 北京金山安全软件有限公司 一种动态链接库文件的拦截方法、装置及终端设备
CN106203069B (zh) * 2016-06-27 2019-10-15 珠海豹趣科技有限公司 一种动态链接库文件的拦截方法、装置及终端设备
CN106325945A (zh) * 2016-08-26 2017-01-11 北京北信源软件股份有限公司 利用视窗操作系统的ie浏览器进行网络数据采集方法
CN106445603A (zh) * 2016-09-28 2017-02-22 腾讯科技(深圳)有限公司 程序处理方法和装置
CN108228680A (zh) * 2016-12-22 2018-06-29 广州市动景计算机科技有限公司 页面防劫持方法、装置及客户终端
CN107256147A (zh) * 2017-05-22 2017-10-17 努比亚技术有限公司 应用窗口的弹窗控制方法、终端及计算机可读存储介质
CN107330054A (zh) * 2017-06-28 2017-11-07 赵宇航 一种弹窗屏蔽方法及装置
CN109144608A (zh) * 2018-08-23 2019-01-04 深圳市元征科技股份有限公司 在应用程序中屏蔽控件应用的功能弹窗的方法及装置
CN109144608B (zh) * 2018-08-23 2021-12-07 深圳市元征科技股份有限公司 在应用程序中屏蔽控件应用的功能弹窗的方法及装置
CN110889116A (zh) * 2019-11-15 2020-03-17 珠海豹趣科技有限公司 一种广告拦截方法、装置及电子设备
CN110889116B (zh) * 2019-11-15 2024-02-27 珠海豹趣科技有限公司 一种广告拦截方法、装置及电子设备
CN111159599A (zh) * 2019-12-26 2020-05-15 珠海格力电器股份有限公司 一种处理广告的方法、装置、电子设备及存储介质
CN112905890A (zh) * 2021-03-04 2021-06-04 深信服科技股份有限公司 一种待拦截窗口识别方法、装置、设备及存储介质
CN113448668A (zh) * 2021-06-22 2021-09-28 北京百度网讯科技有限公司 一种跳过弹窗的方法、装置及电子设备
CN113448668B (zh) * 2021-06-22 2023-09-29 北京百度网讯科技有限公司 一种跳过弹窗的方法、装置及电子设备
CN113761524A (zh) * 2021-09-03 2021-12-07 奇安信科技集团股份有限公司 激活窗口审计方法及系统

Also Published As

Publication number Publication date
CN104252477B (zh) 2018-06-15

Similar Documents

Publication Publication Date Title
CN104252477A (zh) 一种控制网页弹出窗口的方法及装置
US20240121266A1 (en) Malicious script detection
US9712560B2 (en) Web page and web browser protection against malicious injections
CN110266669B (zh) 一种Java Web框架漏洞攻击通用检测与定位的方法及系统
Likarish et al. Obfuscated malicious javascript detection using classification techniques
US9509714B2 (en) Web page and web browser protection against malicious injections
Liu et al. A novel approach for detecting browser-based silent miner
CN103309808B (zh) 基于标签的安卓用户隐私泄露黑盒检测方法及系统
CN102930211A (zh) 一种多核浏览器中拦截恶意网址的方法和多核浏览器
CN102932356A (zh) 多核浏览器中恶意网址拦截方法和装置
CN102831021A (zh) 插件拦截或清理的方法及装置
US9038161B2 (en) Exploit nonspecific host intrusion prevention/detection methods and systems and smart filters therefor
CN105653949B (zh) 一种恶意程序检测方法及装置
CN108090360B (zh) 一种基于行为特征的安卓恶意应用分类方法及系统
Aafer et al. Android {SmartTVs} vulnerability discovery via {log-guided} fuzzing
CN111191243A (zh) 一种漏洞检测方法、装置和存储介质
Cao et al. JShield: Towards real-time and vulnerability-based detection of polluted drive-by download attacks
CN107103237A (zh) 一种恶意文件的检测方法及装置
CN103617390A (zh) 一种恶意网页判断方法、装置和系统
CN110336812A (zh) 资源拦截处理方法、装置、计算机设备和存储介质
Xiao et al. Detection and prevention of code injection attacks on HTML5-based apps
CN111222131B (zh) 一种互联网诈骗apk的识别方法
CN116340943A (zh) 应用程序保护方法、装置、设备、存储介质和程序产品
Zhang et al. A php and jsp web shell detection system with text processing based on machine learning
Zhang et al. A multiclass detection system for android malicious apps based on color image features

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