鸽了好久了
easyre
拖进ida直接看到flag
reverse1
明文存储{hello_world},然后把o替换成0.
flag{hell0_w0rld}
helloword
reverse2
和前面的reverse1类似,把i和r换成1
flag{hack1ng_fo1_fun}
新年快乐
脱upx
flag{HappyNewYear!}
内涵的软件
轻松得到DBAPP{49d3c93df25caad81232130f3d2ebfad}
,提示说得到的flag添上flag{}提交,但是flag{DBAPP{49d3c93df25caad81232130f3d2ebfad}}
不正确,试了试flag{49d3c93df25caad81232130f3d2ebfad}
,正确。
xor
1 | d = [0x66,0x0a,0x6b,0x0c,0x77,0x26,0x4f,0x2e,0x40,0x11,0x78,0x0d,0x5a,0x3b,0x55,0x11,0x70,0x19,0x46,0x1f,0x76,0x22,0x4d,0x23,0x44,0x0e,0x67,0x6,0x68,0x0f,0x47,0x32,0x4f] |
十分基础的异或题
reverse3
对输入字符串base64后逐位自增偏移值。
1 | s = list(map(ord, list('e3nifIH9b_C@n@dH'))) |
不一样的flag
5*5迷宫
Java逆向解密
gd-gui打开,逻辑很简单,对输入字符加上'@' ^ 0x20
1 | keylist = [180, 136, 137, 147, 191, 137, 147, 191, 148, 136, 133, 191, 134, 140, 129, 135, 191, 65] |
findit
应该只是个MISC题,以逆向的思路做我没做出来。
按照常规流程查看代码,发现代码写的一团糟,很多变量应该有值,结果没有,有的只申请了变量,就接着判断是否和输入字符串相等,等等。
还有,题解中说是凯撒,但是代码中并没有凯撒的部分。真的有点坑。
代码中没有字符数据,但是samli中有,没有编译出来。
1 | d = '''0x70s |
简单注册器
安卓逆向,输入字符串不满足下面的判断即可获得flag
1 | (str.length() != 32 || str.charAt(31) != 'a' || str.charAt(1) != 'b' || str.charAt(0) + str.charAt(2) - '0' != '8') |
构造0b8wwwwwwwwwwwwwwwwwwwwwwwwwwwwa
,然后输入到程序里。
相册
看到有native层,我开心死了。
base64后得到flag