zoukankan      html  css  js  c++  java
  • 和DOM一起的日子:检测与预防DOM跨站脚本攻击

    from 《Riding out DOMsday: Toward Detecting and Preventing DOM Cross-Site Scripting》

    摘要:跨站脚本攻击(XSS)是一种经常出现在web应用中的计算机安全漏洞。当复杂的JavaScript应用程序变得越来越普及,文档对象模型跨站脚本攻击(DOM XSS :一种跨站脚本攻击,这个安全隐患位于客户端JavaScript,而不是服务端代码),正变得更加常见。作为这项工作的第一个成果,我们使用嵌入在JavaScript引擎中的带有污染跟踪的浏览器,对DOM XSS对web的影响进行了实证评估。在先前的一项针对热门网站的研究中使用的方法的基础上,我们收集了一个关于潜在DOM XSS漏洞的当前数据集。我们改进了用于确认XSS漏洞的方法,使用这种改进的方法,我们发现同一数据集上的漏洞比以前的方法多83%。作为第二个成果,我们确定了产生DOM XSS漏洞的原因,并讨论了如何防止DOM XSS漏洞。我们发现的一个例子是,定制的HTML模板设计——一种可以防止DOM XSS vulability类似于参数化sql的设计模式——在实践中可能存在bug,从而允许DOM XSS攻击。作为我们的第三个成果,我们评估了三种静态分析工具的错误率,以检测使用动态分析技术发现的DOM XSS漏洞。我们发现静态分析工具可以遗漏90%的动态分析发现的错误,尽管有些工具可能有很少的误报,但同时可以发现使用动态分析没有发现的漏洞。

    介绍


    XSS:是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。比如这些代码包括HTML代码和客户端脚本。攻击者利用XSS漏洞旁路掉访问控制——例如同源策略(same origin policy)。这种类型的漏洞由于被黑客用来编写危害性更大的网络钓鱼(Phishing)攻击而变得广为人知。对于跨站脚本攻击,黑客界共识是:跨站脚本攻击是新型的“缓冲区溢出攻击“,而JavaScript是新型的“ShellCode”。

    shellcode:Shellcode实际是一段代码(也可以是填充数据),是用来发送到服务器利用特定漏洞的代码,一般可以获取权限。另外,Shellcode一般是作为数据发送给受攻击服务器的。 Shellcode是溢出程序和蠕虫病毒的核心,提到它自然就会和漏洞联想在一起,毕竟Shellcode只对没有打补丁的主机有用武之地。网络上数以万计带着漏洞顽强运行着的服务器给hacker和Vxer丰盛的晚餐。漏洞利用中最关键的是Shellcode的编写。由于漏洞发现者在漏洞发现之初并不会给出完整Shellcode,因此掌握Shellcode编写技术就显得尤为重要。

  • 相关阅读:
    找出数组中出现次数超过一半的数字(众数)
    消失的两个数字(1-N缺两个数)
    47. Permutations II
    137. Single Number II
    Go语言内存分配(详述 转)
    Go语言内存分配(简述 转)
    redis分布式锁
    Golang调度器GMP原理与调度全分析(转 侵 删)
    android framework navigationbar自定义
    android studio使用中遇到的问题
  • 原文地址:https://www.cnblogs.com/Mengchangxin/p/9829211.html
Copyright © 2011-2022 走看看