`

一个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

    Asp.net是一个由Microsoft开发的开源Web应用程序框架,它提供了丰富的功能和安全性机制来防止XSS攻击。在VS2010环境下,开发者可以利用内置的安全特性来构建更安全的应用。 1. 防止反射型XSS:使用ASP.NET的...

    xss攻击语句大全。。

    这是一个简单的XSS攻击示例,用于测试目标页面是否容易受到XSS攻击。它试图弹出一个警告框显示字符串“vulnerable”。 ##### 4. `%3Cscript%3Ealert('XSS')%3C/script%3E` 这是对`&lt;script&gt;`标签的一种URL编码形式...

    8、XSS 攻击的防御pdf资料

    XSS(跨站脚本攻击)是网络安全领域中一种...总之,XSS攻击是一种严重的威胁,需要开发者在设计和开发阶段就充分考虑安全性,通过合理的输入验证、数据转义和使用安全策略来降低攻击风险,保护用户的隐私和数据安全。

    安全漏洞XSS攻击方法详解

    例如,一个简单的XSS攻击例子是在留言板中插入JavaScript代码,如`&lt;script&gt;alert("hey!you are attacked")&lt;/script&gt;`。当其他用户查看包含这段恶意脚本的留言时,浏览器会执行脚本,弹出警告对话框。 XSS攻击的危害...

    XSS跨站脚本攻击在Java开发中防范的方法

    #### XSS攻击原理与分类 XSS(Cross-Site Scripting)跨站脚本攻击是一种常见的安全威胁,它利用Web应用程序的安全漏洞,将恶意脚本注入到合法的网页中,进而攻击最终用户。XSS攻击主要分为以下两种类型: 1. **...

    如何寻找XSS漏洞

    腾讯QQ就是一个例子,它曾经因为群资料名称的处理不当而遭受了XSS攻击。攻击者通过构造特殊的payload来修改群名,并且通过查看群资料来触发跨站脚本攻击。类似的案例还包括阿里旺旺客户端的XSS攻击,攻击者通过修改...

    XSS 跨站脚本攻击及防范

    **Yamanner蠕虫**:这是一个著名的XSS攻击案例,它利用了Yahoo Mail系统的一个漏洞,当用户在Web上查看邮件时,邮件内容中的JavaScript代码能够被执行。攻击者通过构造带有恶意脚本的邮件,一旦受害者打开这些邮件,...

    XSS平台网站源码.zip

    XSS平台网站源码是用于学习和研究XSS攻击及防御机制的重要资源,它可以帮助开发者和安全研究人员理解XSS的工作原理,并提供实践环境来测试和验证防护策略。 源码通常包括以下几个关键部分: 1. 用户输入处理:在...

    XSS跨站总结

    为了更好地理解XSS攻击的具体实施方法,下面通过一个简单的案例来展示反射型XSS攻击的过程: 假设攻击者构造了如下链接,并通过社交媒体或电子邮件诱骗受害者点击: \...

    XSS跨站脚本攻击剖析与防御(目录)

    假设有一个用户可以在某个网站上发表评论的功能,如果开发者没有对用户输入的评论进行严格的过滤和转义处理,那么恶意用户可以通过以下方式发动XSS攻击: ```html &lt;!-- 恶意用户的评论 --&gt; &lt;script&gt;alert('XSS ...

    那些年我们一起学XSS.pdf

    一个现实的例子是,通过构造的URL参数直接注入了恶意脚本,如在score参数后注入了图片标签和onerror事件,导致当其他用户浏览这个页面时,会弹出警告框。修复这类XSS的方法是在输出数据时过滤掉&lt;和&gt;符号。 2. 输出...

    搜索框——不能忽视的XSS漏洞—搜索框所引起的XSS漏洞

    例如,2005年MySpace的XSS蠕虫事件就是一个典型的例子,它在短时间内感染了大量用户页面,展示了XSS攻击的破坏力。即使不涉及服务器权限,XSS也能用来盗取用户cookie、实施钓鱼攻击或者传播恶意代码。 **搜索框的...

    javascript过滤XSS

    `js-xss`库的核心功能是`sanitize`函数,它接收一个字符串作为参数,返回一个经过过滤的安全字符串。这个函数能够识别并转义常见的XSS攻击模式,如`&lt;script&gt;`标签、事件属性(onclick、onmouseover等)、CSS表达式等...

    Web安全之XSS攻击与防御小结

    为了更好地理解XSS攻击及其防御,可以通过搭建一个简单的Node.js应用进行模拟。在Linux环境下,创建一个新项目,使用Express框架,然后安装依赖,编写路由和视图文件。通过在URL参数中传递不同的XSS payload,观察其...

    cook xss

    例如,在一个简单的PHP程序中: ```php $username = $_GET["name"]; echo "欢迎, " . $username . "!&lt;/p&gt;"; ``` 如果攻击者将恶意脚本注入`name`参数,如`&lt;script&gt;alert('XSS')&lt;/script&gt;`,那么当其他用户访问带有...

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

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

    如何进行跨站脚本攻击--原理、检测与防御

    这个例子说明了当Web应用程序没有正确过滤用户输入时,XSS攻击是如何发生的。 #### 三、XSS攻击的类型 ##### 3.1 反射型XSS(Non-persistent XSS) 反射型XSS攻击是最常见的一种类型,它通常通过URL参数或表单...

    XSS检测防范技术与实例研究.pdf

    首先,让我们来看一个XSS攻击的例子。设想一个社交网站,用户可以关注任何人,并能看到关注对象发布的信息。如果攻击者在发布信息时插入恶意脚本,那么所有关注他的用户在查看信息时,恶意脚本将在他们的浏览器中...

    ctf xss注入.pdf

    在这个例子中,存在一个`&lt;input&gt;`标签,其`value`属性为空,这意味着我们可以向其中添加文本。 - **步骤3:** 尝试在输入框中插入恶意脚本。例如,使用`&lt;script&gt;alert(2312313135)&lt;/script&gt;`这样的格式。需要注意的...

Global site tag (gtag.js) - Google Analytics