WeChall - 2021 Christmas Grampa

Challenge

Santa speaks many languages and is receiving a lot of letters this year. But he gets old! The problem is that he will need glasses. Do you need glasses as well? spaceone told us you can help!

Solution

挑战描述里的 help! 链接指向 gizmore 的 GitHub 仓库 gwf3。WeChall 的 challenge 源码公开,其中 solution.php 文件存储了预期的答案。

www/challenge/christmas2021/grampa/solution.php

1
2
3
<?php
# RTL passphrase by TuB
return sha1("あなたはそれを見つけることができません" . "الحل خارج نطاقك");

字符串使用了「不匹配的引号」——实际上文件中两个智能引号都是 U+201C(LEFT DOUBLE QUOTATION MARK),因此 PHP 会将其解释为单个字符串而非两个字符串拼接。但无论哪种解析方式,最终需要提交的都是 PHP 实际计算出的 SHA1 哈希值。

PHP 实际执行的等效代码:

1
sha1("あなたはそれを見つけることができません\u201c . \u201cالحل خارج نطاقك")
b33815d66363f7bf3aaa9223e22aa0bc66a5c05c