xctf攻防世界 Web高手进阶区 web2
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/:
$miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";$flag="";$a = base64_decode(strrev(str_rot13($miwen)));for($_0=0;$_0<strlen($a);$_0++){$_c=substr($a,$_0,1);$__=ord($_c)-1;$_c=chr($__);$flag=$flag.$_c; }$b = strrev($flag);echo($b);
?>
解出最终答案:flag:{NSCTF_b73d5adfb819c64603d7237fa0d52977}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
