web34:eval() 利用与正则绕过,PHP 伪协议。 web35:eval() 利用与正则绕过,PHP 伪协议。 web36:eval() 利用与正则绕过,PHP 伪协议。 web37:include() 利用与正则绕过,PHP 伪协议。 web38:include() 利用与正则绕过,PHP 伪协议。 web39:include() 利用与正则绕过,PHP 伪协议。 web40:eval() 利用与正则...
简介: pear文件利用 (远程文件下载、生成配置文件、写配置文件) 从一道题看——CTFshow私教 web40 web40 考点:pear文件包含 pear是PHP的一个扩展 条件: 1 有文件包含点 2 开启了pear扩展 (可以当他是一个框架) 3 配置文件中register_argc_argv 设置为On,而默认为Off($_SERVER[‘argv’]生效) 4 找到pear...
CTFShow 平台:https://ctf.show/ 命令执行: Web29: error_reporting(0);if(isset($_GET['c'])){$c = $_GET['c'];if(!preg_match("/flag/i", $c)){eval($c);}}else{highlight_file(__FILE__);} preg_match():函数执行一个正则表达式匹配。 这里过滤了flag/i过滤的不是很多就两个所以方...
ctfshow Web入门 40 - 命令执行(10) 题目过滤如下: 先查看当前目录下面有啥文件 参考了羽大佬的WP:https://blog.csdn.net/miuzzx/article/details/108415301 首先有几个PHP的函数: print_r()函数用于打印变量,以更容易理解的形式展示 localeconv():是一个编程语言函数,返回包含本地数字及货币信息格式的数组。其...
web40 别看这里过滤了这么多,其实他过滤的括号是中文括号,这里我开始纳闷了好久 先说一个打印当初路径下文件的函数:print_r(scandir('.')) 但是很明显单引号和小数点已经过滤了,这里要先办法绕过 最简单的方法是利用函数传参,那就找当前能用包含小数点的函数 ...
2.web40 这题过滤了很多符号 特别注意这题过滤的是中文括号而非英文括号 英文括号: \(\) 中文括号:\(\) show_source,highlight_file高亮显示文件,next是下一个元素。array_reverse是反向输出,pos是输出当前元素的值,localeconv是返回包含本地数字及货币格式信息的数组,scandir是列出指定路径的文件和目录,dirname是...
40 多线程(十二)——ReentrantLock 可重入锁 2019-12-09 17:54 − 我们使用的synchronized加的锁是可以延续使用的,如下: public void test() { //第一次获得锁 synchronized(this) { while(true) { //第二次获得同样的锁 synchronized(this) { System.o... Scorpicat 0 269 0001:Web与Web框架 ...
12|0web40 ?c=system("cat flag"); 过滤了引号、$、冒号,还不能用伪协议 一般括号里参数都要用引号,这里学习一下无参数RCE(remote command/code execute) 参考GXYCTF2019禁止套娃 解题参考:无参数读文件和RCE总结 无参数的意思可以是a()、a(b())或a(b(c())),但不能是a('b')或a('b','c'),不...
空格被过滤· web32~文件包含绕过 文件包含绕过 web33~文件包含绕过 web34~文件包含绕过 web35~文件包含绕过 web36~文件包含绕过 web37~data协议 web38~data协议 web39~data协议 web40~无参数读文件 web41~异或绕过 web42~</dev/null无过滤 web43~</dev/null过滤分号cat web44~>/dev/null过滤; cat flag...
web40~无参数读文件 <?php if(isset($_GET['c'])){ $c = $_GET['c']; if(!preg_match("/[0-9]|\~|\`|\@|\#|\\$|\%|\^|\&|\*|\(|\)|\-|\=|\+|\{|\[|\]|\}|\:|\'|\"|\,|\<|\.|\>|\/|\?|\\\/i", $c)){ eval($c); } }else{ highlight_file(__...