攻防世界flag_in_your_hand1 解题write up
题目给了的文件用浏览器打开按F12查看源代码
我这里用的是微软自带的Microsoft Edge
function ck(s) {
try {
ic
} catch (e) {
return;
}
var a = [118, 104, 102, 120, 117, 108, 119, 124, 48,123,101,120];
if (s.length == a.length) {
for (i = 0; i < s.length; i++) {
if (a[i] - s.charCodeAt(i) != 3)
return ic = false;
}
return ic = true;
}
return ic = false;
最重要的就是这段代码
charCodeAt看出是ASCII码转换
a[i] - s.charCodeAt(i) != 3
以及上段数组a 尝试用ASCII码转换解出
下面py解决的代码
target_list=[118,104,102,120,117,108,119,124,48,123,101,120]
for i in range(len(target_list)):
target_list[i]=target_list[i]-3
print(target_list[i], end=" ")
print()
for i in range(len(target_list)):
print(chr(target_list[i]), end="")
同类型的题更换target_list即可。
得出Flag