当前位置:文档之家› Web应用存储型XSS漏洞检测方法及实现

Web应用存储型XSS漏洞检测方法及实现


关键词 存储 型 XSS 动态检测 漏洞扫描 攻击 向量
中 图分 类号 TP309
文 献 标 识 码 A
DOI:10.3969/j.issn.1000-386x.2016.01.007
DETECTIoN M ETHoD FoR SToRED.XSS VULNERABILITY IN W EB APPLICATIo NS AND ITS Ⅱ PLEM ENTATIoN
第 33卷 第 1期 2016年 1月
计算机 应 用与软件
Computer Applications and Software
V01.33 No.1 Jan.2016
Web应 用 存 储 型 XSS漏 洞检 测方 法及 实现
李 威 李晓红
(天津大学计算机科学与技术学 院 天津 300072)
摘 要 跨站脚本 XSS(Cross Site Scripting)漏洞 ,已对大 多数 网站产 生严 重威胁。其 中存储 型 XSS漏 洞对用 户及 网站的损害 尤 为 巨大。事先使用漏洞扫描工具对该 漏洞进行检测 并修 补,可 以有效预 防和减 轻该漏洞被利用 后导致 的一系列危害。分析存储 型 XSS漏洞 的攻击原理 ,提 出用 巴科斯 范式(BNF)自动生成初 始攻击 向量,对初始攻击 向量进行 变异处理 。使用辅助标 记 自动检 测存 储 型 XSS漏 洞的动态检测方法 ,设计并 实现存储 型 XSS漏 洞检测 系统。在现实 Web应用 中测试评估 了该 系统 ,实验证 明它能有效 检 测 出应用 中存在 的存储 型 XSS漏 洞。
vulnerability is particularly a great damage to users and websites. Using a vulnerability scanning t ool to detect and repair the vulnerability beforeha n d can effectively prevent and mifig ̄e the series damages when the vulnera b ilities are made use of.W e analysed the attack pr inciple
of the st ored—XSS,and proposed the dynamic detection method which uses Backus—Naur Form (BNF)to generate initial attack vectors for
carrying out the variation treatment on them ,and uses auxiliary marker to detect stored—XSS vulnerability automatically. Further m ore,we designed and implemented the stored—XSS vulnerability detection system,and tested and evaluated it in rea l W eb applications.Experiment proved that it can effectively detect the presence 0f stored—XSS vulnerability in applications.
XSS漏洞严 重 危 害 网站 安 全及 用 户 利 益 ,相关 研 究 者 在 XSS漏 洞检测 问题上进 行研究 ,也 取得 了相应 的成果 。与 XSS
漏洞相关的检测方 法有 静态代码 分析 、静态分 析与动 态测试相 结合及运行 时监 测等 。但 是 ,大多 方 法 主要 针对 一 阶 XSS漏 洞 ,针对存储 型 XSS漏洞检测 的方法并不 多见。
Li W ei Li Xiaohong (School ofComputer Science and Technology,Tianjin University,死8 n 300072,China)
Abstract Cross site scripting (XSS) vulnerabilities have been the ser ious threat to most websites,amongst them the stored—XSS
静态分析方法从外部数 据源识别 污点输 入 ,跟踪 污点数 据 流 ,并 检 测 是 否 有 污 点 数 据 到 达 污 点 槽 (如 HTML输 出 语 句 ) 。Yichen Xie和 Alex Aiken提 出一种通 过象 征执 行程 序 取得块和 函数总结 信息 的静态 分析技 术 。Benjam in Liv—shits 和 Monica Lam使用二元决策 图来对服务器端 脚本进行分 析 ,但 该方 法 需要 用 户使 用 程 序 查 询 语 言 指 明缺 陷模 型 。Gary Wassermann和 Su Zhendong用字符 串分析加 强了基于污 点分析 的方法 ,他们使用上下文无关语法 (CFGs)来 展现在特 定程序 点一个字符 串变量 的取值 ,这样 可 以帮 助检查敏 感程序语 句是 否有黑名单字符 串值 。静 态分 析 可 以快速 检测 出潜在 的 XSS 漏洞 ,但不能验证输入净化 函数 的正确性 。
Keywords Stored—XSS Dynamic detection Vulnerability scanning Attack vector
0 引 言
随着 Web应用 的普及 ,存 储数据信 息的 Web应用 ,如 电子 商务 、社 交 网络 、博 客 、论坛社 区等 ,被 大量开 发来提 供各 种服 务 ,使得人们生 活更 加便 利。与此 同时 ,Web应用 中存 在 的漏 洞使得人们在享受软件提供便捷 的网上服 务的 同时 ,也遭 受到 机密信息泄漏 、财产损失 、账户被盗等严 重的安全 问题 。开放式 web应用程序安 全项 目 OWASP(Open Web Appliation Security Project)在 2013年公布 的 Web应 用十大安 全漏洞显 示 ,跨 站点 脚本 XSS排在 了第 三位 ,是 十分 突 出 的安 全漏 洞 …。与 一 阶 XSS不 同,存储 型 XSS攻击 过程更 加巧 妙 ,恶意代 码 被注 入 到 Web应用中没有立即执行 。而是存储 到后端数 据库 ,在处理 另 一 次不 同请求时 ,应用检 索到数 据库 中的恶意输入将 其显示 为 网站的一部分并在 Web应用程序 授权 下在用户浏览 器 中运行 , 导致攻击发生 。存储型 XSS的危 害相 比一 阶更 大 ,检 测也更 加 困难 。
相关主题