博客
关于我
DVWA(XSS存储型)
阅读量:663 次
发布时间:2019-03-15

本文共 1363 字,大约阅读时间需要 4 分钟。

XSS(Cross-Site Scripting)是一种常见的Web应用安全漏洞,攻击者通过注入恶意脚本代码到用户的浏览器,破坏用户体验或获取敏感信息。XSS攻击的主要目标是直接在用户端执行恶意代码,因此需要重点关注前端和同源政策的安全性。

XSS基本概念

XSS攻击的核心在于将用户输入直接输出到网页上,而未经过适当的-sanitization。攻击者可以构造特定的输入,导致网站输出危险的scrip标签,如<script>alert('xss')</script>。这一过程通常发生在用户生成内容(UGC)被直接显示,如评论、留言或搜索结果中。

XSS存储型

存储型 XSS 攻击将恶意代码嵌入到服务器端数据库中,随后用户访问该页面时代码被执行。例如,管理员在个人资料页面发布了一段可信的内容,但未进行ATS(含有字符替换),使得用户输入的文本直接嵌入到网页中。这种攻击 vector 常见于博客、新闻网站或论坛系统。为了防守,web 应用需对数据库中存储的内容进行严格的-sanitization。

XSS分类

tây ser·Votes

  • Low: 命名为低层次的XSS,攻击者通常利用简单的<script>标签进行注入。修复方法是对输入参数进行-react,这通常包括使用PHP的-hellip或正则表达式。
  • Medium: 攻击者构造更复杂的<script>标签,如事件触发或动态 JavaScript 代码。修复需要对参数进行更全面的检查,例如检查变量是否为预定义 legitimacy。
  • High: 高层次 XSS 攻击者可能利用与网站相关的 Closure 或其他动态功能构造攻击代码。修复需要结合正则表达式和数据库 sanitized 进行全面保护。
  • XSS攻击防御

    开发者应始终记住,预防 XSS 攻击的关键是对输入数据的严格 sanitized。具体措施包括:

    • 对用户输入使用-hellip或正则表达式进行过滤。
    • 克隆输入数据,并使用 MySQL 的实 sacred_suffix 属性或相关方法。
    • 使用防止 XSS attack 包含/code标签的方式,将输出转换为 HTML 实体。例如,利用PHP的 ht mlEntities 函数将 < 转换为 <。
    • 在反向 proxies 或负载均衡中启用参数过滤,以捕捉异常请求。

    实际案例分析

    假设一个万 слово字符限制的$name输入字段,用户可以输入:<scRipt>alert("xss")</scRipt>前端的关键是限制输入到一定长度,但这并不能完全 mitig ate XSS。完善措施是对输入进行Js总 تنfiere 。例如,使用如下的正则表达式进行 replace:

    $name = preg_replace('/<(.*)s(.*)c(.*)r(.*)i(.*)p(.*)t/i', '', $name);

    这样可以清除 script 标签,同时不影响其他合法字符。

    总结

    XSS 是 Web 安全中的常见 vulnerability,严重威胁用户数据和系统安全。通过对输入数据进行合理的 sanitized 和防护,可以有效防守 XSS 攻击。开发平方应结合目标平台的特性,选择最合适的防护方法,确保输入的安全性和系统的稳定性。

    转载地址:http://gxhmz.baihongyu.com/

    你可能感兴趣的文章
    Python基础——_thread多线程
    查看>>
    Python基础——Thread类与线程对象
    查看>>
    Python基础——Thread创建管理多线程
    查看>>
    Python基础——SQLite数据库基本操作
    查看>>
    Python基础——MySQL数据库基本操作
    查看>>
    Python基础_列表 list
    查看>>
    python系列【仅供参考】:python异步库调用gevent和asyncio对比
    查看>>
    python基础3
    查看>>
    Python基础08 面向对象的基本概念
    查看>>
    Python基础-函数篇
    查看>>
    python基础---->常用模块
    查看>>
    Python基础(2):控制结构
    查看>>
    Python基础 | 关于“循环”那些事
    查看>>
    python系列【仅供参考】:python之subprocess模块rsync拉取文件
    查看>>
    python系列【仅供参考】:python 远程rdp
    查看>>
    python基础
    查看>>
    Python基本语法与变量类型
    查看>>
    python基本数据类型(容器)- tuple list dict set
    查看>>
    python基本工资的调整方案_Python薪资又涨了!这可咋办!
    查看>>
    Python基准测试和性能分析内存管理和垃圾回收
    查看>>