题目类型:REV、WEB
Description:
I have written a super safe flag encryptor. I’m sure nobody can figure out what my original flag was:
0xd19ee193b461fd8d1452e7659acb1f47dc3ed445c8eb4ff191b1abfa7969
Dockerfile for your convenience / to ensure correct environment.
首先f=[...require('fs').readFileSync('./flag')] // Read the flag
读取我们的flag
然后后面都是调用一些类似require('./number')(i, j, t)
对大量 js 文件进行包含引入模块,从而将flag数组 f 进行加密
flag长度有30位,所以i、j、t一直在做取余30的计算。
其实只要将这些加密的js的操作语句,在run的过程中输出,然后逆向运算即可。