No one knows regex better than meWEB 未解决
分数:
25
金币:
5
题目作者:
yeedo
一 血:
硝基苯爸爸
一血奖励:
10金币
解 决:
2830
提 示:
描 述:
正则好像没有想象中那么简单
评分(8)
解题动态

zhuizhui 攻破了该题 2天前

hackerbugku 攻破了该题 2天前

dwx1583 攻破了该题 4天前

aaaaab 攻破了该题 7天前

千机www 攻破了该题 10天前

56881834 攻破了该题 10天前

网络安全亮 攻破了该题 13天前

Da1ly_1upup 攻破了该题 15天前

ahsjezyt 攻破了该题 16天前

124要留就要77 攻破了该题 19天前

ZZZZZZYx 攻破了该题 19天前

奔跑小马 攻破了该题 20天前

wpc1027 攻破了该题 24天前

liuweiak007 攻破了该题 26天前

The-Beacon 攻破了该题 26天前

nihaolmb 攻破了该题 28天前

breeding 攻破了该题 29天前

Lmn13644482831 攻破了该题 29天前

soulchild 攻破了该题 1月前


评论
wangxiaowi 3年前
举报
主要是构造flag.php, 转义字符是8进制ASCII 和16进制ASCII ,
yeedo 3年前
举报
看了大家的评论,有部分同学提出了对payload是否包含|的质疑,并给出了相关正则匹配的网站结果,事实上,在出这道题的时候我就发现了基本所有的正则匹配规则网站对这个正则的匹配结果都是存在问题的,这也是出这道题的初衷。建议大家做题时先学习php正则匹配优先级的相关知识,这样可以更好的理解这道题xd
发到付件埃里克FDA 2年前
举报
这个正则就TM神奇。 \\|我以为是表示 \符号的 结果是表示| 符号。。。
现在有点开心了 3年前
举报
感觉有点问题?
727761286 3年前
举报
这一串匹配结果有大佬可以详细解答吗,/\\|\056\160\150\x70/i /\\|.php/i 不是最后是\或者.php吗,还是说\的优先级比|高,先对\|进行转义,多出来的\又转义一次?。虚心求教
XiaoHexi 3年前
举报
给第一次做这种题的人一点建议(我也是第一次),先试着把代码读懂,不然不知道怎么下手,web题目大部分都是要弄playload,代码弄懂之后playload基本可以自己写出来了
2817001550 3年前
举报
php正则表达式建议使用单引号括起来而不是双引号,这个题目充分说明了这一准则的重要性。
orobos1 3年前
举报
并不是“字符串转译一次,正则再转译一次”,而是遇到/会转译到尽头吧,因为在自己的电脑上将//改成/照样是同样的答案
competition 4年前
举报
http://www.regexp.cn/Regex,大家在这个网站上试试,感觉答案不对,仅有.php也可以匹配
yswdlll 3年前
举报
不太会,大佬能说一下这个怎么用么,为用那个生成代码功能跑python,跑不出来
competition 4年前
举报
感觉不太对啊,"/\\|.php/"不是应该是\或者.php的字符吗?为什么一定要有|这个符号?
4thrun 3年前
举报
同问,(\\)|.php行不行呢
roguelike 3年前
举报
同问
王曦之啊 4年前
举报
if(preg_match("/\\|\056\160\150\x70/i",$third)) 有大佬能详细讲解一下这一步怎么搞吗?
Anyyy 4年前
举报
$end=substr($third,5);就是表示截断third的前五位,所以要拼接成xxxx|.php,这样保留下的就是.php,最后要和base64解码后的zero拼接成flag.php就出来了
Anyyy 4年前
举报
\056\160\150\x70 是 十六进制和八进制的Ascii编码,解出来就是 ".php" /\\|.php/i