发明名称 主动防御XSS攻击的数据防御组件生成方法及其装置
摘要 本发明公开了一种主动防御XSS攻击的数据防御组件生成方法及其装置,方法包括形成简单数据传输对象并加入防御标识;定制防御编译器组件代码;将防御编译器组件代码插入到标准编译器组件序列;形成数据防御组件等步骤;本装置包括数据结构读取模块、防御代码标识模块、防御编译器、标准编译器、防御代码管理模块,其中数据结构读取模块、防御代码标识模块、防御编译器、标准编译器依次连接,防御代码管理模块与防御编译器连接;本发明能够对防御代码及时调整扩展,使网站快速、实时地应对不断变化的XSS攻击,通用性强,大大提升了网站的开发效率,提升了网站的安全性。
申请公布号 CN102999723B 申请公布日期 2015.11.18
申请号 CN201210474382.2 申请日期 2012.11.20
申请人 焦点科技股份有限公司 发明人 杨昕;葛亮
分类号 G06F21/56(2013.01)I;G06F17/30(2006.01)I;H04L29/06(2006.01)I 主分类号 G06F21/56(2013.01)I
代理机构 南京理工大学专利中心 32203 代理人 朱显国
主权项 一种主动防御XSS攻击的数据防御组件生成方法,其特征在于,包括以下步骤:步骤一:数据结构读取模块访问数据库服务器,读取网站的数据库表结构,形成简单数据传输对象,并用防御代码标识模块在简单数据传输对象中加入防御标识;具体步骤:(1)通过数据结构读取模块,访问数据库服务器,读取网站的数据库表结构;(2)利用代码生成组件,将读取的网站数据库表结构生成简单数据传输对象;(3)防御代码标识模块自动选择类型为文本字符串的属性,加入防御标识;其中,所述的代码生成组件是以插件的形式提供,用来形成表述的简单数据传输对象的代码;所述的简单数据传输对象本身通过代码的形成存在,用来映射网站的数据库表结构,其中包含数据部分和数据获取部分;所述防御标识是指在简单数据传输对象中的文本属性中加入能够为编译器所理解的标志,用以在编译程序时指定嵌入防御代码的位置;步骤二:用防御编译器定制防御编译器组件代码;具体步骤:(1)编写防御代码,将编写好的防御代码存入到防御代码管理模块中,防御代码的作用是检测用户输入的内容中是否含有可执行脚本,如果有,就对这些可执行脚本代码进行转义处理,使其输出内容为单纯的普通字符串;(2)编写防御代码触发条件,判断运行环境是否是渲染HTML状态,如果是渲染HTML状态,则执行预定义好的防御代码;(3)防御编译器在简单数据传输对象中寻找防御标识,找到防御标识后,将防御编译器组件代码插入到数据获取方法中;其中防御编译器组件代码是指增强标准编译器的编译行为,可根据安全期望,独立定制的具有防御能力的最终执行程序的行为,包含有防御代码和防御代码触发条件;步骤三:将防御编译器组件代码插入到标准编译器组件序列;步骤四:在标准编译器中进行编译,防御编译器组件会被执行,形成数据防御组件,其中包含有防御代码以及防御代码执行的触发条件,保存在数据传递器的防御配置子单元中。
地址 210061 江苏省南京市高新区星火路软件大厦A座12楼