当前位置: 首页 > news >正文

xss攻击

一、xss攻击简介

  • 1、OWASP TOP 10之一,XSS被称为跨站脚本攻击(Cross-site-scripting)
  • 2、主要基于java script(JS)完成恶意攻击行为。JS可以非常灵活的操作html、css和浏览器,这使得XSS攻击的“想象”空间特别大。
  • 3、XSS通过将精心构造代码(JS)代码注入到网页中,并由浏览器解释运行这段JS代码,以达到恶意攻击的效果。当用户访问被XSS脚本注入的网页,XSS脚本就会被提取出来。用户浏览器就会解析这段XSS代码,也就是说用户被攻击了。
  • 4、微博、留言板、聊天室等等收集用户输入的地方,都有可能被注入XSS代码,都存在遭受XSS的风险,只要没有对用户的输入进行严格过滤,就会被XSS

二、xss攻击危害

  • 1、盗取各类用户帐号,如机器登录帐号、用户网银帐号、各类管理员帐号
  • 2、控制企业数据,包括读取、篡改、添加、删除企业敏感数据的能力
  • 3、盗窃企业重要的具有商业价值的资料
  • 4、非法转账
  • 5、强制发送电子邮件
  • 6、网站挂马 让更多人的受害
  • 7、控制受害者机器向其它网站发起攻击 卖肉机
  • 8、蠕虫式的DDoS攻击。

三、xss的原理

  • 攻击者对含有漏洞的服务器发起XSS攻击(注入JS代码)。
  • 诱使受害者打开受到攻击的服务器URL。
  • 受害者在Web浏览器中打开URL,恶意脚本执行。

四、XSS攻击的分类

  • 1、反射型

非持久性跨站点脚本攻击

攻击是一次性的,仅对当次的页面访问产生影响存储型

  • 2、持久型跨站点脚本

攻击者的数据存储在服务器端,攻击行为将伴随着攻击数据一直存在

  • 3、DOM型

既可能是反射型的,也有可能是存储型的。

基于文档对象模型(Document Objeet Model,DOM)的一种漏洞

五、构造xss攻击脚本

1、常用的html标签

  • <iframe>iframe标签会创建包含另外一个文档的内联框架

                <iframe οnlοad=alert(1)></iframe>

  • <details> 标签通过提供用户开启关闭的交互式控件,规定了用户可见的或者隐藏的需求的补充细节。ontoggle 事件规定了在用户打开或关闭 <details> 元素时触发:

                <details οntοggle=alert(1)>

  • <textarea> textarea标签定义多行的文本输入控件

                <textarea οnfοcus=alert(1) autofocus>

  • <img>img标签向网页中嵌入一幅图像

                <img src=1 οnerrοr=alert(1)>

                <img src=1 οnerrοr=alert("xss")>

  • <svg> 标签用来在HTML页面中直接嵌入SVG 文件的代码。

                <svg οnlοad=alert(1)>

  • <script> script标签用于定义客户端脚本,比如JavaScriptscript

                <script>alert(1)</script>

                <script>alert("xss")</script>

  • script标签既可以包含脚本语句,也可以通过src属性指向外部脚本文件
    • 必需的type属性规定脚本的类型。
    • JavaScript的常见应用是图像操作、表单验证以及动态内容更新。

2、常用的is脚本

  • alert :alert方法用于显示带有一条指定消息和一个确认按钮的警告框
  • YRS,并筢别览器量定尚劉新的资鲁用于获得当前页面的地址
  • location.href:返回当前显示的文档的完整URL
  • onload:-张页面或一幅图像完成加载
  • onsubmit:一个按钮被点击
  • onerror:在加载文档或图像时发生错误

六、构造脚本的方式

  • 弹窗警告
  • 页面嵌套
  • 页面重定向。
  • 弹窗警告并重定向
  • 图片标签利用
  • 绕开过滤的脚本
  • 存储型xss基本演示
  • 访问恶意代码(网站种马)
http://www.lryc.cn/news/397604.html

相关文章:

  • Android 性能优化之布局优化
  • TCP 握手数据流
  • MDA协议
  • always块敏感列表的相关报错,
  • STM32空闲中断处理串口接受数据
  • oak相机使用oak官网方式标定
  • 打造高效能“园区企业服务平台”,让企业更好更快发展!
  • 【常见开源库的二次开发】基于openssl的加密与解密——openssl认识与配置(一)
  • 前端时间格式传入后端负载里面没有东西
  • BUCK电源芯片,电气参数,极限参数,工作特性,引脚功能
  • 学习小记-使用Redis的令牌桶算法实现分布式限流
  • electron + express 实现 vue 项目客户端部署
  • 千万慎投!自引率高达93%!这16本On hold正处于高危状态,无法检索,剔除岌岌可危中!近四年镇压期刊“出狱”情况一览
  • 【数据结构】排序——快速排序
  • Matlab 怎么查找矩阵中所有0的数据并赋值
  • 开发一个HTTP模块
  • vue2实现复制,粘贴功能,使用vue-clipboard2插件
  • 【软件测试】 1+X初级 功能测试试题
  • zynq启动和程序固化流程
  • CSS3实现彩色变形爱心动画【附源码】
  • 【JVM基础篇】Java的四种垃圾回收算法介绍
  • Kodcloud可道云安装与一键发布上线实现远程访问详细教程
  • python杨辉三角的两种书写方式
  • 【CSS in Depth 2精译】2.5 无单位的数值与行高
  • 【人脸识别、Python实现】PyQt5人脸识别管理系统
  • 软设之观察者模式
  • deep learning 环境配置
  • 09磁盘管理
  • Node.js Stream
  • 简化嵌入式Linux开发:在Ubuntu上安装和配置交叉编译环境的高效方法