发现有原型链污染
但是没有模板注入
踩坑会不会在其他地方有模板注入,再去看看其他地方,无果
一点思路我们的污染Message类的原型,改变它的属性不能造成rce,所以我们的思路变成继续向上污染,通过污染Object类的原型来改变其他类的属性,从而造成rce。
AST注入结合pug模板,通过改变它的AST语法树,我们能够影响模板解析的js代码,从而rce可以看出这里的js字符串是直接当成命令执行的
1`function template(locals) {var pug_html = "", pug_mixins = {}, pug_inte ...
vm1沙盒逃逸
沙箱逃逸本质就是找到一个沙箱外的对象,并调用其中的方法
this指向外部上下文对象1234const context = { name: 'myContext' };const result = vm.runInNewContext(`this.name`, context); #this指向了runInNewContext提供的上下文context,这个对象在global中console.log(result); // 输出 'myContext'
context为空时,传入global对象在沙盒中:
thi ...
也是搭了个博客,但是懒得写,(悲)嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀嘿嘿,语雀可以导出md,真好呀
alert('hell ...