No one knows regex better than meWEB 未解决

分数: 25 金币: 5
题目作者: yeedo
一  血: 硝基苯爸爸
一血奖励: 10金币
解  决: 2459
提  示:
描  述:
正则好像没有想象中那么简单
评论
orobos1 2年前

并不是“字符串转译一次,正则再转译一次”,而是遇到/会转译到尽头吧,因为在自己的电脑上将//改成/照样是同样的答案

回复 0

competition 2年前

http://www.regexp.cn/Regex,大家在这个网站上试试,感觉答案不对,仅有.php也可以匹配

回复 0
yswdlll 2年前

不太会,大佬能说一下这个怎么用么,为用那个生成代码功能跑python,跑不出来

回复 0

competition 2年前

感觉不太对啊,"/\\|.php/"不是应该是\或者.php的字符吗?为什么一定要有|这个符号?

回复 3
4thrun 2年前

同问,(\\)|.php行不行呢

回复 1

roguelike 2年前

同问

回复 1

王曦之啊 2年前

if(preg_match("/\\|\056\160\150\x70/i",$third)) 有大佬能详细讲解一下这一步怎么搞吗?

回复 0
Anyyy 2年前

$end=substr($third,5);就是表示截断third的前五位,所以要拼接成xxxx|.php,这样保留下的就是.php,最后要和base64解码后的zero拼接成flag.php就出来了

回复 2

Anyyy 2年前

\056\160\150\x70 是 十六进制和八进制的Ascii编码,解出来就是 ".php" /\\|.php/i

回复 1

fstr0w 2年前

这道题挺好,对我这种php和re都不太熟悉的人来说,能学到很多。

回复 0

heavenqaq 3年前

tnl,建议搜索正则运算符优先级

回复 1

Loong3t 3年前

字符串优先级比'|'高,'\'转义符同理

回复 1

Lorlike 3年前

re和字符串会转义两次

回复 2

xiaomi 3年前

正则表达式那里真的不是"/\\\\|\056\160\150\x70/i"吗?\转义'\',这样才是匹配.php,才能匹配到,不然我怎么也匹配不到,还是我太菜了?

回复 0
zpcDragon 3年前

@xiaomi \\\\|是不是先字符串转义成\\|然后正则表达式会匹配\|

回复 1

xiaomi 3年前

@87154715 懂了,字符串先转义,然后正则表达式再转义

回复 1

87154715 3年前

|

回复 0

ifconfig 3年前

20分钟还没一血,我来早了?

回复 0
dotast 3年前

做吧,很简单的

回复 3

WriteUp

image
DD03

8 金币

评分(6)

解题动态

18993762527 攻破了该题 22小时前
coolsword2023 攻破了该题 1天前
3133598621 攻破了该题 2天前
fritz1024 攻破了该题 2天前
donbrothers 攻破了该题 4天前
yijueo 攻破了该题 5天前
Sinon 攻破了该题 5天前
2324281128 攻破了该题 7天前
ossiansong 攻破了该题 8天前
Felidae 攻破了该题 9天前
distiny 攻破了该题 9天前
2406044613 攻破了该题 10天前
15181405972 攻破了该题 10天前
18727495861 攻破了该题 12天前
zhangdai 攻破了该题 13天前
微醺西红柿 攻破了该题 14天前
junzijie 攻破了该题 14天前
toto 攻破了该题 14天前
111jing 攻破了该题 15天前
Drume 攻破了该题 15天前