CN101192217A - 消除超文本标记语言中有害代码的方法 - Google Patents

消除超文本标记语言中有害代码的方法 Download PDF

Info

Publication number
CN101192217A
CN101192217A CNA2006101459706A CN200610145970A CN101192217A CN 101192217 A CN101192217 A CN 101192217A CN A2006101459706 A CNA2006101459706 A CN A2006101459706A CN 200610145970 A CN200610145970 A CN 200610145970A CN 101192217 A CN101192217 A CN 101192217A
Authority
CN
China
Prior art keywords
html
code
content
html code
server
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
CNA2006101459706A
Other languages
English (en)
Other versions
CN101192217B (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN2006101459706A priority Critical patent/CN101192217B/zh
Publication of CN101192217A publication Critical patent/CN101192217A/zh
Priority to HK08110079.5A priority patent/HK1117245A1/xx
Application granted granted Critical
Publication of CN101192217B publication Critical patent/CN101192217B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种消除超文本标记语言HTML中有害代码的方法,包括步骤:遍历解析输入的HTML代码过程中:补齐不完整的HTML标签;根据预定义的规则对HTML代码进行过滤;遍历解析经补齐和过滤的HTML代码过程中:对HTML代码根据需求按照预置的对应操作进行修正;根据预置的代码表将HTML代码中浏览器非标准代码转换为标准代码。可以在用户输入包含HTML内容的代码并提交后由服务器进行所述方法的处理,也可以在数据库将存储的包含HTML内容的代码经由服务器发送到客户端的过程中进行所述方法的处理。利用本发明,可以消除超文本标记语言中的有害代码,使网页能够正常显示,从而保障服务器的性能,同时提高服务器的安全性,并在该过程中不影响用户的感受。

Description

消除超文本标记语言中有害代码的方法
技术领域
本发明涉及计算机网络技术,特别涉及一种消除超文本标记语言(HyperText Marked Language,HTML)中有害代码的方法。
背景技术
超文本标记语言是一种用来制作超文本文档的简单标记语言。超文本传输协议(Hyper Text Transportation Protocol,HTTP)规定了运行HTML文档时所遵循的规则和进行的操作。用HTML编辑的超文本文档为HTML文档,它能应用于各种操作系统平台。自1990年以来HTML就一直被用作WWW(WorldWide Web,万维网,也可简写为Web)的信息表示语言。HTML的普遍应用带来了超文本的效果,即用户可以通过点击链接转入相关的主题,发送电子邮件,填写表单并联机提交,以及访问数据库和信息资源。其中,无论Web页面包括动画、多媒体、图形还是其它复杂格式的内容,其基础都是HTML。
图1示出了典型的包含用户所在的客户端、服务器和数据库的网络结构。
用户使用客户端,通过网络服务器提供的Web页面输入带有HTML代码的内容,服务器将该内容存入数据库,当用户请求显示之前输入的内容时,数据库将该内容通过服务器发送给用户所在的客户端。
用户使用客户端从网络服务器提供的Web页面获取信息时,Web页面上可以提供输入框,让用户输入带有HTML内容的信息,之后,网络服务器进行信息处理并与用户之间进行信息交互。用户在输入带有HTML内容的信息时,实际上输入的是包括带有HTML内容的代码。但是,用户输入的可能是一些错误的HTML代码,或者输入的是一些特殊的符号,例如“<”,“>”,“‘”之类的特殊符号,这些特殊符号对应特殊的HTML代码,再或者是用户输入信息时,机器产生冗余而形成错误的HTML代码。这些情况下,如果网络服务器在进行信息处理和与用户之间交互的过程中不对这些特殊或错误的HTML代码做一定处理的话,很可能在显示这些HTML代码时导致Web页面布局等出现不能正常显示的问题,会降低服务器的性能,因此这些特殊或错误的HTML代码是有害的。
另外,有很多木马攻击的方式都是通过输入有害的HTML代码或者Javascript代码来利用系统漏洞对网络实施攻击,影响了服务器的安全性。
为了避免以上的问题,现有技术中有一种消除HTML语言中有害代码的方法是这样处理的:
使用一种称为ubb code的简化HTML格式,其比HTML具有更安全的网页代码。该方法通过禁止用户输入HTML代码,而是只允许用户输入指定的ubb代码来代替HTML代码,然后在服务器端将ubb转换为HTML后再执行后续的操作,以保障服务器性能的同时提高系统的安全性。
但是,该方法要求用户熟悉ubb,而普通用户只想通过简单的复制粘贴等操作提交HTML内容,因此,对不熟悉ubb的用户来说,该方法难以实现。另外,即使是熟悉ubb的用户,在使用时也需要手动或者通过工具把要输入的HTML代码转换为指定的ubb代码,这样,影响了用户使用时的感受。
发明内容
本发明的目的是提供一种消除超文本标记语言中有害代码的方法,以克服显示HTML代码时导致的Web页面布局等不正常显示的问题及服务器安全性受破坏的问题,还克服了现有技术中难以实现不熟悉ubb的用户输入过程中消除有害HTML代码的缺点和影响用户感受的缺点。
为解决上述技术问题,本发明提供一种消除超文本标记语言中有害代码的方法是这样实现的:
一种消除超文本标记语言HTML中有害代码的方法,包括步骤:
遍历解析输入的HTML代码过程中:补齐不完整的HTML标签;根据预定义的规则对HTML代码进行过滤;
遍历解析经补齐和过滤的HTML代码过程中:对HTML代码根据需求按照预置的对应操作进行修正;根据预置的代码表将HTML代码中浏览器非标准代码转换为标准代码。
所述根据预定义的规则进行过滤由以下方式实现:
预定义保留规则:保留标签库中存储允许接收的HTML标签,对符合保留标签库的标签做保留处理;
预定义去除规则:去除标签库中存储不允许接收的HTML标签,对符合去除标签库的标签做去除处理;
预定义默认规则:对不在保留标签库和去除标签库中的标签仅去除其HTML标签,保留该标签下的内容;
根据预定义的保留规则、去除规则和默认规则对解析结果进行过滤。
预定义规则进一步包括:增加和/或减少和/或改变所述保留标签库和/或去除标签库中的标签。
所述修正步骤由以下方式实现:
根据检验父子关系正确性的需求,根据对应的删除操作,删除父子关系不正确的节点;和/或
根据检验超链接正确性的需求,利用正则表达式对不正确的超链接按照对应的操作进行删除,或以普通文本进行处理;和/或
根据限制输入的HTML代码内容的需求,根据预置的恶意代码库和/或根据预置的限制词汇库,利用正则表达式删除或替换该恶意代码和/或词汇。
所述转换步骤由以下方式实现:
根据预置的转换代码表,将HTML的文本中特殊代码和/或语法关键字转换为标准代码。
所述补齐和过滤步骤在两次遍历解析过程中分别完成。
所述修正和转换步骤在两次遍历解析过程中分别完成。
所述遍历解析采用SAX解析或HTML DOM解析。
一种提交和回显包含HTML内容的方法,由以下步骤实现:
A.用户通过终端输入包含HTML代码的内容并提交到服务器;
B.服务器将用户提交的包含HTML代码存入数据库;
C.用户请求显示所述输入的包含HTML代码的内容;
D.数据库发送用户请求的包含HTML代码的内容到服务器;
E.服务器对收到包含HTML代码的内容进行以下处理:
遍历解析输入的HTML代码过程中:补齐不完整的HTML标签;根据预定义的规则对HTML代码进行过滤;
遍历解析经补齐和过滤的HTML代码过程中:对HTML代码根据需求按照预置的对应操作进行修正;根据预置的代码表将HTML代码中浏览器非标准代码转换为标准代码;
F.将经过处理的包含HTML代码的内容发送到客户端并显示。
一种提交和回显包含HTML内容的方法,由以下步骤实现:
A.用户通过终端输入包含HTML代码的内容,并提交到服务器;
B.服务器对收到包含HTML代码的内容进行以下处理:
遍历解析输入的HTML代码过程中:补齐不完整的HTML标签;根据预定义的规则对HTML代码进行过滤;
遍历解析经补齐和过滤的HTML代码过程中:对HTML代码根据需求按照预置的对应操作进行修正;根据预置的代码表将HTML代码中浏览器非标准代码转换为标准代码;
C.将经过处理的包含HTML代码的内容发送到数据库;
D.用户请求显示之前输入的包含HTML代码的内容;
E.数据库发送用户请求的包含HTML代码的内容经由到服务器到客户端。
由以上本发明提供的技术方案可见,本发明在包含HTML代码的内容经过服务器的过程中,由服务器通过对这些代码进行补齐、过滤、修正和转换处理,消除了超文本标记语言中的有害代码,使网页能够正常显示,从而保障了服务器的性能,同时提高了服务器的安全性,并在该过程中不影响用户的感受。
附图说明
图1为包含用户客户端、服务器和数据库的网络结构图;
图2为本发明消除HTML中有害代码方法的一个实施例的流程图;
图3为本发明提交和回显包含HTML内容方法的一个实施例的流程图;
图4为本发明提交和回显包含HTML内容方法的另一实施例的流程图。
具体实施方式
本发明的核心是包含HTML代码的内容经过服务器的过程中,由服务器通过对这些代码进行补齐、过滤、修正和转换步骤来消除其中的有害代码。具体实施时,可以是用户输入的包含HTML代码的内容经过服务器发送到数据库的过程中,这些代码由服务器进行补齐、过滤、修正和转换这些操作后再存入数据库,或者是在数据库将存储的HTML代码经过服务器显示给客户端过程中,由服务器对这些代码进行补齐、过滤、修正和转换这些操作。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和实施方式对本发明作进一步的详细说明。
本领域人员知道,HTML属于文档对象模型(Document Object Module,DOM),DOM是万维网联盟(W3C)定义的一种标准文档对象模型,该模型以树形结构表示了HTML文档。HTML中的标签或标签的内容是节点,各个节点被视为DOM文档对象模型中的各种类型的Node对象,DOM详细定义了各个节点的类型。现有技术中可以用SAX对DOM进行遍历解析。SAX是解析DOM文档对象模型的一种事件驱动方式,具体为SAX解析器装载DOM文档后,在对DOM文档中的节点进行解析处理时,产生一系列的事件,根据被触发的事件,对DOM文档中的节点做出处理。除利用SAX外,也可以利用其它方法对HTML代码进行遍历解析,例如HTML DOM,该遍历解析方法与利用SAX的方法类似。
那么,本发明在遍历解析输入的包含HTML代码的内容的过程中,需要经过补齐、过滤、修正和转换操作。以下以一个实施例来说明本发明。
图2示出了本发明一个实施例的流程。
步骤201:对不完整的HTML标签进行补齐。
由于HTML的标签是成对的,包含不成对标签的HTML代码是错误的HTML代码,该步骤即是将不成对的标签进行补齐。可以利用栈来记录标签,这是本领域技术人员常用的方法。具体的,利用栈的先进先出的特点,当读到一个开始标签时,推送该标签到栈中,当读到一个结束标签时,弹出栈中的该标签,这样可以检验标签是否成对出现,并可以在检测到标签不成对时补齐缺失的标签。
步骤202:根据预先定义的规则对HTML代码进行过滤。
该步骤是对输入的HTML代码中的标签进行逐个扫描,对扫描到的结果根据预先定义的规则进行过滤。其中,过滤处理具体可以为保留和去除。规则的定义包含以下几种方式:
A.定义可以接收的HTML标签的为保留标签库,对保留标签库中的HTML标签的处理规则为保留。该规则检测扫描到的HTML标签是否为保留标签库中的标签,如果是,则按照该规则对该HTML代码进行保留处理后,即留下该HTML标签和内容。
B.定义需要去除的HTML标签为去除标签库,对去除标签库中的HTML标签的处理规则为保留。该规则检测扫描到的HTML标签是否为去除标签库中的比较,如果是,则按照该规则去除该HTML标签下的子标签和该标签下的内容。该步骤中,可以定义的HTML标签包括错误标签,还包括恶意代码标签。例如可以包括所有已知的恶意Javascript代码,这样按照该步骤的规则可以将这类的恶意代码去除,从而提高了服务器的安全性。
另外,还可以对不在上述两种标签库中的HTML标签做默认处理,例如该默认处理为只去除该HTML标签,而保留该标签下的内容。
以上标签库中的标签可以预先定义,并且可以根据情况改变标签库中的标签。
通过该步骤,保证保留了允许的HTML标签,并去除了可能有害的HTML标签,还对不在保留标签库和去除标签库中的HTML标签进行去除标签处理,只保留其内容,从而不影响页面正常显示。这样,只留下了真正需要处理的内容,为下面的步骤减轻了处理负担。
以上步骤201和202可以在一次遍历解析中完成。具体的,可以在一次SAX解析的过程中完成,并可以在利用SAX解析HTML时,对步骤201和202的操作混合执行,即不分先后,只需满足任一步骤的条件即可执行。
例如HTML代码格式为<tr><td>文本</tr>,本领域技术人员知道,HTML的标签是成对的,因此该HTML代码中缺少对应的</td>,执行步骤201,补齐该标签,补齐后的结果为<tr><td>文本</td></tr>。
对于步骤202,例如HTML代码为:
<table width=″100%″><tr><td>文本</td></tr></table>    (*)
该段代码中包含table标签,tr标签。td标签和文本。利用SAX对该段代码进行解析时,对逐个标签进行扫描,每遇到一个标签时可以触发相应的事件,从而得到该标签的各种属性,这样,就可以按照步骤202中定义的规则库对该标签进行相应的处理。例如,扫描到<table>,且该标签属于保留标签库,则保留*代表的这一行代码;反之,如果该标签属于去除标签库,则去除*代表的这一行代码;另外,如果没有对该标签进行规则定义,则执行默认操作,即去除该标签,而保留剩下的内容,即保留<tr><td>文本</td></tr>。
这样,经过步骤201和202,完成对包含HTML代码内容的补齐和过滤处理。显而易见的,步骤201和步骤202也可以各在一次遍历解析中完成,例如各在一次SAX解析中完成。
步骤203:根据自定义的处理需求对HTML标签的细节进行修正。
前述步骤是对HTML代码进行简单的保留、去除和补齐处理,该步骤则是对HTML代码的的细节,即对其标签或属性进行修正处理。对这些细节的具体处理可以根据不同的需求进行。
需求1:例如需要检验HTML代码中标签间的父子关系的正确性时,采用遍历的方法检验。以检验HTML代码中<table>的标签和<td><tr>标签间父子关系的正确性为例,按照如下处理:
if(如果这个节点type==Node.ELEMENT_NODE &&节点name是tr)
{
  if(如果这个节点的父节点name不是table)
    去除这个节点和子节点,继续遍历条件
}
else if(如果这个节点type==Node.ELEMENT_NODE &&节点name是td)
{
   if(如果这个节点的父节点name不是tr||这个节点的父节点的父节点
name不是table)
    去除这个节点和子节点,继续遍历条件
}
其中,节点可以是HTML代码中的一对标签,或标签的内容,或标签下的文本。
例如按照该遍历方法检验以下代码时:
<tr><td>文本</td></tr>
这段代码必须在父标签<table>内才是完整的,即该段代码的父子关系不正确,按照上述处理方法,去除<tr><td></td></tr>。
这样,利用类似的遍历方法,检验了HTML代码中的父子关系的正确性。
需求2:本步骤需要限制HTML代码中的内容,例如要限制超链接a标签中的href属性,可以用简单的正则表达式处理。HTML代码中的a标签例如<a href=″http://club.china.alibaba.com″></a>。
以允许输入类似http://www.xxx.com的网址为例,可以利用
^((http|ftp|https):\\/\\/(\\S+|\\n))|(www\\.(\\S+|\\n))
这一正则表达式处理,该正则表达式的意思是设置了对超链接的限制条件:必须是以http或ftp或https开头,之后必须是://,之后可以没有www,但是如果有www则必须是www的形式。这样,由正则表达式对HTML代码中的超链接作了限制,以检验超链接的正确性。如果不符合正则表达式的要求,则返回错误信息,并不把该内容作为超链接处理,例如可以作删除处理,还可以按照普通文本的形式输出以显示在页面上。
需求3:本步骤需要对HTML代码的一些内容进行限制,如禁止或进行替换。例如输入的是恶意代码,可能需要保留这个标签,而不是简单的去除,则可以将恶意代码替换成允许接收的代码。再例如文本中存在反动、色情的词汇,将该类文字去除,还可以是将这些词汇进行替换.根据该需求,可以设置恶意代码库,还可以设置限制词汇库,以对HTML代码的内容做相应的处理。
具体的处理过程,可以采用正则表达式,对检测到的属于上述恶意代码库和/或限制词汇库的代码或内容进行替换和删除等操作。
当然,本步骤还可能包括其它需求,在此不再例举。
步骤204:将HTML代码中的非标准代码转换成标准代码。
文本中经常有一些非标准代码,如\n,\r之类的特殊代码,实际上是表示换行,但是浏览器把这类代码当作普通文本,而不会解析这种代码代表的意义,因此会使浏览器的页面显示出问题;文本中还经常有HTML的语法关键字,如“<”、“>”这类代码,也会使浏览器的页面显示出问题,则该步骤将这些代码转换为浏览器可以解析的代码,例如将“>”转换为“&gt”,将“\n”转换为“<br>”,这样,浏览器可以解析这一经过转换的标准代码,因此,可以避免浏览器的页面显示出现问题。
具体的,可以预置一个代码转换表,将浏览器不能解析的代码映射为浏览器可以解析的标准代码。预置的代码表可以如下表所示:
想表达的意图 标准代码 想表达的意图 标准代码
回车换行 <br> 空格 &nbsp
&(and符号) &amp <(左尖括号、小于号) &lt
>(右尖括号、大于号) &gt …… ……
表1.非标准代码与标准代码的映射表
与步骤201和202所述的相类似,步骤203和204可以在一次解析的过程中完成,例如可以在一次SAX解析的过程中完成,并可以在利用SAX解析时,对步骤203和204的操作混合执行,即不分先后,只需满足任一步骤的条件即可执行。同样显而易见的,步骤203和步骤204也可以各在一次遍历解析中完成,例如各在一次SAX解析中完成。
上述步骤201至204可以应用在用户输入的包含HTML代码的内容提交和回显过程中经过服务器的不同阶段,即在不同的时机对包含HTML代码的内容作处理,都可以满足本发明的目的,即消除包含HTML代码的内容中的有害代码。以下举两个实施例加以说明。
图3示出了第一个实施例处理流程。
301:用户通过终端输入包含HTML代码的内容,并提交到服务器;
302:服务器将用户提交的包含HTML代码存入数据库;
303:用户请求显示之前输入的包含HTML代码的内容;
304:数据库发送用户请求的包含HTML代码的内容到服务器;
305:服务器对收到包含HTML代码的内容做如下处理后发送到用户所在的客户端并显示:
遍历解析输入的HTML代码过程中:补齐不完整的HTML标签;根据预定义的规则对HTML代码进行过滤;
遍历解析经补齐和过滤的HTML代码过程中:对HTML代码根据需求按照预置的对应操作进行修正;根据预置的代码表将HTML代码中浏览器非标准代码转换为标准代码。
上述处理即为步骤201至204所描述方法的处理过程。
这种情况是在每次用户请求显示之前输入的包含HTML代码的内容时,由服务器对该内容做消除有害HTML代码的处理,再发送到用户所在的客户端并显示。
第二实施例与此类似,图4示出了第二个实施例的处理流程。
401:用户通过终端输入包含HTML代码的内容,并提交到服务器;
402:服务器对收到包含HTML代码的内容做如下处理后发送到数据库;
遍历解析输入的HTML代码过程中:补齐不完整的HTML标签;根据预定义的规则对HTML代码进行过滤;
遍历解析经补齐和过滤的HTML代码过程中:对HTML代码根据需求按照预置的对应操作进行修正;根据预置的代码表将HTML代码中浏览器非标准代码转换为标准代码。
上述处理即为步骤201至204所描述方法的处理过程。
403:用户请求显示之前输入的包含HTML代码的内容;
404:数据库发送用户请求的包含HTML代码的内容到服务器,再由服务器转发到用户所在的客户端并显示。
这种情况是在用户输入包含HTML代码的内容并提交时,由服务器对该内容做消除有害HTML代码的处理,再发送到数据库,当用户请求显示之前输入的包含HTML代码的内容时,数据库直接将该内容通过服务器发送到用户所在的客户端,且这一过程中服务器不需再对包含HTML代码的内容做处理,能使包含该内容的浏览器页面正常显示。
由以上实施例可见,本发明在包含HTML代码的内容经过服务器的过程中,由服务器通过对这些代码进行补齐、过滤、修正和转换处理,可以有效消除HTML中的有害代码,使Web页面可以正常显示,从而保障了服务器的性能,并可以防止恶意代码进行的网络攻击,提高了服务器的安全性。
虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,希望所附的权利要求包括这些变形和变化而不脱离本发明的精神。

Claims (10)

1.一种消除超文本标记语言HTML中有害代码的方法,其特征在于,包括步骤:
遍历解析输入的HTML代码过程中:补齐不完整的HTML标签;根据预定义的规则对HTML代码进行过滤;
遍历解析经补齐和过滤的HTML代码过程中:对HTML代码根据需求按照预置的对应操作进行修正;根据预置的代码表将HTML代码中浏览器非标准代码转换为标准代码。
2.如权利要求1所述的方法,其特征在于,所述根据预定义的规则进行过滤由以下方式实现:
预定义保留规则:保留标签库中存储允许接收的HTML标签,对符合保留标签库的标签做保留处理;
预定义去除规则:去除标签库中存储不允许接收的HTML标签,对符合去除标签库的标签做去除处理;
预定义默认规则:对不在保留标签库和去除标签库中的标签仅去除其HTML标签,保留该标签下的内容;
根据预定义的保留规则、去除规则和默认规则对解析结果进行过滤。
3.如权利要求2所述的方法,其特征在于,预定义规则进一步包括:增加和/或减少和/或改变所述保留标签库和/或去除标签库中的标签。
4.如权利要求1所述的方法,其特征在于,所述修正步骤由以下方式实现:
根据检验父子关系正确性的需求,根据对应的删除操作,删除父子关系不正确的节点;和/或
根据检验超链接正确性的需求,利用正则表达式对不正确的超链接按照对应的操作进行删除,或以普通文本进行处理;和/或
根据限制输入的HTML代码内容的需求,根据预置的恶意代码库和/或根据预置的限制词汇库,利用正则表达式删除或替换该恶意代码和/或词汇。
5.如权利要求1所述的方法,其特征在于,所述转换步骤由以下方式实现:
根据预置的转换代码表,将HTML的文本中特殊代码和/或语法关键字转换为标准代码。
6.如权利要求1所述的方法,其特征在于,所述补齐和过滤步骤在两次遍历解析过程中分别完成。
7.如权利要求1所述的方法,其特征在于,所述修正和转换步骤在两次遍历解析过程中分别完成。
8.如权利要求1、6或7任一项所述的方法,其特征在于,所述遍历解析采用SAX解析或HTML DOM解析。
9.一种提交和回显包含HTML内容的方法,其特征在于,由以下步骤实现:
A.用户通过终端输入包含HTML代码的内容并提交到服务器;
B.服务器将用户提交的包含HTML代码存入数据库;
C.用户请求显示所述输入的包含HTML代码的内容;
D.数据库发送用户请求的包含HTML代码的内容到服务器;
E.服务器对收到包含HTML代码的内容进行以下处理:
遍历解析输入的HTML代码过程中:补齐不完整的HTML标签;根据预定义的规则对HTML代码进行过滤;
遍历解析经补齐和过滤的HTML代码过程中:对HTML代码根据需求按照预置的对应操作进行修正;根据预置的代码表将HTML代码中浏览器非标准代码转换为标准代码;
F.将经过处理的包含HTML代码的内容发送到客户端并显示。
10.一种提交和回显包含HTML内容的方法,其特征在于,由以下步骤实现:
A.用户通过终端输入包含HTML代码的内容,并提交到服务器;
B.服务器对收到包含HTML代码的内容进行以下处理:
遍历解析输入的HTML代码过程中:补齐不完整的HTML标签;根据预定义的规则对HTML代码进行过滤;
遍历解析经补齐和过滤的HTML代码过程中:对HTML代码根据需求按照预置的对应操作进行修正;根据预置的代码表将HTML代码中浏览器非标准代码转换为标准代码;
C.将经过处理的包含HTML代码的内容发送到数据库;
D.用户请求显示之前输入的包含HTML代码的内容;
E.数据库发送用户请求的包含HTML代码的内容经由到服务器到客户端。
CN2006101459706A 2006-11-28 2006-11-28 消除超文本标记语言中有害代码的方法 Expired - Fee Related CN101192217B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2006101459706A CN101192217B (zh) 2006-11-28 2006-11-28 消除超文本标记语言中有害代码的方法
HK08110079.5A HK1117245A1 (en) 2006-11-28 2008-09-10 Method for removing harmful codes in hyper text markup language

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2006101459706A CN101192217B (zh) 2006-11-28 2006-11-28 消除超文本标记语言中有害代码的方法

Publications (2)

Publication Number Publication Date
CN101192217A true CN101192217A (zh) 2008-06-04
CN101192217B CN101192217B (zh) 2010-07-21

Family

ID=39487214

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006101459706A Expired - Fee Related CN101192217B (zh) 2006-11-28 2006-11-28 消除超文本标记语言中有害代码的方法

Country Status (2)

Country Link
CN (1) CN101192217B (zh)
HK (1) HK1117245A1 (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102541533A (zh) * 2010-12-27 2012-07-04 北大方正集团有限公司 页面显示方法和设备
CN102880606A (zh) * 2011-07-11 2013-01-16 百度在线网络技术(北京)有限公司 一种计算机实现的用于优化标记语言文本的方法与设备
CN102999723A (zh) * 2012-11-20 2013-03-27 焦点科技股份有限公司 主动防御xss攻击的数据防御组件生成方法及其装置
US8453041B2 (en) 2009-11-05 2013-05-28 International Business Machines Corporation Obscuring information in messages using compression with site-specific prebuilt dictionary
US8539224B2 (en) 2009-11-05 2013-09-17 International Business Machines Corporation Obscuring form data through obfuscation
CN103365640A (zh) * 2012-03-30 2013-10-23 中兴通讯股份有限公司 层叠样式表样式转换方法及装置
CN103391520A (zh) * 2012-05-08 2013-11-13 腾讯科技(深圳)有限公司 一种拦截恶意短信的方法、终端、服务器及系统
CN103577188A (zh) * 2013-10-24 2014-02-12 北京奇虎科技有限公司 防御跨站脚本攻击的方法及装置
CN103605514A (zh) * 2013-11-11 2014-02-26 北京奇虎科技有限公司 一种前端模板的处理方法及装置
CN104750669A (zh) * 2013-12-30 2015-07-01 珠海金山办公软件有限公司 一种待粘贴对象的处理方法及装置
CN105740308A (zh) * 2015-12-19 2016-07-06 哈尔滨安天科技股份有限公司 基于超文本标记语言结构的网站暗链检测方法及系统
CN105912140A (zh) * 2016-04-08 2016-08-31 乐视控股(北京)有限公司 信息存储方法及装置
CN107967245A (zh) * 2017-12-07 2018-04-27 泰康保险集团股份有限公司 数据处理方法、装置、终端和存储介质
CN109683906A (zh) * 2018-12-25 2019-04-26 北京小米移动软件有限公司 处理html代码片段的方法及装置
CN114398578A (zh) * 2021-12-23 2022-04-26 网易有道信息技术(北京)有限公司 用于对html字符串进行预处理的方法及其相关产品

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8453041B2 (en) 2009-11-05 2013-05-28 International Business Machines Corporation Obscuring information in messages using compression with site-specific prebuilt dictionary
US8539224B2 (en) 2009-11-05 2013-09-17 International Business Machines Corporation Obscuring form data through obfuscation
US8453040B2 (en) 2009-11-05 2013-05-28 International Business Machines Corporation Obscuring information in messages using compression with site-specific prebuilt dictionary
CN102541533B (zh) * 2010-12-27 2014-12-17 北大方正集团有限公司 页面显示方法和设备
CN102541533A (zh) * 2010-12-27 2012-07-04 北大方正集团有限公司 页面显示方法和设备
CN102880606A (zh) * 2011-07-11 2013-01-16 百度在线网络技术(北京)有限公司 一种计算机实现的用于优化标记语言文本的方法与设备
CN102880606B (zh) * 2011-07-11 2017-03-15 百度在线网络技术(北京)有限公司 一种计算机实现的用于优化标记语言文本的方法与设备
CN103365640A (zh) * 2012-03-30 2013-10-23 中兴通讯股份有限公司 层叠样式表样式转换方法及装置
CN103391520A (zh) * 2012-05-08 2013-11-13 腾讯科技(深圳)有限公司 一种拦截恶意短信的方法、终端、服务器及系统
CN103391520B (zh) * 2012-05-08 2016-01-20 腾讯科技(深圳)有限公司 一种拦截恶意短信的方法、终端、服务器及系统
CN102999723B (zh) * 2012-11-20 2015-11-18 焦点科技股份有限公司 主动防御xss攻击的数据防御组件生成方法及其装置
CN102999723A (zh) * 2012-11-20 2013-03-27 焦点科技股份有限公司 主动防御xss攻击的数据防御组件生成方法及其装置
CN103577188A (zh) * 2013-10-24 2014-02-12 北京奇虎科技有限公司 防御跨站脚本攻击的方法及装置
CN103577188B (zh) * 2013-10-24 2016-11-16 北京奇虎科技有限公司 防御跨站脚本攻击的方法及装置
CN103605514A (zh) * 2013-11-11 2014-02-26 北京奇虎科技有限公司 一种前端模板的处理方法及装置
CN103605514B (zh) * 2013-11-11 2017-11-21 北京奇虎科技有限公司 一种前端模板的处理方法及装置
CN104750669A (zh) * 2013-12-30 2015-07-01 珠海金山办公软件有限公司 一种待粘贴对象的处理方法及装置
CN105740308A (zh) * 2015-12-19 2016-07-06 哈尔滨安天科技股份有限公司 基于超文本标记语言结构的网站暗链检测方法及系统
CN105912140A (zh) * 2016-04-08 2016-08-31 乐视控股(北京)有限公司 信息存储方法及装置
CN107967245A (zh) * 2017-12-07 2018-04-27 泰康保险集团股份有限公司 数据处理方法、装置、终端和存储介质
CN109683906A (zh) * 2018-12-25 2019-04-26 北京小米移动软件有限公司 处理html代码片段的方法及装置
CN114398578A (zh) * 2021-12-23 2022-04-26 网易有道信息技术(北京)有限公司 用于对html字符串进行预处理的方法及其相关产品

Also Published As

Publication number Publication date
CN101192217B (zh) 2010-07-21
HK1117245A1 (en) 2009-01-09

Similar Documents

Publication Publication Date Title
CN101192217B (zh) 消除超文本标记语言中有害代码的方法
CN100489879C (zh) 一种对页面数据进行校验的方法、系统和服务器
CN100492963C (zh) 代理服务器和访问控制方法
CN104065632B (zh) 分享内容的处理方法、服务器、客户端及系统
US20050172227A1 (en) Ensuring proper rendering order of bidirectionally rendered text
CN102486799B (zh) 一种环球信息网www页面处理方法和装置
US20150373082A1 (en) Method and apparatus for obtaining webpages
US7818304B2 (en) Conditional text manipulation
US20010054048A1 (en) Structures to represent poorly formed HTML documents
CN101202754A (zh) 一种网络信息的保存方法及保存系统
US8095673B2 (en) Generic format for efficient transfer of data
CN104020984A (zh) 一种生成静态页面的方法及装置
CN101650713B (zh) 在浏览器中实现标签页的方法与装置
CN102577334A (zh) 用于自动预测性选择网络浏览器的输入法的方法和装置
US20050050464A1 (en) Dynamic questionnaire generation
CN114297544A (zh) 一种远程浏览方法、装置、设备及存储介质
Sperberg-McQueen Extensible markup language (XML) 1.0
Nottingham et al. Problem Details for HTTP APIs
CN106559455B (zh) 一种填表结果反馈提示方法及装置
CN103413092A (zh) 一种网络终端禁止恶意代码注入的方法
CN107463690B (zh) 一种实现快速链接的方法及系统
US9213502B2 (en) Information processing apparatus, information processing method, and non-transitory computer readable medium for recording printing information
CN113609828A (zh) 一种表单可视化配置方法及系统
CN103164411A (zh) 浏览器的网页加载方法
KR20110024874A (ko) 웹 컨텐츠 스크랩 시스템 및 그 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1117245

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1117245

Country of ref document: HK

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100721

Termination date: 20201128

CF01 Termination of patent right due to non-payment of annual fee