0x01. 进入环境,查看问题
如图,给了一串代码:
0x02. 问题分析
可以很清楚的看到,题目就是想对密文进行反解密就ok了。主要是代码审计,先解释一下php中的函数含义:
strrev(string): 反转字符串
strlen(string): 返回字符串的长度
substr(string, start, length): 返回字符串的一部分
string: 所需要的字符串
start: 在字符串何处开始
length: 可选。规定被返回字符串的长度。默认是直到字符串的结尾
ord(string): 返回字符串首个字符的 ASCII 值
chr(): 从指定的 ASCII 值返回对应的字符
str_rot13(string): 对字符串执行 ROT13 编码。
ROT13 编码把每一个字母在字母表中向前移动 13 个字母。数字和非字母字符保持不变
编码和解码都是由该函数完成的。如果把已编码的字符串作为参数,那么将返回原始字符串
base64_encode(string): 使用 MIME base64 对数据进行编码。
进行反解密,丢入在线运行地址中:https://www.dooccn.com/php/:
解出最终答案:flag:{NSCTF_b73d5adfb819c64603d7237fa0d52977}