打开源码看到 下来是源码 <?php $flag=""; function replaceSpecialChar($strParam){ $regex = "/(select|from|where|join|sleep|and|\s|union|,)/i"; return preg_replace( ...
分类:
Web程序 时间:
2021-06-15 18:38:24
阅读次数:
0
0x00 实验环境 攻击机:Win 10 靶机也可作为攻击机:Ubuntu18 (docker搭建的vulhub靶场) 0x01 影响版本 标志:/index.php 版本:thinkphp2.x 简介:在ThinkPHP 2.x版本中,使用preg_replace的/e模式匹配路由: $res = ...
分类:
Web程序 时间:
2021-04-15 12:45:30
阅读次数:
0
命令执行&&代码执行 wafpass总结 代码执行 php常见命令执行函数 php代码 eval() assert() preg_replace call_user_func() call_user_func_array() create_function array_map() 系统命令代码 sy ...
分类:
Web程序 时间:
2021-01-06 11:40:50
阅读次数:
0
$saveImg = preg_replace('# #', '', $saveImg);去除掉字符串后打印$saveImg为"" 即空字符串但是无论使用empty()is_null还是$saveImg==""都无法判断为true无奈之下在去除完空格后再进行一次trim$saveImg=trim($ ...
分类:
Web程序 时间:
2020-09-14 18:54:00
阅读次数:
47
只介绍两个与Perl兼容的正则表达式函数: 1.preg_match_all 函数执行正则表达式匹配与搜索; 2.preg_replace 函数执行正则表达式匹配与替换。 示例代码: <?php // 正则表达式,匹配日期格式 $pattern = "/(\d{2})\/(\d{2})\/(\d{4 ...
分类:
Web程序 时间:
2020-07-10 19:26:01
阅读次数:
94
MySQL中的UTF8编码每个字符只支持最大3字节,而emoji是4个字节的,不能直接存储进去,所以,需要将emoji转换一下。 这边提供一个将4个字节的utf8编码转成&#xxxxxx;的方法: $content = preg_replace_callback('/[\x{010000}-\x{1 ...
分类:
Web程序 时间:
2020-06-28 13:18:41
阅读次数:
67
代码执行 代码执行是指应用程序本身过滤不严,当应用在调用一些字符串函数的时候用户可以通过请求将代码注入到应用中执行。 存在于eval()、assert()、preg_replace()、call_user_func()、array_map()以及动态函数中,很难通过黑盒测试查找。 挖掘思路 1:用户 ...
分类:
Web程序 时间:
2020-06-14 18:41:50
阅读次数:
92
0X01首先我们来了解下这个漏洞的关键函数 preg_replaceCTF的老函数了 preg_replace() 的第一个参数如果存在 /e 模式修饰符,则允许代码执行。 如果没有 /e 修饰符,可以尝试 %00 截断。 正则表达式修正符: 因为$pattern中指定的是要搜索的模式字符串,一般使 ...
分类:
Web程序 时间:
2020-06-07 17:56:40
阅读次数:
81
php函数,preg_match,preg_match_all,preg_replace ...
分类:
Web程序 时间:
2020-05-28 16:29:05
阅读次数:
72
知识点: preg_replace()使用的/e模式可以存在远程执行代码 解析见链接:https://xz.aliyun.com/t/2557 看题目 首先是一段源代码: text是PHP的DATA伪协议 file是PHP的filter伪协议 payload: 得到第二段源代码: payload如下 ...
分类:
其他好文 时间:
2020-05-23 13:12:07
阅读次数:
46