IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> XSS跨站脚本攻击——初理解 -> 正文阅读

[PHP知识库]XSS跨站脚本攻击——初理解

XSS跨站脚本原理:

? 跨站脚本攻击XSS(Cross Site Scripting),为了不和HTML中的层叠样式表(CSS)缩写混淆,所以将跨站脚本攻击缩写为XSS。恶意攻击者往WEB页面插入恶意Script代码,当用户浏览该页面时,嵌入WEB页面的Script代码被执行,从而达到恶意攻击用户的目的。XSS攻击针对的是用户层面的攻击!

XSS分类:

  • 存储型XSS:持续型,代码是存储在服务器中的,如在个人信息或发表文章等地方,插入代码,如果没有过滤或者过滤不严,那么代码将被存储到服务器中,用户访问该页面的时候触发代码执行。这种XSS比较危险,容易造成蠕虫,盗窃cookie。
  • 反射型XSS:非持续型,需要欺骗用户自己去点击链接才能触发XSS代码(服务器中这样没有这样的页面和内容),一般容易出现搜索页面。反射型XSS大多数用户Cookie信息。
  • DOM型XSS:不经过后端,DOM型-XSS漏洞是通过url传入参数去控制触发的,其实也属于XSS

在这里插入图片描述

在这里插入图片描述

XSS常用测试语句有:

<script>alert(1)</script>
<img src=x onerror=alert(1)>
<svg onload=alert(1)>
<a href=javascript:alert(1)>

XSS漏洞的挖掘:

黑盒测试:(尽可能的找到一切用户可控并且能够输出在页面代码中的地方)

  • URL的每一个参数
  • URL本身
  • 表单
  • 搜索框

常见的XSS跨站脚本业务场景:

  • 重灾区:评论区、留言区、个人信息、订单信息等
  • 针对性:站内信、网页及时通讯、私信意见反馈等
  • 存在风险:搜索框、当前目录、图片属性等

白盒测试(代码审计):

? 关于XSS的代码审计主要是从接收参数的地方和一些关键词入手。

? PHP中常见的接收参数的方式有$_GET$_POST$_REQUEST等等,可以搜索所有接收参数的地方。然后对接收到的数据进行跟踪,看看有没有输出到页面中,然后看输出到页面中的数据是否进行了过滤和html编码等处理。

? 也可以搜索类似echo这样的输出语句,跟踪输出的变量是从哪里来的,我们是否能控制,如果从数据库中取的,是否能控制存到数据库中的数据,存到数据库之前有没有进行过滤等等。

? 大多数程序会对接收参数封装在公共文件的函数中统一调用,我们就需要审计这些公共函数看有没有过滤,能否绕过等等。

? 同理审计DOM型注入可以搜索一些JS操作DOM元素的关键词进行审计。

XSS的危害:

在这里插入图片描述

防护阻止XSS攻击:

因为XSS漏洞涉及输入和输出俩部分,所以其修复也分为两种:

  • 过滤输入的数据,包括单引号,双引号,<,>等非法字符
  • 对输出到页面的数据进行相应的编码转换,包括HTML实体编码,JS编码等
  • 使用HTTP Only属性保护重要cookie

什么是HTTP Only:

? 很多xss攻击都是来盗用cookie的。

? 如果cookie中设置了HTTP Only属性,那么通过JS脚本将无法读取cookie信息,这样就能有效防止XSS攻击,窃取cookie内容,这样就增加了cookie的安全性。

ly属性,那么通过JS脚本将无法读取cookie信息,这样就能有效防止XSS攻击,窃取cookie内容,这样就增加了cookie的安全性。

参考链接:
XSS(跨站脚本攻击)详解

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2022-01-16 12:49:24  更:2022-01-16 12:50:19 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/14 14:50:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码